jmeter performance test - garbage collection

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

jmeter performance test - garbage collection

mabu
Hi,

I made a performance test on orbeon forms 4.8 using jmeter resulting in strange garbage collection.

The simple test scenario was as follows:
1.) Set heap size -Xms -Xmx to 750MB
2.) Start the Websphere server
3.) Open the form once with the browser
4.) Open the form 1000 times by executing 1000 GET request in 5 minutes with jmeter.

The response time was in average about 700ms which is quite good.
But I am confused why garbage collection frees all the memory!? Do you have an explanation for it?

memory.png

Martin
Reply | Threaded
Open this post in threaded view
|

Re: jmeter performance test - garbage collection

Erik Bruchez
Administrator
What you should see is that, as you request the form, or different forms, over time, memory usage (after gc) should climb until the document cache is full (by default, there are 50 entries). Then, the state associated with those forms is serialized to disk via Ehcache.

That probably explains why memory doesn't keep growing indefinitely.

-Erik
Reply | Threaded
Open this post in threaded view
|

Re: jmeter performance test - garbage collection

mabu
Hi Erik,

Yes, if I increase the property oxf.xforms.cache.documents.size (e.g. to 500) then more memory is used after gc as you can see in memory2.png.
Can you tell me why the document cache size by default is so low?

Thank's
Martin
Reply | Threaded
Open this post in threaded view
|

Re: jmeter performance test - garbage collection

Erik Bruchez
Administrator
Martin,

It's currently a tradeoff between memory usage and number of concurrent form sessions. If you increase it too much, you run a risk of running out of memory, especially when Form Builder is in use. Ideally, this would be more adaptive.

We have a whole collection of cache-related work going on:

    https://github.com/orbeon/orbeon-forms/issues/1606

-Erik