I have a simple question, what on earth are you doing that could require a 4 million entry hash? the collisions on that in a 32bit space are not going to be pretty, and the build time will be silly. Unless you're doing a shitload of lookups its not going to be more efficient than calculating the entries on the fly, especially if your system is low on ram.