Problem solve Get help with specific problems with your technologies, process and projects.

GPT Disk Layout Matters for NVMe

I’ve been working with a new production PC for the past week, and only slowly realized that I had goofed with my initial install of Windows 10 on that machine. I had naively assumed that Windows 10 would recognize my NVMe drive needed a GPT disk layout and run the OS install accordingly. Not so: as I struggled with painfully slow boot times on a rig that was supposed to feature blast-fast boot and shutdown times, I slowly realized that my naïve assumption was dead wrong. Sure enough, inspection of the drive layout in Disk Management showed no EFI partition. No EFI partition meant the disk was formatted for Master Boot Record (MBR) boot-up. Alas, that meant the motherboard UEFI BIOS had trouble finding the NVMe drive at boot time. In fact, it was taking way too long to work its way through the 8 other drives I’ve got on that machine. Only eventually  and apparently reluctantly would it hand over boot responsibility to the NVMe drive to get the OS up and running, even though I’d designated this drive as the highest priority in the BIOS boot order.

As it explains in this nice article at the “How-to-Geek” website:

“Windows can only boot from GPT (which stands for GUID Partition Table, where GUID is a “globally unique identifier”) on UEFI-based computers running 64-bit versions of Windows 10, 8.1, 8, 7, Vista and corresponding server versions.”

That article also goes onto illuminate the improvements to boot integrity that GPT provides. Chief among these is its ability to store multiple copies of the partition table and drive layout information. Thus, if one copy of that data gets damaged, another copy is still likely to remain accurate and usable. MBR maintains only a single copy of such data, so if it gets damaged, bootability usually gets trashed. Also, GPT works with drives of any size, whereas MBR tops out at 2TB. Further, GPT permits an arbitrary number of partitions on a drive (Windows caps that number at 128, but that’s not a GPT limitation), and MBR tops out at four. All good stuff, to be sure!

GPT Disk Layout Makes a Difference!

But GPT’s inherent association with UEFI was most important to my set-up, because a UEFI BIOS is better able to identify and work with that partitioning scheme than with MBR. During the bootup when the drive was formatted with MBR, a cursor would appear and blink on-screen for 30-45 seconds once boot-up got underway. A bit of online research told me that this behavior indicates the BIOS is searching for a boot drive while this occurs. I’m not sure why this happens when boot priority is specified as a BIOS configuration item, but it was constant and unrelenting anyway.

The EFI partition shows that the new install used a GPT disk layout.

The switch to GPT disk layout eliminated this phase of the boot process. Now, my PC boots in 13-14 seconds once the BIOS actually starts the boot-up process. The motherboard maker’s logo “Asrock” still sits on the screen for just over a minute before that process actually gets underway, though. My next troubleshooting mission will be to figure out how to make that go away.

The only downside to this change is that it required me to perform a clean reinstall of Windows 10, that being the only way to change the system/boot drive from MBR to GPT disk layout. I was able to get through most of it after hours last evening — the whole process took about 2.5 hours, except for a few more details I have to work through this morning. These include migrating my Library folders from the old install to the new, reconfiguring Outlook, and adding the old drive’s PST tiles into that new Outlook environment. Fortunately, having made an image backup of the old drive yesterday, I am able to mount that image in Disk Management as a virtual disk, and then to grab anything and everything I need while that drive is mounted.