Unanswered question

How to configure Neoload Load generation Agents to support workload?

I am getting issues with the load generator agents failing to start and tests aborting at the start.
I can run small number of users ok. I first tried to run on agent on same platform as Controller but hit issues.
Configured a remote agent but as I'm increasing workload am getting the same issue.
I have a datapool that seems ok at 10 M, needs remote at 20 M and at 100 M definitely needs 2 agents. The number of Vusers is only 20.
The config for the agents is straight out of the box. Am on Windows Server 2012, cpu is about 3% and have 124GB of RAM. Using Neoload 6.6.

Clive W.
Clive W.

Clive W.

57 / 100


Nouredine A.
Nouredine A.

Nouredine A.

5000 / 5000

What do you mean by "tests aborting at the start"? Do you mean that it failed during the initialization phase?

Also you said that increasing workload you got the same issue. So it seems that you were able to start your tests right? In that case what error do you get when the test is started? You can check the LG log files to get more information.

One more thing by default a load generator is configured to use half of your physical memory. With your setup you may have to set a manual limit of the memory allocated to the LG.

You may have to edit the <install_dir>\conf\agent.properties of your agents and remove the "-XX:MaxRAMFraction=2" option and replace it by for example "-Xmx12g" to allocate 12Gb to the LG process. Then check the memory usage during your tests to fine tune the allocated memory.


Clive W.
Clive W.

Clive W.

57 / 100

To make this clear.
I can start a test with say 10 users on a single load generator.
If I try to run the same basic test with 20 users (same userpath), I get errors on initiation
No more Load generators to play the scenario Scenario stopped
plus Connection lost to Load Generators
plus dump in log
2018/11/13 13:07:05 FATAL - neoload.Connection: Fatal error while handling controller request. Exit. java.lang.IllegalAccessError: class sun.reflect.GeneratedConstructorAccessor21 cannot access its superclass sun.reflect.ConstructorAccessorImpl
at sun.misc.Unsafe.defineClass(Native Method)
at sun.reflect.ClassDefiner.defineClass(ClassDefiner.java:63)
at sun.reflect.MethodAccessorGenerator$1.run(MethodAccessorGenerator.java:399)
at sun.reflect.MethodAccessorGenerator$1.run(MethodAccessorGenerator.java:394)
at java.security.AccessController.doPrivileged(Native Method)
at sun.reflect.MethodAccessorGenerator.generate(MethodAccessorGenerator.java:393)
at sun.reflect.MethodAccessorGenerator.generateConstructor(MethodAccessorGenerator.java:92)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:55)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.neotys.nl.js.g.<init>(g.java:32)
at com.neotys.nl.lg.LoadGenerator.a(LoadGenerator.java:1322)
at com.neotys.nl.lg.LoadGenerator.a(LoadGenerator.java:1300)
at com.neotys.nl.lg.LoadGenerator.a(LoadGenerator.java:819)
at com.neotys.nl.lg.LoadGenerator.a(LoadGenerator.java:754)
at com.neotys.nl.lg.m.a(m.java:349)
at com.neotys.nl.lg.m.handleRequest(m.java:134)
at com.neotys.nl.common.net.AbstractConnection.handleRequest(AbstractConnection.java:86)
at com.neotys.nl.common.net.BidirectionalConnection$RequestHandlerThread.run(BidirectionalConnection.java:233)

I also get the following java error as attached file.
If I add a second load generator, I can execute the test.
Try to run with more VUs using a ramp test, can start the execution and when I get to 30 users, same issue occurs.

Tried your suggested change to agent.properties but exactly the same problem. (N.B. by default -XX:MaxRAMFraction option was set to 4 not 2.