Why use NVMe drives instead of an ATA interface? Simple answer: because it gives you the throughput of the PCI bus to the drives. And why does that matter? Because the PCI bus is considerably faster than you would get with SAS and SATA.
In this blog post, we’ll walk you through everything you need to know to use NVMe drives in a Dell PowerEdge R640, from ensuring that your server is equipped with the necessary hardware components to properly configuring the server's BIOS.
So what’s an NVMe drive?
NVMe (Non-Volatile Memory Express) drives are a type of solid-state drive (SSD) that leverage the PCIe (Peripheral Component Interconnect Express) interface to deliver exceptional speed and performance. Unlike traditional storage protocols like SATA, NVMe drives provide a direct connection to the PCIe bus, allowing for significantly faster data transfer rates and lower latency.
With NVMe drives, you’ll come across two common form factors: M.2 and U.2. M.2 drives are small, compact drives that are typically installed directly onto the motherboard of a compatible system, making for a convenient and space-saving solution. The M.2 form factor is more commonly used in consumer desktops, laptops, and smaller form factor systems.
In rack servers, including the PowerEdge R640, NVMe SSDs often utilize the U.2 form factor. U.2 drives, also known as 2.5-inch NVMe drives (and formerly known as SFF-8639), are slightly larger and physically resemble traditional hard drives. They are designed to fit into drive caddies, allowing for easy installation, removal, and maintenance.
(If you’re super duper new to NVMe's and want to know more, check out our article all about NVMe SSDs.)
Check the Hardware Requirements
Dell servers are not natively compatible with NVME m.2 drives. Dell BOSS (Boot Optimized Server Storage) are for m.2 SATA only. For m.2 NVME, you would need to use a 3rd party PCI adapter, which may or may not be supported by the Dell server hardware.
First, you'll need to make sure that the PowerEdge R640 has a PCIe NVMe expander card. Most R640 servers have at least two PCIe adapter slots (SFF 8654 slots). NVMe backplane cables are also required to connect the PCIe adapter to the system board and the PCIe NVMe Extender Controller Adapter Card. You’ll need to have 2 CPUs to be able to see the NVMe drives.
(Pictured: 10-bay R640, PCIE adapter slots.)
Install the NVMe Drives
You will need to physically install the NVMe u.2 drives into the drive caddies and then into the NVMe bays. Ensure that the drives are installed correctly, and that they are properly seated in the slots. NOTE: The NVMe drive bays start from the right to left.
(Pictured: Cable management for an R640 with NVMe drives configured.)
Note: The NVMe drives also support hot-swapping. Read more about hot-swapping.
Configure BIOS Settings
Access the server BIOS through “System Setup” by hitting F2. The NVMe drives should show up under “Device Settings” in this initial menu. You can also navigate to the "System BIOS" section, and if the "NVMe Settings” sub-menu is visible, that’s a good indicator that the server is compatible. Additionally, make sure that the "Boot Support" option is set to "UEFI," as NVMe drives require UEFI boot mode.
Install the Operating System
Once the NVMe drives are installed and the BIOS settings are configured correctly, you can proceed with installing your operating system (OS). Make sure that your OS supports NVMe drives, and that you have the necessary drivers installed. Nowadays, Windows and Linux distros have their own built-in NVMe drivers, but you can research your OS to double check if you need any additional drivers.
Configure RAID (Optional)
If you want to enhance data performance and protect against disk failures by configuring RAID, you will need to use software RAID, such as Windows Server Storage manager, or the ZFS filesystem. For R640’s, hardware RAID on the NVME drives is not an option.
When it comes to NVMe drives, there are 3 basic options for RAID configurations for NVMe drives you can explore; RAID 0 (striping), RAID 1 (mirroring), or RAID 5 (striping with parity*). For more detailed explanations of the standard RAID configurations and what they mean, here’s a handy cheat sheet.
*Good to know: Parity is a mathematical algorithm that calculates and generates additional data, which is then distributed across the drives in the RAID array. In RAID 5, for example, parity information is distributed across all the drives in the array, except for one drive dedicated to storing parity information. In the event that one drive fails, this configuration allows for data to be reconstructed; the parity information is used to recalculate the missing data and restore it from the remaining drives.
When choosing a RAID configuration for your NVMe drives, consider your specific requirements. RAID 0 is suitable for applications that prioritize speed and performance but lacks redundancy. RAID 1 is ideal for those seeking data redundancy and fault tolerance, at the cost of reduced storage capacity. RAID 5 strikes a balance between performance and data protection, making it a popular choice for many environments.
You’ll need to evaluate your needs and backup strategies to determine which configuration is best for you, or if you even want to use RAID at all. Regardless of the RAID configuration you choose (or don’t), it’s crucial to have a solid backup plan in place.
And that's it! Following these steps should have you using NVMe drives in your R640 in no time. And as always, if you have any questions, just drop us a line.
4 comments
Hi Danillo,
Thanks for your question. If the server does not boot into Windows after installation, you’ll want to check the boot type in BIOS – it should be set to UEFI. You may also need to enable PCI bifurcation in the BIOS as well.
Good afternoon, after the whole process, I did the installation
of Windows Server 2019, but after installation the Server does not boot into Windows.
Hi Dave,
Thanks for your question. The R640 does in fact support both PCIe SSDs and PCIe Bifurcation. However, it is dependent on the operating system containing the correct drivers for the PCI card or PCI SSD adapter.
We cannot guarantee any part which we cannot test for compatibility, and we haven’t tested these servers with the 3rd party PCI NVME cards or 2.5" NVME adapters. Installing one of these cards may cause the server to run in safemode, spinning the fans up to 100%. Usually, the 2.5" NVME adapters are not compatible with the SAS/RAID controllers used in these model servers.
What do you think of those NVMe M.2 adapters which plug into a PCIe slot? You can find many inexpensive PCIe adapters on eBay which support 1, 2 or 4 NVMe M.2 drives. The ones which support 2 or 4 NVMe drives require a motherboard which supports PCIe bifurcation, but the R640 apparently does. Here are a couple of search strings you can use on eBay:
PCIe M.2 NVME profile -SATA
PCIe M.2 NVME “supports 4” -SATA
Alternately, if you want to go the U.2 route, there are M.2 NVMe to U.2 enclosures for under $10. What do you think of them? Here’s an eBay search string:
M.2 NVMe PCIe to U.2 2.5 SSD