Please provide your feedback in this short Flings' survey.
fling logo of VMware CPU Microcode Update Driver

VMware CPU Microcode Update Driver

version 2.1 — June 06, 2016

Contributors 4

View All

Comments 142

  • profile picture of GoneToPlaid
  • profile picture of Jacob Klein
  • profile picture of GoneToPlaid
  • profile picture of Jacob Klein
  • profile picture of GoneToPlaid
  • profile picture of Jacob Klein
  • profile picture of himtan
  • profile picture of Jacob Klein
View All

Summary

This Fling is a Windows driver that can be used to update the microcode on a computer system’s central processor(s) (“CPU”). This type of update is most commonly performed by a system’s firmware (“BIOS”). However, if a newer BIOS cannot be obtained from a system vendor then this driver can be a potential substitute.

Features

The driver can update the firmware on Intel or AMD CPUs. The driver attempts to update the processor when the driver is started, when the system is booted, or when the system resumed from a low power state (e.g., hibernation).

The driver will report its actions in the OS’s event log that can be examined using “Event Viewer”. The driver reports whether it found supported processors and if an update was attempted or successfully performed on a processor. This information lets the user know whether the driver is providing a benefit (otherwise they can uninstall it). For example, the processors might already have the latest firmware version.

eventvwr

Requirements

A system running Windows Server 2003 or later.

Instructions

1. Download the fling's zip file and extract the files contained within the zip.
2. Download these 2 files and place them in the same directory as where the files from #1 were placed:

https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/plain/amd-ucode/microcode_amd.bin
https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/plain/amd-ucode/microcode_amd_fam15h.bin

3. Obtain a microcode file for Intel processors and place the "microcode.dat" file in the
same directory as where the files from #1 were placed.

An example URL for a file to download is:

https://downloadcenter.intel.com/Detail_Desc.aspx?DwnldID=23829

This download is for a "tgz" file (i.e., a compressed tar file). You will need to extract
the "microcode.dat" file that is contained within the "tgz" file (this will likely require
the use of a 3rd party archive utility).

If you have an AMD processor and do not want to obtain an Intel firmware
file then you can also create an empty "microcode.dat" file instead.

4. Run (e.g., double-click on) the "install.bat" file. The install will attempt to report if it was successful.

The system's "Event Viewer" can be used to determine whether the fling was able to find an updated firmware for the processor and apply an update. The "Event Viewer" can be started by running the command "eventvwr" from the Start Menu. Inside "Event Viewer" you can use the left pane to navigate to "Windows Logs" and then "System". The middle pane will display the most recent system events, and there should be an event from source "cpumcupdate" that will report if an update was attempted or successful.

The fling has performed an update if the event reports "Successfully updated microcode on one or more CPUs". The firmware update must be applied each time the processor is turned on, so the driver must remain installed in order to keep the processor updated.

If the event reports "The model of the CPU is not supported", or "An update for this model of CPU was not found", or "An update for this model of AMD CPU was not found" then the fling is not providing a benefit and can be uninstalled.

The event "No CPUs needed an update" typically means that the fling is not providing a benefit and can be uninstalled. However, there is an exception. For example, if you install the fling, uninstall it, and then install the fling again then the first run can report "Successfully updated microcode..." and the second run will report "No CPUs needed an update". This is because the second run does not know the processor was already updated by the first run. To disambiguate this case you can shutdown the computer to a powered off state, turn the computer back on, and then look for the event that was generated while the system was booting.

 

Changelog

Version 2.1

A user reported our microcode update fling failed to load microcode on an AMD family 15h processor. It turned out there were a couple of minor problems:

  • IsGoodAMDUpdate was using a hardcoded size of 2048, but according to the BKDG for family 15h the size will be 4096.
  • The check for patches requiring x86 code to be executed in IsGoodAMDUpdate is not applicable on family 15h.

These problems are fixed in this 2.1 release.

Similar Flings

No similar flings found. Check these out instead...
Oct 07, 2014
fling logo of DKMS Module for VMware Workstation

DKMS Module for VMware Workstation

version 1.0

This Fling is intended to be used by end users who run a rolling-release Linux distribution (Arch Linux for instance).

Nov 11, 2015
fling logo of Auto Deploy GUI

Auto Deploy GUI

version 5.0/5.1/5.5/6.0

Auto Deploy GUI is a front end interface to the Auto Deploy/Stateless infrastructure.

Sep 09, 2021
fling logo of vRealize Network Insight Toolkit

vRealize Network Insight Toolkit

version 1.0

Kickstart automation with vRealize Network Insight with the toolkit! This appliance-based Fling deploys right next to your vRealize Network Insight deployment.

Jun 18, 2018
fling logo of Load Analysis Tool

Load Analysis Tool

version 1.0
Apr 12, 2017
fling logo of IOInsight

IOInsight

version 1.1.1

IOInsight ships as a virtual appliance that can be deployed in any vSphere environment and an intuitive web-based UI allows users to choose VMDKs to monitor and view results.

Nov 28, 2018
fling logo of Workspace ONE UEM Profile Migration Utility

Workspace ONE UEM Profile Migration Utility

version 1.6

The Workspace ONE UEM Profile Migration Utility aides in moving Profiles between Workspace ONE UEM Consoles.

View More