2

I am running 6450 users test in a distributed environment in AWS ubuntu machines.

I am getting the following error when test reach to peak load,

ERROR - jmeter.JMeter: Uncaught exception: java.lang.OutOfMemoryError: GC overhead limit exceeded

Machine Details:
m4.4xlarge
HEAP="-Xms512m -Xmx20480m" (jmeter.sh file)

I allocated 20GB for the heap size in JMeter.sh.

But when I run the ps -eaf|grep java command its giving following response.

root      11493  11456 56 15:47 pts/9    00:00:03 java -server -
XX:+HeapDumpOnOutOfMemoryError -Xms512m -Xmx512m -
XX:MaxTenuringThreshold=2 -XX:PermSize=64m -XX:MaxPermSize=128m -
XX:+CMSClassUnloadingEnabled -jar ./ApacheJMeter.jar** 

I don't have any idea what changes I have to do now.

1
  • Are you trying to run this test in the GUI? Also there is this related question Commented Sep 27, 2017 at 16:10

3 Answers 3

1

Do the change in jmeter file not in jmeter.sh as you can see with ps that it is not being applied.

Also with such a heap you may need to add:

-XX:-UseGCOverheadLimit

And switch to G1 garbage collector algorithm.

And also check you respect these recommendations:

Sign up to request clarification or add additional context in comments.

2 Comments

Thanks, now I changed in JMeter file, It's showing correctly.
you should accept answer and upvote so that users can trust answer. thanks
0

First of all, the answer is in your question: you say that ps -eaf|grep java shows this:

XX:+HeapDumpOnOutOfMemoryError -Xms512m -Xmx512m

That is memory is still very low. So either you changed jmeter.sh, but using other shell script to actually start JMeter, or you didn't change it in a valid way, so JMeter uses defaults.

But on top of that, I really doubt you can run 6450 users on one machine, unless your script is very light. Unconfigured machine can usually handle 200-400, and well-configured machine probably can deal with up to 2000.

1 Comment

Thanks Kiril, I am running the test on 3 machines.
0

You need to amend the line in jmeter file, not jmeter.sh file. Locate HEAP="-Xms512m -Xmx512m" line and update the Xmx value accordingly.

Also ensure you're starting JMeter using jmeter file.

If you have environment which explicitly relies on jmeter.sh file you should be amending HEAP size a little bit differently, like:

export JVM_ARGS="-Xms512m -Xmx20480m" && ./jmeter.sh

or add the relevant line to jmeter.sh file.

See JMeter Best Practices and 9 Easy Solutions for a JMeter Load Test “Out of Memory” Failure articles for comprehensive information on tuning JMeter

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.