Crucial SSD: how does Momentum Cache give SATA drives NVME-like speeds?

euskalzabe

[H]ard|Gawd
Joined
May 9, 2009
Messages
1,478
I'm still using a crucial MX100 as my OS drive - still at %86 health level, this thing has lasted more than I ever hoped. I've had Momentum Cache enabled through the Crucial Storage Executive software, and I noticed long ago that speeds are crazy higher than the regular ~500mbps:

1597244153560.png


It's clearly not enabled on my D drive (Micron branded, which is basically Crucial):

1597244909367.png


As I just bought a 1TB NVME drive (Silicon power, $95 of TLC so I can move my 2TB Micron SATA SSD to my secondary gaming PC), this got me thinking. How on earth can Crucial get these speeds from the SATA port? We know that the SATA speed limit, though it's 6gbps, in practice ends up being about 500mbps for SSDs, that's the whole point why we need NVME for faster storage. I understand that Crucial is sending SSD calls to RAM and that's where it gets its speed, but given the SATA limitations, I'm assuming these numbers don't really apply in practice and are more of a theoretical bandwidth?

For example, I copied a random 2.27gb texture file from 2016 Doom from my D SATA drive to my C MX100, this was the speed:

1597244437578.png

That's a far cry from MC's suggested 3gbps. Then I made a copy of the same file, so C drive to C drive, and the speed was:

1597245034169.png

Still a far cry from MC's 3gbps, but way faster than your regular expectation from a SATA drive. I guess data is not flowing through SATA since it's an internal copy, but still.

So, I wonder. What are the actual, real implications performance wise of Momentum Cache?
 
  • Like
Reactions: SoFGR
like this
How on earth can Crucial get these speeds from the SATA port? We know that the SATA speed limit, though it's 6gbps, in practice ends up being about 500mbps for SSDs, that's the whole point why we need NVME for faster storage. I understand that Crucial is sending SSD calls to RAM and that's where it gets its speed, but given the SATA limitations, I'm assuming these numbers don't really apply in practice and are more of a theoretical bandwidth?

When you have data that's actually being stored by MomentumCache, you'll probably mostly pulling from RAM and then queuing some from the drive (instead of the other way around) because even at the peak theoretical max of SATA3, that would be ~750MBps. MC only caches frequently accessed data. I don't know what the exact parameters are that they use to determine what is considered as such, but usually these cache models use frequency and/or recency of access to flag specific data for cache storage. If you stop accessing that same data and start pulling up something else, the old stuff will be thrown out and the more recent items will be stored instead. The reason you're seeing those high numbers in the CDMark bench is because you have it set to do 5 runs, which is exactly the kind of thing that the MCache will accelerate.
 
Last edited:
It's the RAMCACHE.

My crystaldiskmark scores when using my Primocache RAMcache are absolutely ridiculous, even on a 5400rpm drive. I'm talking 12,000MB/S Read speeds.
CDM01.jpg

These speeds are off a shucked 8TB WD 5400RPM drive. I have the cache for this particular drive set to read only, so the write speeds are more in line with an actual 5400RPM HDD. Steam Pre-allocation does really weird things when I allowed it to write data to cache, so the write speeds are mostly accurate to the base drive.

Edit: For shits and giggles, this is what having it write to the RAMcache looks like (I did this on an empty partition of one of my SSDs)
CDM02.jpg
 
Last edited:
In my opinion, it's best not to use Momentum Cache in 99% of cases. You're adding additional overhead (since the OS still caches) and another point of failure (since RAM by definition is volatile). You're deferring writes, you'll still be bottlenecked by the speed of the interface and device at some point.
 
As much as I love my Cache's, unless your system is 100% super solid, no crashes, no RAM errors, attached to a backup UPS, etc. I'd be extremely weary of using deferred writing on ANY drive. I've had nothing but trouble with it long term, even though the short term looks impressive in benchmarks. Ram seems to be too volatile and I always end up with read errors eventually.
Unless you're using it for something like scratch drive - there it's crazy useful.

Now, cacheing read data - I'm all about that. I know the OS caches stuff, but it does an extremely bad job at it.
 
  • Like
Reactions: SoFGR
like this
Back
Top