24th December 2015, 2 min read Your software should follow your hardware: the CLHash example 3 thoughts on “Your software should follow your hardware: the CLHash example” Simon says: December 25, 2015 at 4:54 pm I noticed that skylake CPUs can take the new faster DDR4 RAM. How does this factor into the 5 to 10%, of at all? Tomas says: December 25, 2015 at 5:43 pm How do you write software to take advantage of new instructions? It would seem that either a compiler needs to support it first (and support it well, including optimization), or you have to get down to assembler. Jim says: December 26, 2015 at 2:51 am @Tomas: you can use Intel Inrinsics. You can browse them with https://software.intel.com/sites/landingpage/IntrinsicsGuide/. You can see their use in https://github.com/lemire/StronglyUniversalStringHashing/blob/6486be54da481121293f4f28a954371a907da700/include/clmul.h#L16
I noticed that skylake CPUs can take the new faster DDR4 RAM. How does this factor into the 5 to 10%, of at all?
How do you write software to take advantage of new instructions? It would seem that either a compiler needs to support it first (and support it well, including optimization), or you have to get down to assembler.
@Tomas: you can use Intel Inrinsics. You can browse them with https://software.intel.com/sites/landingpage/IntrinsicsGuide/. You can see their use in https://github.com/lemire/StronglyUniversalStringHashing/blob/6486be54da481121293f4f28a954371a907da700/include/clmul.h#L16