I think PrimoCache is a great piece of software. I would buy it right now and I hope Romex will not make the mistake and try to sell it for the price of a decent size SSD


I have not been able to test the latest version (0.9.8) which contains some promising features I wished for, but I've been testing the previous one for a while. The main test was a virtual machine sitting on a spinner plus some games. Results are very promising! Now, I have some technical questions, for which I have not managed to find answer.
- What is the recommended safe way to use defer-write? Although as we have CLI now, it is probably to use battery backup and run dwpausewhen the computer switches to battery. This needs manual setup, it would be nice to see such a feature built in. This would significantly improve the safety, wouldn't it? Only on BSOD, and force reset / shutdown would the cache content not be written on the disk.
- How does the LFU-R work exactly? Is there an expiry time for the data? Like if I read a file 1000 times a year ago, but not once since that, would it still be sitting on the L2 cache? In this case it might be useful if we could set two different modes for L1 and L2.
- How would one notice if there's an inconsistency between the drive and L2 cache? Would it make file reads corrupted and / or crash the computer if it happens to be a system file? Is there any method that tries to heal such an issue?
- It is not recommended to use L2 for a volume which is modified "offline", when using dual boot because it would cause inconsistency, which is clear. But what happens if one sets up the exact same L2 cache (original drive and cache storage) on both dual booting systems on the computer? Would it work fine?
- 4K is the recommended size for the cache blocks for performance, but what happens when the cluster size is larger? I use 64KB cluster for the NTFS volume on my 1TB hdd, tests seem to show some performance improvement when using 64KB. I guess the cache is block-based, therefore the recommended size would be the cluster size (and maybe set automatically).
- What is the point of using write cache when defer-write is not enabled? The only thing I can think of is that this way when a file is saved, it is written both to the cache and on the hard drive, so if I wanted to open it after saving, it would come straight from the cache. Otherwise it only happen when opening the file for the second time after saving it.
- What happens when defrag is used on a cached volume? It seems like in this case basically everything is written to the cache and read back from there (giving the SSD quite a lot of writing cycles). I paused the cache when running defrag, it seemed to empty the cache basically (no wonder, the blocks have changed), but worked fine after resuming the cache. Is there a way to detect if the system is running defrag? Maybe the cache should be paused in this case. Otherwise the CLI might help in a batch command...
- Some defrag tools (like Defragger) has the option to do offline (boot-time) defrag. Would it run after of before PrimoCache kicks in?
- It would be nice to see the L1 & L2 and total hit ratio as well on the graph. Although now as L1 is written to L2 when the system is idle, it doesn't seem to be that important.
- I'm thinking of using USB 3.0 sticks instead of an SSD drive. Do you think they are ready to manage it or they would wear out quicker than SSD drives?
Thanks, and keep up the good work!