Generalized idea

Report bugs or suggestions around FancyCache
Post Reply
Manny
Level 6
Level 6
Posts: 62
Joined: Tue Nov 13, 2012 11:42 pm

Generalized idea

Post by Manny »

I'm using block level caching for a year. So i did a lot of experiments to the setting, and i was thinking how should perfect cache software look.

So here is my idea.

Basically the only setting that i want to change from time to time - deffer writes.
I want cache always to use all available ram, same as windows cache does.
I want to preload some data to cache, same as windows prefetch does.
I want app itself decide what size of block to use, i just always use the smallest, because i don't know how to measure which one is better.
Same as Read/Write and LFU-R, they are good, and tuning them is rare task.
Also i want deffer write to have a logic.

For example i want slider as UAC uses, with options Safest --- Power managed Safe --- Power managed Fast --- Fast --- Fastest
Safe means - deffer writes is off
Power managed Safe - means deffer writes is on with short delay only when power plugged and battery is charged enough (20% for example)
Power managed Speed- means deffer writes is on with short delay, but it automatically is off when battery has small charge
Fastest means - always on and short deffer write delay
Fastest means - always on and long deffer write delay
And the button CUSTOM - for all other cases.

Since winodws caching also try to use all free memory, then we need somehow to integrate with it. So rules are:
1) windows cache works first
2) if it don;t want to put file into a cache, then we cache block
3) if we ran out of free memory, then we need to find candidates for deleting from cache, both of them, windows and ours, so if windows one has rear used files, then memory from it.

Also it would be great if we can take sectors usage statistics, and give it to defragmentator, so as we can move all heavily used sectors to the beginning of the hdd, and then preload whole first 1GB to the ram on boot.

So basically all i want - is add block level caching and deffer writes to windows cache system, so as it looks and works pretty much the same, but also works fine for huge files and intensive writes:)
Post Reply