Original Link: http://www.anandtech.com/show/2865
The SSD Improv: Intel & Indilinx get TRIM, Kingston Brings Intel Down to $115by Anand Lal Shimpi on November 17, 2009 7:00 PM EST
- Posted in
Update 2: Intel has given us an updated timeframe on a fixed version of its TRIM firmware. Intel will release the new firmware by the end of November 2009. More info here.
Update: Some users have had issues with Intel's TRIM firmware bricking their drives, Intel has since pulled the firmware while they figure out what's going on. If you've downloaded it but haven't updated, do so at your own risk. While we haven't had any issues on the three drives we've updated here others have had problems. We'll keep you posted. Intel's official statement is below:
“Yes, we have been contacted by users with issues with the firmware upgrade and are investigating. We take all sightings and issues seriously and are working toward resolution. We have temporarily taken down the firmware link while we investigate.”
Welcome to the anti-climax. After a year of talking about it, Windows 7 and TRIM are here. How does it feel to be a TRIMionaire?
Indilinx, as usual, was first. After a couple of false starts, the two tier 1 Indilinx partners (SuperTalent and OCZ) enabled TRIM on their Barefoot SSDs (OCZ Vertex, SuperTalent UltraDrive). OCZ calls its TRIM firmware 1.40 while SuperTalent calls it 1819. Update:As many of you have correctly pointed out, Crucial also has an 1819 update available for its SSDs. You can get the firmware for your drive from the links here:
|TRIM Firmware Download|
|SuperTalent||UltraDrive GX 1819|
|OCZ||Vertex /Agility 1.40 |
Intel held off to align with the release of Windows 7. Last week Windows 7 officially went on sale, and today Intel is delivering on its promise: this bootable iso will enable TRIM on X25-M G2 drives.
Only the X25-M G2 gets TRIM, the G1 (right) is left in the dust. The G1 is more resilient than the G2 when it comes to performance degradation over time since it doesn't have TRIM.
Alongside TRIM there’s one more surprise. If you own a 160GB X25-M G2, Intel boosted sequential write speeds from 80MB/s to 100MB/s:
The 80GB drives remain unchanged unfortunately. Intel still won’t tell us why write speeds are so low to begin with.
What TRIM Does
SSDs are made up of millions of NAND flash cells. They can be written to in groups called pages (generally 4KB in size) but can only be erased in larger groups called blocks (generally 128 pages or 512KB). These stipulations are partially the source of many SSD performance issues.
The whole ordeal gets more complicated when you realize that an SSD has no way of knowing when a file is deleted. Until an address gets used again, the SSD has to keep track of every last bit of data that’s written to it. The ATA-TRIM instruction tilts the balance in favor of the SSD.
In a supported OS (e.g. Windows 7), whenever you permanently delete a file or format your drive, the addresses that are erased are sent along with the TRIM command to the SSD’s controller. The TRIM instruction tells the SSD that those locations don’t contain valid data and that it no longer has to track them.
Simplified version of how a SSD controller works. TRIM helps the SSD clean blocks and add them to the free block pool
Again, I won’t go into great detail here but TRIM addresses a major part of the performance degradation over time issue that plague all SSDs. A TRIM enabled drive running an OS with TRIM support will stay closer to its peak performance over time.
A firmware update gives you TRIM support, but we should probably test to make sure it's actually working.
First up, the Intel X25-M G2 with the TRIM firmware. I ran a 4KB random write test across the entire 80GB LBA space for five minutes. I ran the test again afterwards and recorded the average transfer rate for each run:
|4KB Random Write, IOQ=16||Run 1||Run 2|
|Intel X25-M 80GB TRIM Firmware||37.9 MB/s||13.8 MB/s|
As expected, performance goes down as the drive fills up. The second run is much slower than the first.
Now look at the two runs if we format the drive in between. The format under Windows 7 triggers a TRIM of all invalid data, meaning all the jibberish we generated in the first run is gone and the second run now runs at full speed:
|4KB Random Write, IOQ=16||Run 1||Run 2 after Format|
|Intel X25-M 80GB TRIM Firmware||37.9 MB/s||38.0 MB/s|
Obviously you don’t usually write a bunch of garbage to your drive then format and repeat, but we’re trying to confirm that TRIM works here; it does. Windows 7 will actually take noticeably longer to format a drive that supports TRIM and has data on it. It still completes in less than 30 seconds on these SSDs, but it's a lot longer than the few seconds it used to take before TRIM.
This confirms that TRIM works on a format, but what about if you delete a partition? To find out I created a partition on my X25-M G2, filled it with data, deleted the partition and ran my 4KB random write test across all LBAs. If deleting a partition forces TRIM I should see new-performance out of the G2:
|4KB Random Write, IOQ=16||Run 1||Run 2 after Deleting Partition|
|Intel X25-M 80GB TRIM Firmware||37.9 MB/s||17.9 MB/s|
Performance drop. Formatting a partition causes the contents to be TRIMed, but just deleting a partition doesn’t. This means if you accidentally delete a partition you can still retrieve your data, however there’s no way to go back from a format.
What about file deletion? I performed the same test. Created a partition, filled it with garbage but then deleted the garbage before deleting the partition and running my 4KB random write test. Deleting data should force a TRIM:
|4KB Random Write, IOQ=16||Run 1||Run 2 after Deleting All Files|
|Intel X25-M 80GB TRIM Firmware||37.9 MB/s||40.4 MB/s|
Indeed it does. You no longer have to worry about performance dropping over time. When you delete a file it’ll eventually be nixed on the SSD as well. Below we have the actions that will force a TRIM of data under Windows 7:
|Windows 7||File Delete||Partition Format||Partition Delete|
Formatting your drive now actually does something. You no longer have to boot to DOS and secure erase your SSD before installing Windows, just quick format the partition before installing Windows 7.
I performed the same tests on an Indilinx MLC based SSD, this time a SuperTalent UltraDrive GX with the 1819 TRIM-enabled firmware. The results were identical:
|4KB Random Write, IOQ=16||Run 1||Run 2||After Format||After File Delete|
|SuperTalent (Indilinx) UltraDrive GX TRIM Firmware v1819||17.8 MB/s||14.1 MB/s||17.8 MB/s||17.8 MB/s|
We have TRIM working on both Indilinx (from SuperTalent/OCZ) and Intel drives. Sweet.
Wipe When You Can’t TRIM
There’s a major problem with TRIM today. The only Windows storage drivers to support it are written by Microsoft. The Intel Matrix Storage Manager (IMSM) driver will not pass the TRIM instruction to your SSD. This means you can't use anything but the drivers that ship with Windows 7. To make matters worse, if you enable non-member RAID on an Intel motherboard the default Windows 7 driver is an older version of IMSM so TRIM won't work there either - even if you don't have a RAID array created. Your best bet is to install Windows 7 with your I/O controller in AHCI mode (for Intel chipsets) and don't install any storage drivers. Intel is working on an updated IMSM that will pass the TRIM instruction to SSDs but it won't be ready for at least a couple of months.
TRIM won't work on a RAID array.
If you want to use IMSM or if you're using Windows XP or Vista, both of which do not support TRIM, there's another option. Earlier this year Indilinx released its Wiper Tool that performs a manual TRIM on their SSDs. It works by asking the OS for a list of the free space addresses on the partition and then sending the list with instructions to TRIM down to the SSD.
The Indilinx Wiper Tool
Today Intel introduces its own manual TRIM tool as a part of the SSD Toolbox:
On any Windows OS (XP, Vista or 7) regardless of what driver you have installed, Intel's SSD Toolbox will allow you to manually TRIM your drive. Intel calls it the SSD Optimizer, which of course only works on 34nm Intel SSDs (X25-M G1 owners are out of luck unfortunately).
The Intel SSD Optimizer lets you schedule the manual TRIM operation automatically
The SSD Toolbox also gives you access to SMART and drive health data, including telling you how many writes you've performed on your SSD, and what your current flash wear level is:
Running Intel's SSD Optimizer does work as advertised. I ran the PCMark HDD suite on a clean X25-M, once more on a drive that had been well used and once more after running the SSD Optimizer:
|PCMark Vantage HDD Score||Clean Run||Used Run||After SSD Optimizer|
|Intel X25-M G2 160GB||35909||30354||34014|
Intel's SSD Optimizer should be able to restore performance to about 95%+ of new, in this case it manages 94.7% - close enough.
Moving On: Forget About Invalid Data and Worry About Free Space
The existence of TRIM changes the way we test, something I alluded to in the SSD Relapse. Thankfully, we come prepared.
In previous articles we had to test SSDs in two conditions: new and used. The new state is just after a secure erase, the used state required us to write data to every user accessible portion of the drive first before benchmarking. The former resulted in great performance, the latter meant the SSD had to do a lot of juggling of existing data whenever it went to write. The second scenario no longer exists with TRIM. The act of formatting your drive or deleting files (and emptying the recycle bin) will TRIM invalid data.
Performance in a TRIM enabled system is now determined not by the number of invalid blocks on your SSD, but rather the amount of free space you have. I went into a deep explanation of the relationship between free space and the performance of some SSDs here.
TRIM will make sure that you don’t have to worry about your drive filling up with invalid data, but it doesn’t skirt the bigger issue: dynamic controllers see their performance improve with more free space.
My rule of thumb is to keep at least 20% free space on your drive, you can get by with less but performance tends to suffer. It doesn’t degrade by the same amount for all drives either. Some controllers are more opportunistic with free space (e.g. Intel), while others don’t seem to rely as much on free space for improved performance. Addressing performance degradation as drives fill up (with valid data) will be one of the next major advancements in SSD technology.
Kingston Delivers the First Good Sub-$100 SSD (after Rebate)
I’m not sure what sort of sweetheart deal Intel inked with Kingston, but it’s paying off. Other than Hitachi, Kingston is the only company allowed to use Intel’s controllers in their SSDs. And today, it gets even more interesting. The Kingston SSDNow V Series 40GB Boot Drive is a 34nm X25-M G2 with only 40GB of MLC NAND Flash on it.
You read that right, Kingston gets to make a 40GB X25-M G2 under its own brand.
Kingston wants this to be specifically used for your OS and applications, where the speedy launch performance of an SSD is most useful. You’d keep your games, data and other large files on a separate hard drive. Why 40GB? To keep costs down of course. The Kingston drive goes on sale starting November 9th. The MSRP of the drive will be $115 ($130 with a 2.5” to 3.5” drive adapter), Kingston is offering a rebate through Newegg that will apparently drop the price to $84.99.
Kingston’s goal was to hit the sub-$100 price point and they did it, sort of. I’m not a big fan of mail-in rebates, and it remains to be seen if Newegg can keep the drive in stock at those prices, but the intention is good.
Only 5 devices means the Intel controller works in 5-channel mode, instead of 10-channel like the X25-M G2
While the drive uses an Intel 34nm X25-M controller and 34nm flash, it doesn’t have the latest firmware from Intel, which means it doesn’t support TRIM. Since it’s technically not an Intel drive you can’t update it using the firmware I linked to earlier. The drive will most likely eventually get TRIM support, just not now. Unfortunately it doesn't even work with Intel's SSD Toolbox, again, because it's technically a Kingston drive.
With only half the NAND flash of an 80GB X25-M (only five NAND devices on board), its sequential write speeds are cut in half - Kingston rates the drive at 40MB/s. Random performance suffers a bit, but sequential write performance sees the biggest hit.
If you've already got a large hard drive for games/data and don't have that many apps installed, the Kingston 40GB SSD is a perfect way to move to an SSD affordably.
|CPU||Intel Core i7 965 running at 3.2GHz (Turbo & EIST Disabled)|
|Motherboard:||Intel DX58SO (Intel X58) |
|Chipset:|| Intel X58 |
|Chipset Drivers:||Intel 188.8.131.525 + Intel IMSM 8.9|
|Memory:||Qimonda DDR3-1066 4 x 1GB (7-7-7-20)|
|Video Card:||eVGA GeForce GTX 285|
|Video Drivers:||NVIDIA ForceWare 190.38 64-bit|
|Desktop Resolution:||1920 x 1200|
|OS:||Windows 7 x64|
Sequential Read/Write Speed
Using the latest build of Iometer I ran a 3 minute long 2MB sequential write test over the entire span of the drive. The results reported are in average MB/s over the entire test length:
I ruined the surprise earlier, but the X25-M G2 160GB can now write at speeds of up to 100MB/s. The 80GB version doesn't get the benefit. The rest of the SSDs are approaching 2x that performance however. The poor Kingston drive is limited by its 5-channel implementation and barely manages more than 40MB/s. This will keep the Kingston SSDNow V series from cannibalizing X25-M sales, while at the same time offering a taste of what good SSDs have to offer at lower price points.
We're nearly tapped out on sequential read speed. The new TRIM firmware appears to drop performance a bit but not much. SATA 6Gbps will be necessary before we can see higher sequential read speeds from a single SSD.
True to Kingston's claims, the SSDNow V 40GB pulls around 170MB/s thanks to its narrower configuration. Not within arm's reach of the more expensive SSDs but still much faster than a mechanical drive.
Random Read/Write Speed
This test writes 4KB in a completely random pattern over an 8GB space of the drive to simulate the sort of random writes that you'd see on an OS drive (even this is more stressful than a normal desktop user would see). I perform three concurrent IOs and run the test for 3 minutes. The results reported are in average MB/s over the entire time:
Random write speed looks to be a bit better with the new firmware. The 80GB G2 being a little faster than the 160GB version for some reason. With enough free space, the Kingston SSDNow V performs similarly to a non-TRIM enabled X25-M G2.
Overall System Performance using PCMark Vantage
Next up is PCMark Vantage, another system-wide performance suite. For those of you who aren’t familiar with PCMark Vantage, it ends up being the most real-world-like hard drive test I can come up with. It runs things like application launches, file searches, web browsing, contacts searching, video playback, photo editing and other completely mundane but real-world tasks. I’ve described the benchmark in great detail before but if you’d like to read up on what it does in particular, take a look at Futuremark’s whitepaper on the benchmark; it’s not perfect, but it’s good enough to be a member of a comprehensive storage benchmark suite. Any performance impacts here would most likely be reflected in the real world.
The overall impact of the TRIM firmware is negligable, no real improvements here - something you'll see echoed in nearly all of the PCMark results. The 40GB Kingston drive does well for its price, delivering performance similar to an Indilinx drive as it is crippled by a small amount of free space.
The memories suite includes a test involving importing pictures into Windows Photo Gallery and editing them, a fairly benign task that easily falls into the category of being very influenced by disk performance.
The TV and Movies tests focus on on video transcoding which is mostly CPU bound, but one of the tests involves Windows Media Center which tends to be disk bound.
The gaming tests are very well suited to SSDs since they spend a good portion of their time focusing on reading textures and loading level data. All of the SSDs dominate here, but as you'll see later on in my gaming tests the benefits of an SSD really vary depending on the game. Take these results as a best case scenario of what can happen, not the norm.
In the Music suite the main test is a multitasking scenario: the test simulates surfing the web in IE7, transcoding an audio file and adding music to Windows Media Player (the most disk intensive portion of the test).
The Communications suite is made up of two tests, both involving light multitasking. The first test simulates data encryption/decryption while running message rules in Windows Mail. The second test simulates web surfing (including opening/closing tabs) in IE7, data decryption and running Windows Defender.
I love PCMark's Productivity test; in this test there are four tasks going on at once, searching through Windows contacts, searching through Windows Mail, browsing multiple webpages in IE7 and loading applications. This is as real world of a scenario as you get and it happens to be representative of one of the most frustrating HDD usage models - trying to do multiple things at once. There's nothing more annoying than trying to launch a simple application while you're doing other things in the background and have the load take forever.
The final PCMark Vantage suite is HDD specific and this is where you'll see the biggest differences between the drives:
Introducing the AnandTech Storage Bench - Real World Performance Testing
Finding good, real world, storage benchmarks is next to impossible. The synthetic tests work up to a certain point but you need real world examples. Measuring performance in individual applications often ends up with charts like these where all of the drives perform identically. Benchmark suites like PCMark Vantage are the best we can do, but they are a bit too easy on these drives in my opinion and while representative of a real world environment, they aren’t necessarily representative of all real world environments.
Recently we’ve been able to get our hands on a piece of software that allows us to record all disk activity on a machine and then play it back on any other machine. The point is that we can now model a real world usage scenario without waiting for BAPCo or Futuremark to do it for us.
Our benchmarks debut here, today, and we’re starting with three. We haven’t had time to run all of the SSDs through this new suite so we’ll start with an abridged list.
The first in our new benchmark suite is a light usage case. The Windows 7 system is loaded with Firefox, Office 2007 and Adobe Reader among other applications. With Firefox we browse web pages like Facebook, AnandTech, Digg and other sites. Outlook is also running and we use it to check emails, create and send a message with a PDF attachment. Adobe Reader is used to view some PDFs. Excel 2007 is used to create a spreadsheet, graphs and save the document. The same goes for Word 2007. We open and step through a presentation in PowerPoint 2007 received as an email attachment before saving it to the desktop. Finally we watch a bit of a Firefly episode in Windows Media Player 11.
There’s some level of multitasking going on here but it’s not unreasonable by any means. Generally the application tasks proceed linearly, with the exception of things like web browsing which may happen in between one of the other tasks.
The recording is played back on all of our drives here today. Remember that we’re isolating disk performance, all we’re doing is playing back every single disk access that happened in that ~5 minute period of usage. The light trace is composed of 37,501 reads and 20,268 writes. Over 30% of the IOs are 4KB, 11% are 16KB, 22% are 32KB and approximately 13% are 64KB in size. Less than 30% of the operations are absolutely sequential in nature. Average queue depth is 6.09 IOs.
The performance results are reported in I/O Operations per Second (IOPS):
The hard drives set the minimum level of expectations here, the VelociRaptor only manages 137 IOPS. The fastest SSD is the X25-M G2 with the TRIM firmware installed at nearly 800 IOPS. The improvement over the older firmware is 6.25% thanks to the higher sequential write speed. The G2 is a bit faster than the G1 here, but what’s most interesting is how well the competing SSDs do.
Corsair’s P256 based on the Samsung RBX controller is very close to the performance of Intel’s X25-M G1 at 664 IOPS. It even outperforms the Indilinx MLC based OCZ Vertex by around 8%.
The Kingston 40GB drive is hampered by its small amount of free space. The actual benchmark takes up around 33GB of space, leaving very little breathing room for the baby SSD. That being said, the hopefully $85 bugger is nearly 4x the speed of a VelociRaptor.
If there’s a light usage case there’s bound to be a heavy one. In this test we have Microsoft Security Essentials running in the background with real time virus scanning enabled. We also perform a quick scan in the middle of the test. Firefox, Outlook, Excel, Word and Powerpoint are all used the same as they were in the light test. We add Photoshop CS4 to the mix, opening a bunch of 12MP images, editing them, then saving them as highly compressed JPGs for web publishing. Windows 7’s picture viewer is used to view a bunch of pictures on the hard drive. We use 7-zip to create and extract .7z archives. Downloading is also prominently featured in our heavy test; we download large files from the Internet during portions of the benchmark, as well as use uTorrent to grab a couple of torrents. Some of the applications in use are installed during the benchmark, Windows updates are also installed. Towards the end of the test we launch World of Warcraft, play for a few minutes, then delete the folder. This test also takes into account all of the disk accesses that happen while the OS is booting.
The benchmark is 22 minutes long and it consists of 128,895 read operations and 72,411 write operations. Roughly 44% of all IOs were sequential. Approximately 30% of all accesses were 4KB in size, 12% were 16KB in size, 14% were 32KB and 20% were 64KB. Average queue depth was 3.59.
While I appreciate that Intel improved sequential write speed a bit in the 160GB G2 drives, the heavy trace results show us that it’s not enough. The improvement to the 160GB G2 is tremendous, over 20%. But that only brings the 160GB G2 up to the performance of the Corsair P256 (Samsung RBX). The real winner here is the Indilinx based OCZ Vertex. At nearly 700 IOPS it has the right balance of random and sequential read/write speed for our heavy usage scenario. To quote from the Relapse:
“When I started writing this article I took a big step. I felt that Indilinx drives had reached the point that their performance was good enough to be considered an Intel alternative. I backed up my X25-M, pulled it out, and swapped in an OCZ Vertex drive - into my personal work system. I've been using it ever since and I must admit, I am happy. Indilinx has done it, these drives are fast, reliable (provided that you don't upgrade to the latest firmware without waiting a while) and are good enough.”
This is more than good enough, this is faster than Intel.
Unfortunately Intel has assured me that there’s no additional write speed left on the table for the X25-M G2. We’ll have to wait for the G3 next year to see that addressed.
Kingston’s very low sequential write speed hurts it the most here, the drive actually delivers performance lower than that of a VelociRaptor (although not by much). To be honest, this is a bit of an unfair test for the 40GB drive. It’s far too intense for what would ultimately be an apps/OS drive, but it does highlight the 40GB drive's weakpoints.
Our final test focuses on actual gameplay in four 3D games: World of Warcraft, Batman: Arkham Asylum, FarCry 2 and Risen, in that order. The games are launched and played, altogether for a total of just under 30 minutes. The benchmark measures game load time, level load time, disk accesses from save games and normal data streaming during gameplay.
The gaming trace is made up of 75,206 read operations and only 4,592 write operations. Only 20% of the accesses are 4KB in size, nearly 40% are 64KB and 20% are 32KB. A whopping 69% of the IOs are sequential, meaning this is predominantly a sequential read benchmark. The average queue depth is 7.76 IOs.
The gaming test is almost entirely reads and thus the Intel drives have no weaknesses. The G2s, G1s, TRIM or not, all perform about the same here. They’re about 10% faster than Samsung and 15% faster than Indilinx. Even the 40GB Kingston does just as well here.
TRIM is a huge step forward in SSD maturity and readiness for the masses. There are only so many people who have the patience to listen to a NAND flash explanation to understand why their luxury storage device gets slower the more you use it. TRIM not only simplifies the problem but it makes SSDs work the way they should. When you delete a file TRIM ensures that the file is no longer tracked by the SSD. And it just works.
The driver limitations are a bit annoying, especially given Intel knew this was coming. Difficulty in coordinating schedules is one of the downsides of having such a huge organization.
It's also ridiculous that Intel has done nothing to take care of it's original X25-M G1 customers. Those who spent over $600 on Intel's first SSD deserve to be taken care of but instead they get no TRIM support and no SSD Optimizer. Both of these are things that Indilinx has offered it's customers before Intel. Vertex owners have had a wiper tool since before Intel ever announced intentions to enable TRIM on the G2.
The write speed improvement that the Intel firmware brings to 160GB drives is nice but ultimately highlights a bigger issue: Intel's write speed is unacceptable in today's market. Back when Indilinx first arrived there was no real threat, but today Intel is facing a much more mature group of competitors. Our heavy trace benchmark is a prime example of why this is an issue. I fully expect Intel to address it with the third gen drive next year but it makes buying a drive today unnecessarily complicated.
From a compatibility standpoint, Intel has the advantage. It's just a much larger company than Indilinx and has the ability to do more compatibility/reliability testing.
The performance side is a bit more difficult to break down. The more sequential writing you do to your drive the more you'll stand to benefit from Indilinx's higher write speeds. In nearly all other situations the two controllers perform similarly or Intel is in the lead. The fact that both controllers support TRIM makes it even more difficult.
The easiest way to decide continues to be to buy the largest drive you can afford. 64GB? Indilinx. 80GB? Intel? 128GB? Indilinx and 160GB Intel. If you're buying an Indilinx drive the rate of firmware releases pretty much dictates that you'll want to buy from OCZ or SuperTalent. None of the other Indilinx manufacturers have Windows 7 TRIM support yet (Crucial has now posted a firmware update with TRIM support). The additional testing and exclusive agreements that OCZ/ST have with Indilinx provide their customers a tangible advantage in this case.
Kingston's 40GB option is super interesting. Anyone who's sold on SSDs will probably opt for a bigger drive but if you're on the fence, the Kingston solution might be for you. The write speed is disappointing but for application launches and boot time it's got the speed. If Newegg can keep these things in stock at $85 after rebate it's a gold deal. I'd prefer the price without the rebate but these things are still selling at a premium unfortunately.
Next year SSDs will get even more interesting. I attended a couple of Intel's SSD tracks at IDF this year and got a glimpse into what Intel is working on. Through TRIM and other architectural enhancements Intel is expecting to deliver much higher consistent performance on its future SSDs, regardless of how full they are. We can also expect to see a decoupling of capacity from the number of channels the controller supports; right now Intel has a couple of oddball sizes compared to the competition, but future designs will allow Intel to more closely mimic HDD capacities regardless of controller configuration.
I still firmly believe that an SSD is the single best performance improvement you can buy for your system today. Would I recommend waiting until next year to buy? This is one of the rare cases where I'd have to answer no. I made the switch last year and I wouldn't go back, it really does change the way your PC behaves.