For a long time, the NVMe interface was associated with breakneck speeds and top-dollar drives. But the technology has lost some of its new shiny as it’s aged and become available in off-the-shelf controllers from companies like Marvell and Silicon Motion. It’s only natural for any technology to go through this kind of maturity, of course. Though the “A” in AHCI may as well stand for “ancient” these days, that standard was itself a revolutionary improvement when it arrived to slap the IDE ecosystem in the face.
As NVMe becomes more quotidian, SSD manufacturers have begun introducing drives equipped with the protocol at lower price points. The days of NVMe-seekers having to shell out $1000 for a data-center-derived Intel 750 Series drive are long gone. Toshiba has proven in the past that it has the chops to make high-performance NVMe products with its excellent OCZ RD400 SSD and its OEM-only XG5 drive. The company’s latest client SSD, however, is a completely different beast. Have a squint at the minute RC100.
Don’t be fooled by its footprint. This tiny thing is PCIe-powered and NVMe-enabled, but in an adorable M.2 2242 package instead of the 2280 form factor we’re more accustomed to. SSDs in M.2 2242 sizes are quite unusual, and the RC100 may be the sole option that takes advantage of the next-gen protocol. The RC100 comes in three flavors, the largest of which found its way into our storage labs recently.
|Capacity||Max sequential (MB/s)||Max random (IOps)||Suggested
This drive is not about to take the XG5s and 970 EVOs of the world by storm. It has no DRAM cache and can only take advantage of two lanes of PCIe Gen3 bandwidth. There’s no doubt that those facts gather clouds over the RC100’s performance potential, but theoretically Toshiba is passing the savings from the drive’s reduced bill of materials down to us little guys. The goal here is to make the benefits of NVMe more accessible.
The RC100’s controller knows a fancy trick that may offset the performance penalty of skipping an onboard cache, too. When the 1.2 revision of the NVMe specification was ratified back in 2014, it included a new feature called the Host Memory Buffer. What’s an innocent SSD controller to do if the manufacturer left RAM out of the bill of materials? If only there was a large pool of high-speed memory available somewhere else in the PC, like system RAM.
To put it succinctly, HMB allows an SSD to commandeer a slice of the host’s RAM for its own purposes. Once the host yields the requested portion, that memory is reserved for the SSD controller’s use until the controller decides to give it back. This black magic requires driver support, and Microsoft added HMB into its NVMe driver with the Fall Creators Update (or version 1709) of Windows 10. HMB support also seems to have been added to the Linux kernel in the 4.14 release.
Underneath the RC100’s sticker, there’s remarkably little to see. It’s a BGA SSD, so its NAND and controller are stacked in a single package. This technique and the lack of DRAM are what afford the drive its small form factor. As usual, Toshiba is loath to share controller details, but is happy to describe the NAND as the company’s 64-layer BiCS TLC flash.
The RC100 480GB was launched with a suggested price of $155, which is exactly what Newegg is charging right now. Toshiba’s warranty lasts for three years or up to 240 terabytes written. That would be an impressively low price for an NVMe drive but for the fact that NAND flash prices seem to be tanking of late. Fully-fledged value NVMe favorites, like Adata’s own SX8200, are readily available for as little as $160 right now. That means the RC100’s value cred isn’t quite as strong as it was when it launched a little while ago.
Let’s get into testing. The RC100 may be short and stubby, but sometimes good things come in small packages.
Surprise! Well, not much of a surprise if you’ve been paying attention. This review is the first we’re conducting with a refreshed storage testing hardware setup, detailed on our updated test methods page. Our Haswell-powered Intel Z97 storage rig was getting long in the tooth, and as more and more NVMe drives passed through our hands, that system refused to boot with more and more of them as the primary drive. We were also stuck with Windows 8.1 to maintain consistency with the rest of our test results, and that fact made our numbers increasingly out-of-step with the growing proportion of Windows 10 PCs out there.
Happily, we have plenty of hardware to go around in the TR labs. Upgrading to Intel’s Core i7-6700K CPU and Gigabyte’s Aorus Z270X-Gaming 5 motherboard gives us a number of quality-of-life improvements. We can finally retire the Asus Hyper M.2 PCIe adapter card we were using to test PCIe drives, since the new motherboard supplies full-bore M.2 slots natively. Additionally, we should be able to do just about anything we want to with Intel Optane devices, which was not the case when we attempted to test them with the old rig.
Of course, changing hardware also presents the perfect opportunity to update our testing software platform as well, since our previous results are all invalid now anyway. The test image is now Windows 10 Pro, fully up-to-date on version 1803. This was particularly important for this review, as Microsoft never back-ported HMB support to the WIndows 8.1 NVMe driver.
Another notable effect of the update is that we can account for mitigation against side-channel speculative-execution attacks. With Gigabyte’s latest firmware installed and a bevy of Windows updates applied, we’re as protected from Spectre and Meltdown as we can be. Not because we’re worried about getting pwned, of course, but because the mitigations will likely result in observable performance implications for directed storage testing.
As for the test suite, it’s mostly the same for the time being. You’ll see the same IOMeter and RoboBench tests you’ve grown accustomed to over the last few years. Load tests have changed a little—we’ve updated the four applications we use in those tests to their latest versions. Additionally, we’ve shifted focus on what we’re measuring. The old tests began after each application was already running and only started the timer when a file began loading. We’ve switched to measuring the total time of an application starting up and loading its file.
The way we measure game loading times is unchanged. However, since I assembled this test image myself instead of using a hand-me-down from former TR storage editor Geoff Gasior, the games are running from my Steam account and thus my save files. Thus, the levels or areas that the games are loading into are a different set than we saw with Geoff’s old saves.
Without further ado, let’s see how the RC100 stands up to our test suite on our brand-new test rig.
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 128-KB block size.
The RC100’s sequential speeds are decidedly SATA-ish at QD1. That’s an important place to pay attention. As we noted, most desktop workloads aren’t going to spawn more than a couple worker threads to disk. The RC100’s read speeds surge to respectable NVMe levels at QD4, but writes remain stagnant. As an aside, the SX8200 is a beast at QD4, breaking 3000 MB/s. The highest any drive managed to scrape on the old rig was around 2300 MB/s.
The RC100’s random read response times are acceptable, if slower than its fellows. Its write response times are flabby, however, doubling those of the venerable SATA 3Gbps Intel X25-M G2.
The RC100 is off to a rocky start. Our synthetic IOMeter tests show no mercy.
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 that 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.
It’s worth noting once more that our sustained test is a worst-case scenario not typical of client workloads. That said, the RC100’s sustained performance barely gets off the runway. The drive’s peak performance is rather low in this company, as well.
HMB be darned. Hammer a drive with writes for long enough and you’ll see past the fancy tricks. With no DRAM cache to sustain it, we’re likely looking at the raw performance of the RC100’s 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 drive in a simulated used state. Click the buttons below the graph to switch between the different drives. And note that each drive uses a different scale to allow us to view the shape of its curves.
Effectively, the RC100 exhibits no scaling. There’s a bit of upward trend, sure, but the biggest delta is only about 100 IOps. The next graphs will make this clearer.
With the y-axis scale increased to accommodate its competitors’ much higher numbers, the RC100 looks totally flat. To be fair, nobody is going to be slapping the RC100 in a database server, but it’s possible to get better performance for that kind of thing even from less-expensive SATA storage.
This page was an unqualified drubbing for the RC100. As always, though, bear in mind that our IOMeter test methods are designed to expose worst-case performance. There’s hope yet.
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|
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.
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.
Let’s take a look at the media set first. The buttons switch between read, write, and copy results.
The RC100’s real-world read speeds are impressive, but its write speeds still disappoint. The MX500 beats it handily. The RC100’s prodigious read-speed advantage still gives it the edge when it comes to copying, though.
Next, the work set.
The work set results in a much tighter spread than the media set. The RC100’s write speeds at 8T are slow, but otherwise it turns in a reasonable performance that’s in line with the NVMe competition.
RoboBench didn’t entirely redeem the RC100, but it also didn’t flatten the drive the way IOMeter did. Our last page of tests will outfit the RC100 as primary storage to measure its boot and load 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—automatically from the startup folder. These tests cover the entire boot process, including drive initialization.
We’ve found the RC100’s first chart-topping performance! The little drive manages a compelling victory over the others in the loaded boot test. The bare test was a wash, except for a lazy showing from the MX500.
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 790-MB 4K video in Avidemux, a 30-MB spreadsheet in LibreOffice, and a 523-MB image file in the GIMP. In the Visual Studio Express test, we open a 159-MB project containing source code for Microsoft’s PowerShell.
Load times for the first three programs are recorded using PassMark AppTimer. AppTimer’s load completion detection doesn’t play nice with Visual Studio, so we’re still using a stopwatch for that one.
Something is exposing a slightly wider spread of results in our load times. It’s hard to say whether it’s the new rig or our new metric for loading times, but the separation is welcome. Unfortunately for the RC100, the spread is not in its favor, but it’s worth noting that we’re talking fractions of a second here regardless.
Games are kinder to the Toshiba. Arkham City gives the drive its second first-place prize, but it has to share the honors with the 970 EVO.
And now we’re fresh outta tests. The next page outlines our test hardware and methods.
Test notes and methods
Here are the essential details for all the drives we tested:
|Adata XPG SX8200 480GB||PCIe Gen3 x4||Silicon Motion SM2262||64-layer Micron 3D TLC|
|Crucial MX500 500GB||SATA 6Gbps||Silicon Motion SM2258||64-layer Micron 3D TLC|
|Intel X25-M G2 160GB||SATA 3Gbps||Intel PC29AS21BA0||34-nm Intel MLC|
|Samsung 970 EVO 1TB||PCIe Gen3 x4||Samsung Phoenix||64-layer Samsung TLC|
|Toshiba RC100||PCIe Gen3 x2||Toshiba||64-layer Toshiba BiCS TLC|
The SATA SSDs were connected to the motherboard’s Z270 chipset. The PCIe drives were connected via one of the motherboard’s M.2 slots, which also draw their lanes from the Z270 chipset.
We used the following system for testing:
|Processor||Intel Core i7-6700K|
|Motherboard||Gigabyte Aorus Z270X-Gaming 5|
|Memory size||16 GB (2 DIMMs)|
|Memory type||Corsair Vengeance LPX DDR4 at 2133 MT/s|
|System drive||Corsair Force LS 240GB with S8FM07.9 firmware|
|Power supply||Rosewill Fortress 550W|
|Operating system||Windows 10 x64 1803|
Thanks to Gigabyte for providing the system’s motherboards, to Intel for the CPU, to Corsair for the memory and system drive, and to Rosewill for the PSU. 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
- Passmark AppTimer 1.0
- Avidemux 2.7.1 x64
- GIMP 2.10.0
- LibreOffice 188.8.131.52
- Visual Studio Community 2017 15.7.4
- 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 4.0GHz. 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×1200 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.
The RC100 faced its share of struggles throughout our test suite. We distill the overall performance rating using an older SATA SSD as a baseline. To compare each drive, we then take the geometric mean of a basket of results from our test suite.
Well, the bad news is that the RC100 is beat out by the lower-priced MX500. The good news is that it beats the ancient Intel X25-M by a lot. You never want to see PCIe drives losing to mere SATA ones, so even HMB can’t save the RC100. The one thing that could possibly redeem it is a low price tag. Let’s see what the landscape looks like for the drives we tested.
The RC100 comes around at a rough time. Its $155 asking price is certainly a bit lower than the suggested prices of its higher-end competitors, but recent tides in the NAND flash market have shifted strong performers to compelling street prices. Of course, our geometric mean conceals situations where the RC100 shines against the MX500 500 GB, but Crucial’s drive is only slightly slower in real-world testing, and it’s available for an enticing $110. Newegg had Adata’s SX8200 480 GB for an absurdly low sale price of $130 when I checked in for this article, but over the course of writing this review it appears to have sold out. You’ll have to settle for $160 at Amazon instead. Suffice it to say that the RC100 has plenty of higher-octane competition near its asking price.
For the time being, the RC100 may appeal to a niche audience. We aren’t set up for power consumption testing, but the drive’s BGA design and lack of DRAM should make it especially easy on the electric bill. Its diminutive stature might also allow it to fit into laptops that only offer an M.2 2242 slot or more exotic custom small-form-factor builds. But at the end of the day, the RC100 can’t conclusively outclass drives built on older and slower technologies. It will take a round or two of sticker slashing before Toshiba’s pint-size drive becomes an attractive purchase for a general audience.