I have been noticing more and more users that have acquired hardware that includes the latest Intel 12th Generation CPU (Alder Lake) and even the newest Intel 13th Generation CPU (Raptor Lake) for use with ESXi. Starting with the Intel 12th Generation CPU, Intel has introduced a new hybrid "big.LITTLE" CPU architecture that integrates two types of CPU cores: Performance-cores (P-cores) and Efficiency-cores (E-cores) into the same physical CPU die.
ESXi is currently not aware of this new consumer architecture and it currently expects all cores within a CPU package to have uniform characteristics. If you boot the ESXi installer, it will PSOD (Purple Screen of Death) by default and you will see a message about "Fatal CPU mismatch on feature" which is due to the different CPU properties across both the P-Cores and E-Cores. However, there is a way to workaround the issue by disabling the CPU uniformity check that ESXi performs as part of its boot up.
UPDATE (04/22/23) - If you decide NOT to disable either E-Cores or P-Cores, you may also run into an additional PSOD when powering on a VM with GP exception in world message. To workaround this problem, please see this blog post HERE.
UPDATE (03/24/23) - It is possible and recommended to actually disable the E-cores within the Intel NUC BIOs following the instructions HERE to prevent ESXi from PSOD'ing due to non-uniform CPU cores rather than applying the ESXi boot option workaround as described in the video below.
I initially wrote about the solution back in Feb of 2022 where this new CPU was first introduced in the Intel NUC line with the Intel NUC 12 Extreme (Dragon Canyon) and subsequently, I had also wrote about the solution reviewing both the Intel NUC 12 Pro (Wall Street Canyon) and the Intel NUC 12 Enthusiast (Serpent Canyon).
While the majority of folks have not had any issues applying the workaround, I have started seeing some folks running into challenges, perhaps its familiarity with ESXi or applying kernel options. In any case, I figured it might help to record a video demonstrating the workaround for those that rather visualize the solution along with the written instructions (included below).
Step 1 - During the bootup of the ESXi installer, you will see an option to to append additional ESXi kernel boot settings. Press SHIFT+O and append the following kernel option cpuUniformityHardCheckPanic=FALSE to the command line and the press enter to continue the boot process.
Step 2 - Install ESXi by following the install wizard and once you are prompted to reboot, do not reboot yet. We need to add the kernel option again so that ESXi can successfully boot after the installation. To do so, switch into the ESXi shell by pressing ALT+F1 and login using root and blank password as ESXi has not gone through full reboot and is not using the configured password.
Step 3 - Edit /vmfs/volumes/BOOTBANK1/boot.cfg and append following kernel option cpuUniformityHardCheckPanic=FALSE to existing kernelopt entry, which should look like the following:
kernelopt=weaselInstalled autoPartition=FALSE cpuUniformityHardCheckPanic=FALSE
Save your changes and then change back to the reboot prompt by pressing ALT+F2 and then reboot.
Instead of having to manually append the ESXi kernel option, you will notice that it has been appended due to Step2 and applying the setting in the boot.cfg file.
Step 3 - To permanently configure the ESXi kernel boot setting, in case of updates/upgrades in the future, we can set the kernel setting using ESXCLI. We first need to login to DCUI by pressing F2 and then navigating to Troubleshooting Option and enable ESXi Shell. Switch into the ESXi shell by pressing ALT+F1 and login with root and the password you had configured during installation. Now run the following ESXCLI command to configure the kernel option:
esxcli system settings kernel set -s cpuUniformityHardCheckPanic -v FALSE