Tuesday, April 30th 2024
Enthusiast Transforms QLC SSD Into SLC With Drastic Endurance and Performance Increase
A few months ago, we covered proof of overclocking an off-the-shelf 2.5-inch SATA III NAND Flash SSD thanks to Gabriel Ferraz, Computer Engineer and TechPowerUp's SSD database maintainer. Now, he is back with another equally interesting project of modifying a Quad-Level Cell (QLC) SATA III SSD into a Single-Level Cell (SLC) SATA III SSD. Using the Crucial BX500 512 GB SSD, he aimed at transforming the QLC drive into a more endurant and higher-performance SLC. Silicon Motion SM2259XT2 powers the drive of choice with a single-core ARC 32-bit CPU clocked at 550 MHz and two channels running at 800 MT/s (400 MHz) without a DRAM cache. This particular SSD uses four NAND Flash dies from Micron with NY240 part numbers. Two dies are controlled per channel. These NAND Flash dies were designed to operate at 1,600 MT/s (800 MHz) but are limited to only 525 MT/s in this drive in the real world.
The average endurance of these dies is 1,500 P/E cycles in NANDs FortisFlash and about 900 P/E cycles in Mediagrade. Transforming the same drive in the pSLC is bumping those numbers to 100,000 and 60,000, respectively. However, getting that to work is the tricky part. To achieve this, you have to download MPtools for the Silicon Motion SM2259XT2 controller from the USBdev.ru website and find the correct die used in the SSD. Then, the software is modified carefully, and a case-sensitive configuration file is modified to allow for SLC mode, which forces the die to run as a SLC NAND Flash die. Finally, firmware folder must be reached and files need to be moved arround in a way seen in the video.As the drive powers on, capacity decreases from 512 GB to 114-120 GB. However, the SSD endurance jumps to 4000 TBW (write cycles), which is about a 3000% increase. Additionally, performance increased as well, which you can check out below, and in the original video for more details.Check out the video for more details.
The average endurance of these dies is 1,500 P/E cycles in NANDs FortisFlash and about 900 P/E cycles in Mediagrade. Transforming the same drive in the pSLC is bumping those numbers to 100,000 and 60,000, respectively. However, getting that to work is the tricky part. To achieve this, you have to download MPtools for the Silicon Motion SM2259XT2 controller from the USBdev.ru website and find the correct die used in the SSD. Then, the software is modified carefully, and a case-sensitive configuration file is modified to allow for SLC mode, which forces the die to run as a SLC NAND Flash die. Finally, firmware folder must be reached and files need to be moved arround in a way seen in the video.As the drive powers on, capacity decreases from 512 GB to 114-120 GB. However, the SSD endurance jumps to 4000 TBW (write cycles), which is about a 3000% increase. Additionally, performance increased as well, which you can check out below, and in the original video for more details.Check out the video for more details.
93 Comments on Enthusiast Transforms QLC SSD Into SLC With Drastic Endurance and Performance Increase
By all means, go ahead and buy this 1TB Optane drive: www.newegg.com/p/N82E16820167463 or this 1.5TB one: www.newegg.com/p/N82E16820167505
The same formula as above is valid for different modulation schemes too. 16PAM have two times higher bitrate as 4PAM or QPSK at the same symbol rate.
256PAM have two times higher bitrate as 16PAM at the same symbol rate. No magic is incolved.
I would buy TLC if I had the money to buy scads of RAM.
Unless I was going for big bulk storage, in which case it wouldn't be the system drive.
ddr-500 crazy!!
The nomenclature caught me off guard the first time I saw it too.
Any tool like this for Realtek NAND controllers? Would be handy for reconfiguring those scam NVMEs
For space of states it is really 2^4/2^1 = 8 factor but for space of bits the same factor 8 = 2^ (4-1) , so QLC cell have 3 bits more per cell than SLC not 8 times more bits per cell but 8 times more possible states what means space of states in QLC cell is 8 times more dense than in SLC cell case. 3 bits more per one (1+3)/1 = 4 four times more bits in this one case.
Things could also get worse of course, with 24 levels per cell for example.
Is the hacked SSD now in regular use? If it is, it would be nice if you can provide an update after some time and tell us how it runs.
I'm thinking ... You have converted the SSD to run permanently in pseudo-SLC cache mode. Well, probably. Do you have any means to check if this is true?
And here's why this could be a problem. In the SSD's cache area, the housekeeping algorithms may not be optimised or may not even work. I'm talking about internal defragmentation and wear leveling at least. The cache is designed to be temporary, created and destroyed often, so it doesn't need those. If you're doing random writes, the data goes to the pSLC cache in one big sequential write operation because that's much faster, but the data remains fragmented. This doesn't hurt if the data is later slowly moved to its permanent locations in the QLC area.
If there's any merit to my theory then performance issues would become obvious after a couple TB have been written in some real-world use.
There could also be minor issues such as SSD not reporting its capacity to the OS, or SMART TBW attribute showing incorrect data. At least that's easy to check.
@Shrek I'm summoning you here because I know you're interested in these matters too.
@GabrielLP14
I wish TPU would sell these; would make for a great boot drive that will have no problem dealing with paging.
For me this is much more interesting that over-clocking.
Yes, literally by testing, i've reach steady state writting over 500TB in the drive, continuously, never dropped below 480 MB/s. Yeah, i was actually thinking of making one like this but bigger capacity and sending to Wizzard so he can test, make a custom package and ship with TPU own logo and name, like "SSD Techpowerup 512GB pSLC", that would be cool right?
That could have some serious performance benefits on some of the PCIe 4.0 drives that aren't really strong on IOPS.
The main issue with the video's findings is the native mode of drive had SLC cache at almost half of the new capacity. If the default cache was something like 5 gigs, then it would be worth more consideration.
However if I remember right this firmware tool can change pSLC cache size? So e.g. could boost it to 120 gigs. They wont stop at QLC, or at least they wont stop trying.
We have an idea of how low they will allow things to go to get that profitable density, when as an example Samsung released their planar TLC drives, which ended up needing emergency firmware fixes to keep them in a adequate operational state.
I would expect read centric data will end up on QLC, and only data thats written frequently to stay on pSLC.