All TruClient protocols have a big demand (Footprint) on the Load Generator(LG) machines system resources (CPU, and Ram etc.). The footprint varies greatly, depending on many factors, mostly the client-side footprint of the AUT (Application Under Test), the browser type and the LG computer's hardware and software environment. Additionally, each Vuser will have some overhead to running the browser in a load-test, compared to manually: the Load Generator and TruClient software are running in addition to the browser itself.
TruClient-web (chromium) has the highest demand on the system recourses of all the TruClient protocols. According to Micro Focus ''TruClient is a UI level protocol and doesn't work at transport level like web protocol. Memory consumption of TruClient Vuser includes browser instance, DOM and JS and it varies depending on the application. It is advised to perform benchmark, sizing test of individual application to know the actual footprint of the Vuser.'' A benchmark test is normally 1 Vuser for 10 iterations.
You may want to read this article about the Chrome Brower; ''Why Chrome Uses So Much Freaking RAM''
Chrome may be the best browser around, but it eats up your PC's RAM like turkey on Thanksgiving. If you've ever looked at your task manager, you've probably flipped out at the sheer number of Chrome processes and the memory they hog. Here's why Chrome uses so much RAM, and how to curb its gluttony.
Refer: Lifehacker web site, '' https://lifehacker.com/why-chrome-uses-so-much-freaking-ram-1702537477
To determine the required number of load generators per script, AND per Application Under Test (AUT):
1. Record script(s), For TruClient scripting details, Visit. https://admhelp.microfocus.com/tc/en/latest/Content/TruClient/tocs/_tc_toc_recording.htm
2. Replay a single Vuser in Controller and check the average CPU and the peak memory consumption
of the mdrv.exe process by adding a counter for % Processor Time and Private Bytes.
The minimum monitor set for any application, including all of your load generators and controller
should always include as a minimum the following counters:
-- Memory -- Available Mbytes
-- Processor -- %Processor Time _Total
-- System -- Process Queue Length
-- Physical Disk -- Current Disk Queue Length _Total
Based on the minimum load generator hardware and the CPU and memory consumption of a single Vuser, calculate the number of Vusers per machine.
Let us assume that each of the load generators has 8 core processors and 16GB of memory.
Let us also assume that a single Vuser consumes 100MB of peak memory and 10% CPU on average for the specific business process.
-- From a CPU perspective:
If we limit the CPU consumption up to 70% utilization, we can have 7 Vusers per core processor (70% /10%). If our load generator has a total of 8 cores processors, 8 * 7 Vusers per processor equals 56 Vusers per load generator.
-- From a memory perspective:
The load generator machine has 16GB memory of which 15GB is available for the Vusers so approximately 150 Vusers per load generator machine (15GB / 100MB). Round down to the nearest whole number as we can't run part of the Vuser.
Therefore, to meet both the CPU and memory capacity limits, we use the lower number of Vusers and we calculate that for this business process. We can run approximately 56 Vusers per load generator.
So for a Load testwith 500 Vusers running a TruClient script, use the formula 500 total / 56 per machine = 8.92. Then round to the high whole number 9, which is the number of machines needed as LGs.