Does the .NET Framework need to be reoptimized after upgrading to a new CPU microarchitecture?
- by Louis
I believe that the .NET Framework will optimize certain binaries targeting features specific to the machine it's installed on.
After changing the CPU from an Intel Nehalem to a Haswell chip, should the optimization be run again manually? If so, what is the process for that?
Between generations here are some notable additions:
Westmere: AES instruction set
Sandy Bridge: Advanced Vector Extensions
Ivy Bridge: RdRand (hardware random number generator), F16C (16-bit Floating-point conversion instructions)
Haswell: Haswell New Instructions (includes Advanced Vector Extensions 2 (AVX2), gather, BMI1, BMI2, ABM and FMA3 support)
So my, albeit naive, thought process was that the optimizations could take advantage of these in general cases. For example, perhaps calls to the Random library could utilize the hardware-RNG on Ivy Bridge and later models.