A common practice in JMeter is to make the number of threads per server configurable by passing in as a parameter to your thread group. When constructing your test in the JMeter GUI, these options appear under “Thread Properties“:
![JMeter "Thread Group" property configuration pane](https://d13vhgz95ul9hy.cloudfront.net/blog/wp-content/uploads/2023/06/thread-group-1.png)
These parameters can be set programmatically for a test run in RedLine13. To achieve this, you can map properties to these fields in your test using the __P() function by way of the ${__P(NAME, DEFAULT_VALUE)} convention:
![Mapped properties within JMeter](https://d13vhgz95ul9hy.cloudfront.net/blog/wp-content/uploads/2023/06/setting-thread-properties.png)
To set values for these properties, you can use the “Option String” box found under “Advanced JMeter Options” to pass in your settings at runtime:
![Setting the JMeter "Options String" under "Advanced JMeter Test Options" within RedLine13](https://d13vhgz95ul9hy.cloudfront.net/blog/wp-content/uploads/2023/06/advanced-jmeter-options.png)
Setting a property name follows the -JNAME convention, where the property name is prefaced by “-J” (without any spaces in between). In this context JNUM_OF_USERS corresponds to number of threads, JRAMP_UP_PERIOD corresponds to the desired ramp-up period in seconds, and JLOOP_COUNT corresponds to the loop count (how many times a thread will run).