
When the entire Internet is replete with holivars on “SSD unreliable” and “SSDs are so fast that I will never work with HDDs again,” I think it's time to bring some clarity to the sea of contradictory information about the SSDs themselves and about setting up Windows to work with them .
Who are interested, please under the cat.
')
So I became the proud owner of this miracle of modern technology: OCZ Vertex 3 120 Gb. First, I booted into the old system and updated the SSD firmware, since OCZ firmware program does not allow to update the firmware when the disk is system. I think the firmware update is the first thing to do after acquiring an SSD, since as practice shows, there are plenty of errors in the firmware, especially in the new SSD models (compared to which Vertex 3 is not the newest :)).
Next, I decided to put a clean system on the SSD. Installing Windows 7 from a USB flash drive (USB 2.0) took about 10 minutes. Wow, I thought, before installing some heavy software went much longer, not to mention the operating system!
From this point on, it was possible to just start using a super fast drive and enjoy life, but the paranoid feeling that my SSD would quickly fail due to frequent rewrites did not leave me. Indeed, a limited number of SSD rewrite cycles is not a myth yet. But everyone already knows that even a resource of 10,000 rewrites is very, very much with a disk capacity of 120 Gb. Depending on the controller, the SSD can also apply various internal technologies for
leveling wear , data relocation from one place to another, compression of recorded data (relevant for SandForce controllers) - the disk tries its best to work quickly and for a long time :) How to influence this the internal logic is almost impossible (except by updating the firmware), so when choosing an SSD for some special tasks, you need to look for information on the logic of its controller.
For those who especially care about the disk and save it, the Internet has a lot of tips on how to reduce the load on the disk by writing from the operating system. These tips can be divided into useful, harmful and controversial.
1) Transfer directory for temporary files on a normal (HDD) disk
Paths to TEMP directories are here:
Computer - Properties - Additional system parameters - Advanced tab - Environment variables - TMP and TEMP (for current user and general).
Someone advises to transfer Temp to RAMDisk, but this is rather harmful advice. This is due to the fact that some programs (including updates) write data to a temporary directory, then send the computer to a reboot, and then expect the data to not go away during this time. And RAMDisk is cleared by default on reboot. But even if your RAMDisk supports saving data to an image and restoring after a reboot, this is also not a panacea, since a situation is possible in which the RAMDisk service simply does not have time to start and initialize by the time programs start accessing the temporary directory.
2) Turn off hibernation
This is rather strange advice. On the one hand, disabling hibernation allows you to get rid of the hiberfil.sys file, the size of which is equal to the amount of RAM, and the space on the SSD is especially precious to us. Also, with each hibernation, a relatively large amount of data is written to the SSD, which “leads to wear and blah blah blah blah” ... The advocates of this council say that “why do you need hibernation, because with the SSD, the system starts in a few seconds”. But personally, I do not need hibernation for the sake of a quick start, but in order not to close (and not open again) a damn bunch of applications that I use all the time, so the expediency of disabling hibernation is a big question.
I would gladly transfer the hiberfil.sys file to another disk (on the HDD), but due to
system constraints this is not possible.
3) Disable system protection.
Computer - Properties - System Protection - System Protection tab - Configure - Disable system protection.
This can be done if you use at least some other means of backing up the system. Otherwise, there is a big risk of getting a non-operational system in case of any failures.
4) Disable the paging file.
This advice causes the most violent disputes and even from Microsoft could not get a clear explanation.
I consider this advice harmful and recommend transferring the paging file to a regular (HDD) disk (but not to RAMDisk in any way :), why, I will not even explain - this information is easy to find on the network).
Disabling the paging file completely is harmful from the following point of view. Some “very smart” programs (for example, MS SQL Server) reserve their virtual address space in very large quantities (for emergency). The reserved memory is not shown in the task manager, it can be seen, for example, in Process Explorer, by turning on the display of the column “Process Memory - Virtual Size”. If there is a paging file, the system reserves memory in it (that is, a certain range is declared unavailable for use by other applications). In the absence of a paging file, the reservation takes place directly in RAM. If someone can clarify in the comments (with links to reliable sources), how this affects the work of other programs and performance, I will be very grateful.
5) Disable Prefetch, ReadyBoot, and Superfetch.
5.1.
Prefetch is a technology to speed up system and application loads by proactively reading data from disk. It is relevant only for slow media. Since the SSD is in order with Random reads, Prefetch can be safely disabled.
Service data Prefetcher stores in C: \ Windows \ Prefetch.
To disable Prefetch, you need to change the value of the Enable Prefetcher parameter in the HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Memory Management \ PrefetchParameters registry key to 0.
5.2 ReadyBoot (not to be confused with ReadyBoost) is an add-on to Prefetch, which logs the boot process to determine the order and composition of the data required for the boot and, based on these logs, prepares the required data to speed up the boot process.
Logs themselves are in C: \ Windows \ Prefetch \ ReadyBoot. Disabling Prefetcher does not stop recording these logs. To stop logging, you must set the Start parameter of the HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ WMI \ Autologger \ ReadyBoot parameter to 0
Disabling the ReadyBoot as a whole is relatively useless advice, since this will not give any increase in speed, unless it will slightly reduce writing to disk, since boot logs (which are rather small, of the order of several megabytes) will not be kept.
5.3
Superfetch is a technology for preloading frequently executed programs into RAM. Disable it does not make sense, because Superfetch does not write to the disc.
6) Disable indexing
In the properties of the disk, you can uncheck "Allow index the contents of files on this disk in addition to the properties of files." This can reduce the size of the indexes that the Windows indexer is building, i.e. reduce the write load on the SSD.
The indices themselves are in C: \ ProgramData \ Microsoft \ Search
You can also completely disable the indexer by disabling the Windows Search service.
7) Transfer application caches to RAMDisk.
By applications here we mean mainly browsers, because It is they who actively use the cache of visited pages. It would be rather silly to transfer this cache to HDD, since we need acceleration! Therefore, it’s quite a good decision to put these caches on a small (for example, 1 GB) RAMDisk (I personally use AMD Radeon RAMDisk, although despite the big name, this is a product of Dataram)
Each browser has its own way of specifying the location of the cache, this information is easy to find online.
8) Disable the usn NTFS file system log.
One of the controversial and controversial advice. On the one hand, I could not disable the usn log for the system partition. Also, the usn log is used by some programs (eg,
Everything ) to keep track of changed files. If someone can comment on the situation about the usefulness of disconnecting usn, I will be very grateful.
UPD 9) Disable Disk Defragmenter
Windows 7 itself should disable defragmentation for SSD disks, so you do not need to tune anything by hand.
Findings:1. Even if you do not resort to any tips on configuring the system to work with SSD, Windows 7 will work on the SSD a little less than excellent.
2. Some tips will allow you to reduce the number of entries on the SSD-drive, which can extend the already relatively long period of its work.
3. Many tips will allow you to change some parameters, without killing the system performance, but without giving any practical benefits :)
Other ideas and advice are extremely welcome! I hope, together we can distinguish them between useful and harmful :)