Not to take anything away from vmg (what a great pull request!)... but "RealHardComputerScience" is writing a hash function, not swapping out one hash function for another based on some profiling. ;-)
It really involves both: particularly if you want high speed hashing, you need to pay close attention to how your hash function is executed by the hardware.