Solid State Disks (SSDs) have become increasing popular as the primary drive for many desktop PC owners. SSDs are still more expensive than traditional mechanical drives on a $ per GB ratio, but the immediate and highly visible performance benefits of owning an SSD make the purchase worthwhile for many.
SSDs use the same flash based NAND technology found on USB memory drives. They have no moving parts and don’t have disk delays caused by disk spin up time, or the rotational speed of platters. These factors allow SSDs to provide the aforementioned immediate performance gains for a PC user.
Advantages:
Any operation that is bound by the rate of I/O throughput will see a performance boost. Operations including:
- Booting up an Operating System
- Opening and closing applications
- Compressing and decompressing an archive
- Using applications with a disk cache (e.g. Photoshop, Premiere Pro, After Effects, web browsers)
Operations that are bottlenecked by the CPU, GPU or RAM won’t see a tremendous benefit from SSD use. Those operations include:
- Video encoding (CPU)
- 3D Rendering (CPU)
- Virtual Machines (CPU/RAM)
Considerations
To get the best value out of an SSD requires some software tweaking and carefully purchasing an SSD that is not only fast but reliable.
Read and write speeds have gotten better over time as manufacturers have worked out design flaws and bugs through firmware updates and better SATA flash controllers. Disk read/write performance is measured using four different variables; sequential read, sequential write, random read and random write. The random read/write variables have a standardized measurement called Input/output operations per second or IOPS. When it comes to SSDs Intel is the king of producing high quality fast drives. Drives like the Intel X25M have very high random read and write IOPS averages.
For our test bench, we looked for an SSD that met our price, size and performance requirements as an OS drive. We concluded that Crucial’s 2.5″ m4 128GB SSD was the right choice for our test rig.
Crucial m4 128GB SSD Specification:
Firmware: 0309
Note: We upgraded the firmware on the m4 SSDs as 0309 contained a crucial bug fix. Crucial corrected “a condition where an incorrect response to a SMART counter will cause the m4 drive to become unresponsive after 5184 hours of Power-on time.”
Test Bench:
| CPU | Intel i7 3930K – Overclocked to 4.6GHz |
| Cooler | Noctua NH-D14 |
| Motherboard | Asus P9X79 Pro |
| RAM | Kingston DDR3-1600 32GB |
| Primary Hard Drive | Crucial m4 128GB SSD (CT128M4SSD2) |
| Secondary Hard Drive | Hitachi 1.5TB HDD (HDS5C302) |
| Primary Graphic Card | Zotac GTX 580 1.5GB |
| Secondary Graphic Card | EVGA GTX 460 1GB |
| PSU | Antec Earthwatts 750w |
| Video Driver | Nvidia GeForce 295.73 WHQL |
| Operating System | Windows 7 Professional SP1 (x64) |
Essentials
To get the most of an SSD, it’s important to verify that your drive supports TRIM and has the proper disk alignment.
TRIM Support
TRIM is a garbage collection command from the operating system that tells the SSD that data at a particular cell (SSD memory location) has been deleted and that the SSD can start writing to it effective immediately. Without TRIM the SSD SATA controller has to take extra write cycles to find the data marked for deletion, delete the actual data and then start writing to it. Without TRIM SSDs take a big performance penalty.
To ensure your system supports TRIM make sure the following factors have been accounted for:
- Operating System: Modern OSs like Windows 7 and Windows Server 2008 R2 support TRIM.
- SSD Firmware: Check your drive’s firmware version for TRIM support
- Chipset Drivers: Check your Intel/Marvell controllers for TRIM support
Verifying TRIM
Benchmark tools such as CrystalDiskInfo can inform users if their drive supports TRIM. Another way is to use an inbuilt Windows command.
Steps:
- Open an elevated command prompt window
- Type the command fsutil behavior query disabledeletenotify
If the output shows DisableDeleteNotify = 0 then TRIM is enabled.
Disk Alignment:
Terminology:
Sector = 512 bytes
Track = 64 sectors
Windows default data block size = 4096 bytes
All hard disks reserve a portion of their first group of sectors for internal disk information such as the Master Boot Record (MBR) and a partition table. The first bootable partition therefore has an offset by the amount of sectors before it starts. This partition offset in the Windows XP heydays was at sector 64 or about 32kb into the disk.
This is fundamentally a misalignment that causes I/O performance hits. Windows will write the first 512 bytes to sector 64 and then jump to the next track to write the remaining number of bytes (4096-512) at sector 65. This pattern of data blocks being spread across track boundaries continues throughout the disk because of the misalignment at the beginning.
Vista and Windows 7 correctly align disks at the time of partitioning with a default offset of 1024k (1MB). If you’re using a disk cloning tool such as Norton Ghost or Acronis True Image you may need to manually create the partition offset before imaging.
Method 1: Use AS SSD
It’s a German benchmarking tool that will tell you if your disk’s alignment is okay.
Method 2: Use System Information
Steps:
- Open the run dialog box (Windows Key + R)
- Type msinfo32 and press enter
- Drill down to Components → Storage → Disks
- Scroll down to your SSD listing and find the partition starting offset value
- If it’s 1MB or evenly divisible by 4096 then your alignment is good.
Tweaking
The purpose of tweaking software settings for an SSD is to reduce unnecessary write cycles that over time can reduce the lifespan of an SSD drive. In this article we will also cover tips to save precious storage space for those with smaller sized boot drives such as the Crucial m4 128GB (119.2GB after formatting).
Freebie
If Windows 7 detects it’s installed on an SSD it will then automatically tweak settings to optimize it. These settings include not scheduling the background defragmenter.
Defragmentation on mechanical drives ensures less read/write cycles are needed as files are reorganized into contiguous data that is not spread across the disk. SSDs don’t use read/write heads but memory address locations that have near instant seek times. Defragmentation is unnecessary and takes up unneeded write cycles.
Verifying if Defragmentation is disabled
- Open up My Computer
- Right click on your SSD Drive
- Select Properties → Tools → Defragment
- Ensure the SSD partitions have the schedule set to “Never Run”
Disable Drive and Search Indexing
Windows indexes files for optimizing file searches. Disabling these indexing features will minimize some of the background I/O processes Windows partakes in. The downside is file searches on the SSD may be slower.
Disabling Drive Indexing
- Open up My Computer
- Right click on your SSD Drive
- Select Properties → General tab
- Uncheck “Allow files on this drive to have contents indexed in addition to file properties”
Disabling Search Indexing
- Open the run dialog box (Windows Key + R)
- Type “services.msc” and press enter
- Locate the “Windows Search” service
- Right click and select properties
- Set the startup type to disabled and then click apply
Disable Superfetch
Superfetch is technique in Window Operating Systems to pre-load applications into memory (caching). This helps to reduce their load times. Disabling this feature will free up system resources without seeing a performance drop using an SSD.
- Open the run dialog box (Windows Key + R)
- Type “services.msc” and press enter
- Locate the “Superfetch” service
- Right click and select properties
- Set the startup type to disabled and then click apply
Disable Prefetch
Windows prefetching is a technique to allocate commonly executed files next to each other on the disk. The idea is that this prefetching will speed up boot and access times for the Operating System and applications. SSDs have near instant seek times by searching for data using memory addresses. Therefore, prefetching isn’t needed and can be disabled.
- Open the run dialog box (Windows Key + R)
- Type “regedit” and press enter
- Navigate to the regitry key “Hkey_local_machine\SYSTEM\CurrentControlSet \Control\Session Manager\Memory Management\PrefetchParameters“
- Double click on “Enableprefetcher” and set the hex value to 0 and press OK
Enable Write Cache
A write cache is a buffer zone that collects write commands sent from the CPU to a storage device. Enabling the write cache will reduce the number of write cycles to the SSD and thereby increase the performance and longevity of the drive.
- Open the run dialog box (Windows Key + R)
- Type “devmgmt.msc” and press enter
- Find your SSD under disk drives and double click
- Go to the policy tab
- Check the “Enable Write Caching on the device” and press OK
Freeing Up Hard Drive Space
Utilities needed
- CCleaner (http://www.piriform.com/ccleaner)
- WinDirStat (http://windirstat.info/)
Clean up Temporary Files
Use CCleaner to to quickly and easily remove all temporary Internet, system and application data. Over time these unused files and data can become large swaps of space on your hard drive. Periodically running CCleaner helps keeps Windows running smoothy.
Find The Space Hogs
Use WinDirStat to map out what programs and files are consuming what percentage of a hard drive’s space. WinDirStat will provide a hierarchical file layout and graphical representation of used hard drive space.
Reduce the Page File
The page file, or virtual memory is a necessary component for Windows to operate some of its processes. Windows will automatically set the page file to the amount of available memory on the system. In our test bench system, this meant 32GB of page file space was reserved on a 128GB SSD. We reduced this down to 800mb, the recommended minimum suggested by Windows.
To Set the Page File Size
- Rick click on My Computer and select Properties
- Go to the advanced tab
- Click on settings under the Performance section
- Click on the advanced tab and select the change button under virtual memory
- Use the custom size option to set the initial and maximum size of the page file
- Make sure to press set and then press OK to apply the changes
Remove Hiberfil.sys
Another space consuming file on the a Windows system is the hiberfil. This is file is where the memory snapshot of your system is saved when a computer is put into hibernation mode. This is useful for laptops where battery power consumption is an issue during sleep mode. In desktops however, there is no real need for the hiberfil.
- Open an elevate command prompt window
- Type “powercfg -h off”
Conclusion
SSDs are fast and are getting more affordable. To get the most out of them, some Window settings and due diligence on the part of the owner is needed to prolong their lifespans. Like any new technology there will be quirks and hiccups, but the field is maturing and products are becoming more reliable.
If you have a small SSD as a boot drive, it pays dividend to keep an eye on hard drive space as the page file and other specialized Operating System files can quietly eat away at available space. In the addition to the SSDs tips mentioned in this article, you can also turn off System Restore to save addition storage space, but be prepared to use an alternative backup and restore method.
In summary, it’s not buyer beware but buyer be informed.
Acknowledgements
Crucial m4 Specifications: http://www.crucial.com/store/partspecs.aspx?imodule=CT128M4SSD2
Crucial Firmware information: http://www.crucial.com/support/firmware.aspx
TRIM Explanation: http://www.youtube.com/watch?v=NnBk2IGYerU
Disk Alignment: http://www.ocztechnologyforum.com/forum/showthread.php?59024-Alignment-and-why-it-s-important&p=406863&viewfull=1#post406863
SSD Optimization Tips: http://www.lancelhoff.com/tweak-to-optimize-ssd-performance/
Hiberfil.sys http://www.howtogeek.com/howto/15140/what-is-hiberfil.sys-and-how-do-i-delete-it/










