Answered question

Which specific config files should I update memory for launching each of below?

NeoLoadGUI_NoPrivilege.exe
ControllerAgentService.exe
ControllerAgent.exe
LoadGeneratorAgent_NoPrivilege.exe
LoadGeneratorAgentService.exe
LoadGeneratorAgent.exe

what I understand is below are corresponding config files -
NeoLoadGUI.exe ---- > NeoLoadGUI.vmoptions and conf\agent.properties
NeoLoadCmd.exe ---- > NeoLoadCmd.vmoptions and conf\agent.properties

Deepak S.
Deepak S.

Deepak S.

Level
0
17 / 100
points
Neil W.
Neil W.

Neil W.

Level
4
5000 / 5000
points
Team

When you install Neoload, 3 components get installed, the GUI, a local LG agent and a local Monitoring agent

Neoload will take some memory, the LG Agent will take some memory and the Monitoring Agent will take some memory. These ‘agents’ are the middlemen, processes that when asked, will start the LG and Monitoring ‘engines’

By default Neoload will take a quarter of the available RAM so on a machine with 16GB, Neoload will take 4GB, the agents will take 0.5GB each (taking in use to 5GB), when a test is ran and monitoring is used, each ‘spun up’ engine will take another quarter so out of the 16GB, a total of 13GB is used by Neoload, the agents and the engines leaving 3GB for the OS and ancillary services.

So we need to farm out the LG aspect of the test (and possibly the monitoring) to other machines. This means we have a GUI (controller) that takes 4GB plus the 2 agents (so another 1GB). That leaves 11GB spare that we could use...

The Neoload controller, NeoloadGUI and NeoloadCmd use the following files respectively (you will only use one of these at a time)…

C:\Program Files\NeoLoad 6.4\bin\NeoLoadGUI.vmoptions
C:\Program Files\NeoLoad 6.4\bin\NeoLoadCmd.vmoptions

In each file you will see the entry -XX:MaxRAMFraction=4, this means that NeoLoad will allocate a quarter of the available RAM to its JVM, you can override this fraction with a specific value such as -Xmx=12g, meaning that for a machine with 16GB, we will use 12GB for Neoload GUI plus the 2 agents (1GB) so 13GB used by the controller and 3GB for the OS

For the ‘now separate’ LG, there are 3 files, two for the LG agent (LoadGenerator.exe or the windows service) and one for the LG engine (the actual LG launched by the LG exe/service).

Agent: C:\Program Files\NeoLoad 6.4\bin\LoadGeneratorAgent.vmoptions (or LoadGeneratorAgentService.vmoptions)
Engine: C:\Program Files\NeoLoad 6.4\conf\agent.properties

The LG agents vmoptions file has the following value -Xmx512m, this can remain small as this agent is effectively a listener waiting to hear from the controller. The agent.properties file contains the JVM settings used to launch the LG engine itself (this is the important one). You will see this entry lg.launcher.vm.parameters=-server -XX:MaxRAMFraction=4 -Xss228k, again you can replace the fraction value with a specific value such as -Xmx=12g, meaning that for a LG machine with 16GB, we will use 12GB. In this example my LG would be using 12GB + 512m.

For the ‘now separate’ Monitoring Agent

The Monitoring agent is the same as the LG, just look for the 'monitoring' named files. If you use the embedded monitoring agent of the controller (localhost), you will need to tweak the controllers vmoptions and share the available memory between the two, if you install the monitoring agent on a separate box, set it like you would the LG values.

Did you find this useful ?

No (0)

Yes (1)

100%

100% of users found this answer useful