A Lack of DRAM or a Lack of Cache?

Posted by Martina Birk on Wednesday, October 9, 2024

The high latency random write issue is annoying enough that it'd force me not to recommend any of the non-Intel MLC drives on the market today, regardless of how attractive their pricing may be. High performance with caveats isn't exactly high performance to me.


Intel's controller (left) + DRAM (right)

That being said, the root of the problem is still unknown. My first thought was that it was because the MLC drives had no DRAM buffer, and if you'll notice, Intel's MLC drive does have a DRAM buffer. I asked Intel about this and it turns out that the DRAM on the Intel drive isn't used for user data because of the risk of data loss, instead it is used as memory by the Intel SATA/flash controller for deciding exactly where to write data (I'm assuming for the wear leveling/reliability algorithms). Despite the presence of the external DRAM, both the Intel controller and the JMicron rely on internal buffers to cache accesses to the SSD.

Finding good data on the JMicron JMF602 controller is nearly impossible, but from what I've heard it's got 16KB of on-chip memory for read/write requests. By comparison, Intel's controller has a 256KB SRAM on-die. And I'm going to go out on a limb and assume that given Intel's experience with CPU caches, that its SRAM implementation is probably very well done.

With the JMicron based solutions, if you try and write too much to the drive (and trust me, it won’t take a lot) and the buffers get full, the controller tells the system that it’s not ready to write more data and you get a pause.

When you cause the JM602’s internal buffer to overflow, your system runs in bullet-time. Applications take much longer to launch and close, windows take longer to appear, and there are distinct pauses in anything you want to do that involves the disk. Want to send an IM? Well, that writes to an IM log - you can expect a pause before you can send your IM. Loading webpages is the worst, reading from and writing to the cache wreaks havoc on these cacheless MLC drives. Just for kicks I tried loading AnandTech while I was extracting a 5GB file on the SuperTalent 60GB MLC, it took over 10 seconds for the website to load. Once the JM602 was free to fulfill the read request, the website just popped up - but until then it was like my DNS was failing. It’s a lot like what happens to your notebook if you try and do too much, the disk quickly becomes a bottleneck.

Thankfully, as we've already seen, this problem is only limited to JMF602 based MLC drives. The SLC drives and the Intel MLC are totally fine, so while I'll include these problematic MLC drives in today's comparison, let me state now that I would not purchase one.

JMicron's roadmap shows a new controller next year with an integrated ARM core as well as support for external DRAM, which could alleviate these problems, but until now the controller, and drives based on it, aren't worth it. You get a much better overall experience out of a conventional mechanical disk drive, and much better performance from the Intel SSD or any of the SLC solutions on the market.

The Test

CPU:Intel Core 2 Quad Q9450 (2.66GHz)
Motherboard:Intel DG45ID
Chipset:Intel G45
Chipset Drivers:Intel 8.1.1.1010 (Intel)
Memory:Corsair XMS2-8500 1066
Video Card:VisionTek Radeon HD 4850
OS:Windows Vista Ultimate 32-bit

ncG1vNJzZmivp6x7orrAp5utnZOde6S7zGiqoaenZH93fZNoaGk%3D