Serve this dense, moist, not-too-sweet cake in wedges; skip the frosting if you want a snacking cake you can nibble out of hand.
Preheat to 350°F and spray a Bundt pan well with nonstick spray.
In a large bowl, whisk together the pumpkin, sugars, oil, eggs, ginger and vanilla.
In another bowl, whisk together the flour, baking powder, baking soda, cinnamon and salt.
Add to the pumpkin mixture along with the nuts and stir just until blended.
Scrape into the pan and bake for 1 hour, until deep golden and springy to the touch.
Let cool slightly in the pan on a wire rack, and invert onto a plate while still warm.
To make frosting, beat the cream cheese and butter with an electric mixer until smooth; add about a cup of icing sugar and beat until smooth, then add more, along with about 2 Tbsp. milk or water, and keep beating until you have a smooth, spreadable frosting. If you want it to be soft so you can drizzle it over the cake, add a bit more milk or water.
Once the cake has cooled completely, spread with the frosting.