Memory usage

Topics: General, Troubleshooting
May 20, 2011 at 11:32 AM
Edited May 20, 2011 at 11:33 AM

On several threads i read about performance, the warmup module, running with debugger and without, etc..
That is a real problem and i would like to see the performance being improved.

But.. about memory usage.. (currently version 1.1.30)

Orchard with source on my PC with debugging
The application pool uses around 200 MB with all the default source modules.
With 10 extra modules, doing nothing really special, it goes up to 400 MB
PS: Without debugger it's ALOT faster, but still uses the same amount of memory.

The teamcity build of Orchard.Web downloaded from codeplex, without debugging
The application pool uses around 100 MB with the modules included.
With our extra 10 modules it goes up to 300 MB.

Something is definitly eating memory..
What will happen when we've 200 modules? (that is not much since a customer might have 1000+ modules as we generate them)

Another strange thing is that my private build goes to 400 MB local but when deployed on another PC in IIS 7.5 (the same setup as far as i can see) the application pool goes up to 1.3 GB !! of memory within the first 2 minutes after a cold start.

May 20, 2011 at 5:03 PM

Can you give the current 1.x branch a try and see if it improves memory usage? We recently fixed issues related to memory usage. I was reproducing numbers similars to yours in 1.1, and with 1.x, memory usage fell just below 100MB (with 10 extra modules).

As for supporting 1000+ modules, we can't promise anything with the current implementation as we have never tried. However, would it become an issue, we have thought about it, and there are (what we believe) solutions we could implement to make this possible (e.g. merge multiple modules in single assemblies). We haven't had time to prototype anything yet though.

As for the 1.3GB memory usage under another setup, it might be because the app pool is running 64-bit. It seems the gabage collector is less agreessive under 64-bit.



May 24, 2011 at 8:23 AM

Thanks for the reply, i don't have any time to try the 1.x branch yet. Currently i'm researching some WWF stuff where customers can do things with a generated static version of a contenttype in the context as extension or we just create alot of custom activities hehe..

I'll look forward to version 1.2 and hoping that performance and memory usage will get better over time.

About the 1.3GB could indeed be the 64 bit machine, it is 1.3GB after cold start and 1 hour later it's using around 700MB (the garbage collector isn't taking garbage fast:)