You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@jmeter.apache.org by chaitanya bhatt <bh...@gmail.com> on 2012/11/29 20:40:19 UTC

Why does Jmeter have a huge memory footprint?

Group,

I have noticed that Jmeter uses unreasonable amount of memory per thread.
Even if you strip off loggers/result tree etc. you would still see a huge
consumption of memory. I monitored the Jmeter memory heap and tuned the JVM
as much as possible. In spite of this I noticed that the tenured generation
of the heap is always packed with objects of huge size. Lots of classes are
loaded dynamically which is causing high occupancy in perm gen.

I am working on another home grown tool which uses HTTPClient library to
generate load. Using this home grown tool I can generate 4000 instances per
machine (64 bit with 32Gb ram and 16 CPU cores). But Jmeter on the contrary
fails to scale to a mere 1/10th of the target user load.

This is a frustrating problem which has been overlooked for a long time.

Can something be done about this?

Thanks
Chaitanya M Bhatt
http://performancecompetence.com

Re: Why does Jmeter have a huge memory footprint?

Posted by Shmuel Krakower <sh...@gmail.com>.
Hi
What is the relevant bugzilla?

Btw- I am running more than 1k threads on smaller machine than described
and don't have any memory issues.
On Nov 30, 2012 1:56 AM, "chaitanya bhatt" <bh...@gmail.com>
wrote:

> Sure Philippe.
>
> Thanks a ton!
> Chaitanya
>
> On Thu, Nov 29, 2012 at 2:25 PM, Philippe Mouawad <
> philippe.mouawad@gmail.com> wrote:
>
> > Hello,
> > I suggest you open a bugzilla (there is no one for that) and provide:
> >
> >    - jmeter.properties and user.properties file
> >    - jmeter.log
> >    - jmeter file you used
> >    - Test Plan
> >    - And as you seem to have evaluated the memory some screenshots of
> >    consumptions you are talking about
> >
> >
> > Regards
> >
> > Philippe
> >
> > On Thu, Nov 29, 2012 at 10:52 PM, chaitanya bhatt <
> > bhatt.chaitanya@gmail.com
> > > wrote:
> >
> > >  I am running the test via console/terminal.
> > >  I am not saving transaction response times or responses to files.
> > >  I am measuring response time directly from the Wily (servlet response
> > > time).
> > >  I have response assertions which checks the body of the HTTP response.
> > >  The IF controller just evaluates a variable and checks if the value
> > > exceeds number 2. Interpreter condition and Evaluate for all children
> is
> > > Unchecked.
> > >  Basically, I have made sure that the test suit is as leane as
> possible.
> > >  I don't have any soft of non-html/non-json/non-xml HTTP resource
> > requests.
> > >
> > > Thanks
> > > Chaitanya
> > >
> > > On Thu, Nov 29, 2012 at 1:27 PM, Philippe Mouawad <
> > > philippe.mouawad@gmail.com> wrote:
> > >
> > > > Hello,
> > > >
> > > > On Thu, Nov 29, 2012 at 10:12 PM, chaitanya bhatt <
> > > > bhatt.chaitanya@gmail.com
> > > > > wrote:
> > > >
> > > > > Thanks for replying Philippe!
> > > > >
> > > > > I noticed that the test cases you guys used to test the performance
> > of
> > > > > Jmeter is far to small than real world cases. Your test case had
> > JUST 3
> > > > > HTTP samplers with just 2 N-V pairs in each sample.
> > > > >
> > > >
> > > > Of course, this test plan must be simple for simple setup and it's
> > more a
> > > > basis to compare versions.
> > > > It just illustrates the efforts made since 2.6 to improve
> performances,
> > > > look at dev list to see
> > > > what was made on 2.8.
> > > >
> > > >
> > > >
> > > > > Real world scenarios have at least 100-200 HTTP samples per thread
> > > group.
> > > > > And the requests should contain at least 10-20 NV (name/value)
> pairs
> > > for
> > > > > POST requests and the responses should at least weigh 80-120KB. At
> > > least
> > > > 20
> > > > > response assertions. At least and at least 10 post response regex
> > > > > evaluators. This is when you actually exercise the engine.
> > > > >
> > > > > The test with 4000 threads I was talking about was a real life one.
> > > >
> > > > I am currently using Jmeter 2.8 and JRE 1.6.
> > > > >
> > > > > I am not using third party plugins. I am not using XML/CSV output.
> I
> > > have
> > > > > removed all listeners.
> > > > >
> > > >
> > > > I don't understand, which kind of save service are you using:
> > > > CSV or  XML ?
> > > >
> > > > >
> > > > > I have 250 HTTP samplers with at least 10-NV pairs in each request.
> > > Most
> > > > > requests are of type: POST. I have 35 assertions and 13 regex
> > > > evaluators. I
> > > > > have 2 If controllers, 15 transaction controllers, 8 constant
> timers
> > > and
> > > > 1
> > > > > thread group.
> > > > >
> > > >
> > > > Which type of assertions ?
> > > > What is the config of IfControllers ?
> > > >
> > > > >
> > > > > Hope this helps. I will raise a defect in bugzilla but I'll be
> > > surprised
> > > > if
> > > > > it doesn't already have one.
> > > > >
> > > > > Yes please do and if possible attach a Test Plan as close to
> possible
> > > to
> > > > your current one and anonymize data in it.
> > > >
> > > >
> > > > > Thanks
> > > > > Chaitanya M Bhatt
> > > > >
> > > > >
> > > > >
> > > > > On Thu, Nov 29, 2012 at 12:25 PM, Philippe Mouawad <
> > > > > philippe.mouawad@gmail.com> wrote:
> > > > >
> > > > > > Hello,
> > > > > > Which version of JMeter are you using ?
> > > > > >
> > > > > > Can you attach your test plan to a bugzilla or show a description
> > of
> > > > it ?
> > > > > >
> > > > > > As for what you are saying, I have already used jmeter with a
> > machine
> > > > > > simular to the configuration you are describing and went up to
> 4000
> > > > > threads
> > > > > > and memory was not the limit in my case,
> > > > > > so you should investigate your test plan first particularly if
> you
> > > are
> > > > > > talking about Perm Gen as it's not the kind of memory that is
> > highly
> > > > > > consumed except if you are using Javascript for example.
> > > > > >
> > > > > >    - What kind of Test Elements are you using ?
> > > > > >    - Are you using third party plugins?
> > > > > >    - Which listeners have you setup
> > > > > >    - Are you using XML or CSV output
> > > > > >
> > > > > >
> > > > > > As for what you are saying regarding "*This is a frustrating
> > problem
> > > > > which
> > > > > > has been overlooked for a long time.*", please see:
> > > > > >
> > > > > >    - http://wiki.apache.org/jmeter/JMeterPerformance
> > > > > >
> > > > > > Regards
> > > > > >
> > > > > > Philippe
> > > > > >
> > > > > > On Thu, Nov 29, 2012 at 8:40 PM, chaitanya bhatt
> > > > > > <bh...@gmail.com>wrote:
> > > > > >
> > > > > > > Group,
> > > > > > >
> > > > > > > I have noticed that Jmeter uses unreasonable amount of memory
> per
> > > > > thread.
> > > > > > > Even if you strip off loggers/result tree etc. you would still
> > see
> > > a
> > > > > huge
> > > > > > > consumption of memory. I monitored the Jmeter memory heap and
> > tuned
> > > > the
> > > > > > JVM
> > > > > > > as much as possible. In spite of this I noticed that the
> tenured
> > > > > > generation
> > > > > > > of the heap is always packed with objects of huge size. Lots of
> > > > classes
> > > > > > are
> > > > > > > loaded dynamically which is causing high occupancy in perm gen.
> > > > > > >
> > > > > > > I am working on another home grown tool which uses HTTPClient
> > > library
> > > > > to
> > > > > > > generate load. Using this home grown tool I can generate 4000
> > > > instances
> > > > > > per
> > > > > > > machine (64 bit with 32Gb ram and 16 CPU cores). But Jmeter on
> > the
> > > > > > contrary
> > > > > > > fails to scale to a mere 1/10th of the target user load.
> > > > > > >
> > > > > > > This is a frustrating problem which has been overlooked for a
> > long
> > > > > time.
> > > > > > >
> > > > > > > Can something be done about this?
> > > > > > >
> > > > > > > Thanks
> > > > > > > Chaitanya M Bhatt
> > > > > > > http://performancecompetence.com
> > > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > > Cordialement.
> > > > > > Philippe Mouawad.
> > > > > >
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > > Cordialement.
> > > > Philippe Mouawad.
> > > >
> > >
> >
> >
> >
> > --
> > Cordialement.
> > Philippe Mouawad.
> >
>

Re: Why does Jmeter have a huge memory footprint?

Posted by Philippe Mouawad <ph...@gmail.com>.
Hello Chaitanya,
Still no test plan showing issue.
As I consider major improvements has been done in this field within this
bugzilla:
- https://issues.apache.org/bugzilla/show_bug.cgi?id=54268

I will be closing issue by end of week unless a Test Plan showing remaining
isses if any is uploaded.

Regards
Philippe

On Tuesday, December 11, 2012, Philippe Mouawad wrote:

> Read this :
> http://jmeter.apache.org/nightly.html
>
> Installing JMeter runtime Download the _bin and _lib files
> Unpack the archives into the same directory structure
> The other archives are not needed to run JMeter.
> *
> *
> *Regards
> *
> *Philippe*
>
> On Tuesday, December 11, 2012, chaitanya bhatt wrote:
>
> Downloaded r1419975. Tried to launch ApacheJmeter.jar on Mac but got the
> below shown error.
>
> .../apache-jmeter-r1419975/bin/jmeter ; exit;
> java.lang.NoClassDefFoundError:
> com/thoughtworks/xstream/converters/ConversionException
> at java.lang.Class.getDeclaredConstructors0(Native Method)
> at java.lang.Class.privateGetDeclaredConstructors(Class.java:2404)
> at java.lang.Class.getConstructor0(Class.java:2714)
> at java.lang.Class.newInstance0(Class.java:343)
> at java.lang.Class.newInstance(Class.java:325)
> at org.apache.jmeter.NewDriver.main(NewDriver.java:216)
> Caused by: java.lang.ClassNotFoundException:
> com.thoughtworks.xstream.converters.ConversionException
> at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
> ... 6 more
> JMeter home directory was detected as: /Users/jmeter/apache-jmeter-r1419975
> logout
>
> Thanks
> Chaitanya M Bhatt
>
> On Mon, Dec 10, 2012 at 10:48 PM, Philippe Mouawad <
> philippe.mouawad@gmail.com> wrote:
>
> > Hello Chaitanya,
> > Can you try with current nightly build and give us feedback.
> > There have been 2 big optimisations regarding memory and CPU.
> >
> > Also check that you regexp extractor don't use option Body (unescaped)
> >
> > Regards
> > Philippe
> >
> > On Wednesday, December 5, 2012, Enric Jaen wrote:
> >
> > >
> > >
> > > Upps, my mistake. These flags doesn't apply here as you aren't getting
> > any
> > > outOfMemory.
> > >
> > > In any case, with java6 you can create a snapshot of the heap with a
> java
> > > profiler to get a more exact idea of what objects are consuming the
> > memory.
> > >
> > > HTH
> > > /Enric Jaen
> > >
> > >
> > >
> > > ________________________________
> > >  De: Enric Jaen <enricjaen@yahoo.es <javascript:;>>
> > > Para: JMeter Users List <user@jmeter.apache.org <javascript:;>>
> > > Enviado: Miércoles 5 de diciembre de 2012 9:31
> > > Asunto: Re: Why does Jmeter have a huge memory footprint?
> > >
> > > Maybe you could add these params to the JVM to generate a .hprof file :
> > >
> > > -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=<your log dir>
> > >
> > >
> > > to be  analysed with a java profiler [1] what is eating the memory.
> > >
> > > HTH
> > > /Enric Jaen
> > >
> > >
> > > [1] for example eclipse MAT plugin  http://www.eclipse.org/mat/
> > >
> > >
> > >
> > > ________________________________
> > > De: chaitanya bhatt <bh...@gmail.com>
> > > Para: JMeter Users List <us...@jmeter.apache.org>
> > > Enviado: Miércoles 5 de diciembre de 2012 0:27
> > > Asunto: Re: Why does Jmeter have a huge memory footprint?
> > >
> > > Still working on it. Sorry Philippe and Smuel. I will try my best to
> log
> > > the defect within the next two days.
> > >
> > > Thanks
> > > Chaitanya M Bhatt
> > >
> > >
> > > On Tue, Dec 4, 2012 at 2:13 PM, Philippe Mouawad <
> > > philippe.mouawad@gmail.com
> > > > wrote:
> > >
> > > > Hello,
> > > > Still no Bugzilla created.
> > > >
> > > > By the way what is the sizes of your responses , zipped and not
> zipped
> > ?
> > > >
> > > > Thanks
> > > > Regards
> > > > Philippe
> > > >
> > > > On Fri, Nov 30, 2012 at 12:55 AM, chaitanya bhatt <
> > > > bhatt.chaitanya@gmail.com
> > > > > wrote:
> > > >
> > > > > Sure Philippe.
> > > > >
> > > > > Thanks a ton!
> > > > > Chaitanya
> > > > >
> > > > > On Thu, Nov 29, 2012 at 2:25 PM, Philippe Mouawad <
> > > > > philippe.mouawad@gmail.com> wrote:
> > > > >
> > > > > > Hello,
> > > > > > I suggest you open a bugzilla (there is no one for that) and
> >
>
>
>
> --
> Cordialement.
> Philippe Mouawad.
>
>
>
>

-- 
Cordialement.
Philippe Mouawad.

Re: Why does Jmeter have a huge memory footprint?

Posted by Philippe Mouawad <ph...@gmail.com>.
Read this :
http://jmeter.apache.org/nightly.html

Installing JMeter runtimeDownload the _bin and _lib files
Unpack the archives into the same directory structure
The other archives are not needed to run JMeter.
*
*
*Regards
*
*Philippe*

On Tuesday, December 11, 2012, chaitanya bhatt wrote:

> Downloaded r1419975. Tried to launch ApacheJmeter.jar on Mac but got the
> below shown error.
>
> .../apache-jmeter-r1419975/bin/jmeter ; exit;
> java.lang.NoClassDefFoundError:
> com/thoughtworks/xstream/converters/ConversionException
> at java.lang.Class.getDeclaredConstructors0(Native Method)
> at java.lang.Class.privateGetDeclaredConstructors(Class.java:2404)
> at java.lang.Class.getConstructor0(Class.java:2714)
> at java.lang.Class.newInstance0(Class.java:343)
> at java.lang.Class.newInstance(Class.java:325)
> at org.apache.jmeter.NewDriver.main(NewDriver.java:216)
> Caused by: java.lang.ClassNotFoundException:
> com.thoughtworks.xstream.converters.ConversionException
> at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
> ... 6 more
> JMeter home directory was detected as: /Users/jmeter/apache-jmeter-r1419975
> logout
>
> Thanks
> Chaitanya M Bhatt
>
> On Mon, Dec 10, 2012 at 10:48 PM, Philippe Mouawad <
> philippe.mouawad@gmail.com <javascript:;>> wrote:
>
> > Hello Chaitanya,
> > Can you try with current nightly build and give us feedback.
> > There have been 2 big optimisations regarding memory and CPU.
> >
> > Also check that you regexp extractor don't use option Body (unescaped)
> >
> > Regards
> > Philippe
> >
> > On Wednesday, December 5, 2012, Enric Jaen wrote:
> >
> > >
> > >
> > > Upps, my mistake. These flags doesn't apply here as you aren't getting
> > any
> > > outOfMemory.
> > >
> > > In any case, with java6 you can create a snapshot of the heap with a
> java
> > > profiler to get a more exact idea of what objects are consuming the
> > memory.
> > >
> > > HTH
> > > /Enric Jaen
> > >
> > >
> > >
> > > ________________________________
> > >  De: Enric Jaen <enricjaen@yahoo.es <javascript:;> <javascript:;>>
> > > Para: JMeter Users List <user@jmeter.apache.org <javascript:;><javascript:;>>
> > > Enviado: Miércoles 5 de diciembre de 2012 9:31
> > > Asunto: Re: Why does Jmeter have a huge memory footprint?
> > >
> > > Maybe you could add these params to the JVM to generate a .hprof file :
> > >
> > > -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=<your log dir>
> > >
> > >
> > > to be  analysed with a java profiler [1] what is eating the memory.
> > >
> > > HTH
> > > /Enric Jaen
> > >
> > >
> > > [1] for example eclipse MAT plugin  http://www.eclipse.org/mat/
> > >
> > >
> > >
> > > ________________________________
> > > De: chaitanya bhatt <bh...@gmail.com>
> > > Para: JMeter Users List <us...@jmeter.apache.org>
> > > Enviado: Miércoles 5 de diciembre de 2012 0:27
> > > Asunto: Re: Why does Jmeter have a huge memory footprint?
> > >
> > > Still working on it. Sorry Philippe and Smuel. I will try my best to
> log
> > > the defect within the next two days.
> > >
> > > Thanks
> > > Chaitanya M Bhatt
> > >
> > >
> > > On Tue, Dec 4, 2012 at 2:13 PM, Philippe Mouawad <
> > > philippe.mouawad@gmail.com
> > > > wrote:
> > >
> > > > Hello,
> > > > Still no Bugzilla created.
> > > >
> > > > By the way what is the sizes of your responses , zipped and not
> zipped
> > ?
> > > >
> > > > Thanks
> > > > Regards
> > > > Philippe
> > > >
> > > > On Fri, Nov 30, 2012 at 12:55 AM, chaitanya bhatt <
> > > > bhatt.chaitanya@gmail.com
> > > > > wrote:
> > > >
> > > > > Sure Philippe.
> > > > >
> > > > > Thanks a ton!
> > > > > Chaitanya
> > > > >
> > > > > On Thu, Nov 29, 2012 at 2:25 PM, Philippe Mouawad <
> > > > > philippe.mouawad@gmail.com> wrote:
> > > > >
> > > > > > Hello,
> > > > > > I suggest you open a bugzilla (there is no one for that) and
> > provide:
> > > > > >
> > > > > >    - jmeter.properties and user.properties file
> > > > > >    - jmeter.log
> > > > > >    - jmeter file you used
> > > > > >    - Test Plan
> > > > > >    - And as you seem to have evaluated the memory some
> screenshots
> > of
> > > > > >    consumptions you are talking about
> > > > > >
> > > > > >
> > > > > > Regards
> > > > > >
> > > > > > Philippe
> > > > > >
> > > > > > On Thu, Nov 29, 2012 at 10:52 PM, chaitanya bhatt <
> > > > > > bhatt.chaitanya@gmail.com
> > > > > > > wrote:
> > > > > >
> > > > > > >  I am running the test via console/terminal.
> > > > > > >  I am not saving transaction response times or responses to
> > files.
> > > > > > >  I am measuring response time directly from the Wily (servlet
> > > > response
> > > > > > > time).
> > > > > > >  I have response assertions which checks the body of the HTTP
> > > > response.
> > > > > > >  The IF controller just evaluates a variable and checks if the
> > > value
> > > > > > > exceeds number 2. Interpreter condition and Evaluate for all
> > > children
> > > > > is
> > > > > > > Unchecked.
> > > > > > >  Basically, I have made sure that the test suit is as leane as
> > > > > possible.
> > > > > > >  I don't have any soft of non-html/non-json/non-xml HTTP
> resource
> > > > > > requests.
> > > > > > >
> > > > >



-- 
Cordialement.
Philippe Mouawad.

Re: Why does Jmeter have a huge memory footprint?

Posted by chaitanya bhatt <bh...@gmail.com>.
Downloaded r1419975. Tried to launch ApacheJmeter.jar on Mac but got the
below shown error.

.../apache-jmeter-r1419975/bin/jmeter ; exit;
java.lang.NoClassDefFoundError:
com/thoughtworks/xstream/converters/ConversionException
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2404)
at java.lang.Class.getConstructor0(Class.java:2714)
at java.lang.Class.newInstance0(Class.java:343)
at java.lang.Class.newInstance(Class.java:325)
at org.apache.jmeter.NewDriver.main(NewDriver.java:216)
Caused by: java.lang.ClassNotFoundException:
com.thoughtworks.xstream.converters.ConversionException
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 6 more
JMeter home directory was detected as: /Users/jmeter/apache-jmeter-r1419975
logout

Thanks
Chaitanya M Bhatt

On Mon, Dec 10, 2012 at 10:48 PM, Philippe Mouawad <
philippe.mouawad@gmail.com> wrote:

> Hello Chaitanya,
> Can you try with current nightly build and give us feedback.
> There have been 2 big optimisations regarding memory and CPU.
>
> Also check that you regexp extractor don't use option Body (unescaped)
>
> Regards
> Philippe
>
> On Wednesday, December 5, 2012, Enric Jaen wrote:
>
> >
> >
> > Upps, my mistake. These flags doesn't apply here as you aren't getting
> any
> > outOfMemory.
> >
> > In any case, with java6 you can create a snapshot of the heap with a java
> > profiler to get a more exact idea of what objects are consuming the
> memory.
> >
> > HTH
> > /Enric Jaen
> >
> >
> >
> > ________________________________
> >  De: Enric Jaen <enricjaen@yahoo.es <javascript:;>>
> > Para: JMeter Users List <user@jmeter.apache.org <javascript:;>>
> > Enviado: Miércoles 5 de diciembre de 2012 9:31
> > Asunto: Re: Why does Jmeter have a huge memory footprint?
> >
> > Maybe you could add these params to the JVM to generate a .hprof file :
> >
> > -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=<your log dir>
> >
> >
> > to be  analysed with a java profiler [1] what is eating the memory.
> >
> > HTH
> > /Enric Jaen
> >
> >
> > [1] for example eclipse MAT plugin  http://www.eclipse.org/mat/
> >
> >
> >
> > ________________________________
> > De: chaitanya bhatt <bh...@gmail.com>
> > Para: JMeter Users List <us...@jmeter.apache.org>
> > Enviado: Miércoles 5 de diciembre de 2012 0:27
> > Asunto: Re: Why does Jmeter have a huge memory footprint?
> >
> > Still working on it. Sorry Philippe and Smuel. I will try my best to log
> > the defect within the next two days.
> >
> > Thanks
> > Chaitanya M Bhatt
> >
> >
> > On Tue, Dec 4, 2012 at 2:13 PM, Philippe Mouawad <
> > philippe.mouawad@gmail.com
> > > wrote:
> >
> > > Hello,
> > > Still no Bugzilla created.
> > >
> > > By the way what is the sizes of your responses , zipped and not zipped
> ?
> > >
> > > Thanks
> > > Regards
> > > Philippe
> > >
> > > On Fri, Nov 30, 2012 at 12:55 AM, chaitanya bhatt <
> > > bhatt.chaitanya@gmail.com
> > > > wrote:
> > >
> > > > Sure Philippe.
> > > >
> > > > Thanks a ton!
> > > > Chaitanya
> > > >
> > > > On Thu, Nov 29, 2012 at 2:25 PM, Philippe Mouawad <
> > > > philippe.mouawad@gmail.com> wrote:
> > > >
> > > > > Hello,
> > > > > I suggest you open a bugzilla (there is no one for that) and
> provide:
> > > > >
> > > > >    - jmeter.properties and user.properties file
> > > > >    - jmeter.log
> > > > >    - jmeter file you used
> > > > >    - Test Plan
> > > > >    - And as you seem to have evaluated the memory some screenshots
> of
> > > > >    consumptions you are talking about
> > > > >
> > > > >
> > > > > Regards
> > > > >
> > > > > Philippe
> > > > >
> > > > > On Thu, Nov 29, 2012 at 10:52 PM, chaitanya bhatt <
> > > > > bhatt.chaitanya@gmail.com
> > > > > > wrote:
> > > > >
> > > > > >  I am running the test via console/terminal.
> > > > > >  I am not saving transaction response times or responses to
> files.
> > > > > >  I am measuring response time directly from the Wily (servlet
> > > response
> > > > > > time).
> > > > > >  I have response assertions which checks the body of the HTTP
> > > response.
> > > > > >  The IF controller just evaluates a variable and checks if the
> > value
> > > > > > exceeds number 2. Interpreter condition and Evaluate for all
> > children
> > > > is
> > > > > > Unchecked.
> > > > > >  Basically, I have made sure that the test suit is as leane as
> > > > possible.
> > > > > >  I don't have any soft of non-html/non-json/non-xml HTTP resource
> > > > > requests.
> > > > > >
> > > > > > Thanks
> > > > > > Chaitanya
> > > > > >
> > > > > > On Thu, Nov 29, 2012 at 1:27 PM, Philippe Mouawad <
> > > > > > philippe.mouawad@gmail.com> wrote:
> > > > > >
> > > > > > > Hello,
> > > > > > >
> > > > > > > On Thu, Nov 29, 2012 at 10:12 PM, chaitanya bhatt <
> > > > > > > bhatt.chaitanya@gmail.com
> > > > > > > > wrote:
> > > > > > >
> > > > > > > > Thanks for replying Philippe!
> > > > > > > >
> > > > > > > > I noticed that the test cases you guys used to test the
> > > performance
> > > > > of
> > > > > > > > Jmeter is far to small than real world
>
>
>
> --
> Cordialement.
> Philippe Mouawad.
>

Re: Why does Jmeter have a huge memory footprint?

Posted by Philippe Mouawad <ph...@gmail.com>.
Hello Chaitanya,
Can you try with current nightly build and give us feedback.
There have been 2 big optimisations regarding memory and CPU.

Also check that you regexp extractor don't use option Body (unescaped)

Regards
Philippe

On Wednesday, December 5, 2012, Enric Jaen wrote:

>
>
> Upps, my mistake. These flags doesn't apply here as you aren't getting any
> outOfMemory.
>
> In any case, with java6 you can create a snapshot of the heap with a java
> profiler to get a more exact idea of what objects are consuming the memory.
>
> HTH
> /Enric Jaen
>
>
>
> ________________________________
>  De: Enric Jaen <enricjaen@yahoo.es <javascript:;>>
> Para: JMeter Users List <user@jmeter.apache.org <javascript:;>>
> Enviado: Miércoles 5 de diciembre de 2012 9:31
> Asunto: Re: Why does Jmeter have a huge memory footprint?
>
> Maybe you could add these params to the JVM to generate a .hprof file :
>
> -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=<your log dir>
>
>
> to be  analysed with a java profiler [1] what is eating the memory.
>
> HTH
> /Enric Jaen
>
>
> [1] for example eclipse MAT plugin  http://www.eclipse.org/mat/
>
>
>
> ________________________________
> De: chaitanya bhatt <bh...@gmail.com>
> Para: JMeter Users List <us...@jmeter.apache.org>
> Enviado: Miércoles 5 de diciembre de 2012 0:27
> Asunto: Re: Why does Jmeter have a huge memory footprint?
>
> Still working on it. Sorry Philippe and Smuel. I will try my best to log
> the defect within the next two days.
>
> Thanks
> Chaitanya M Bhatt
>
>
> On Tue, Dec 4, 2012 at 2:13 PM, Philippe Mouawad <
> philippe.mouawad@gmail.com
> > wrote:
>
> > Hello,
> > Still no Bugzilla created.
> >
> > By the way what is the sizes of your responses , zipped and not zipped ?
> >
> > Thanks
> > Regards
> > Philippe
> >
> > On Fri, Nov 30, 2012 at 12:55 AM, chaitanya bhatt <
> > bhatt.chaitanya@gmail.com
> > > wrote:
> >
> > > Sure Philippe.
> > >
> > > Thanks a ton!
> > > Chaitanya
> > >
> > > On Thu, Nov 29, 2012 at 2:25 PM, Philippe Mouawad <
> > > philippe.mouawad@gmail.com> wrote:
> > >
> > > > Hello,
> > > > I suggest you open a bugzilla (there is no one for that) and provide:
> > > >
> > > >    - jmeter.properties and user.properties file
> > > >    - jmeter.log
> > > >    - jmeter file you used
> > > >    - Test Plan
> > > >    - And as you seem to have evaluated the memory some screenshots of
> > > >    consumptions you are talking about
> > > >
> > > >
> > > > Regards
> > > >
> > > > Philippe
> > > >
> > > > On Thu, Nov 29, 2012 at 10:52 PM, chaitanya bhatt <
> > > > bhatt.chaitanya@gmail.com
> > > > > wrote:
> > > >
> > > > >  I am running the test via console/terminal.
> > > > >  I am not saving transaction response times or responses to files.
> > > > >  I am measuring response time directly from the Wily (servlet
> > response
> > > > > time).
> > > > >  I have response assertions which checks the body of the HTTP
> > response.
> > > > >  The IF controller just evaluates a variable and checks if the
> value
> > > > > exceeds number 2. Interpreter condition and Evaluate for all
> children
> > > is
> > > > > Unchecked.
> > > > >  Basically, I have made sure that the test suit is as leane as
> > > possible.
> > > > >  I don't have any soft of non-html/non-json/non-xml HTTP resource
> > > > requests.
> > > > >
> > > > > Thanks
> > > > > Chaitanya
> > > > >
> > > > > On Thu, Nov 29, 2012 at 1:27 PM, Philippe Mouawad <
> > > > > philippe.mouawad@gmail.com> wrote:
> > > > >
> > > > > > Hello,
> > > > > >
> > > > > > On Thu, Nov 29, 2012 at 10:12 PM, chaitanya bhatt <
> > > > > > bhatt.chaitanya@gmail.com
> > > > > > > wrote:
> > > > > >
> > > > > > > Thanks for replying Philippe!
> > > > > > >
> > > > > > > I noticed that the test cases you guys used to test the
> > performance
> > > > of
> > > > > > > Jmeter is far to small than real world



-- 
Cordialement.
Philippe Mouawad.

Re: Why does Jmeter have a huge memory footprint?

Posted by Enric Jaen <en...@yahoo.es>.

Upps, my mistake. These flags doesn't apply here as you aren't getting any outOfMemory.

In any case, with java6 you can create a snapshot of the heap with a java profiler to get a more exact idea of what objects are consuming the memory.

HTH
/Enric Jaen



________________________________
 De: Enric Jaen <en...@yahoo.es>
Para: JMeter Users List <us...@jmeter.apache.org> 
Enviado: Miércoles 5 de diciembre de 2012 9:31
Asunto: Re: Why does Jmeter have a huge memory footprint?
 
Maybe you could add these params to the JVM to generate a .hprof file : 

-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=<your log dir>


to be  analysed with a java profiler [1] what is eating the memory.

HTH
/Enric Jaen


[1] for example eclipse MAT plugin  http://www.eclipse.org/mat/



________________________________
De: chaitanya bhatt <bh...@gmail.com>
Para: JMeter Users List <us...@jmeter.apache.org> 
Enviado: Miércoles 5 de diciembre de 2012 0:27
Asunto: Re: Why does Jmeter have a huge memory footprint?

Still working on it. Sorry Philippe and Smuel. I will try my best to log
the defect within the next two days.

Thanks
Chaitanya M Bhatt


On Tue, Dec 4, 2012 at 2:13 PM, Philippe Mouawad <philippe.mouawad@gmail.com
> wrote:

> Hello,
> Still no Bugzilla created.
>
> By the way what is the sizes of your responses , zipped and not zipped ?
>
> Thanks
> Regards
> Philippe
>
> On Fri, Nov 30, 2012 at 12:55 AM, chaitanya bhatt <
> bhatt.chaitanya@gmail.com
> > wrote:
>
> > Sure Philippe.
> >
> > Thanks a ton!
> > Chaitanya
> >
> > On Thu, Nov 29, 2012 at 2:25 PM, Philippe Mouawad <
> > philippe.mouawad@gmail.com> wrote:
> >
> > > Hello,
> > > I suggest you open a bugzilla (there is no one for that) and provide:
> > >
> > >    - jmeter.properties and user.properties file
> > >    - jmeter.log
> > >    - jmeter file you used
> > >    - Test Plan
> > >    - And as you seem to have evaluated the memory some screenshots of
> > >    consumptions you are talking about
> > >
> > >
> > > Regards
> > >
> > > Philippe
> > >
> > > On Thu, Nov 29, 2012 at 10:52 PM, chaitanya bhatt <
> > > bhatt.chaitanya@gmail.com
> > > > wrote:
> > >
> > > >  I am running the test via console/terminal.
> > > >  I am not saving transaction response times or responses to files.
> > > >  I am measuring response time directly from the Wily (servlet
> response
> > > > time).
> > > >  I have response assertions which checks the body of the HTTP
> response.
> > > >  The IF controller just evaluates a variable and checks if the value
> > > > exceeds number 2. Interpreter condition and Evaluate for all children
> > is
> > > > Unchecked.
> > > >  Basically, I have made sure that the test suit is as leane as
> > possible.
> > > >  I don't have any soft of non-html/non-json/non-xml HTTP resource
> > > requests.
> > > >
> > > > Thanks
> > > > Chaitanya
> > > >
> > > > On Thu, Nov 29, 2012 at 1:27 PM, Philippe Mouawad <
> > > > philippe.mouawad@gmail.com> wrote:
> > > >
> > > > > Hello,
> > > > >
> > > > > On Thu, Nov 29, 2012 at 10:12 PM, chaitanya bhatt <
> > > > > bhatt.chaitanya@gmail.com
> > > > > > wrote:
> > > > >
> > > > > > Thanks for replying Philippe!
> > > > > >
> > > > > > I noticed that the test cases you guys used to test the
> performance
> > > of
> > > > > > Jmeter is far to small than real world cases. Your test case had
> > > JUST 3
> > > > > > HTTP samplers with just 2 N-V pairs in each sample.
> > > > > >
> > > > >
> > > > > Of course, this test plan must be simple for simple setup and it's
> > > more a
> > > > > basis to compare versions.
> > > > > It just illustrates the efforts made since 2.6 to improve
> > performances,
> > > > > look at dev list to see
> > > > > what was made on 2.8.
> > > > >
> > > > >
> > > > >
> > > > > > Real world scenarios have at least 100-200 HTTP samples per
> thread
> > > > group.
> > > > > > And the requests should contain at least 10-20 NV (name/value)
> > pairs
> > > > for
> > > > > > POST requests and the responses should at least weigh 80-120KB.
> At
> > > > least
> > > > > 20
> > > > > > response assertions. At least and at least 10 post response regex
> > > > > > evaluators. This is when you actually exercise the engine.
> > > > > >
> > > > > > The test with 4000 threads I was talking about was a real life
> one.
> > > > >
> > > > > I am currently using Jmeter 2.8 and JRE 1.6.
> > > > > >
> > > > > > I am not using third party plugins. I am not using XML/CSV
> output.
> > I
> > > > have
> > > > > > removed all listeners.
> > > > > >
> > > > >
> > > > > I don't understand, which kind of save service are you using:
> > > > > CSV or  XML ?
> > > > >
> > > > > >
> > > > > > I have 250 HTTP samplers with at least 10-NV pairs in each
> request.
> > > > Most
> > > > > > requests are of type: POST. I have 35 assertions and 13 regex
> > > > > evaluators. I
> > > > > > have 2 If controllers, 15 transaction controllers, 8 constant
> > timers
> > > > and
> > > > > 1
> > > > > > thread group.
> > > > > >
> > > > >
> > > > > Which type of assertions ?
> > > > > What is the config of IfControllers ?
> > > > >
> > > > > >
> > > > > > Hope this helps. I will raise a defect in bugzilla but I'll be
> > > > surprised
> > > > > if
> > > > > > it doesn't already have one.
> > > > > >
> > > > > > Yes please do and if possible attach a Test Plan as close to
> > possible
> > > > to
> > > > > your current one and anonymize data in it.
> > > > >
> > > > >
> > > > > > Thanks
> > > > > > Chaitanya M Bhatt
> > > > > >
> > > > > >
> > > > > >
> > > > > > On Thu, Nov 29, 2012 at 12:25 PM, Philippe Mouawad <
> > > > > > philippe.mouawad@gmail.com> wrote:
> > > > > >
> > > > > > > Hello,
> > > > > > > Which version of JMeter are you using ?
> > > > > > >
> > > > > > > Can you attach your test plan to a bugzilla or show a
> description
> > > of
> > > > > it ?
> > > > > > >
> > > > > > > As for what you are saying, I have already used jmeter with a
> > > machine
> > > > > > > simular to the configuration you are describing and went up to
> > 4000
> > > > > > threads
> > > > > > > and memory was not the limit in my case,
> > > > > > > so you should investigate your test plan first particularly if
> > you
> > > > are
> > > > > > > talking about Perm Gen as it's not the kind of memory that is
> > > highly
> > > > > > > consumed except if you are using Javascript for example.
> > > > > > >
> > > > > > >    - What kind of Test Elements are you using ?
> > > > > > >    - Are you using third party plugins?
> > > > > > >    - Which listeners have you setup
> > > > > > >    - Are you using XML or CSV output
> > > > > > >
> > > > > > >
> > > > > > > As for what you are saying regarding "*This is a frustrating
> > > problem
> > > > > > which
> > > > > > > has been overlooked for a long time.*", please see:
> > > > > > >
> > > > > > >    - http://wiki.apache.org/jmeter/JMeterPerformance
> > > > > > >
> > > > > > > Regards
> > > > > > >
> > > > > > > Philippe
> > > > > > >
> > > > > > > On Thu, Nov 29, 2012 at 8:40 PM, chaitanya bhatt
> > > > > > > <bh...@gmail.com>wrote:
> > > > > > >
> > > > > > > > Group,
> > > > > > > >
> > > > > > > > I have noticed that Jmeter uses unreasonable amount of memory
> > per
> > > > > > thread.
> > > > > > > > Even if you strip off loggers/result tree etc. you would
> still
> > > see
> > > > a
> > > > > > huge
> > > > > > > > consumption of memory. I monitored the Jmeter memory heap and
> > > tuned
> > > > > the
> > > > > > > JVM
> > > > > > > > as much as possible. In spite of this I noticed that the
> > tenured
> > > > > > > generation
> > > > > > > > of the heap is always packed with objects of huge size. Lots
> of
> > > > > classes
> > > > > > > are
> > > > > > > > loaded dynamically which is causing high occupancy in perm
> gen.
> > > > > > > >
> > > > > > > > I am working on another home grown tool which uses HTTPClient
> > > > library
> > > > > > to
> > > > > > > > generate load. Using this home grown tool I can generate 4000
> > > > > instances
> > > > > > > per
> > > > > > > > machine (64 bit with 32Gb ram and 16 CPU cores). But Jmeter
> on
> > > the
> > > > > > > contrary
> > > > > > > > fails to scale to a mere 1/10th of the target user load.
> > > > > > > >
> > > > > > > > This is a frustrating problem which has been overlooked for a
> > > long
> > > > > > time.
> > > > > > > >
> > > > > > > > Can something be done about this?
> > > > > > > >
> > > > > > > > Thanks
> > > > > > > > Chaitanya M Bhatt
> > > > > > > > http://performancecompetence.com
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > --
> > > > > > > Cordialement.
> > > > > > > Philippe Mouawad.
> > > > > > >
> > > > > >
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Cordialement.
> > > > > Philippe Mouawad.
> > > > >
> > > >
> > >
> > >
> > >
> > > --
> > > Cordialement.
> > > Philippe Mouawad.
> > >
> >
>
>
>
> --
> Cordialement.
> Philippe Mouawad.
>

Re: Why does Jmeter have a huge memory footprint?

Posted by Enric Jaen <en...@yahoo.es>.
Maybe you could add these params to the JVM to generate a .hprof file : 

-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=<your log dir>


to be  analysed with a java profiler [1] what is eating the memory.

HTH
/Enric Jaen


[1] for example eclipse MAT plugin  http://www.eclipse.org/mat/



________________________________
 De: chaitanya bhatt <bh...@gmail.com>
Para: JMeter Users List <us...@jmeter.apache.org> 
Enviado: Miércoles 5 de diciembre de 2012 0:27
Asunto: Re: Why does Jmeter have a huge memory footprint?
 
Still working on it. Sorry Philippe and Smuel. I will try my best to log
the defect within the next two days.

Thanks
Chaitanya M Bhatt


On Tue, Dec 4, 2012 at 2:13 PM, Philippe Mouawad <philippe.mouawad@gmail.com
> wrote:

> Hello,
> Still no Bugzilla created.
>
> By the way what is the sizes of your responses , zipped and not zipped ?
>
> Thanks
> Regards
> Philippe
>
> On Fri, Nov 30, 2012 at 12:55 AM, chaitanya bhatt <
> bhatt.chaitanya@gmail.com
> > wrote:
>
> > Sure Philippe.
> >
> > Thanks a ton!
> > Chaitanya
> >
> > On Thu, Nov 29, 2012 at 2:25 PM, Philippe Mouawad <
> > philippe.mouawad@gmail.com> wrote:
> >
> > > Hello,
> > > I suggest you open a bugzilla (there is no one for that) and provide:
> > >
> > >    - jmeter.properties and user.properties file
> > >    - jmeter.log
> > >    - jmeter file you used
> > >    - Test Plan
> > >    - And as you seem to have evaluated the memory some screenshots of
> > >    consumptions you are talking about
> > >
> > >
> > > Regards
> > >
> > > Philippe
> > >
> > > On Thu, Nov 29, 2012 at 10:52 PM, chaitanya bhatt <
> > > bhatt.chaitanya@gmail.com
> > > > wrote:
> > >
> > > >  I am running the test via console/terminal.
> > > >  I am not saving transaction response times or responses to files.
> > > >  I am measuring response time directly from the Wily (servlet
> response
> > > > time).
> > > >  I have response assertions which checks the body of the HTTP
> response.
> > > >  The IF controller just evaluates a variable and checks if the value
> > > > exceeds number 2. Interpreter condition and Evaluate for all children
> > is
> > > > Unchecked.
> > > >  Basically, I have made sure that the test suit is as leane as
> > possible.
> > > >  I don't have any soft of non-html/non-json/non-xml HTTP resource
> > > requests.
> > > >
> > > > Thanks
> > > > Chaitanya
> > > >
> > > > On Thu, Nov 29, 2012 at 1:27 PM, Philippe Mouawad <
> > > > philippe.mouawad@gmail.com> wrote:
> > > >
> > > > > Hello,
> > > > >
> > > > > On Thu, Nov 29, 2012 at 10:12 PM, chaitanya bhatt <
> > > > > bhatt.chaitanya@gmail.com
> > > > > > wrote:
> > > > >
> > > > > > Thanks for replying Philippe!
> > > > > >
> > > > > > I noticed that the test cases you guys used to test the
> performance
> > > of
> > > > > > Jmeter is far to small than real world cases. Your test case had
> > > JUST 3
> > > > > > HTTP samplers with just 2 N-V pairs in each sample.
> > > > > >
> > > > >
> > > > > Of course, this test plan must be simple for simple setup and it's
> > > more a
> > > > > basis to compare versions.
> > > > > It just illustrates the efforts made since 2.6 to improve
> > performances,
> > > > > look at dev list to see
> > > > > what was made on 2.8.
> > > > >
> > > > >
> > > > >
> > > > > > Real world scenarios have at least 100-200 HTTP samples per
> thread
> > > > group.
> > > > > > And the requests should contain at least 10-20 NV (name/value)
> > pairs
> > > > for
> > > > > > POST requests and the responses should at least weigh 80-120KB.
> At
> > > > least
> > > > > 20
> > > > > > response assertions. At least and at least 10 post response regex
> > > > > > evaluators. This is when you actually exercise the engine.
> > > > > >
> > > > > > The test with 4000 threads I was talking about was a real life
> one.
> > > > >
> > > > > I am currently using Jmeter 2.8 and JRE 1.6.
> > > > > >
> > > > > > I am not using third party plugins. I am not using XML/CSV
> output.
> > I
> > > > have
> > > > > > removed all listeners.
> > > > > >
> > > > >
> > > > > I don't understand, which kind of save service are you using:
> > > > > CSV or  XML ?
> > > > >
> > > > > >
> > > > > > I have 250 HTTP samplers with at least 10-NV pairs in each
> request.
> > > > Most
> > > > > > requests are of type: POST. I have 35 assertions and 13 regex
> > > > > evaluators. I
> > > > > > have 2 If controllers, 15 transaction controllers, 8 constant
> > timers
> > > > and
> > > > > 1
> > > > > > thread group.
> > > > > >
> > > > >
> > > > > Which type of assertions ?
> > > > > What is the config of IfControllers ?
> > > > >
> > > > > >
> > > > > > Hope this helps. I will raise a defect in bugzilla but I'll be
> > > > surprised
> > > > > if
> > > > > > it doesn't already have one.
> > > > > >
> > > > > > Yes please do and if possible attach a Test Plan as close to
> > possible
> > > > to
> > > > > your current one and anonymize data in it.
> > > > >
> > > > >
> > > > > > Thanks
> > > > > > Chaitanya M Bhatt
> > > > > >
> > > > > >
> > > > > >
> > > > > > On Thu, Nov 29, 2012 at 12:25 PM, Philippe Mouawad <
> > > > > > philippe.mouawad@gmail.com> wrote:
> > > > > >
> > > > > > > Hello,
> > > > > > > Which version of JMeter are you using ?
> > > > > > >
> > > > > > > Can you attach your test plan to a bugzilla or show a
> description
> > > of
> > > > > it ?
> > > > > > >
> > > > > > > As for what you are saying, I have already used jmeter with a
> > > machine
> > > > > > > simular to the configuration you are describing and went up to
> > 4000
> > > > > > threads
> > > > > > > and memory was not the limit in my case,
> > > > > > > so you should investigate your test plan first particularly if
> > you
> > > > are
> > > > > > > talking about Perm Gen as it's not the kind of memory that is
> > > highly
> > > > > > > consumed except if you are using Javascript for example.
> > > > > > >
> > > > > > >    - What kind of Test Elements are you using ?
> > > > > > >    - Are you using third party plugins?
> > > > > > >    - Which listeners have you setup
> > > > > > >    - Are you using XML or CSV output
> > > > > > >
> > > > > > >
> > > > > > > As for what you are saying regarding "*This is a frustrating
> > > problem
> > > > > > which
> > > > > > > has been overlooked for a long time.*", please see:
> > > > > > >
> > > > > > >    - http://wiki.apache.org/jmeter/JMeterPerformance
> > > > > > >
> > > > > > > Regards
> > > > > > >
> > > > > > > Philippe
> > > > > > >
> > > > > > > On Thu, Nov 29, 2012 at 8:40 PM, chaitanya bhatt
> > > > > > > <bh...@gmail.com>wrote:
> > > > > > >
> > > > > > > > Group,
> > > > > > > >
> > > > > > > > I have noticed that Jmeter uses unreasonable amount of memory
> > per
> > > > > > thread.
> > > > > > > > Even if you strip off loggers/result tree etc. you would
> still
> > > see
> > > > a
> > > > > > huge
> > > > > > > > consumption of memory. I monitored the Jmeter memory heap and
> > > tuned
> > > > > the
> > > > > > > JVM
> > > > > > > > as much as possible. In spite of this I noticed that the
> > tenured
> > > > > > > generation
> > > > > > > > of the heap is always packed with objects of huge size. Lots
> of
> > > > > classes
> > > > > > > are
> > > > > > > > loaded dynamically which is causing high occupancy in perm
> gen.
> > > > > > > >
> > > > > > > > I am working on another home grown tool which uses HTTPClient
> > > > library
> > > > > > to
> > > > > > > > generate load. Using this home grown tool I can generate 4000
> > > > > instances
> > > > > > > per
> > > > > > > > machine (64 bit with 32Gb ram and 16 CPU cores). But Jmeter
> on
> > > the
> > > > > > > contrary
> > > > > > > > fails to scale to a mere 1/10th of the target user load.
> > > > > > > >
> > > > > > > > This is a frustrating problem which has been overlooked for a
> > > long
> > > > > > time.
> > > > > > > >
> > > > > > > > Can something be done about this?
> > > > > > > >
> > > > > > > > Thanks
> > > > > > > > Chaitanya M Bhatt
> > > > > > > > http://performancecompetence.com
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > --
> > > > > > > Cordialement.
> > > > > > > Philippe Mouawad.
> > > > > > >
> > > > > >
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Cordialement.
> > > > > Philippe Mouawad.
> > > > >
> > > >
> > >
> > >
> > >
> > > --
> > > Cordialement.
> > > Philippe Mouawad.
> > >
> >
>
>
>
> --
> Cordialement.
> Philippe Mouawad.
>

Re: Why does Jmeter have a huge memory footprint?

Posted by chaitanya bhatt <bh...@gmail.com>.
Still working on it. Sorry Philippe and Smuel. I will try my best to log
the defect within the next two days.

Thanks
Chaitanya M Bhatt


On Tue, Dec 4, 2012 at 2:13 PM, Philippe Mouawad <philippe.mouawad@gmail.com
> wrote:

> Hello,
> Still no Bugzilla created.
>
> By the way what is the sizes of your responses , zipped and not zipped ?
>
> Thanks
> Regards
> Philippe
>
> On Fri, Nov 30, 2012 at 12:55 AM, chaitanya bhatt <
> bhatt.chaitanya@gmail.com
> > wrote:
>
> > Sure Philippe.
> >
> > Thanks a ton!
> > Chaitanya
> >
> > On Thu, Nov 29, 2012 at 2:25 PM, Philippe Mouawad <
> > philippe.mouawad@gmail.com> wrote:
> >
> > > Hello,
> > > I suggest you open a bugzilla (there is no one for that) and provide:
> > >
> > >    - jmeter.properties and user.properties file
> > >    - jmeter.log
> > >    - jmeter file you used
> > >    - Test Plan
> > >    - And as you seem to have evaluated the memory some screenshots of
> > >    consumptions you are talking about
> > >
> > >
> > > Regards
> > >
> > > Philippe
> > >
> > > On Thu, Nov 29, 2012 at 10:52 PM, chaitanya bhatt <
> > > bhatt.chaitanya@gmail.com
> > > > wrote:
> > >
> > > >  I am running the test via console/terminal.
> > > >  I am not saving transaction response times or responses to files.
> > > >  I am measuring response time directly from the Wily (servlet
> response
> > > > time).
> > > >  I have response assertions which checks the body of the HTTP
> response.
> > > >  The IF controller just evaluates a variable and checks if the value
> > > > exceeds number 2. Interpreter condition and Evaluate for all children
> > is
> > > > Unchecked.
> > > >  Basically, I have made sure that the test suit is as leane as
> > possible.
> > > >  I don't have any soft of non-html/non-json/non-xml HTTP resource
> > > requests.
> > > >
> > > > Thanks
> > > > Chaitanya
> > > >
> > > > On Thu, Nov 29, 2012 at 1:27 PM, Philippe Mouawad <
> > > > philippe.mouawad@gmail.com> wrote:
> > > >
> > > > > Hello,
> > > > >
> > > > > On Thu, Nov 29, 2012 at 10:12 PM, chaitanya bhatt <
> > > > > bhatt.chaitanya@gmail.com
> > > > > > wrote:
> > > > >
> > > > > > Thanks for replying Philippe!
> > > > > >
> > > > > > I noticed that the test cases you guys used to test the
> performance
> > > of
> > > > > > Jmeter is far to small than real world cases. Your test case had
> > > JUST 3
> > > > > > HTTP samplers with just 2 N-V pairs in each sample.
> > > > > >
> > > > >
> > > > > Of course, this test plan must be simple for simple setup and it's
> > > more a
> > > > > basis to compare versions.
> > > > > It just illustrates the efforts made since 2.6 to improve
> > performances,
> > > > > look at dev list to see
> > > > > what was made on 2.8.
> > > > >
> > > > >
> > > > >
> > > > > > Real world scenarios have at least 100-200 HTTP samples per
> thread
> > > > group.
> > > > > > And the requests should contain at least 10-20 NV (name/value)
> > pairs
> > > > for
> > > > > > POST requests and the responses should at least weigh 80-120KB.
> At
> > > > least
> > > > > 20
> > > > > > response assertions. At least and at least 10 post response regex
> > > > > > evaluators. This is when you actually exercise the engine.
> > > > > >
> > > > > > The test with 4000 threads I was talking about was a real life
> one.
> > > > >
> > > > > I am currently using Jmeter 2.8 and JRE 1.6.
> > > > > >
> > > > > > I am not using third party plugins. I am not using XML/CSV
> output.
> > I
> > > > have
> > > > > > removed all listeners.
> > > > > >
> > > > >
> > > > > I don't understand, which kind of save service are you using:
> > > > > CSV or  XML ?
> > > > >
> > > > > >
> > > > > > I have 250 HTTP samplers with at least 10-NV pairs in each
> request.
> > > > Most
> > > > > > requests are of type: POST. I have 35 assertions and 13 regex
> > > > > evaluators. I
> > > > > > have 2 If controllers, 15 transaction controllers, 8 constant
> > timers
> > > > and
> > > > > 1
> > > > > > thread group.
> > > > > >
> > > > >
> > > > > Which type of assertions ?
> > > > > What is the config of IfControllers ?
> > > > >
> > > > > >
> > > > > > Hope this helps. I will raise a defect in bugzilla but I'll be
> > > > surprised
> > > > > if
> > > > > > it doesn't already have one.
> > > > > >
> > > > > > Yes please do and if possible attach a Test Plan as close to
> > possible
> > > > to
> > > > > your current one and anonymize data in it.
> > > > >
> > > > >
> > > > > > Thanks
> > > > > > Chaitanya M Bhatt
> > > > > >
> > > > > >
> > > > > >
> > > > > > On Thu, Nov 29, 2012 at 12:25 PM, Philippe Mouawad <
> > > > > > philippe.mouawad@gmail.com> wrote:
> > > > > >
> > > > > > > Hello,
> > > > > > > Which version of JMeter are you using ?
> > > > > > >
> > > > > > > Can you attach your test plan to a bugzilla or show a
> description
> > > of
> > > > > it ?
> > > > > > >
> > > > > > > As for what you are saying, I have already used jmeter with a
> > > machine
> > > > > > > simular to the configuration you are describing and went up to
> > 4000
> > > > > > threads
> > > > > > > and memory was not the limit in my case,
> > > > > > > so you should investigate your test plan first particularly if
> > you
> > > > are
> > > > > > > talking about Perm Gen as it's not the kind of memory that is
> > > highly
> > > > > > > consumed except if you are using Javascript for example.
> > > > > > >
> > > > > > >    - What kind of Test Elements are you using ?
> > > > > > >    - Are you using third party plugins?
> > > > > > >    - Which listeners have you setup
> > > > > > >    - Are you using XML or CSV output
> > > > > > >
> > > > > > >
> > > > > > > As for what you are saying regarding "*This is a frustrating
> > > problem
> > > > > > which
> > > > > > > has been overlooked for a long time.*", please see:
> > > > > > >
> > > > > > >    - http://wiki.apache.org/jmeter/JMeterPerformance
> > > > > > >
> > > > > > > Regards
> > > > > > >
> > > > > > > Philippe
> > > > > > >
> > > > > > > On Thu, Nov 29, 2012 at 8:40 PM, chaitanya bhatt
> > > > > > > <bh...@gmail.com>wrote:
> > > > > > >
> > > > > > > > Group,
> > > > > > > >
> > > > > > > > I have noticed that Jmeter uses unreasonable amount of memory
> > per
> > > > > > thread.
> > > > > > > > Even if you strip off loggers/result tree etc. you would
> still
> > > see
> > > > a
> > > > > > huge
> > > > > > > > consumption of memory. I monitored the Jmeter memory heap and
> > > tuned
> > > > > the
> > > > > > > JVM
> > > > > > > > as much as possible. In spite of this I noticed that the
> > tenured
> > > > > > > generation
> > > > > > > > of the heap is always packed with objects of huge size. Lots
> of
> > > > > classes
> > > > > > > are
> > > > > > > > loaded dynamically which is causing high occupancy in perm
> gen.
> > > > > > > >
> > > > > > > > I am working on another home grown tool which uses HTTPClient
> > > > library
> > > > > > to
> > > > > > > > generate load. Using this home grown tool I can generate 4000
> > > > > instances
> > > > > > > per
> > > > > > > > machine (64 bit with 32Gb ram and 16 CPU cores). But Jmeter
> on
> > > the
> > > > > > > contrary
> > > > > > > > fails to scale to a mere 1/10th of the target user load.
> > > > > > > >
> > > > > > > > This is a frustrating problem which has been overlooked for a
> > > long
> > > > > > time.
> > > > > > > >
> > > > > > > > Can something be done about this?
> > > > > > > >
> > > > > > > > Thanks
> > > > > > > > Chaitanya M Bhatt
> > > > > > > > http://performancecompetence.com
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > --
> > > > > > > Cordialement.
> > > > > > > Philippe Mouawad.
> > > > > > >
> > > > > >
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Cordialement.
> > > > > Philippe Mouawad.
> > > > >
> > > >
> > >
> > >
> > >
> > > --
> > > Cordialement.
> > > Philippe Mouawad.
> > >
> >
>
>
>
> --
> Cordialement.
> Philippe Mouawad.
>

Re: Why does Jmeter have a huge memory footprint?

Posted by Philippe Mouawad <ph...@gmail.com>.
Hello,
Still no Bugzilla created.

By the way what is the sizes of your responses , zipped and not zipped ?

Thanks
Regards
Philippe

On Fri, Nov 30, 2012 at 12:55 AM, chaitanya bhatt <bhatt.chaitanya@gmail.com
> wrote:

> Sure Philippe.
>
> Thanks a ton!
> Chaitanya
>
> On Thu, Nov 29, 2012 at 2:25 PM, Philippe Mouawad <
> philippe.mouawad@gmail.com> wrote:
>
> > Hello,
> > I suggest you open a bugzilla (there is no one for that) and provide:
> >
> >    - jmeter.properties and user.properties file
> >    - jmeter.log
> >    - jmeter file you used
> >    - Test Plan
> >    - And as you seem to have evaluated the memory some screenshots of
> >    consumptions you are talking about
> >
> >
> > Regards
> >
> > Philippe
> >
> > On Thu, Nov 29, 2012 at 10:52 PM, chaitanya bhatt <
> > bhatt.chaitanya@gmail.com
> > > wrote:
> >
> > >  I am running the test via console/terminal.
> > >  I am not saving transaction response times or responses to files.
> > >  I am measuring response time directly from the Wily (servlet response
> > > time).
> > >  I have response assertions which checks the body of the HTTP response.
> > >  The IF controller just evaluates a variable and checks if the value
> > > exceeds number 2. Interpreter condition and Evaluate for all children
> is
> > > Unchecked.
> > >  Basically, I have made sure that the test suit is as leane as
> possible.
> > >  I don't have any soft of non-html/non-json/non-xml HTTP resource
> > requests.
> > >
> > > Thanks
> > > Chaitanya
> > >
> > > On Thu, Nov 29, 2012 at 1:27 PM, Philippe Mouawad <
> > > philippe.mouawad@gmail.com> wrote:
> > >
> > > > Hello,
> > > >
> > > > On Thu, Nov 29, 2012 at 10:12 PM, chaitanya bhatt <
> > > > bhatt.chaitanya@gmail.com
> > > > > wrote:
> > > >
> > > > > Thanks for replying Philippe!
> > > > >
> > > > > I noticed that the test cases you guys used to test the performance
> > of
> > > > > Jmeter is far to small than real world cases. Your test case had
> > JUST 3
> > > > > HTTP samplers with just 2 N-V pairs in each sample.
> > > > >
> > > >
> > > > Of course, this test plan must be simple for simple setup and it's
> > more a
> > > > basis to compare versions.
> > > > It just illustrates the efforts made since 2.6 to improve
> performances,
> > > > look at dev list to see
> > > > what was made on 2.8.
> > > >
> > > >
> > > >
> > > > > Real world scenarios have at least 100-200 HTTP samples per thread
> > > group.
> > > > > And the requests should contain at least 10-20 NV (name/value)
> pairs
> > > for
> > > > > POST requests and the responses should at least weigh 80-120KB. At
> > > least
> > > > 20
> > > > > response assertions. At least and at least 10 post response regex
> > > > > evaluators. This is when you actually exercise the engine.
> > > > >
> > > > > The test with 4000 threads I was talking about was a real life one.
> > > >
> > > > I am currently using Jmeter 2.8 and JRE 1.6.
> > > > >
> > > > > I am not using third party plugins. I am not using XML/CSV output.
> I
> > > have
> > > > > removed all listeners.
> > > > >
> > > >
> > > > I don't understand, which kind of save service are you using:
> > > > CSV or  XML ?
> > > >
> > > > >
> > > > > I have 250 HTTP samplers with at least 10-NV pairs in each request.
> > > Most
> > > > > requests are of type: POST. I have 35 assertions and 13 regex
> > > > evaluators. I
> > > > > have 2 If controllers, 15 transaction controllers, 8 constant
> timers
> > > and
> > > > 1
> > > > > thread group.
> > > > >
> > > >
> > > > Which type of assertions ?
> > > > What is the config of IfControllers ?
> > > >
> > > > >
> > > > > Hope this helps. I will raise a defect in bugzilla but I'll be
> > > surprised
> > > > if
> > > > > it doesn't already have one.
> > > > >
> > > > > Yes please do and if possible attach a Test Plan as close to
> possible
> > > to
> > > > your current one and anonymize data in it.
> > > >
> > > >
> > > > > Thanks
> > > > > Chaitanya M Bhatt
> > > > >
> > > > >
> > > > >
> > > > > On Thu, Nov 29, 2012 at 12:25 PM, Philippe Mouawad <
> > > > > philippe.mouawad@gmail.com> wrote:
> > > > >
> > > > > > Hello,
> > > > > > Which version of JMeter are you using ?
> > > > > >
> > > > > > Can you attach your test plan to a bugzilla or show a description
> > of
> > > > it ?
> > > > > >
> > > > > > As for what you are saying, I have already used jmeter with a
> > machine
> > > > > > simular to the configuration you are describing and went up to
> 4000
> > > > > threads
> > > > > > and memory was not the limit in my case,
> > > > > > so you should investigate your test plan first particularly if
> you
> > > are
> > > > > > talking about Perm Gen as it's not the kind of memory that is
> > highly
> > > > > > consumed except if you are using Javascript for example.
> > > > > >
> > > > > >    - What kind of Test Elements are you using ?
> > > > > >    - Are you using third party plugins?
> > > > > >    - Which listeners have you setup
> > > > > >    - Are you using XML or CSV output
> > > > > >
> > > > > >
> > > > > > As for what you are saying regarding "*This is a frustrating
> > problem
> > > > > which
> > > > > > has been overlooked for a long time.*", please see:
> > > > > >
> > > > > >    - http://wiki.apache.org/jmeter/JMeterPerformance
> > > > > >
> > > > > > Regards
> > > > > >
> > > > > > Philippe
> > > > > >
> > > > > > On Thu, Nov 29, 2012 at 8:40 PM, chaitanya bhatt
> > > > > > <bh...@gmail.com>wrote:
> > > > > >
> > > > > > > Group,
> > > > > > >
> > > > > > > I have noticed that Jmeter uses unreasonable amount of memory
> per
> > > > > thread.
> > > > > > > Even if you strip off loggers/result tree etc. you would still
> > see
> > > a
> > > > > huge
> > > > > > > consumption of memory. I monitored the Jmeter memory heap and
> > tuned
> > > > the
> > > > > > JVM
> > > > > > > as much as possible. In spite of this I noticed that the
> tenured
> > > > > > generation
> > > > > > > of the heap is always packed with objects of huge size. Lots of
> > > > classes
> > > > > > are
> > > > > > > loaded dynamically which is causing high occupancy in perm gen.
> > > > > > >
> > > > > > > I am working on another home grown tool which uses HTTPClient
> > > library
> > > > > to
> > > > > > > generate load. Using this home grown tool I can generate 4000
> > > > instances
> > > > > > per
> > > > > > > machine (64 bit with 32Gb ram and 16 CPU cores). But Jmeter on
> > the
> > > > > > contrary
> > > > > > > fails to scale to a mere 1/10th of the target user load.
> > > > > > >
> > > > > > > This is a frustrating problem which has been overlooked for a
> > long
> > > > > time.
> > > > > > >
> > > > > > > Can something be done about this?
> > > > > > >
> > > > > > > Thanks
> > > > > > > Chaitanya M Bhatt
> > > > > > > http://performancecompetence.com
> > > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > > Cordialement.
> > > > > > Philippe Mouawad.
> > > > > >
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > > Cordialement.
> > > > Philippe Mouawad.
> > > >
> > >
> >
> >
> >
> > --
> > Cordialement.
> > Philippe Mouawad.
> >
>



-- 
Cordialement.
Philippe Mouawad.

Re: Why does Jmeter have a huge memory footprint?

Posted by chaitanya bhatt <bh...@gmail.com>.
Sure Philippe.

Thanks a ton!
Chaitanya

On Thu, Nov 29, 2012 at 2:25 PM, Philippe Mouawad <
philippe.mouawad@gmail.com> wrote:

> Hello,
> I suggest you open a bugzilla (there is no one for that) and provide:
>
>    - jmeter.properties and user.properties file
>    - jmeter.log
>    - jmeter file you used
>    - Test Plan
>    - And as you seem to have evaluated the memory some screenshots of
>    consumptions you are talking about
>
>
> Regards
>
> Philippe
>
> On Thu, Nov 29, 2012 at 10:52 PM, chaitanya bhatt <
> bhatt.chaitanya@gmail.com
> > wrote:
>
> >  I am running the test via console/terminal.
> >  I am not saving transaction response times or responses to files.
> >  I am measuring response time directly from the Wily (servlet response
> > time).
> >  I have response assertions which checks the body of the HTTP response.
> >  The IF controller just evaluates a variable and checks if the value
> > exceeds number 2. Interpreter condition and Evaluate for all children is
> > Unchecked.
> >  Basically, I have made sure that the test suit is as leane as possible.
> >  I don't have any soft of non-html/non-json/non-xml HTTP resource
> requests.
> >
> > Thanks
> > Chaitanya
> >
> > On Thu, Nov 29, 2012 at 1:27 PM, Philippe Mouawad <
> > philippe.mouawad@gmail.com> wrote:
> >
> > > Hello,
> > >
> > > On Thu, Nov 29, 2012 at 10:12 PM, chaitanya bhatt <
> > > bhatt.chaitanya@gmail.com
> > > > wrote:
> > >
> > > > Thanks for replying Philippe!
> > > >
> > > > I noticed that the test cases you guys used to test the performance
> of
> > > > Jmeter is far to small than real world cases. Your test case had
> JUST 3
> > > > HTTP samplers with just 2 N-V pairs in each sample.
> > > >
> > >
> > > Of course, this test plan must be simple for simple setup and it's
> more a
> > > basis to compare versions.
> > > It just illustrates the efforts made since 2.6 to improve performances,
> > > look at dev list to see
> > > what was made on 2.8.
> > >
> > >
> > >
> > > > Real world scenarios have at least 100-200 HTTP samples per thread
> > group.
> > > > And the requests should contain at least 10-20 NV (name/value) pairs
> > for
> > > > POST requests and the responses should at least weigh 80-120KB. At
> > least
> > > 20
> > > > response assertions. At least and at least 10 post response regex
> > > > evaluators. This is when you actually exercise the engine.
> > > >
> > > > The test with 4000 threads I was talking about was a real life one.
> > >
> > > I am currently using Jmeter 2.8 and JRE 1.6.
> > > >
> > > > I am not using third party plugins. I am not using XML/CSV output. I
> > have
> > > > removed all listeners.
> > > >
> > >
> > > I don't understand, which kind of save service are you using:
> > > CSV or  XML ?
> > >
> > > >
> > > > I have 250 HTTP samplers with at least 10-NV pairs in each request.
> > Most
> > > > requests are of type: POST. I have 35 assertions and 13 regex
> > > evaluators. I
> > > > have 2 If controllers, 15 transaction controllers, 8 constant timers
> > and
> > > 1
> > > > thread group.
> > > >
> > >
> > > Which type of assertions ?
> > > What is the config of IfControllers ?
> > >
> > > >
> > > > Hope this helps. I will raise a defect in bugzilla but I'll be
> > surprised
> > > if
> > > > it doesn't already have one.
> > > >
> > > > Yes please do and if possible attach a Test Plan as close to possible
> > to
> > > your current one and anonymize data in it.
> > >
> > >
> > > > Thanks
> > > > Chaitanya M Bhatt
> > > >
> > > >
> > > >
> > > > On Thu, Nov 29, 2012 at 12:25 PM, Philippe Mouawad <
> > > > philippe.mouawad@gmail.com> wrote:
> > > >
> > > > > Hello,
> > > > > Which version of JMeter are you using ?
> > > > >
> > > > > Can you attach your test plan to a bugzilla or show a description
> of
> > > it ?
> > > > >
> > > > > As for what you are saying, I have already used jmeter with a
> machine
> > > > > simular to the configuration you are describing and went up to 4000
> > > > threads
> > > > > and memory was not the limit in my case,
> > > > > so you should investigate your test plan first particularly if you
> > are
> > > > > talking about Perm Gen as it's not the kind of memory that is
> highly
> > > > > consumed except if you are using Javascript for example.
> > > > >
> > > > >    - What kind of Test Elements are you using ?
> > > > >    - Are you using third party plugins?
> > > > >    - Which listeners have you setup
> > > > >    - Are you using XML or CSV output
> > > > >
> > > > >
> > > > > As for what you are saying regarding "*This is a frustrating
> problem
> > > > which
> > > > > has been overlooked for a long time.*", please see:
> > > > >
> > > > >    - http://wiki.apache.org/jmeter/JMeterPerformance
> > > > >
> > > > > Regards
> > > > >
> > > > > Philippe
> > > > >
> > > > > On Thu, Nov 29, 2012 at 8:40 PM, chaitanya bhatt
> > > > > <bh...@gmail.com>wrote:
> > > > >
> > > > > > Group,
> > > > > >
> > > > > > I have noticed that Jmeter uses unreasonable amount of memory per
> > > > thread.
> > > > > > Even if you strip off loggers/result tree etc. you would still
> see
> > a
> > > > huge
> > > > > > consumption of memory. I monitored the Jmeter memory heap and
> tuned
> > > the
> > > > > JVM
> > > > > > as much as possible. In spite of this I noticed that the tenured
> > > > > generation
> > > > > > of the heap is always packed with objects of huge size. Lots of
> > > classes
> > > > > are
> > > > > > loaded dynamically which is causing high occupancy in perm gen.
> > > > > >
> > > > > > I am working on another home grown tool which uses HTTPClient
> > library
> > > > to
> > > > > > generate load. Using this home grown tool I can generate 4000
> > > instances
> > > > > per
> > > > > > machine (64 bit with 32Gb ram and 16 CPU cores). But Jmeter on
> the
> > > > > contrary
> > > > > > fails to scale to a mere 1/10th of the target user load.
> > > > > >
> > > > > > This is a frustrating problem which has been overlooked for a
> long
> > > > time.
> > > > > >
> > > > > > Can something be done about this?
> > > > > >
> > > > > > Thanks
> > > > > > Chaitanya M Bhatt
> > > > > > http://performancecompetence.com
> > > > > >
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Cordialement.
> > > > > Philippe Mouawad.
> > > > >
> > > >
> > >
> > >
> > >
> > > --
> > > Cordialement.
> > > Philippe Mouawad.
> > >
> >
>
>
>
> --
> Cordialement.
> Philippe Mouawad.
>

Re: Why does Jmeter have a huge memory footprint?

Posted by Philippe Mouawad <ph...@gmail.com>.
Hello,
I suggest you open a bugzilla (there is no one for that) and provide:

   - jmeter.properties and user.properties file
   - jmeter.log
   - jmeter file you used
   - Test Plan
   - And as you seem to have evaluated the memory some screenshots of
   consumptions you are talking about


Regards

Philippe

On Thu, Nov 29, 2012 at 10:52 PM, chaitanya bhatt <bhatt.chaitanya@gmail.com
> wrote:

>  I am running the test via console/terminal.
>  I am not saving transaction response times or responses to files.
>  I am measuring response time directly from the Wily (servlet response
> time).
>  I have response assertions which checks the body of the HTTP response.
>  The IF controller just evaluates a variable and checks if the value
> exceeds number 2. Interpreter condition and Evaluate for all children is
> Unchecked.
>  Basically, I have made sure that the test suit is as leane as possible.
>  I don't have any soft of non-html/non-json/non-xml HTTP resource requests.
>
> Thanks
> Chaitanya
>
> On Thu, Nov 29, 2012 at 1:27 PM, Philippe Mouawad <
> philippe.mouawad@gmail.com> wrote:
>
> > Hello,
> >
> > On Thu, Nov 29, 2012 at 10:12 PM, chaitanya bhatt <
> > bhatt.chaitanya@gmail.com
> > > wrote:
> >
> > > Thanks for replying Philippe!
> > >
> > > I noticed that the test cases you guys used to test the performance of
> > > Jmeter is far to small than real world cases. Your test case had JUST 3
> > > HTTP samplers with just 2 N-V pairs in each sample.
> > >
> >
> > Of course, this test plan must be simple for simple setup and it's more a
> > basis to compare versions.
> > It just illustrates the efforts made since 2.6 to improve performances,
> > look at dev list to see
> > what was made on 2.8.
> >
> >
> >
> > > Real world scenarios have at least 100-200 HTTP samples per thread
> group.
> > > And the requests should contain at least 10-20 NV (name/value) pairs
> for
> > > POST requests and the responses should at least weigh 80-120KB. At
> least
> > 20
> > > response assertions. At least and at least 10 post response regex
> > > evaluators. This is when you actually exercise the engine.
> > >
> > > The test with 4000 threads I was talking about was a real life one.
> >
> > I am currently using Jmeter 2.8 and JRE 1.6.
> > >
> > > I am not using third party plugins. I am not using XML/CSV output. I
> have
> > > removed all listeners.
> > >
> >
> > I don't understand, which kind of save service are you using:
> > CSV or  XML ?
> >
> > >
> > > I have 250 HTTP samplers with at least 10-NV pairs in each request.
> Most
> > > requests are of type: POST. I have 35 assertions and 13 regex
> > evaluators. I
> > > have 2 If controllers, 15 transaction controllers, 8 constant timers
> and
> > 1
> > > thread group.
> > >
> >
> > Which type of assertions ?
> > What is the config of IfControllers ?
> >
> > >
> > > Hope this helps. I will raise a defect in bugzilla but I'll be
> surprised
> > if
> > > it doesn't already have one.
> > >
> > > Yes please do and if possible attach a Test Plan as close to possible
> to
> > your current one and anonymize data in it.
> >
> >
> > > Thanks
> > > Chaitanya M Bhatt
> > >
> > >
> > >
> > > On Thu, Nov 29, 2012 at 12:25 PM, Philippe Mouawad <
> > > philippe.mouawad@gmail.com> wrote:
> > >
> > > > Hello,
> > > > Which version of JMeter are you using ?
> > > >
> > > > Can you attach your test plan to a bugzilla or show a description of
> > it ?
> > > >
> > > > As for what you are saying, I have already used jmeter with a machine
> > > > simular to the configuration you are describing and went up to 4000
> > > threads
> > > > and memory was not the limit in my case,
> > > > so you should investigate your test plan first particularly if you
> are
> > > > talking about Perm Gen as it's not the kind of memory that is highly
> > > > consumed except if you are using Javascript for example.
> > > >
> > > >    - What kind of Test Elements are you using ?
> > > >    - Are you using third party plugins?
> > > >    - Which listeners have you setup
> > > >    - Are you using XML or CSV output
> > > >
> > > >
> > > > As for what you are saying regarding "*This is a frustrating problem
> > > which
> > > > has been overlooked for a long time.*", please see:
> > > >
> > > >    - http://wiki.apache.org/jmeter/JMeterPerformance
> > > >
> > > > Regards
> > > >
> > > > Philippe
> > > >
> > > > On Thu, Nov 29, 2012 at 8:40 PM, chaitanya bhatt
> > > > <bh...@gmail.com>wrote:
> > > >
> > > > > Group,
> > > > >
> > > > > I have noticed that Jmeter uses unreasonable amount of memory per
> > > thread.
> > > > > Even if you strip off loggers/result tree etc. you would still see
> a
> > > huge
> > > > > consumption of memory. I monitored the Jmeter memory heap and tuned
> > the
> > > > JVM
> > > > > as much as possible. In spite of this I noticed that the tenured
> > > > generation
> > > > > of the heap is always packed with objects of huge size. Lots of
> > classes
> > > > are
> > > > > loaded dynamically which is causing high occupancy in perm gen.
> > > > >
> > > > > I am working on another home grown tool which uses HTTPClient
> library
> > > to
> > > > > generate load. Using this home grown tool I can generate 4000
> > instances
> > > > per
> > > > > machine (64 bit with 32Gb ram and 16 CPU cores). But Jmeter on the
> > > > contrary
> > > > > fails to scale to a mere 1/10th of the target user load.
> > > > >
> > > > > This is a frustrating problem which has been overlooked for a long
> > > time.
> > > > >
> > > > > Can something be done about this?
> > > > >
> > > > > Thanks
> > > > > Chaitanya M Bhatt
> > > > > http://performancecompetence.com
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > > Cordialement.
> > > > Philippe Mouawad.
> > > >
> > >
> >
> >
> >
> > --
> > Cordialement.
> > Philippe Mouawad.
> >
>



-- 
Cordialement.
Philippe Mouawad.

Re: Why does Jmeter have a huge memory footprint?

Posted by chaitanya bhatt <bh...@gmail.com>.
 I am running the test via console/terminal.
 I am not saving transaction response times or responses to files.
 I am measuring response time directly from the Wily (servlet response
time).
 I have response assertions which checks the body of the HTTP response.
 The IF controller just evaluates a variable and checks if the value
exceeds number 2. Interpreter condition and Evaluate for all children is
Unchecked.
 Basically, I have made sure that the test suit is as leane as possible.
 I don't have any soft of non-html/non-json/non-xml HTTP resource requests.

Thanks
Chaitanya

On Thu, Nov 29, 2012 at 1:27 PM, Philippe Mouawad <
philippe.mouawad@gmail.com> wrote:

> Hello,
>
> On Thu, Nov 29, 2012 at 10:12 PM, chaitanya bhatt <
> bhatt.chaitanya@gmail.com
> > wrote:
>
> > Thanks for replying Philippe!
> >
> > I noticed that the test cases you guys used to test the performance of
> > Jmeter is far to small than real world cases. Your test case had JUST 3
> > HTTP samplers with just 2 N-V pairs in each sample.
> >
>
> Of course, this test plan must be simple for simple setup and it's more a
> basis to compare versions.
> It just illustrates the efforts made since 2.6 to improve performances,
> look at dev list to see
> what was made on 2.8.
>
>
>
> > Real world scenarios have at least 100-200 HTTP samples per thread group.
> > And the requests should contain at least 10-20 NV (name/value) pairs for
> > POST requests and the responses should at least weigh 80-120KB. At least
> 20
> > response assertions. At least and at least 10 post response regex
> > evaluators. This is when you actually exercise the engine.
> >
> > The test with 4000 threads I was talking about was a real life one.
>
> I am currently using Jmeter 2.8 and JRE 1.6.
> >
> > I am not using third party plugins. I am not using XML/CSV output. I have
> > removed all listeners.
> >
>
> I don't understand, which kind of save service are you using:
> CSV or  XML ?
>
> >
> > I have 250 HTTP samplers with at least 10-NV pairs in each request. Most
> > requests are of type: POST. I have 35 assertions and 13 regex
> evaluators. I
> > have 2 If controllers, 15 transaction controllers, 8 constant timers and
> 1
> > thread group.
> >
>
> Which type of assertions ?
> What is the config of IfControllers ?
>
> >
> > Hope this helps. I will raise a defect in bugzilla but I'll be surprised
> if
> > it doesn't already have one.
> >
> > Yes please do and if possible attach a Test Plan as close to possible to
> your current one and anonymize data in it.
>
>
> > Thanks
> > Chaitanya M Bhatt
> >
> >
> >
> > On Thu, Nov 29, 2012 at 12:25 PM, Philippe Mouawad <
> > philippe.mouawad@gmail.com> wrote:
> >
> > > Hello,
> > > Which version of JMeter are you using ?
> > >
> > > Can you attach your test plan to a bugzilla or show a description of
> it ?
> > >
> > > As for what you are saying, I have already used jmeter with a machine
> > > simular to the configuration you are describing and went up to 4000
> > threads
> > > and memory was not the limit in my case,
> > > so you should investigate your test plan first particularly if you are
> > > talking about Perm Gen as it's not the kind of memory that is highly
> > > consumed except if you are using Javascript for example.
> > >
> > >    - What kind of Test Elements are you using ?
> > >    - Are you using third party plugins?
> > >    - Which listeners have you setup
> > >    - Are you using XML or CSV output
> > >
> > >
> > > As for what you are saying regarding "*This is a frustrating problem
> > which
> > > has been overlooked for a long time.*", please see:
> > >
> > >    - http://wiki.apache.org/jmeter/JMeterPerformance
> > >
> > > Regards
> > >
> > > Philippe
> > >
> > > On Thu, Nov 29, 2012 at 8:40 PM, chaitanya bhatt
> > > <bh...@gmail.com>wrote:
> > >
> > > > Group,
> > > >
> > > > I have noticed that Jmeter uses unreasonable amount of memory per
> > thread.
> > > > Even if you strip off loggers/result tree etc. you would still see a
> > huge
> > > > consumption of memory. I monitored the Jmeter memory heap and tuned
> the
> > > JVM
> > > > as much as possible. In spite of this I noticed that the tenured
> > > generation
> > > > of the heap is always packed with objects of huge size. Lots of
> classes
> > > are
> > > > loaded dynamically which is causing high occupancy in perm gen.
> > > >
> > > > I am working on another home grown tool which uses HTTPClient library
> > to
> > > > generate load. Using this home grown tool I can generate 4000
> instances
> > > per
> > > > machine (64 bit with 32Gb ram and 16 CPU cores). But Jmeter on the
> > > contrary
> > > > fails to scale to a mere 1/10th of the target user load.
> > > >
> > > > This is a frustrating problem which has been overlooked for a long
> > time.
> > > >
> > > > Can something be done about this?
> > > >
> > > > Thanks
> > > > Chaitanya M Bhatt
> > > > http://performancecompetence.com
> > > >
> > >
> > >
> > >
> > > --
> > > Cordialement.
> > > Philippe Mouawad.
> > >
> >
>
>
>
> --
> Cordialement.
> Philippe Mouawad.
>

Re: Why does Jmeter have a huge memory footprint?

Posted by Philippe Mouawad <ph...@gmail.com>.
Hello,

On Thu, Nov 29, 2012 at 10:12 PM, chaitanya bhatt <bhatt.chaitanya@gmail.com
> wrote:

> Thanks for replying Philippe!
>
> I noticed that the test cases you guys used to test the performance of
> Jmeter is far to small than real world cases. Your test case had JUST 3
> HTTP samplers with just 2 N-V pairs in each sample.
>

Of course, this test plan must be simple for simple setup and it's more a
basis to compare versions.
It just illustrates the efforts made since 2.6 to improve performances,
look at dev list to see
what was made on 2.8.



> Real world scenarios have at least 100-200 HTTP samples per thread group.
> And the requests should contain at least 10-20 NV (name/value) pairs for
> POST requests and the responses should at least weigh 80-120KB. At least 20
> response assertions. At least and at least 10 post response regex
> evaluators. This is when you actually exercise the engine.
>
> The test with 4000 threads I was talking about was a real life one.

I am currently using Jmeter 2.8 and JRE 1.6.
>
> I am not using third party plugins. I am not using XML/CSV output. I have
> removed all listeners.
>

I don't understand, which kind of save service are you using:
CSV or  XML ?

>
> I have 250 HTTP samplers with at least 10-NV pairs in each request. Most
> requests are of type: POST. I have 35 assertions and 13 regex evaluators. I
> have 2 If controllers, 15 transaction controllers, 8 constant timers and 1
> thread group.
>

Which type of assertions ?
What is the config of IfControllers ?

>
> Hope this helps. I will raise a defect in bugzilla but I'll be surprised if
> it doesn't already have one.
>
> Yes please do and if possible attach a Test Plan as close to possible to
your current one and anonymize data in it.


> Thanks
> Chaitanya M Bhatt
>
>
>
> On Thu, Nov 29, 2012 at 12:25 PM, Philippe Mouawad <
> philippe.mouawad@gmail.com> wrote:
>
> > Hello,
> > Which version of JMeter are you using ?
> >
> > Can you attach your test plan to a bugzilla or show a description of it ?
> >
> > As for what you are saying, I have already used jmeter with a machine
> > simular to the configuration you are describing and went up to 4000
> threads
> > and memory was not the limit in my case,
> > so you should investigate your test plan first particularly if you are
> > talking about Perm Gen as it's not the kind of memory that is highly
> > consumed except if you are using Javascript for example.
> >
> >    - What kind of Test Elements are you using ?
> >    - Are you using third party plugins?
> >    - Which listeners have you setup
> >    - Are you using XML or CSV output
> >
> >
> > As for what you are saying regarding "*This is a frustrating problem
> which
> > has been overlooked for a long time.*", please see:
> >
> >    - http://wiki.apache.org/jmeter/JMeterPerformance
> >
> > Regards
> >
> > Philippe
> >
> > On Thu, Nov 29, 2012 at 8:40 PM, chaitanya bhatt
> > <bh...@gmail.com>wrote:
> >
> > > Group,
> > >
> > > I have noticed that Jmeter uses unreasonable amount of memory per
> thread.
> > > Even if you strip off loggers/result tree etc. you would still see a
> huge
> > > consumption of memory. I monitored the Jmeter memory heap and tuned the
> > JVM
> > > as much as possible. In spite of this I noticed that the tenured
> > generation
> > > of the heap is always packed with objects of huge size. Lots of classes
> > are
> > > loaded dynamically which is causing high occupancy in perm gen.
> > >
> > > I am working on another home grown tool which uses HTTPClient library
> to
> > > generate load. Using this home grown tool I can generate 4000 instances
> > per
> > > machine (64 bit with 32Gb ram and 16 CPU cores). But Jmeter on the
> > contrary
> > > fails to scale to a mere 1/10th of the target user load.
> > >
> > > This is a frustrating problem which has been overlooked for a long
> time.
> > >
> > > Can something be done about this?
> > >
> > > Thanks
> > > Chaitanya M Bhatt
> > > http://performancecompetence.com
> > >
> >
> >
> >
> > --
> > Cordialement.
> > Philippe Mouawad.
> >
>



-- 
Cordialement.
Philippe Mouawad.

Re: Why does Jmeter have a huge memory footprint?

Posted by chaitanya bhatt <bh...@gmail.com>.
Thanks for replying Philippe!

I noticed that the test cases you guys used to test the performance of
Jmeter is far to small than real world cases. Your test case had JUST 3
HTTP samplers with just 2 N-V pairs in each sample.

Real world scenarios have at least 100-200 HTTP samples per thread group.
And the requests should contain at least 10-20 NV (name/value) pairs for
POST requests and the responses should at least weigh 80-120KB. At least 20
response assertions. At least and at least 10 post response regex
evaluators. This is when you actually exercise the engine.

I am currently using Jmeter 2.8 and JRE 1.6.

I am not using third party plugins. I am not using XML/CSV output. I have
removed all listeners.

I have 250 HTTP samplers with at least 10-NV pairs in each request. Most
requests are of type: POST. I have 35 assertions and 13 regex evaluators. I
have 2 If controllers, 15 transaction controllers, 8 constant timers and 1
thread group.

Hope this helps. I will raise a defect in bugzilla but I'll be surprised if
it doesn't already have one.

Thanks
Chaitanya M Bhatt



On Thu, Nov 29, 2012 at 12:25 PM, Philippe Mouawad <
philippe.mouawad@gmail.com> wrote:

> Hello,
> Which version of JMeter are you using ?
>
> Can you attach your test plan to a bugzilla or show a description of it ?
>
> As for what you are saying, I have already used jmeter with a machine
> simular to the configuration you are describing and went up to 4000 threads
> and memory was not the limit in my case,
> so you should investigate your test plan first particularly if you are
> talking about Perm Gen as it's not the kind of memory that is highly
> consumed except if you are using Javascript for example.
>
>    - What kind of Test Elements are you using ?
>    - Are you using third party plugins?
>    - Which listeners have you setup
>    - Are you using XML or CSV output
>
>
> As for what you are saying regarding "*This is a frustrating problem which
> has been overlooked for a long time.*", please see:
>
>    - http://wiki.apache.org/jmeter/JMeterPerformance
>
> Regards
>
> Philippe
>
> On Thu, Nov 29, 2012 at 8:40 PM, chaitanya bhatt
> <bh...@gmail.com>wrote:
>
> > Group,
> >
> > I have noticed that Jmeter uses unreasonable amount of memory per thread.
> > Even if you strip off loggers/result tree etc. you would still see a huge
> > consumption of memory. I monitored the Jmeter memory heap and tuned the
> JVM
> > as much as possible. In spite of this I noticed that the tenured
> generation
> > of the heap is always packed with objects of huge size. Lots of classes
> are
> > loaded dynamically which is causing high occupancy in perm gen.
> >
> > I am working on another home grown tool which uses HTTPClient library to
> > generate load. Using this home grown tool I can generate 4000 instances
> per
> > machine (64 bit with 32Gb ram and 16 CPU cores). But Jmeter on the
> contrary
> > fails to scale to a mere 1/10th of the target user load.
> >
> > This is a frustrating problem which has been overlooked for a long time.
> >
> > Can something be done about this?
> >
> > Thanks
> > Chaitanya M Bhatt
> > http://performancecompetence.com
> >
>
>
>
> --
> Cordialement.
> Philippe Mouawad.
>

Re: Why does Jmeter have a huge memory footprint?

Posted by Philippe Mouawad <ph...@gmail.com>.
Hello,
Which version of JMeter are you using ?

Can you attach your test plan to a bugzilla or show a description of it ?

As for what you are saying, I have already used jmeter with a machine
simular to the configuration you are describing and went up to 4000 threads
and memory was not the limit in my case,
so you should investigate your test plan first particularly if you are
talking about Perm Gen as it's not the kind of memory that is highly
consumed except if you are using Javascript for example.

   - What kind of Test Elements are you using ?
   - Are you using third party plugins?
   - Which listeners have you setup
   - Are you using XML or CSV output


As for what you are saying regarding "*This is a frustrating problem which
has been overlooked for a long time.*", please see:

   - http://wiki.apache.org/jmeter/JMeterPerformance

Regards

Philippe

On Thu, Nov 29, 2012 at 8:40 PM, chaitanya bhatt
<bh...@gmail.com>wrote:

> Group,
>
> I have noticed that Jmeter uses unreasonable amount of memory per thread.
> Even if you strip off loggers/result tree etc. you would still see a huge
> consumption of memory. I monitored the Jmeter memory heap and tuned the JVM
> as much as possible. In spite of this I noticed that the tenured generation
> of the heap is always packed with objects of huge size. Lots of classes are
> loaded dynamically which is causing high occupancy in perm gen.
>
> I am working on another home grown tool which uses HTTPClient library to
> generate load. Using this home grown tool I can generate 4000 instances per
> machine (64 bit with 32Gb ram and 16 CPU cores). But Jmeter on the contrary
> fails to scale to a mere 1/10th of the target user load.
>
> This is a frustrating problem which has been overlooked for a long time.
>
> Can something be done about this?
>
> Thanks
> Chaitanya M Bhatt
> http://performancecompetence.com
>



-- 
Cordialement.
Philippe Mouawad.