This topic shows the terms and definitions that are specific to the configuration of the cache task.
Read-data: Data read from disk.
Write-data: Data to be written to disk.
Storage Overhead: Additional level-2 storage cost of running cache when level-2 cache is enabled.
- OS Managed Memory: Physical memory managed by Windows OS.
- OS Invisible Memory: Physical memory that is not visible to Windows OS. See Invisible Memory.
Advanced Level-1 Cache Options:
Individual Read/Write Cache Space: When checked, the level-1 cache space will be divided into two separate regions respectively dedicated for reading and writing cache, by the ratio you specified below. 100% Read means that the whole cache space is used for caching read-data only, while 100% write means caching write-data only. If this option is not checked, the whole level-1 cache space is shared by both reading and writing.
Release L1 Cache on Hybrid-Sleep or Hibernation: Upon hybrid-sleep or hibernation, Windows saves RAM contents to a disk. As level-1 cache is made of RAM, its cache contents are also saved to disk, leading to the increment of process time. This option is to remove level-1 cache (MM) contents upon hybrid-sleep or hibernation in order to not affect the sleep/hibernation process time.
Note: Cache contents in Invisible Memory are always removed upon hybrid-sleep or hibernation whether this option is enabled or not.
Keep L1 Cache on Fast Shutdown: This option is to maintain the cache contents of level-1 cache (MM) across the shutdown (not Restart) and the next boot. However, it will increase the shutdown/boot time. The option is available in Windows 8 or above and effective with Windows Fast Startup feature turned on.
Note: Cache contents in Invisible Memory are always removed upon shutdown whether this option is enabled or not.
Level-2 (L2) Cache: A secondary cache which typically resides on a solid-state drive (SSD), a flash drive or other faster persistent storage device to speed up traditional mechanical hard disks. Unlike level-1 cache, cache contents stored in level-2 cache are persistent across computer restarts. See Level-2 Cache.
Level-2 Storage: A partition formatted to store cache index and content for level-2 cache. It is not visible and recognized by the operating system. Each level-2 storage volume can provide cache storage for multiple (no more than 16) cache tasks. See Manage Level-2 Storage.
Advanced Level-2 Cache Options:
Individual Read/Write Cache Space: When checked, the level-2 cache space will be divided into two separate regions respectively dedicated for reading and writing cache, by the ratio you specified below. 100% Read means that the whole cache space is used for caching read-data only, while 100% write means caching write-data only. If this option is not checked, the whole level-2 cache space is shared by both reading and writing.
Gather Interval: Specifies a recurring interval, in seconds, for gathering cache data into level-2 storage when Windows is busy. The setting here does not affect the gathering behavior when Windows is idle.
The setting value ranges from 1 to 250, plus the following two predefined settings:
- DEFAULT: Uses the program's default setting.
- IDLE ONLY: No gathering when Windows is busy.
Volatile Cache Contents: Cache contents in the level-2 storage are not preserved when the system is rebooted. This option is usually for multi-boot computers where another operating system may modify cached volumes, leading to the inconsistency between cache contents and source data.
Ignore Sync Check and Preserve Cache Anyway: Cache contents in the level-2 storage are not reset even if they might be out of sync with source data. This option is designed for special scenarios only. It may cause unexpected errors and corrupt target volumes. Use at your own risk!
Cache Size: The amount of the cache space. This value does not count the overhead. Generally, the larger the cache size, the better the disk performance. Of course, when you use OS managed memory as cache, you shall leave enough memory for Windows and other applications to run and not use up all available memory.
Block Size: Cache is logically partitioned into blocks of fixed size, typically ranging from 4KB to 512KB. Cache block is the smallest unit that PrimoCache manages. A smaller block size brings more available blocks for the same amount of cache space and usually higher performance. However, it will need larger memory overhead and may cause heavy CPU overload. To reach the best performance, a value equal to or less than the cluster size of the file system is recommended.
Defer-Write: Defer-Write is asynchronous writing of data to the underlying disk. Writing is done only to the cache, instead of synchronously both to the cache and to the underlying disk. The cache tracks which of its locations have been written over, and mark them as dirty for later writing to the disk. As write is only executed on the cache, so it completes very fast. Besides, write operations are allowed to accumulate for a period of time and are then flushed to disk all at once, reducing the overall number of disk I/O operations. Thus, Defer-Write will greatly improve write performance. However, a power outage or system failure might result in data loss or corruption because in such scenarios the cache has no chance to write data back to the disk. Based on the consideration above, it is recommended that you may only enable Defer-Write on volumes where temporary, unimportant or reproducible data is to be stored.
Note that if all cache space is set to caching read-data only, that is 100% Read, this option is greyed.
Latency: Specifies the time interval, in seconds, at which cache task periodically flushes deferred write-data from cache to disk.
Advanced Defer-Write Options:
Write Mode: Specifies the behavior of writing deferred write-data to the underlying disk.
- Native: Starts flushing all deferred data to the disk each time a time interval specified by Latency expires.
- Intelligent: Native mode plus writing 10%~20% of deferred data into disk on Windows idle when deferred data amount reaches 90% of cache size.
- Idle-Flush: Native mode plus writing all deferred data into disk when Windows is idle.
- Buffer: Native mode plus writing deferred data into disk on Windows idle to keep 80% of cache free for new data when deferred data amount reaches 40% of cache size.
- Average: Averaging the amount of deferred data over a period of time and smoothly writing data into disk to avoid sudden heavy disk activities.
Free Cache on Written: When deferred write-data are written to the disk, cache blocks holding these data will be marked as standby blocks which will be discarded first if cache is full.
Flush on Sleep: All deferred write-data will be flushed into disk when Windows enters sleep state. This option does not affect the behavior on entering hibernate state. PrimoCache always flushes all deferred write-data when Windows enters hibernate state.
Skip Flush on Shutdown: Current deferred write-data will NOT be flushed to disk at computer shutdown. This option is designed for special scenarios only. Do NOT enable it in normal scenarios, otherwise it may completely corrupt volumes being cached.
Start at Windows Boot: By default, prefetch starts after a period of idle time since you logs on to Windows. If this option is enabled, prefetch starts as early as when Windows starts up. Enabling this option may increase the Windows boot-up time.
Lock Cache Content: The cache content to be prefetched is locked to the content of last Windows run and won't be varied on next Windows runs. This option is usually enabled when you see that last Windows run has a good cache hit rate and want to keep this cache content for prefetchig on next Windows runs.