Have you ever noticed when you go into Windows to optimize your storage drives, it says retrim for SSDs? Just what exactly is getting trimmed and why is it needed? Is it the same as defragmenting or something entirely different? (it is different).
Such good questions all deserve thorough answers, so in this article we'll cover all of that.
SSD trimming is a process that helps to maintain the performance of a solid-state drive over time. Trim works by periodically erasing blocks of data that are no longer in use. The trimmed data isn't always removed straight away, as a complex process decides exactly when this takes place. But when it does, not only does it free up space on the drive, it helps the SSD perform better and last longer, too.
Simple, yes? What actually goes on, though, is quite a bit more complex – read on to find out!
To understand why SSDs don't just delete files when you press the button, we need to take a quick look at how they work. We've taken apart SSDs before and you'll see that there's not much inside of them.
The sample below is of a relatively old SATA model (Samsung 850 Pro), but even the latest SSDs aren't much different in terms of the components that make up the drive.
The chip in the middle is a processor that manages all the instructions, data flow, encryption, and other algorithms. Above it is a small amount of DRAM, which acts as an instruction and data cache, plus it stores a table of data locations on the drive.
To the right and below the processor are two NAND flash modules – these are the chips that store all of the data and it's them that we need to delve into.
Deep inside these chips are billions of tiny components, called charge-trapping floating-gate metal oxide semiconductor field effect transistors. Since that name doesn't exactly roll off the tongue, the technology is usually called charge trap flash(CTF) and is the most commonly used system to store data in today's SSDs.
Each CTF acts as a single unit of storage, known as a memoryor bit cell, that has three electrical traces connected to it. The CTFs are grouped together, first as a long column (a string), with anywhere between 32 and 128 cells.
The cells in a string share a common trace (a bit line), which is used to read the data stored in them. Those that are on the same row as each other (known as a page) are all hooked up to another common trace (word line). The string and ground select lines are used in combination with the word lines to determine whether a read, write, or erase process takes place.
An array of strings and pages forms what is called a block. Pages and block sizes vary enormously, with the former being as small as 4 kB in size, and the latter as large as 512 kB, although a lot depends on the manufacturer and model.
A single NAND flash die will comprise thousands of blocks, and flash modules themselves may contain multiple dies. These vast, complex grids of traces and transistors make up every flash storage device, from USB memory sticks worth a few dollars, to enterprise-level multi-terabyte SSDs.
Pages and blocks are important because all of the memory cells in this structure share the same substrate – the slice of semiconducting material, such as silicon or gallium arsenide, that all of the transistors are built upon.
To erase data from any cell involves the use of a high negative voltage, forcing any electrons stored in the CFT to flow into the substrate. Unfortunately, this means that the erase process wipes clean every cell in the block, not just one of them.
Another oddity with NAND flash is that the memory cells cannot be programmed with new data until all of the cells have been wiped clean – in other words, SSDs never directly write new data over old stuff, which traditional hard drives do. And where erasing has to be done at the block level, writing to them is done at the page level, which means that programming an SSD is much faster than erasing one.
The process of programming and erasing also damages the memory cells each time, wearing away the layer inside the transistor that stores the charge. To improve the longevity of the chips, the processor managing them cycles through all of the blocks, until each one has been used once, before going back to the start (so to speak).
So yes, NAND flash is definitely weird – fast writes, slow erases, damages itself doing either operation!
Now, let's get back to understanding what SSD trimming is all about. To do this, we'll take an imaginary SSD that has 4 kB pages and 256 kB blocks, so 64 pages per block. What would happen if you wanted to delete a single file that takes up 3056 kB on your SSD?
This file will be taking up 764 pages – 11 full blocks and one with 60 out of the 64 pages used. How do we delete this file without risking affecting those last 4 pages, as they could be containing data for another file? Seems like we're completely stuck!
Rescue initially comes in the form of the TRIM command. All data stays on the storage drive until it is explicitly instructed to do something about it. Files and folders that have been deleted by the operating system are flagged as no longer being required, and when the TRIM command is issued, the table stored in the SSD's DRAM (or the NAND flash itself, if the drive doesn't have any DRAM) is then updated to reflect this.
Note that not every SSD manufacturer uses the term TRIM but Windows does, so we'll stick to using this term. Data isn't erased immediately after the TRIM command has been sent – it either takes place when the drive is idle or when it next writes some data to a block. Which method gets used depends on the manufacturer, with consumer-grade models handling erases when idle, and enterprise-level ones generally doing it when writing.
Data that are flagged for removal are erased when the NAND flash's firmware commences a process called garbage collection. This involves reading a block and any pages that need to be kept are copied to the cache, then written to a fully empty block. The previous one, along with the pages flagged for deletion, is then erased.
In some ways, this process is to SSDs what disk defragmentation is to traditional hard drives, but it's not the same thing.
SSD trimming and defragmenting are not the same thing. Defragmenting is a process that is used to optimize the performance of hard disk drives (HDDs) by rearranging the data on the disk so that it is stored in a contiguous manner. This improves the efficiency of the drive by reducing the amount of time it takes to read and write data.
On the other hand, Trimming is specific to SSDs and is used to maintain the performance of the drive over time. SSDs use of flash memory means they have a limited number of write cycles. When data is deleted from an SSD, the space that it occupied is not immediately made available for reuse. Instead, the drive's firmware marks the space as "invalid" and it is not overwritten until the Trimming process is performed. This process helps to prevent the drive from becoming fragmented and slowing down.
Garbage collection is beneficial to the lifespan of the SSD and its overall performance, and TRIM just makes it better (sometimes the two terms are used interchangeably). This is because withoutthat command, garbage collection will just constantly move all pages about, condensing partially filled blocks, to keep freshly erased blocks available for programming – but this means unwanted pages will get moved about too, wasting time and increasing the wear on the memory cells. Because TRIM explicitly points out which pages are now junk, they can be left alone during garbage collection and erased as required.
TRIM is automatically issued by Windows when you permanently delete a file (i.e. remove it from the Recycling Bin) but it doesn't instantly take place. It's added to a queue and gets processed when the SSD is ready for it.
However, this queue has a maximum size to it, and if it gets filled up, some of those TRIM requests will get dropped. By default, Windows schedules a re-issue of TRIM commands on a regular basis (calling it a retrim).
You can force this to take place but we don't recommend you do so. But if you insist, go to File Explorer, right-click on a drive, click on Properties, and then on the Tool tab. Finally, click on the button that says Optimize. If you don't have any SSDs in your PC, optimizing just runs normal disk defragmentation, but for NAND flash devices, clicking this re-issues a TRIM command. You can't actually make the drive to do anything, so don't worry about running it too frequently; the drive will look after itself perfectly well!
See how one of the SSDs above can't be optimized? That's because it's using a dynamic volume, which doesn't support the use of trimming. Basic volumes do recognize the TRIM command and for most users, it's best to use that type of drive volume anyway.
If your operating system or SSD configuration doesn't support TRIM, it's not really bad news – garbage collection still takes place, but the process isn't anywhere near as effective. Old data eventually gets removed simply because the drive will eventually overwrite unwanted pages, at some point in time.
For PCs using Windows 7, TRIM is only supported on SATA SSDs; for machines with NVMe ones, the command is only available in Windows 8, 10, and 11. TRIM was added to MacOS in the last update to Snow Leopard back in 2011. Most Linux distributions also support the operation, but not every file system is compatible – speaking of which, RAID systems generally don't support TRIM, although that situation is slowly improving.
Now you know what TRIM is and how it's beneficial to your SSD.
文章
26365
浏览
38
获赞
44
Facebook and Instagram just made high
Facebook is making a push to increase the information you can see on posts from high-reach FacebookAustralia's new coronavirus tracking app was downloaded a million times in just 5 hours
The Australian government's new coronavirus contact tracing app was downloaded one million times witMacy's data breach sees customer payment details stolen
Macy's has revealed its website suffered a security breach for a week in October exposing the person'Atlanta's Missing and Murdered: The Lost Children' HBO Doc: Review
Cries for justice — for American power systems to make even the most basic concession that BlaTim Cook calls out 'senseless killing' of George Floyd in WWDC opening remarks
Tim Cook took the stage this morning at Apple's Steve Jobs Theater in Cupertino, California to talkYou can finally search your Twitter DMs, but only on iOS
Finally. Twitter announced early Tuesday morning that, at long last, users will be able to search thYou can win up to $25,000 by keeping your finger on your phone
How much time are your fingers on your phone on any given day? Probably hours, right?Thanks to MSCHFYou can’t lurk on Instagram anymore unless you’re logged in
It's been a rough couple of weeks for Instagram lurkers.First, Instagram removed its infamous "follo10 New Year's resolutions that will make your online life a little better
As 2018 comes to a close, it's only a matter of time before New Year's resolution posts start rollinFacebook will now let brands choose exactly where their ads will show
Facebook made a move to calm advertiser fears as the company continues to deal with the fallout fromHinge rolls out in
Today the dating app Hinge launches Hinge Labs, the first dating app research program backed by beha'Double Rainbow Guy,' Paul Vasquez, has died a decade after he achieved viral fame
Paul L. Vasquez brought the world goofy, sincere joy in 2010 when a video of him spotting a double rSee Boston Dynamics' robodog herd sheep and explore in New Zealand
Spot, the robotic "dog" design from Boston Dynamics, has had a busy pandemic, between counseling patPeople are dunking on an old Steve Mnuchin video about the $1,200 stimulus checks
When you're worth $400 million, folks are going to be *quick* to jump on you when you look out of toThe 14 best tweets of the week, from soup tubes to Flavortown
Phew, another week of quarantine down. This one feel long to you? Same, pal, same.Anyway, we've done