Download the Tom's Hardware App from the App Store
The reference for current tech news
Yes No

Can You Spare Some Performance?

by

TH: OK, for people who might have missed it up until now, what is TRIM?

LT: OK. A characteristic specific to NAND is that you cannot write over a NAND cell that has previously stored data. For example, on your notebook hard drive, let's say you deleted your 2GB iTunes folder. All you’re doing when you delete is just deleting the pointer to that file, right? The data is still physically there on the drive, which is why you can do recovery and things like that later on. But let's say you've got a new batch of data that you're copying. The hard drive is going to look for a space, see that 2GB of free space, and  just copy right over the top of it. On an SSD, that same thing couldn't happen—not quite that way. When you delete that same 2GB iTunes folder from your SSD, you’re still deleting the pointer, but when you try to write back over that area, the SSD won't do it. The NAND cells have to be empty before it will do that. As you probably know, this process is called garbage collection. Now, with TRIM, if you were to delete that same 2GB iTunes folder, Windows 7 would basically tell the drive that there's just been a deletion, so go ahead and clean that 2GB area up. Do it ASAP. Don't wait until I need to make a write. That way, the drive will never have to stumble over invalid data. Is that about right, Tony?

TC: Yes. And actually, TRIM was an improvement even before Windows 7. When you want to write data to a single page, you need to erase the whole block and move the data in that block page to another area. That's why SSD has this built-in write latency that inhibits greater performance. Many previous generations of SSDs, when they first come out, would hang for several seconds when you’d write to them. So even before TRIM was available, a lot of SSD controllers had to implement garbage collection in the firmware. Garbage collection means that when older data is deleted, it creates an indirect table to notify the controller and say, “OK, when you have free time, you can start to move those various data out, erase the block, and make it free for the next time the system wants to write to it.” The TRIM command really just helps the SSD do better garbage collection. It essentially provides that fresh, new drive performance without any degradation.

TH: What is the role of spare drive space in all this?

LK: Pre-TRIM, spare space was something people desired. Just five or six months ago, at the Intel Developer Forum, Intel was advocating leaving 10% to 20% spare NAND when you configured the drive. So if you purchase a 64GB SSD, it formats to 59.9GB. If you were to follow the Intel advice, you’d actually partition to like 52 for all that spare NAND. Then they said, once TRIM came out and became supportable on Windows 7, it wasn’t as big of a factor.

TH: A lot of drives now in use predate TRIM, and common wisdom always said that the more spare space you can leave, the better the drive will perform. So 20% is better than 10%, etc. But if all I’m doing is small writes, that shouldn’t involve a lot of data shuffling. Why do we need so much room?

TC: When you boot up, you load applications. When you surf the Internet, you store temporary files. When you use a real burst of memory, you need page caching from the hard drive. So hard drive space is really critical to the OS. It's my understanding that with Windows 7 right now, you need a minimum of 16GB just to install the OS. When you have a 40GB drive, you can figure out how much free space you’ll need. You also know how much memory you have in your system. You take those factors, put them together, and figure out how much free space the system needs for the best performance. This is a basic formula for any OS to run smoothly. Besides that, SSD wear leveling requires a certain amount of free space for use. I like that Intel came out with the tools for this even before the TRIM command. They have an optimized program that helps the data to move in the drive, and with the TRIM command, they can help the system without using additional utilities.

Share:
7
Comments
X
Submit

Comments
Read the comments on the forums
Anonymous 08/02/2010 11:45
Hide
-0+

Thanks for that, very interesting. I found the video of the baseball bat test; robust little drive, isn't it?

If I have an SSD as a boot drive and a mechanical hard drive for mass storage, am I better off putting the Windows swap on the mechanical drive?

Also, will I kill an SSD in short order if I put an encrypted volume (e.g. TrueCrypt) on it that uses most of the space on the drive?

Alan.

shanky887614 08/02/2010 17:16
Hide
-0+

interesting

1mill hours divided by 24 =41,666 divide 365 = 114 somehow i dont think they will run constantly for 100+ years

Skid 09/02/2010 13:54
Hide
-0+

Why is that video not on the article?! Come on I bet you anything you when looking for it after you finished speaking with them.

enkidoe 09/02/2010 20:36
Hide
-0+

pitty they are still so expensive. cant wait to get 1

kesgreen 16/02/2010 20:23
Hide
-0+

A pity that Kingston didn't make sure they were going to be allowed to have TRIM support on the Intel-based 40GB SSDNow drive. People who bought them were lied to by Kingston (who said that TRIM would be supported) and have had to hack firmware to enable TRIM. There have been no explanations or apologies from either Kingston or Intel and as a result, I for one would be wary of companies who treat their customers in such a shoddy way.

dcssr 10/05/2010 21:54
Hide
-0+

If you use SSD's in a Raid, does Windows 7 still use TRIM. Also, does Windows Web Server 2008 R2 use TRIM with SSD's in a Raid?

Thanks,

dcssr 10/05/2010 22:24
Hide
-0+

What a great blog about SSD's. It answers many questions I have. So Would it be correct for me to assume that if I used an Intel Motherboard wtih the built-in ICH10R controller running Windows 7 or Windows Web Server 2008 R2 (I think it is base on Windows 7) in a Raid 5 configuration, 4 drives (3 for the Striping Array and 1 for the parity) would maximize on its potential. Also, would I notice much improvement with an external RAID controller. I will be using the Intel S5520HCR motherboard and the 2 XEON X5650 processors.

Thanks

Best offers

Newsletters


OK