In a large pot over medium heat, heat up the 1/4 cup olive oil before adding in the finely diced 1 onion.
Sauté until the onions have softened.
Add the 1/2 teaspoon whole peppercorns, 5 whole cloves, 5 whole green cardamom and 2 cinnamon sticks and continue to stir for a few more minutes.
Add in the 1 teaspoon turmeric and the 1 teaspoon turmeric and continue sautéing for another minute.
Wash and rinse the 3 cups long grain basmati rice before adding it into the pot.
Stir gently for a few minutes, being careful not to break up the rice grains. Add the 4 1/2 cups chicken broth (or water). Bring to a boil.
Once the surface of the rice is bubbling (which should take 3-5 minutes), cover with a tight fitting lid, reduce the heat to low and cook for 20 minutes undisturbed.
After 20 minutes, turn the heat off and open the lid. Fluff very gently with a fork or the back of a spatula. Cover and allow it to rest for 10 minutes.
Garnish with parsley, toasted almonds and raisins if desired before serving.
Notes
If you are not using long grain basmati rice, for example, if you're using medium grain rice, make sure to adjust the rice to water ratio from 1:1.5 to roughly 1:1 to avoid mushy rice. Not all rice varieties cook the same way!
If you don't have all the whole spices listed, feel free to omit some and use what you have.