While I agree with the points about slower metabolisms and lesser numbers of giants overall, I'll add this. I think giants of the appropriate elemental subtype (Fire=fire, Frost=cold, Stone=earth, Cloud=air I think), to subsist partially on those elements or through their connection to those elements. Stone giants can eat rocks in addition to meat and plants (making them true omnivores), whereas Fire, Frost and Cloud giants derive some sustenence from being around those things (lava, ice, and clouds).
I also made Storm Giants a water subtype just so every element would have a giant race "champion". (They already get water breathing.)
I use this line of reasoning (I hesitate to call it a "rule") with other creatures with elemental subtypes, most notably Dragons. (What growing red dragon doesn't want to start the day with a pipin' hot bowl of liquid magma?)