| || |
Running Vusers as threads vs process
According to the LR Vugen user guide, running Vusers as a process can be a memory hog on the load generators. For every Vuser assigned to the load generator, the Controller will run one instance of the driver program (ex. mdrv.exe, r3vuser.exe). So if you have 100 Vusers assigned to a specific load generator, that machine will have 100 instances of the driver program running. The user guide says that running Vusers as a process limits the numbers of Vusers that can be run on a load generator. What the user guide doesn't give you are any guidelines to use, i.e. if load generator has 1GB of RAM, max # of Vusers = 100, 512 MB of RAM = 50 Vusers, etc.
My load generators are the workstations of the developers in my organization. When I am conducting load tests, I don't want to interrupt whatever they are working on by bogging down their system with Vusers.
Question #1. What reasons would prompt you to set your run-time settings for Vusers to run as a process? Threading would seem to be the smarter default choice.
Question #2. Assuming there are benefits to running Vusers as a process, whats the maximum number of Vusers to assign to a load generator (with 512MB RAM) to avoid bogging down the load generator?
Re: Running Vusers as threads vs process
q1: anymore, nothing should prompt you to run other than thread. When we get to 64-bit support, we will need to know that "threadsafe still equals threadsafe".
q2: only benefit i can think of is if you are running mdrv from a bat file - where you might run threads of a script in one bat and threads of another in yet another bat.
You might consider doubling your RAM on the injectors. Figure about 1-2 MB per Vuser as threads. Depends on the size of scripts and protocl.