To be clear, I'm not saying Primo doesn't do what they advertise. I'm just not sure Bonzai really understands what it's doing (no disrespect Bonzai). Caching is big in the server world on servers where the same information is being read over and over and over. Your desktop for the most part is different.
When you first install the application, it's basically doing nothing other than using CPU (and from the benchmarks I've seen, a crap ton of it) as it hasn't built up a cache yet. That's unavoidable and would be the case with any sort of caching. This is where you see the term "Hit Rate". For example, the ARC (read cache) on my SAN. I'm not posting my numbers as some sort of brag but to illustrate a point. This is my ARC right this second:
That's showing a 100% hit rate which is great. But that 3rd column from the right is showing the ARC is 41Gb and the first column after the time stamp is showing there was only 554 read requests in that sample period. 40Gb of cache is not exactly practical for most people and 554 read requests is basically nothing. Primo is doing the same thing. It's got to figure out what to cache and over time, that hit rate will start increasing. However, here's the catch. 1Gb of cache is basically nothing these days and it's only caching data that
already exists on your actual storage (using default settings). Think about how much data you read and write on your computer just surfing the internet. Stream a movie? That can be anywhere from a few MB to over a Gb depending on the video. Now, what happens when you access data you haven't accessed in a while? In my case, lets say an ISO for a game I haven't used in ages. Let me mount that ISO and install the game and look at my ARC again:
Within minutes, my hit rate has dropped to 59% because even with 41Gb of cache, that's not enough to store every bit of information I ever use which means I'm only getting the speed of whatever my underlying storage is at this point. So, now look at your usage case. What can you cache, and how much space would you need to store it all?
Boot times. Given this sits on top of the OS, it can't do squat until the OS is at least partially loaded (probably not until it's completely loaded), so little to no help here.
Websurfing. If you're not clearing out your browsers cache, you'd arguably see an improvement on frequently viewed websites. But do you really think you're going to notice if the 4Kb AT banner loads at 11Gb/s instead of 500Mb/s? Outside of static content like that you won't notice anything because it's not caching data until it's written to disk and if it's already written to disk, your page is already loaded.
Email. If you've got a client that's caching your email in a single file (like Outlook), yeah it will be faster. But how fast does your email really need to be?
Gaming. For it to make any
noticeable performance gain for gaming, it's going to have to be a large enough to hold a substantial portion of whatever game you're playing. Otherwise lets say your characters outfit is cached but the map is not. That's going to make an unnoticeably small impact on your load times.
Content Creation. Ok, here's where it
could make a huge difference. If you're editing a single large file, such as a Bluray rip, and that's cached, that could make a huge different in encoding/editing speeds. However, now you're getting into a deeper question of how does Primo (or whatever your software is) decide what to cache? Does it cache every single file the first time it gets read? If so, with a small cache, that's going to be extremely limited in it's usefulness as it's going to be constantly swapping the data in the cache. Or does it only cache frequently used data? This would seem to me the more logical choice, but that means a one time file, like the above Bluray rip might not get cached which means no performance gain.
RAM Caching technologies have their purpose but general purpose computing really isn't one of them yet unless you've got the budget to go crazy. My previously mentioned ZFS SAN has 12 VM's including a Plex server and two low usage SQL servers running on it which means it's got a vastly higher IOPS usage than your desktop PC. That combined with the abundant amount of RAM provides a substantial real-world performance increase as it's has a lot of data that's being access repeatedly and therefore cached. Hybrid drives are a good reference point. It's the same concept except SSD caching instead of RAM caching. Take the current Firecuda's, they've got 8Gb of cache on the cheapest drive and they are caching at the hardware level so it can make use of it outside the OS. I'd consider 8Gb to be a decent starting point for a cache.
If you have to choose between Primo and a spindle or even a smaller/cheaper SSD versus just buying a good PCIe SSD, I'll take the PCIe SSD in a heart beat. Primo will be faster for that 10% of the data cached in RAM (being generous with the 10%), but the PCI-e SSD will be faster for the other 90% of data that isn't cached. Not to mention the amount of CPU overhead you are adding for that part time disk I/O improvement. Again, using my SAN as a reference, it's got a pair of 6 core Xeon's and the ONLY thing it's running is Solaris 12+napp-it which runs far thinner than Windows. No additional applications or services. Plex and everything else runs on VM's on my host. But with 12 cores (24 threads) and the SAN doing basically nothing, I'm still seeing 4% CPU usage. Now think about applying that load to your desktop which has 2-4 cores (in both of your usage cases).