Primo Cache's cache on a RAMdisk?

FAQ, getting help, user experience about PrimoCache
darkquark
Level 1
Level 1
Posts: 1
Joined: Sat Nov 02, 2013 10:00 am

Primo Cache's cache on a RAMdisk?

Post by darkquark »

Greetings, love the software you guys do an awesome job. Best RAMdisk on the market bar none.

I often times play with PrimoCache and run it on a couple of my PCs. I will use it in combination with Primo RAMdisk and will actually put the cache files on my RAMdisk.


I have been running it this way for sometime but wanted to be sure that it was a supported way to do it and if on paper their should be benefit from it. With that said it might be worth mentioning (in the case it changes the use case) I put all system and user temp files on the RAMdisk as well as things like browser cache files.

Thank You
InquiringMind
Level SS
Level SS
Posts: 477
Joined: Wed Oct 06, 2010 11:10 pm

Re: Primo Cache's cache on a RAMdisk?

Post by InquiringMind »

Welcome to the forums Darkquark,

If by saying "put the cache files on my RAMdisk" you mean set up a L2 cache on a Ramdisk then don't do it - you lose the benefit of a persistent L2 cache (unless the ramdisk has an image file) and it will be slower than if you used the Ramdisk memory as L1 cache instead.

The best way to combine Primo Cache and Ramdisk is to set up the Ramdisk(s) first, setting their size to the minimum needed (if in doubt, consider a hybrid ramdisk - PrimoCache should kick in once it exceeds its RAM allocation though I've not tested this). Then allocate the rest of your "available" memory (total - maximum usage - 10-20% margin) to PrimoCache for use as L1. If you want a L2 cache (unnecessary if you're running from SSDs already), set that up on a dedicated SSD as normal.
Incriminated
Level 6
Level 6
Posts: 65
Joined: Fri May 31, 2013 3:03 pm

Re: Primo Cache's cache on a RAMdisk?

Post by Incriminated »

There is absolutely no sense in putting the PrimoCache's disk-file into a RAM-disk. This does A) not advantage the security of your defer-writes, and B) sucking good-lots of ram-space for no performance reason.

What you can do instead is:
1. Run PrimoCache on your primary and/or Application-Partition.
2. Run a PrimoRamdisk for specific applications i.e. Browser-Cache.

You set it up like this way:
1. Run PrimoCache for System-Partition C.
2. Install your app, let's say Chrome in normal way and it goes to C:\Users\Me\AppData\Local\Chrome\
3. Copy C:\Users\Me\AppData\Local\Chrome\ to your RAMdrive R.
4. Open a MSDOS-Box and type: mklink /J R:\Chrome C:\Users\Me\AppData\Local\Chrome
5. Close and save and rerun the ram-drive and make it save every-time you shutdown reboot. Done.

Now all Browser (Application and UserData) ist stored on the RAM-Disk Block-Device and are symlinked to old places. PrimoCache will stop caching files related to RAM-Disk Block-Device R, what is reasonable, since they are "full-cached" through the RAM-Drive itself.
Mradr
Level 7
Level 7
Posts: 87
Joined: Sun Mar 25, 2012 1:36 pm

Re: Primo Cache's cache on a RAMdisk?

Post by Mradr »

Incriminated wrote:There is absolutely no sense in putting the PrimoCache's disk-file into a RAM-disk. This does A) not advantage the security of your defer-writes, and B) sucking good-lots of ram-space for no performance reason.

What you can do instead is:
1. Run PrimoCache on your primary and/or Application-Partition.
2. Run a PrimoRamdisk for specific applications i.e. Browser-Cache.
Actually... that's silly and more of a waste of ram and startup/shutdown will become really slow.... You are better off using one or the other really.

Why? Well you have to understand how disk operation work with a ram disk.
Primo RAMdisk actually creates a partition in ram (aka the name/we know that), but that partition is more like a storage that will be saved later on to the disk at shutdown. Why? So you don't lose any information when you shutdown as ram is cleared/wipe at the end of shutdown/startup. This means at start up you have to RELOAD the ramdisk back into memory... meaning that the DISK and CPU has to waste time pulling that information back into ram.

PrimoCache on the other hand creates a space (not a storage) in ram that it will use to either do read, write, or both caches. This means time has to be spent creating a ram disk along side another ram disk that's pulling information off the disk... Seems kind of silly to do that doesn't it?

Now, that's start up and shutdown... not a lot of people actually shutdown/start up a lot... so why not use both anyways? Well you get into the issue of it loading twice. Once from memory and again from cache... Taking almost double the time to really load a program. Each time that happens, the cache gets bigger taking even more ram and in the end you end up almost double the ram used again... taking up more resources than it really needs.

Now, I can't lie... I haven't tested my theory 100%, but I know my cpu calls and either way, it'll still take calls in the cpu to figure out where this data is in terms of disk, ram or cache. More calls on a cpu means more wasted performance.

So to recover what the program different is:
PrimoRamdisk is good if you want to make ONE program really fast and it does a lot of IO calls on it self. This speeds up the process by keep it all in ram. This really only happens if the programmer that was creating your program was bad at optimizing it, but still useful if you want to speed up that ONE program really fast on start up and IO calls. Keeps ram usage low to let the program use more ram for it self.

PrimoCache is really good if you want to speed up a lot of programs/over all speed of the disk. It doesn't just speed up one program very well, but makes your system feel more responsive if you do a lot of different things at that the same time. It uses more ram in the process, but over all still allows you to use the full system resources to speed up loading, IO, and closing of the whole system. Really good if the programs you are running are single threaded and are IO limited in some way (and a lot of 32bit programs are poorly written as it is).


So yes, you can use both, but you still run into the issue above, but there are ways around it depending on your setup and how you use the different programs. Either way, using a ramdisk to cache a browser information isn't the right way to use one and will actually cause issues later down the road with the disk filling up... To use it in the right way... you have to have TWO REAL DISK. This way startup and shutdown are not as IO limited.

Use a ram disk on one of the disk to speed up your IO heavy program (NOT A SILLY BROWSER >.>) This disk will NOT be where the OS is. Then use Primo cache on the other disk where you will be running your programs from (IO disk). This way, any calls to either disk are not fighting for resources and they each have their own disk to access if they need any information from it. The only downside is you will still be creating TWO ramdisk in memory witch means you will be using a lot more ram over all for not as much gain as if you would just pick one or the other.
Incriminated
Level 6
Level 6
Posts: 65
Joined: Fri May 31, 2013 3:03 pm

Re: Primo Cache's cache on a RAMdisk?

Post by Incriminated »

Thats wrong. It is not a waste of RAM just to have both.
You missed th ehole point what it is about totally.

Since PrimoCache cannot differ between files, it is a block-caching-software, it cannot cache the explicit things you want.
PrimoRAMDisk on the other hand loads explicit files into RAM, then represented through a seperated block-device.

Both do not interfere.
Having PrimoRAMDisk need to load all the cache-disk-file and save it on shutdown is normal and wanted.
Having PrimoCache need to save defer-writes is not related and having it flush-disk on shutdown is also normal and wanted.
Thats why you want to wait on shutdown and never force-quit... for me shutdown takes 2-4 seconds using both, data is ok after reboot.

My startup is fine, thanks :p

BTW: browser cache was just an example (i.e.)

It does not hapen multiple times just because you use both. Each is individueal and does not interfer with the other.

I got 16GB of RAM.... while for my demands it is enough to have 4-6GB free for apps and games.
There is limited sense in creating a 10GiB PrimoCache for the system-partition.
Instead i only use 6GiB, which honestly never run full continuosly - and using no RAM-Disk to load all my stuff from disk at sturtup ON PURPOSE.

Whats your point? Even a 16Gib L1-cache does not my browser speed so much, like a dedicated 1GiB-RAM-DIsk to store app and userdata! This data never touches the PrimoCache, except on save! Without the additional RAM-disk i would never be able to increase the performance of my browser so fast.

When i run chrome app with userdata from my RAM-DIsk fire up 15 new tabs, then close the browser - absoletely nothing occured in PrimoCache statistics, i dont get your point.

The "issue" you describe does not happen for me... again meditate these words: a RamDISK-drive with block-device-letter R:\ does not affect PrimoCache configured for C:\ and D:\. There is no single correlation! Better check your system!

You think PrimoCache's defer-write interferes with PrimoRAMDisk save on shutdown, when the RAM-Disk file is stored on the drive running PrimoCache, so data get lost?

I like to hear what support says in this matter.

Oh a "silly" browser can be very demanding... so you say 15 tabs trying to load cached thousands of images, and loading plenty of userscripts scripts plus large adblocker lists and so on, while rendered with GPU is not a demanding I/O task. I can tell you that my SSD is to slow and that RAM-DIsk really is a flash for high frequency webbrowsing when used for browser-cache! SO only thing that is silly is your hole answer!
Mradr
Level 7
Level 7
Posts: 87
Joined: Sun Mar 25, 2012 1:36 pm

Re: Primo Cache's cache on a RAMdisk?

Post by Mradr »

Incriminated wrote:Thats wrong. It is not a waste of RAM just to have both.
You missed th ehole point what it is about totally.

Since PrimoCache cannot differ between files, it is a block-caching-software, it cannot cache the explicit things you want.
PrimoRAMDisk on the other hand loads explicit files into RAM, then represented through a seperated block-device.

Both do not interfere.
Having PrimoRAMDisk need to load all the cache-disk-file and save it on shutdown is normal and wanted.
Having PrimoCache need to save defer-writes is not related and having it flush-disk on shutdown is also normal and wanted.
Thats why you want to wait on shutdown and never force-quit... for me shutdown takes 2-4 seconds using both, data is ok after reboot.

My startup is fine, thanks :p

BTW: browser cache was just an example (i.e.)

It does not hapen multiple times just because you use both. Each is individueal and does not interfer with the other.

I got 16GB of RAM.... while for my demands it is enough to have 4-6GB free for apps and games.
There is limited sense in creating a 10GiB PrimoCache for the system-partition.
Instead i only use 6GiB, which honestly never run full continuosly - and using no RAM-Disk to load all my stuff from disk at sturtup ON PURPOSE.

Whats your point? Even a 16Gib L1-cache does not my browser speed so much, like a dedicated 1GiB-RAM-DIsk to store app and userdata! This data never touches the PrimoCache, except on save! Without the additional RAM-disk i would never be able to increase the performance of my browser so fast.

When i run chrome app with userdata from my RAM-DIsk fire up 15 new tabs, then close the browser - absoletely nothing occured in PrimoCache statistics, i dont get your point.

The "issue" you describe does not happen for me... again meditate these words: a RamDISK-drive with block-device-letter R:\ does not affect PrimoCache configured for C:\ and D:\. There is no single correlation! Better check your system!

You think PrimoCache's defer-write interferes with PrimoRAMDisk save on shutdown, when the RAM-Disk file is stored on the drive running PrimoCache, so data get lost?

I like to hear what support says in this matter.

Oh a "silly" browser can be very demanding... so you say 15 tabs trying to load cached thousands of images, and loading plenty of userscripts scripts plus large adblocker lists and so on, while rendered with GPU is not a demanding I/O task. I can tell you that my SSD is to slow and that RAM-DIsk really is a flash for high frequency webbrowsing when used for browser-cache! SO only thing that is silly is your hole answer!
Now, now ^^ You are twisting words and not understand anything that I said. You may need to re-read what I said before you can say anything like that ^.^
Tho... I have a feeling you like TDR and [removed remark], so I'll make it shorter for you =)

1) Both uses ram to load up a ram disk, this takes time and creates a block space in ram that can't be used by the system on startup or in the middle of run.
2) Because both uses ram, they require sometime to load their data into ram at startup or at load. This creates a longer startup and shutdown as they both have to save out (if def-write is enable or when the system may want to use that ram to do last min processing on close).
3) RAM Disk are limited, so you can actually run into issues if the program grows larger than the given ram disk size.
4) Programs are poorly written that it requires a RamDisk.
5) Partitions and Physical Disk are not the same thing. When a partition gets IO request to do anything it slows the physical disk down and that means other partitions on that disk.
6) Browsers are not limited to speed from disk, but cpu, gpu, bandwidth, and other behind the senses actions. The fact you see any speed boost is because your system is in a very poor design state as it is (my system can do well over 15 TABs on IE if you really want to compare... I'm a programmer, network admin, movies, and games. I never see any slow down at any time even tho I have well over 30+tabs open at any given monument so I can keep up with all my work and the information I need to keep moving forward).
7) Over all PrimoCache will do everything Primo RAMdisk is doing, but not as fine tune as it will do a whole partition or physical disk. So it's better to choice one over the other instead of using both unless it falls into a special need to increase the performance of a poorly written program that you are going to be running a lot. At witch case please re-read 1 and 5 again.
8) ... have fun ^^
9) Ohh... and if you have both running YOU WOULD NEED A UPS other wise you will run into the biggest "OH F@#$" when things can't be saved out at the end do to a power outage or a random BSOD xD
InquiringMind
Level SS
Level SS
Posts: 477
Joined: Wed Oct 06, 2010 11:10 pm

Re: Primo Cache's cache on a RAMdisk?

Post by InquiringMind »

Mradr wrote:Actually... that's silly and more of a waste of ram and startup/shutdown will become really slow.... You are better off using one or the other really.
You're assuming the Ramdisk has an image file - if it is used for temporary data, then it doesn't need one. So the example given by Incriminated is a legitimate one.

Even with an image file, it can still make sense to run Primo Cache and Primo Ramdisk together as long as one isn't using the other, as was the case with the original post. It requires more careful consideration of how to allocate spare memory between the two, but as Incriminated notes, Primo Ramdisk can offer better performance for specific applications.

With regards to startup/shutdown times, Primo Cache should only have an impact if L2 caching is enabled (which would be unnecessary if you're running off an SSD in the first place) and Primo Ramdisk would only have an impact with an image file configured.

As for needing a UPS, that wouldn't protect from driver crashes and BSODs - backups (both regular full disk images and more frequent copies of critical files) should be seen as necessary - whatever Primo software/configuration is used.
Mradr
Level 7
Level 7
Posts: 87
Joined: Sun Mar 25, 2012 1:36 pm

Re: Primo Cache's cache on a RAMdisk?

Post by Mradr »

TDR:
1) Resaying what I already said in my posts.
InquiringMind wrote: As for needing a UPS, that wouldn't protect from driver crashes and BSODs - backups (both regular full disk images and more frequent copies of critical files) should be seen as necessary - whatever Primo software/configuration is used.
9) Ohh... and if you have both running YOU WOULD NEED A UPS other wise you will run into the biggest "OH F@#$" when things can't be saved out at the end do to a power outage or a random BSOD xD
Already said that... waste of line of text xD (btw, these are the comments that make what you say less trusting to read =/ Please read 100% and don't resay what was already said in a post you are replaying on unless it's to give them credit... witch you didn't and made it more wordy than it needs to be.)
You're assuming the Ramdisk has an image file - if it is used for temporary data, then it doesn't need one. So the example given by Incriminated is a legitimate one.
Witch you would if you are going to LOAD files up into the ramdisk... duh... and you still run into lines 1-5 either way, so no... I already covered that xD So no, the example by Incriminated is a very poor example on how to use it right.
Even with an image file, it can still make sense to run Primo Cache and Primo Ramdisk together as long as one isn't using the other, as was the case with the original post. It requires more careful consideration of how to allocate spare memory between the two, but as Incriminated notes, Primo Ramdisk can offer better performance for specific applications.
Show some benchmark? Because I already tested both. As well, Primo will be limited compare to the flexibly of a cache would give in return. Not saying they can't work together either.. I already said what will happen if you use both and how to use both.
With regards to startup/shutdown times, Primo Cache should only have an impact if L2 caching is enabled (which would be unnecessary if you're running off an SSD in the first place) and Primo Ramdisk would only have an impact with an image file configured.
Not everyone is going to have a SSD. Besides, you still have to create each disk at start (witch means you have to load the drivers that they use) and then spend time creating it in ram and telling the system that this ram is in use (even tho that is done very fast for most systems). So yes, startup would slow down a bit. You also run into the issues I said between 1-5 already... Even more time if you do have something to write at the end.

I been here for a while. I've tested the software on both a $6 grand computer and as low as a $200 computer... I think I know what I am talking about a bit here ^.^ If you want to use both, I can't really stop you, but don't think you are right either ^^ I already agree you can use both, but I recommend only using one or the other. You all can try to fight me on the facts all you want, but in the end... I already seen it and thought about it.
Incriminated
Level 6
Level 6
Posts: 65
Joined: Fri May 31, 2013 3:03 pm

Re: Primo Cache's cache on a RAMdisk?

Post by Incriminated »

1.) You are wrong, not both are loading a ram-disk, PrimoCache is loading a block-caching-layer into RAM, while PrimoRAM_Disk puts a logical-disk into RAM. Both consume RAM space but this is nt the same then "both load a ram-disk". You are wrong with saying that i can't use PrimoCache or PrimoRAM-Disk in the "middle of the run"... fact is both run simultaneously in the middle of the runtime. More or less you say, that having any cache-software in RAM makes your OS not be able to access that blocks... but this doesn't mean anything to performance.

2.) PrimoCache takes a relative amount of time to start as does PrimoRAM-Disk. None takes longer each because the other one running. In fact you have the time it takes for PrimoCache to start plus additional the time PrimoRAM-DIsk needs to start. Nothing extra. Because the time for each to start up is short you wont even recognize a longer startup having both at all.

3.) PrimoCache space is limited too, the fact that it wont crash a programm because it runs full, doesn't make the PrimoCache-solution having no "issue" the issue with full PrimoCache is disk-bottlneck and that means in that situation, that PrimoCache is useless. Of cause the RAM-Disk is limited, thats why you make it large enough. The fact that you can assign too less space is not an "issue" of the software but the user himself.

4.) Your argument is none. Your impression/opionion/rating doesn't count.

5.) Thats why each carries a different name. Input and Output on a partition is reducing throughput on that device, yeah, but RAM-DIsk IO do not reduce the IO of the disk-device. Why?

6.) Browser can be limiting everywhere, it depends on which task you use the browser. My system is not in a bad design state but as a matter of fact my 15 tabs load lots faster when carried the browser-cache on a RAM-disk. Despite you not see a slowdown with 30-tabs, maybe you'll see the a speedup, when putting your browsers-cache onto a RAM-disk.

7.) Thats totally wrong. A RAM-disk loads all the data on creation. So the very first read will be boosted, while with PrimoCache you only boost the 2nd read. To stay with the example, PrimoCache will never speedup my browser firing up 15 tabs on the very first time. I not go into your "poorly written program" argue.

8.) You are arrogant, i have fun, you seem not to.

9.) You do not need a UPS when runnning PrimoCache and PrimoRAM-Disk. I verified that all RAM-Disk-Data is up-to-date and correctly flushed to disk in PrimoCache when the RAM-DIsk-File is kept on the partition running PrimoCache. There is no interference, first RAM-Disk writes to disk, after that PrimoCache flushes to disk. There is no additional risk in having PrimoCache and PrimoRAM-disk together in contrast to have each single. With your argue, you always have to use a UPS wether using PrimoCache or PrimoRAM-disk each. On a power loss you always loose non flushed blocks of PrimoCache defer-write and you always loose non-saved RAM-disk file.
Last edited by Incriminated on Mon Nov 04, 2013 5:01 am, edited 2 times in total.
Incriminated
Level 6
Level 6
Posts: 65
Joined: Fri May 31, 2013 3:03 pm

Re: Primo Cache's cache on a RAMdisk?

Post by Incriminated »

The point is:

You not explained why both is a bad idea in a comprehensible way, no need to read agin (before you say it again).
You claim, the way I use both is a bad example, without a single argue at all, while you claim having said at least 5.

You cannot tell the people how to accelerate the very 1st read of a specific application using only PrimoCache.
You cannot tell the people how to accelerate system-I/O on overall-write and overall-2nd read using only PrimoRAM-disk.

Both are the right solution if you want BOTH, because no single one does BOTH!

You trying to persuade, not convice, people, that somehow running both affect your SSD/HDD-Input/Output negatively, what I please you to proove, until then it will be a hoax for me.

Only thing you make clear is that you personally think that is a bad idea to put browser-cache on a RAM-disk (why, because you dont need it), what wasn't the hole point. I repeat, that I only mentioned that "use case" as an example, the point was about HOW to move an application to the RAM-disk the easiest way... what is: 1. creating RAM-disk 2. moving data to RAM-disk 3. symlink data on harddisk to new folder on RAM-disk.

What is your argue against it, please?

I documented for what case (specific application), why (boost 1st read) and how to move whatever application to a RAM-disk (symlink)... and I don't care what you find fault about it without an argue.

So this is still good:
What you can do instead is:
1. Run PrimoCache on your primary and/or Application-Partition.
2. Run a PrimoRamdisk for specific applications i.e. Browser-Cache.

You set it up like this way:
1. Run PrimoCache for System-Partition C.
2. Install your app, let's say Chrome in normal way and it goes to C:\Users\Me\AppData\Local\Chrome\
3. Copy C:\Users\Me\AppData\Local\Chrome\ to your RAMdrive R.
4. Open a MSDOS-Box and type: mklink /J R:\Chrome C:\Users\Me\AppData\Local\Chrome
5. Close and save and rerun the ram-drive and make it save every-time you shutdown reboot. Done.

So for my use case and your points 1 - 5:
1.) No problem. PrimoCache using 6GiB, PrimoRAM-Disk using 1GiB, some overhead, so OS has 8 GiB of blocks left to play with in middle of the runtime.
2.) No Problem. PrimoCache doesn't load any data on startup, PrimoRAM-DIsk loading up 1 GiB on startup... for me this is finished as soon as the system is usable (SSD).
3.) No problem. PrimoRAM-disk is limited to 1 GiB while my browser plus cache never ever hits 850mb, that's why I designed it that size.
4.) Still don't get this: "Programs are poorly written that it requires a RamDisk." No argue, not even english at all. So you say the hole software is pointless and that Primo-developers should leave the project and try to improve applications on the market so that these do not need a cache for benefit anymore, because anything that benefits from cache/ram-disk is "poorly written". Your logic is faulty.
5.) No problem. Running the browser in RAM-disk and another application read from PrimoCache the same time does not produce any single input output on the disk, that's exactly their very most purpose.

SO what?

Yeah both parting the RAM speeds both half down on simultaneous access, theoretically because in reallife simultaneous access barely happens, but even in that theoretical case of simultaneous access still the overall throughput stays the same, in means that there is no additional "overhead" slowdown for simultaneous access, so both PrimoCache and PrimoRAM-disk can deliver superiour performance at the very first time.

BTW: When browsers looses cache due to staying in RAM on a power loss... well who cares? I even copy the gigantic 1GiB RAM-disk-save-file to a backup-folder once a week, but it isn't neccessary since my browser sync's everything online... even on a loss.... reinstall... go - like before :D

P.S.: People, who need to count endless points without one single actual arguing content are usually wrong. YOu must be trying to confuse people with your buzz-word-flood. Repeating saying nonsense doesn't makes it the truth. Try to put your words into sentences that are comprehesible in means of spelling, grammar and syntax.. that way maybe someone takes your expressions seriously on the next try. The fact that you take the point of ram-disk takes time to load ram-device" drivers and mark ram as in use, what takes minimalistic time - lik eyou even said - as an argue against using RAM-disk in addition to Cache is ridicolous... since you think a 200millisecond faster boot is better that having the 1st-reads of your specific application accelerated ALL THE TIME additionally to your system-write and 2nd-read. That is out of all proportions... you considering such ridicolous argue makes it obvious how less real argues you have. Hopeless to give you a piece of mind.
Last edited by Incriminated on Mon Nov 04, 2013 4:55 am, edited 6 times in total.
Post Reply