3D is all the rage these days. Every Hollywood action flick worth its salt gets screened in both two- and three-dimensional formats, VR is pushing hapless early adopters to stumble over unseen living room furniture, and even Intel is encouraging NUC modders to 3D-print custom lids for their tiny little boxes.

Not even the utilitarian storage market is immune to the trend. Akin to how PCIe and NVMe have long been lurking around the corner, 3D NAND flash technologies have been threatening to rewrite the SSD landscape for a long while. But until now, only Samsung has actually released consumer drives featuring vertically stacked cells. The other manufacturers have been content to dribble out mere hints, announcements, and press releases.

Micron has finally cranked that faucet all the way open and taken the wraps off of its first 3D NAND-equipped SSD, the Crucial MX300. Micron’s 3D NAND is one of the more recent products of the company’s longstanding NAND partnership with Intel. The MX300 boasts the high-end feature list and performance specs we’d expect out of an MX-series drive, but there are couple of major shakeups under the hood. One is obviously the 3D NAND. The other is a more dubious “upgrade.” Micron’s seen fit to deploy that 3D NAND in a TLC configuration, replacing the MLC we’d grown attached to in the MX100 and MX200.

This isn’t the first time that Micron has taken an existing product line and sneaked in an extra bit-per-cell. Not so long ago, we reviewed the newly-TLC-based BX200 and were left unimpressed by its regression in performance versus its well-received predecessor, the BX100. Let’s hope that Micron has learned from that experience and has reason enough to gamble the MX series’ good name on TLC.

We should take a moment here to talk about what’s different about Intel and Micron’s 3D NAND. Planar NAND of all sorts has long been based on floating-gate transistors. To create its stacked flash product, Samsung abandoned floating gates and moved to charge-trap flash, the details of which we discussed at length when we first reviewed the 850 series of drives. Intel and Micron were more stubborn, betting their 3D NAND money on the floating-gate horse. While that choice allowed Samsung to take V-NAND to market first, Intel and Micron believe that their combined ability to leverage years of floating-gate infrastructure and expertise will give them an advantage in the long run.

The first generation of this 3D NAND stacks 32 layers into 256-gigabit MLC or 384-gigabit TLC configurations. As we’ve already noted, the MX300 uses the 384-gigabit TLC stuff. This is remarkable density. Samsung’s first-generation V-NAND (also 32-layer) only maxed out at 128Gb in a TLC die. Even Samsung’s second-generation, 48-layer stuff only peaks at 256Gb in a TLC die. Intel and Micron have been hinting that the prodigious density of their flash might eventually lead to monster 10TB SSDs in 2.5″ form factors.

For today, we’ll have to settle for a 750GB drive. This somewhat unusual capacity is a limited-edition flavor of the MX300, but it’s the only one available at launch. I’d say that Micron’s taking some Founders Edition cues from Nvidia here, but its suggested retail price for the MX300 is actually pretty reasonable at $199.99. Eventually, the product line will be fleshed out with 275GB, 525GB, and 1050GB versions, but Micron isn’t ready to release performance ratings for those drives just yet.

Crucial MX300 Capacity Max sequential (MB/s) Max random (IOps) Read Write Read Write 750GB 530 510 92k 83k

The NAND inside the MX300 is distributed over eight packages, each of which contains two 384Gb 3D NAND dies. We routinely see SSDs which bundle as many as 16 dies into a single package, so those vague promises of 10TB in a 2.5″ drive are starting to sound pretty realistic.

Alongside the NAND packages is a fresh face: Marvell’s 88SS1074 controller. The Crucial MX series of drives has always been powered by Marvell controllers, but this chip is one of the newer ones in the company’s stable. It’s been targeted squarely at the burgeoning TLC SSD market, so it’s no shock to see that it’s been popping up in newer TLC drives like SanDisk’s X400 and Plextor’s M7V. We haven’t gotten our hands on either of those drives yet, so this is the first time we’ve had the controller in TR’s storage labs. It has all the bells and whistles you’d expect a modern SSD controller to have, like support for DevSleep and 256-bit AES hardware encryption acceleration.

In fact, the MX300 meets all the desirable encryption standards: eDrive, IEEE-1667, and TCG Opal 2.0. Another feature worth mentioning is Dynamic Write Acceleration, Micron’s implementation of a pseudo-SLC cache (see our M600 review for details). Crucial’s warranty covers the MX300 for three years, much like the warranties on the MX100 and MX200 before it. The 750GB drive has a rated lifespan of 220TB total bytes written, but the truly diligent can use the included free copy of Acronis True Image HD to ensure that their precious data outlives both the warranty and the endurance spec.

Now put on your 3D glasses, because it’s time for the show.

IOMeter — Sequential and random performance

IOMeter fuels much of our latest storage test suite, including our sequential and random I/O tests. These tests are run across the full capacity of the drive at two queue depths. The QD1 tests simulate a single thread, while the QD4 results emulate a more demanding desktop workload. For perspective, 87% of the requests in our old DriveBench 2.0 trace of real-world desktop activity have a queue depth of four or less. Clicking the buttons below the graphs switches between results charted at the different queue depths.

Our sequential tests use a relatively large 128KB block size.







The MX300’s sequential read speeds are great, handily beating the MX200’s QD1 speeds and coming close to matching its QD4 speeds. It doesn’t fare quite as well on the sequential write side—both the BX100 and MX200 write significantly faster. The MX300 will have to take solace in the fact that it slaughters the BX200’s writes. But then again, even I can write faster than the BX200 if I’m equipped with a decent pen.







The MX300’s random results are the opposite of its sequential numbers. The drive posts read response times that are slower than most, but its write response times are excellent. That’s Dynamic Write Acceleration at its finest. But DWA isn’t a cure-all, so let’s see what happens when it isn’t allowed to work its magic.

Sustained and scaling I/O rates

Our sustained IOMeter test hammers drives with 4KB random writes for 30 minutes straight. It uses a queue depth of 32, a setting which should result in higher speeds that saturate each drive’s overprovisioned area more quickly. This lengthy—and heavy—workload isn’t indicative of typical PC use, but it provides a sense of how the drives react when they’re pushed to the brink.

We’re reporting IOps rather than response times for these tests. Click the buttons below the graph to switch between SSDs.





To show the data in a slightly different light, we’ve graphed the peak random-write rate and the average, steady-state speed over the last minute of the test.

The MX300’s peak speeds are right up there with the MX200’s. This drive’s steady-state speeds just can’t compete with its predecessor’s, though. Dynamic Write Acceleration makes the drive go like hell when it can, but once those tricks are exhausted, even 3D TLC can’t stand up to good old MLC NAND.

Our final IOMeter test examines performance scaling across a broad range of queue depths. We ramp all the way up to a queue depth of 128. Don’t expect AHCI-based drives to scale past 32, though—that’s the maximum depth of their native command queues.

For this test, we use a database access pattern comprising 66% reads and 33% writes, all of which are random. The test runs after 30 minutes of continuous random writes that put the drives in a simulated used state. Click the buttons below the graph to switch between the different drives. And note that the P3700 plot uses a much larger scale.





It’s a pretty gentle slope, but it does go up. We like it when SATA drives scale even a little bit. Let’s see how the MX300’s scaling compares to the rest of the Crucial lineup.





No touching! Amusingly, the scaling curves of the Crucial drives don’t end up intersecting at all. If queue depth scaling with a database access pattern is important to you, Crucial offers four distinct, non-overlapping behaviors to pick from. Choose your own adventure.

On the next page we put aside IOMeter to see how the MX300 performs with real-world file I/O.

TR RoboBench — Real-world transfers

RoboBench trades synthetic tests with random data for real-world transfers with a range of file types. Developed by our in-house coder, Bruno “morphine” Ferreira, this benchmark relies on the multi-threaded robocopy command build into Windows. We copy files to and from a wicked-fast RAM disk to measure read and write performance. We also cut the RAM disk out of the loop for a copy test that transfers the files to a different location on the SSD.

Robocopy uses eight threads by default, and we’ve also run it with a single thread. Our results are split between two file sets, whose vital statistics are detailed below. The compressibility percentage is based on the size of the file set after it’s been crunched by 7-Zip.

Number of files Average file size Total size Compressibility Media 459 21.4MB 9.58GB 0.8% Work 84,652 48.0KB 3.87GB 59%

The media set is made up of large movie files, high-bitrate MP3s, and 18-megapixel RAW and JPG images. There are only a few hundred files in total, and the data set isn’t amenable to compression. The work set comprises loads of TR files, including documents, spreadsheets, and web-optimized images. It also includes a stack of programming-related files associated with our old Mozilla compiling test and the Visual Studio test on the next page. The average file size is measured in kilobytes rather than megabytes, and the files are mostly compressible.

RoboBench’s write and copy tests run after the drives have been put into a simulated used state with 30 minutes of 4KB random writes. The pre-conditioning process is scripted, as is the rest of the test, ensuring that drives have the same amount of time to recover.

Let’s take a look at the media set first. The buttons switch between read, write, and copy results.







Not too shabby at all. The MX300 may seem to fall on the low side of the rankings in the read test, but going by raw value, it’s right in the performance band we expect out of SATA drives. The MX300 redeems itself by ending up toward the top of our SATA contenders in our write and copy tests. The 850 Pro’s MLC V-NAND writes barely any faster than Micron’s TLC 3D NAND here. Color me impressed.

Next up, let’s see how the drive does with our work set.

function trset8() { document.getElementById('work-1t').src='/r.x/2016_6_12_MX300/robo-read-1t-work.png'; document.getElementById('work-8t').src='/r.x/2016_6_12_MX300/robo-read-8t-work.png'; } function trset9() { document.getElementById('work-1t').src='/r.x/2016_6_12_MX300/robo-write-1t-work.png';4 document.getElementById('work-8t').src='/r.x/2016_6_12_MX300/robo-write-8t-work.png'; } function trset10() { document.getElementById('work-1t').src='/r.x/2016_6_12_MX300/robo-copy-1t-work.png'; document.getElementById('work-8t').src='/r.x/2016_6_12_MX300/robo-copy-8t-work.png'; }







The work set doesn’t reveal any anomalies. The MX300 puts up roughly middle-of-the-pack speeds across read, write, and copy tests whether the test is single- or eight-threaded.

RoboBench gave us only good news. While the MX300’s results here are largely unremarkable, unremarkable is exactly what we want to see when a product line makes the transition from MLC to TLC. Micron’s 3D NAND might just be able to pull off the switch without masses of disgruntled enthusiasts taking to message boards with hurtful words. Next, we check to see if the MX300 can hack it as a primary boot drive.

Boot times

Until now, all of our tests have been conducted with the SSDs connected as secondary storage. This next batch uses them as system drives.

We’ll start with boot times measured two ways. The bare test depicts the time between hitting the power button and reaching the Windows desktop, while the loaded test adds the time needed to load four applications—Avidemux, LibreOffice, GIMP, and Visual Studio Express—automatically from the startup folder. Our old boot tests focused on the time required to load the OS, but these new ones cover the entire process, including drive initialization.

The MX300 boots up quickly and without fuss. As we’ve been saying for years, getting any SSD at all is about as much as you can do to improve startup times. The MX300 would do nicely if any of you are somehow still plodding along on spinning platters.

Load times

Next, we’ll tackle load times with two sets of tests. The first group focuses on the time required to load larger files in a collection of desktop applications. We open a 790MB 4K video in Avidemux, a 30MB spreadsheet in LibreOffice, and a 523MB image file in the GIMP. In the Visual Studio Express test, we open a 159MB project containing source code for the LLVM toolchain. Thanks to Rui Figueira for providing the project code.

Again, nothing out of the ordinary here. Application load times are absurdly predictable across all manner of SSDs. Let’s check how quickly the MX300 launches some of our Steam games.

Middlingly quickly, it turns out. Game loading time has never been a great way to tease out differences in SSD performance, and today is not the day it becomes one.

That’s all of our tests. Hit the next page for a breakdown of our test setup. Or skip right ahead to the conclusion.

Test notes and methods

Here are the essential details for all the drives we tested:

Interface Flash controller NAND Crucial BX100 500GB SATA 6Gbps Silicon Motion SM2246EN 16-nm Micron MLC Crucial BX200 480GB SATA 6Gbps Silicon Motion SM2256 16-nm Micron TLC Crucial MX200 500GB SATA 6Gbps Marvell 88SS9189 16-nm Micron MLC Crucial MX300 750GB SATA 6Gbps Marvell 88SS1074 32-layer Micron 3D TLC Intel X25-M G2 160GB SATA 3Gbps Intel PC29AS21BA0 34-nm Intel MLC Intel 335 Series 240GB SATA 6Gbps SandForce SF-2281 20-nm Intel MLC Intel 730 Series 480GB SATA 6Gbps Intel PC29AS21CA0 20-nm Intel MLC Intel 750 Series 1.2TB PCIe Gen3 x4 Intel CH29AE41AB0 20-nm Intel MLC Intel DC P3700 800GB PCIe Gen3 x4 Intel CH29AE41AB0 20-nm Intel MLC Mushkin Reactor 1TB SATA 6Gbps Silicon Motion SM2246EN 16-nm Micron MLC OCZ Arc 100 240GB SATA 6Gbps Indilinx Barefoot 3 M10 A19-nm Toshiba MLC OCZ Trion 100 480GB SATA 6Gbps Toshiba TC58 A19-nm Toshiba TLC OCZ Trion 150 480GB SATA 6Gbps Toshiba TC58 15-nm Toshiba TLC OCZ Vector 180 240GB SATA 6Gbps Indilinx Barefoot 3 M10 A19-nm Toshiba MLC OCZ Vector 180 960GB SATA 6Gbps Indilinx Barefoot 3 M10 A19-nm Toshiba MLC Plextor M6e 256GB PCIe Gen2 x2 Marvell 88SS9183 19-nm Toshiba MLC Samsung 850 EV0 250GB SATA 6Gbps Samsung MGX 32-layer Samsung TLC Samsung 850 EV0 1TB SATA 6Gbps Samsung MEX 32-layer Samsung TLC Samsung 850 Pro 500GB SATA 6Gbps Samsung MEX 32-layer Samsung MLC Samsung 950 Pro 512GB PCIe Gen3 x4 Samsung UBX 32-layer Samsung MLC Samsung SM951 512GB PCIe Gen3 x4 Samsung S4LN058A01X01 16-nm Samsung MLC Samsung XP941 256GB PCIe Gen2 x4 Samsung S4LN053X01 19-nm Samsung MLC Toshiba OCZ RD400 512GB PCIe Gen3 x4 Toshiba 15-nm Toshiba MLC Transcend SSD370 256GB SATA 6Gpbs Transcend TS6500 Micron or SanDisk MLC Transcend SSD370 1TB SATA 6Gpbs Transcend TS6500 Micron or SanDisk MLC

All the SATA SSDs were connected to the motherboard’s Z97 chipset. The M6e was connected to the Z97 via the motherboard’s M.2 slot, which is how we’d expect most folks to run that drive. Since the XP941 and 950 Pro requires more lanes, they were connected to the CPU via a PCIe adapter card. The 750 Series and DC P3700 were hooked up to the CPU via the same full-sized PCIe slot.

We used the following system for testing:

Processor Intel Core i5-4690K 3.5GHz Motherboard Asus Z97-Pro Firmware 2601 Platform hub Intel Z97 Platform drivers Chipset: 10.0.0.13 RST: 13.2.4.1000 Memory size 16GB (2 DIMMs) Memory type Adata XPG V3 DDR3 at 1600 MT/s Memory timings 11-11-11-28-1T Audio Realtek ALC1150 with 6.0.1.7344 drivers System drive Corsair Force LS 240GB with S8FM07.9 firmware Storage Crucial BX100 500GB with MU01 firmware Crucial BX200 480GB with MU01.4 firmware Crucial MX200 500GB with MU01 firmware Intel 335 Series 240GB with 335u firmware Intel 730 Series 480GB with L2010400 firmware Intel 750 Series 1.2GB with 8EV10171 firmware Intel DC P3700 800GB with 8DV10043 firmware Intel X25-M G2 160GB with 8820 firmware Plextor M6e 256GB with 1.04 firmware OCZ Trion 100 480GB with 11.2 firmware OCZ Trion 150 480GB with 12.2 firmware OCZ Vector 180 240GB with 1.0 firmware OCZ Vector 180 960GB with 1.0 firmware Samsung 850 EVO 250GB with EMT01B6Q firmware Samsung 850 EVO 1TB with EMT01B6Q firmware Samsung 850 Pro 500GB with EMXM01B6Q firmware Samsung 950 Pro 512GB with 1B0QBXX7 firmware Samsung XP941 256GB with UXM6501Q firmware Transcend SSD370 256GB with O0918B firmware Transcend SSD370 1TB with O0919A firmware Power supply Corsair AX650 650W Case Fractal Design Define R5 Operating system Windows 8.1 Pro x64

Thanks to Asus for providing the systems’ motherboards, to Intel for the CPUs, to Adata for the memory, to Fractal Design for the cases, and to Corsair for the system drives and PSUs. And thanks to the drive makers for supplying the rest of the SSDs.

We used the following versions of our test applications:

IOMeter 1.1.0 x64

TR RoboBench 0.2a

Avidemux 2.6.8 x64

LibreOffice 4.3.2

GIMP 2.8.14

Visual Studio Express 2013

Batman: Arkham Origins

Tomb Raider

Middle Earth: Shadow of Mordor

Some further notes on our test methods:

To ensure consistent and repeatable results, the SSDs were secure-erased before every component of our test suite. For the IOMeter database, RoboBench write, and RoboBench copy tests, the drives were put in a simulated used state that better exposes long-term performance characteristics. Those tests are all scripted, ensuring an even playing field that gives the drives the same amount of time to recover from the initial used state.

We run virtually all our tests three times and report the median of the results. Our sustained IOMeter test is run a second time to verify the results of the first test and additional times only if necessary. The sustained test runs for 30 minutes continuously, so it already samples performance over a long period.

Steps have been taken to ensure the CPU’s power-saving features don’t taint any of our results. All of the CPU’s low-power states have been disabled, effectively pegging the frequency at 3.5GHz. Transitioning between power states can affect the performance of storage benchmarks, especially when dealing with short burst transfers.

The test systems’ Windows desktop was set at 1920×1080 at 60Hz. Most of the tests and methods we employed are publicly available and reproducible. If you have questions about our methods, hit our forums to talk with us about them.