You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by Stefano Gambetta <st...@gmail.com> on 2007/05/22 12:58:20 UTC
JMeter performance testing - heavy CPU utilization
Hello,
I'm evaluating JMeter as a load testing framework for my performance
analysis.
I'm going to load test a DNS server. To do so, I've written my own Java
Request sampler, which issues DNS requests using the package dnsjava.
My test configuration is very simple: one thread-group (one therad
configured for example), one java request sampler, one simple data writer as
listener.
The problem basically is that with that configuration JMeter can reach a
very low throughput (query sent / sec), since during tests CPU get
saturated.
The known bind queryperf tool can generate a load about six times higher
while using less than 30 % CPU. Since this tool is a simple C program, I
expected a greater performance, but that results seems to be exaggerated.
I assumed that my sampler class was not well optimized, so I did a quick
profiling of JMeter, during the test, in order to discover some areas of
improvement.
I think I saw an interesting result: most of the thread sampler time is
spent in one method of one particular class of JMeter, and a minor part is
spent inside the Java Request sampler. The mentioned method is:
SamplePackage.setRunningVersion()
Giving that results, I have some questions:
- what does that method do?
- is it possible to reduce its overhead?
Thanks for any replies