Option to write noncached data to L2 immediately
Posted: Thu Dec 08, 2016 7:53 pm
So I have been using this program for a week now. I have configured it to use L2 cache only, which I am using now to speed up a 1TB HDD using my 60GB SSD as cache. I like it so far. It really speeds up the OS. But there is a little problem.
So the problem is: even if I configure the cache task's Gather Interval to 1 second, the L2 storage gets populated only when the HDD has been idle for ~15-25 seconds, which is a huge delay. When the system boots up for the first time (L2 is empty), I have to wait around 5 minutes for Primocache to start populating the L2 cache, because up until that point, background programs and system services are still reading from the hard drive.
L1 cache works like this: if, for example, 512MB of data was read from HDD, it immediately gets written to L1.
L2 however works as described above. Even if I set Gather Interval to 1. But GI is an option regarding population interval of L2 when the system is busy. The logical behavior would be writing the noncached read data from HDD to SSD as soon as it was read, or with a very little delay. The SSD is a much faster storage than HDD after all, so there wouldn't be any decrease in performance if it worked like this.
I don't know if this is intended or not. I think with the GI set to 1, the system should write to the L2 much sooner than when the HDD has been idle for 15 seconds.
If the described behavior above is intended, could you maybe add an option to write data to L2 in the moment it is read from HDD, or at least make it more aggressive, so that Primocache won't wait until the system is idle to start writing to L2?
Thank you.
So the problem is: even if I configure the cache task's Gather Interval to 1 second, the L2 storage gets populated only when the HDD has been idle for ~15-25 seconds, which is a huge delay. When the system boots up for the first time (L2 is empty), I have to wait around 5 minutes for Primocache to start populating the L2 cache, because up until that point, background programs and system services are still reading from the hard drive.
L1 cache works like this: if, for example, 512MB of data was read from HDD, it immediately gets written to L1.
L2 however works as described above. Even if I set Gather Interval to 1. But GI is an option regarding population interval of L2 when the system is busy. The logical behavior would be writing the noncached read data from HDD to SSD as soon as it was read, or with a very little delay. The SSD is a much faster storage than HDD after all, so there wouldn't be any decrease in performance if it worked like this.
I don't know if this is intended or not. I think with the GI set to 1, the system should write to the L2 much sooner than when the HDD has been idle for 15 seconds.
If the described behavior above is intended, could you maybe add an option to write data to L2 in the moment it is read from HDD, or at least make it more aggressive, so that Primocache won't wait until the system is idle to start writing to L2?
Thank you.