Cache Operator - Memory limit?


Hi, I’ve searched this forum and googled but no joy so far…

How/Can you change the max memory limit in the Cach operator. It seems to be maxed out at 4gb, and I have 32 at my disposal. Is it because PFlow is 32bit or something?

I have a fairly simple flow, but with tons of M-particles using the Glue operator. I’m trying to render it on a farm and getting crazy jitters. I’ve tried Cache (which stops caching as it runs out of memory) and Disk Cache.

Disk Cache is an improvement on not using a cache at all, but they particles still go a bit crazy. It does on render fine if I do it on a single node, so I know my Pflow is good.

Any other caching ideas?! I don’t have budget for XMesh or any 3rd party plugs at the moment.

Thanks in advance :slight_smile:


In cache operator you have an option to change memory limit (which is by default set pretty low).
Just type some billions… quadrillions… something like: 11111111111111, and it will use maximum of your ram memory. :slight_smile:


Hi, thanks for your reply. I tried this, and it won’t let me go above 4194304k - roughly 4gb. I have 32 installed. I’m using Max 2105 on windows 7 64bit.


The same for me with max 2014 64x


Try using Thinkbox Krakatoa to save the particles out to PRT files.

I think the demo version will do that if you don’t have the real thing.


I don’t need Krakatoa to render PRT files?


If you type in a large value, more than the limit, it should use what you have available. AFAIK it is just the spinners max value that is capped, not the actual usage limit. If you have the latest version or newer than 2013+ extension, you should have Disk Cache as well.


You can load PRT files in with a Krakatoa PRTLoader. It all depends on how you are using the particles. If you have the full version of KRak this is definitely the way to go, as PRT files are smaller (compressed lossless on disk), Krakatoa loads them much faster, and it handles huge datasets with ease.

If you are only using the demo I don’t recall what the limitations are, but you would be amazed how much functionality they offer for free.

 Normally I would totally suggest using Krakatoa, as one of their biggest proponents, but when someone says:

I have a fairly simple flow, but with tons of M-particles using the Glue operator.

 That to me means they are using meshes, in which they would also need Frost if they were to use a PRT based approach. ;)

EDIT: Besides if the OP is looking for a paid approach I would think SuperMesher or Xmesh would be better suited to the purpose. Krakatoa does kick ass though :slight_smile:


Yeah, after reviewing the OP XMesh would be what he would need.


Perhaps caching from the mP World might do it?


Johnny, I tried upping the Memory count, and whatever I type in, it stops calculating when it hits 4GB.

I know X-Mesh, but unfortunately can’t purchase it right now - I’m stuck with core Max, so no Frost for meshing PRTs either.

Bit of a bummer… I’m guessing that Pflow is 32Bit code, so the memory is maxed out at 4GB?


Pflow was written originally as a plugin for max 3, then integrated into max 5, so yes the core is quite old and have 32-bit dependencies as well as being single threaded.

I should have asked this first off, what version of max are you running?

Have you tried as PelDaddy suggests with mP World Bake, or do you not have Disk Cache? Personnally Disk Cache or anything that caches to disk is what you want.


I’m running Max 2015, up to date with service packs/hot fixes and whatnot.

I tried Disk Cache, and it was a better than not caching, but still started to go ape when it got Pflow started getting more complicated.

I haven’t tried baking from the world… I have two worlds, so I will try baking them. I guess I don’t need/shouldn’t have the other cache operators running as well?

I also noticed there is a bake glue option. I guess I should have given that a go as well, as a lot of the crazyness is happening form the glue.

I will try all that, and report back, thanks for all your help :slight_smile:


Unless you have a very specific reason to do so you should only have/need a single mP World helper.

If you have a fast SSD drive ie min SATA III @500~ mbs to cache to, you should be at the very least 5x better of with any disk cache system, Pflow, Krakatoa, realflow, ect. They are cheap these days you can easily get away with a 128 to 256 gb drive for most stuff.


Hi thanks. I appreciate my scene is unusual… The two worlds was the only way I could get it to work. The scene involves a few hundred blood cells flying through a vessel which start to collect around a blockage.

It starts with a normal/old style flow, then uses the mP Switch to convert to mParticles physx for the coagulation, using Glue. For some reason the blood cells wouldn’t bind to my collision object in the same world, the only way I could get it to work was to send them to a new event with a new world - then it all worked. I spent hours fiddling around, and this worked!

I do have a fast SSD drive, but the disk caching operator didn’t solve the problem. Unfortunately I don’t have budget right now for any 3rd party plugs, otherwise I’d be all over XMesh!


Maybe post a screengrab of your flow. I am curious to see what you setup looks like. You may be having other issues. It would be best if you could post your scene to help troubleshoot but I can understand if can’t.


Perhaps the cells that aren’t involved in the MParticle coagulation could be regular particles with shape instances? Then you could cache just the particles positions (not shapes, which makes for a much smaller cache) and replace those realtime with a post-cache operator like JohnnyRandom helpfully demonstrates here:

(JohnnyRandom, your Vimeo video appears to not be embeddable.)


Got moved onto something else… but had a chance to come back, thanks for replies.
Johnny Random, I can post a grab of my flow, but can’t work out howto post an image - - what am I missing?!

So, I tried caching just the 2nd World (the one with the glue). When I cached both worlds, and baked the glue it all stopped working.

Caching the 2nd World worked, as far as there were no weird thing happening in the animation, it played from start to finish and lloked good. However, when I did an AO pass from the same file, it came out slightly different, particles in different places.

I’m guessing thats because I didn’t cache the 1st World… So back I go to try that.

PelDaddy, all the particles need to be in a phys X sim, even the non coagulation ones, as they bounce off each other, and off the blood vessel wall. Useful video though, I hadn’t seen Johnny Random’s videos - excellent resource!


Just attach the image with Attach Files below in the Reply page->Additional Options (I think you need 10 posts though before it becomes active)

Or use an image host like imgur