There are complaining about the small SSD in SSHD. But what is the right size for the SSD cache? It’s actually up to your physical RAM and operating system.
Let’s start from the basic: what is buffer and cache
When you read the datasheet of a hard disk, you will see a small RAM buffer. Usually from 8MB to 64MB on hard drive with 320GB to 4TB in 2013.
It provides two functions:
- While reading data from a hard disk, it will also read contents before or after the track it is assigned and keep them in buffer.
- While writing data into a hard disk, it will keep data in buffer first and write to disk later. Because RAM is much faster than disk, the hard disk may return control to CPU faster by using RAM buffer.
There are also RAM buffer in DOS and MacOS 6/7. You may ask the operating to use a small size of RAM buffer in main memory to speed up I/O.
Therefore, buffer is available in hard drive and operating system.
When we talk about the cache in operating system, we mean file system cache aka file cache. It needs a better algorithm to identify which data has higher probability to be read (aka hit ratio) in the future while buffer use a simple FIFO policy to manage. it also required more computing power than buffer.
For write cache, it keep the data in cache and write later. For operating system using write cache on network, the cache needs to keep consistent of data in cache and remote storage.
Therefore, we expect cache may use memory more efficiently than buffer.
SSD Cache in SSHD
Most SSHD only provide SSD as read cache. Therefore, I will skip write cache. For Seagate SSHD series, Adaptive Memory Technology keeps data which may accelerate boot-up process in one region and use others as data cache for operation. This prevents the boot-up related data be phased out after running for some time.
If you have enough RAM and the operating system may handle a bigger cache than SSHD, you will be benefit during boot-up process by SSHD only.
For example, if you have 16Gb of RAM and your operating system managed a file cache size bigger than 8GB, you won’t get improve during operation. But the boot-up process still get benefit from SSHD, data is already in your SSD cache which is faster than disk.
In another case, if you have 4GB of RAM and your operating system managed a cache size smaller than 4GB, you will get performance improve because your file cache can keep a smaller subset of the data in your SSD cache in SSHD only. You still need to read from SSHD when the file is missed in file cache.
To summarize, you will be benefit from SSHD with 8GB SSD Cache if you have a system with less than 8 GB RAM. To be more precisely, if your cache size is smaller than (8-x) GB, you shall be more responsive with SSHD than traditional disk at the same RPM. x is the capacity per-occupied by boot-up process related data by Adaptive Memory Technology or like.
You may use Linux command free to see the size of your cache as below. More detail explain may be found in Check your RAM usage with free in Linux.
In Windows 8, you may launch Task Manager to see the cache size in [Process] tab.
Also, because the cache is handle by Seagate Desktop SSHD, there is no performance hit by running cache process nor operating system lock-in.
- Wiki: Disk buffer
- Wiki: The difference between buffer and cache
- Microsoft MSDN: File Caching
- Seagate: Adaptive Memory Technology in Solid State Hybrid Drives
- Computer Hope: Linux and Unix free command
- The Linux Juggernaut: Understanding free command in Linux/Unix
- Buffer and Cache in Hard Drive and Operating System explains the SSD Cache Size of your SSHD
- Check your RAM usage with free in Linux
- Wiki: Disk sector
- StackOverflow: Linux memory: buffer vs cache
- ArchLinux: How to reduce max buffer/cache size?
- StackExchange: Unix&Linux: Can I configure my Linux system for more aggressive file system caching?
- TechNet: File Cache Performance and Tuning
- TechNet: Windows Internals Book
- Windows Eight Forums: Upgraded to Windows 8, insane RAM cache.
- ghacks.net: Increase The FileSystem Memory Cache Size In Windows 7
- Microsoft: How to set performance options in Windows XP
- OpenSuSE 12.3
- Seagate Desktop SSHD