SSD RAID0 TRIM Support on X58 Platform
I still find it hard to believe the X58 platform has been around for six years now. If we lived in 2005 now, in the world of CPUs such a large amount of time would have been considered as eternity, however, this is no longer true in 2014. That’s right, cheap Westmere-EP based LGA1366 hexa-core Xeon CPUs is the reason why the X58 platform is still a viable option.
If you’re interested in getting the best out of your X58 setup, you may consider putting your SSD drives in RAID0 mode. However, there seems to be a hurdle in the way: the X58-based motherboards lack TRIM support in RAID configurations. Note that TRIM is only supported since Windows 7, so if you have an SSD but run an older version of Windows, it’s probably a good idea to upgrade.
TRIM is an important feature as it ensures your SSD drive does not keep junk data. When the HDD deletes a file, it simply marks that file as “deleted” and does not destroy that data until something new needs to be written on “top” of it. The SSD, on the other hand, works on a completely different principle from the HDD and simply cannot overwrite the files mentioned in one step. Before writing new data, the blocks storing junk data need to be deleted and this is the moment the TRIM command extends a helping hand. The TRIM command can be thought of as a message from the OS telling the SSD what previously used memory blocks no longer hold valid data and can be deleted even though nothing is scheduled to be written yet. This prevents the SSD from losing its speed over time as well as extends its longevity.
That being said, Intel does not officially support TRIM in RAID configurations on X58 systems. However, thanks to guys on www.win-raid.com , this finally seems to be possible with some effort. Next I’m going to provide you with a simple steb-by-step tutorial on how to modify your motherboard BIOS to add support for TRIM in RAID configurations.
Before We Start
In the following steps I’ll be using ASUS P6T Deluxe BIOS as a reference. Please note the following steps apply to all X58-based motherboards, not only ASUS as long as your motherboard comes with American Megatrends BIOS and not Award BIOS like, for example, Gigabyte boards. In case you own either an ASUS P6T Deluxe or an ASUS P6T WS PRO motherboard, you can download already modified latest BIOS for either board below:
Step 1. Download the latest BIOS for your X58 motherboard. If you’re not sure of what motherboard you’re running (which I highly doubt), download CPU-Z utility. After launching it, head over to “Motherboard” section and find the “Model” field (pic. 1).
Step 2. Download BIOS modification tool MMTOOL as well as the custom modified RAID ROM Module which we’ll later inject into a BIOS file. This RAID ROM module carries a version number of v10.1.0.1008 and if you log on the www.win-raid.com forum, you’ll see this is not the latest version which “should work”, however, I’ve found the v10.1.0.1008 to be the one to work on my P6T Deluxe motherboard. The newer versions would result in blinking cursor during POST after enabling RAID.
Step 3. Extract what you’ve downloaded in step 2. Launch the MMTOOL, click “Load” and select your motherboard BIOS file (pic. 2) and then “Open” (pic. 3).
Step 4. Once loaded, in the BIOS contents table locate “PCI Option ROM” entry. Keep in mind there may be more than one entries matching this name. The one you need comes with “Link Vendor ID: 8086″, “Link Device ID 2822″ (pic.4). Vendor ID of 8086 means the manufacturer of corresponding BIOS device is Intel, meanwhile device ID of 2822 confirms we’re dealing with Intel Desktop/Workstation/Server Express Chipset SATA RAID controller.
Step 5. Click on “Replace” tab in the MMTOOL. Now click “Browse”, select the extracted RAID ROM Module which you downloaded in step 2 (pic. 5). Then click “Open” and “Replace”.
Step 6. That’s it, the hard part is over. It wasn’t actually that hard, was it? The last thing left to do in MMTOOL is to save the BIOS file with the modifications you’ve just made. I suggest you create a new BIOS file by clicking “Save ROM As” and leaving the original BIOS file untouched just in case. Next, upload the modified BIOS file onto a flashdrive and flash your motherboard with it. If you’re running an ASUS board, you may flash via EZ-FLASH built-in BIOS utility. It’s advisable to clear CMOS after flashing. Not to mention, you do everything at your own risk.
Step 7. Once you’re done flashing your motherboard, download the modified Intel RST drivers for Windows. Next, install them and reboot your computer. That’s it!
Making Sure TRIM Is Working
Here comes the moment of truth and we’ll see if out effort finally pays off. Download a tiny Trimcheck application and run it from your RAID disk. On the first run the application will create a test dummy file. After no less than 20 seconds launch the Trimcheck again to see the result (pic. 6).
Here are some of my benchmarks comparing a single Samsung 840EVO 120GB SSD against two of them in RAID0 on my ASUS P6T Deluxe motherboard.