Drain the beans. Combine them in a stovetop or electric pressure cooker with enough water to cover by 2 inches. Bring to high pressure, then reduce the heat to medium and cook for 10 minutes if using a stovetop model or 15 minutes if using electric. Let the pressure release naturally, then drain the beans, reserving about 2 cups of the cooking liquid.
Puree the onions until smooth in a food processor.
Heat the oil over medium-high heat and stir in the pureed onions. Cook, stirring occasionally, until the onions start to dry out and brown on the bottom, about 20 minutes. Stir in the tomato puree, coriander, ginger, salt, chili powder, and turmeric. Cook until the mixture starts on the bottom and the oil separates, about 10 minutes.
Transfer the onion mixture to the pressure cooker, add the drained beans and the reserved 2 cups of cooking liquid. Return to pressure over low heat and cook for 30 minutes if using a stovetop model or 40 minutes if using electric. Turn off the heat and let the pressure release naturally.
Garnish with the cilantro and serve hot, with naan bread or rice.