Proxmox

Proxmox P and E Cores Microcode Patch Update

Learn how to overcome the quirks of running Proxmox on hybrid processors with Intel P and E cores with the Proxmox P and E Cores Microcode Patch

Highlights

  • I was intrigued when I watched Craft Computing’s coverage of running Proxmox on an Intel hybrid P and E core chip and some guidance that was relayed to Jeff on applying a microcode update for your Proxmox installation to help with stability in running workloads in Proxmox with P and E Cores.
  • But, I do want to shed light on this topic as being a workaround for stability issues if encountered with your Proxmox installation on Intel hybrid processors.
  • In running home lab environments, many are looking at mini PCs that are available to stand up and use as a home server or home lab environment.

In running home lab environments, many are looking at mini PCs that are available to stand up and use as a home server or home lab environment. Intel-equipped variants generally have the new “hybrid” architecture that includes the configuration of performance and efficient cores (P and E cores). With this being the case, a few little quirks can come from running hypervisors on top of the hybrid processors.

What are Performance and Efficient cores (P and E cores)?

Intel’s architecture is sometimes called the “big little” architecture. It has two different types of cores: performance cores (P cores) and Efficiency cores (E cores). Each is designed for a different type of task.

Intel p and e cores
Intel p and e cores

The P cores are designed for the most demanding tasks that require “performance” over efficiency. These types of cores are generally desirable for content creation, gaming, and other power-user tasks.

As mentioned, the E cores are designed to handle background tasks that don’t require the outright performance needed for other types of tasks. They are geared towards better power efficiency and help optimize battery life when full performance isn’t needed.

This hybrid design helps to balance performance and efficiency that can adapt to the specific type of work being done.

ntel’s innovative processor architecture includes two distinct types of CPU cores: Performance cores (P-cores) and Efficiency cores (E-cores). P-cores are designed to maximize performance for demanding tasks, delivering high speeds and powerful processing capabilities ideal for gaming, content creation, and other intensive applications. In contrast, E-cores are engineered to handle background tasks and less demanding applications with greater power efficiency, optimizing battery life and overall system responsiveness when full power isn’t necessary. This hybrid approach allows Intel processors to provide a balanced combination of high performance and energy efficiency, adapting dynamically to the computing load by utilizing the appropriate cores.

Quirks and issues

There are noted quirks with hypervisors and the P and E core design. While this blog post is centered around Proxmox, other hypervisors have problems with the P-core and E-core designs. VMware vSphere is noted as having issues with this.

You have to enter a boot parameter to avoid a purple screen of death with VMware ESXi as follows:

cpuUniformityHardCheckPanic=FALSE
Purple screen of death on the p and e core archtiecture
Purple screen of death on the p and e core architecture

Proxmox Microcode update for using P and E Cores

I was intrigued when I watched Craft Computing’s coverage of running Proxmox on an Intel hybrid P and E core chip and some guidance that was relayed to Jeff on applying a microcode update for your Proxmox installation to help with stability in running workloads in Proxmox with P and E Cores.

As a note, Linux does support P and E cores. So, I would suggest you test the stability of your Proxmox installation and running VMs to see how stable these are before applying any microcode updates. But, I do want to shed light on this topic as being a workaround for stability issues if encountered with your Proxmox installation on Intel hybrid processors.

Below are the instructions for installing the microcode update on your Proxmox 8.1.x installation:

Microcode Install Instructions

First, Install Proxmox 8.1. Next, you will add non-free-firmware to debian repo in sources.list

Edit the /etc/apt/sources.list file. Add non-free-firmware to the 1st line so it looks like this

deb http://ftp.debian.org/debian bookworm main contrib non-free-firmware

Save Changes

Adding the non free firmware repository 1
Adding the non free firmware repository 1

Next, run the following command

apt clean && apt update
Running apt clean and apt update
Running apt clean and apt update

Now, we are ready to install the microcode patch:

apt install intel-microcode
Installing the intel microcode update
Installing the intel microcode update

You will need to confirm the installation.

Confirm the installation
Confirm the installation

Reboot, and the microcode patch should apply automatically.

Reboot your proxmox host
Reboot your proxmox host

You can check what microcode you are running after reboot by running the command:

grep 'stepping|model|microcode' /proc/cpuinfo

Wrapping up

If you have issues with stability on Proxmox with P-cores and E-cores, this Proxmox P and E Cores Microcode Patch Update should provide a fix that will drastically improve the stability if not resolve it altogether.

Subscribe to VirtualizationHowto via Email 🔔

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Brandon Lee

Brandon Lee is the Senior Writer, Engineer and owner at Virtualizationhowto.com and has over two decades of experience in Information Technology. Having worked for numerous Fortune 500 companies as well as in various industries, Brandon has extensive experience in various IT segments and is a strong advocate for open source technologies. Brandon holds many industry certifications, loves the outdoors and spending time with family.

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.