Runtime settings#
Runtime configuration file provides parameters that user can tweak to achieve optimal performance of their app.
Note: The setting <param name="numThreads" type="Value::Int1" x="-1" />
means that will be taken the maximum number of available threads. This number of threads is equal to according number of available processor cores.
The name of runtime configuration file is runtime.conf and its placed in data directory. Its settings are described below:
Parameter | Description | Type | Default value |
---|---|---|---|
cpuClass | Class of cpu by supported instructions - cpu, arm, auto. | "Value::String" |
"auto" |
deviceClass | Execution device type - cpu, gpu. | "Value::String" |
"cpu" |
numThreads | Number of worker threads. Default: number of CPU logical cores. | "Value::Int1" |
-1 |
verboseLogging | Level of log verbosity. 1 - Errors, 2 - Warnings, 3 - Info, 4 - Debug. | "Value::Int1" |
0 |
programCacheSize | Maximum number of Program objects in cache. Should be less than 10000. | "Value::Int1" |
128 |
Verbosity level sets the upper limit of what type of messages may be printed out. For example, if user set verboseLogging to 3, it means that Errors, Warnings and Info messages will be printed out to the console. Verbose level of 0 indicates that there are no logging messages printed out at all.
Increasing the
programCacheSize
increases memory usage and potentially improves performance. Be careful, too large a value of this parameter can lead to a crash due to insufficient memory.
Example:
<section name="Runtime">
<param name="cpuClass" type="Value::String" text="auto" />
<param name="deviceClass" type="Value::String" text="cpu" />
<param name="numThreads" type="Value::Int1" x="-1" />
<param name="verboseLogging" type="Value::Int1" x="0" />
<param name="programCacheSize" type="Value::Int1" x="128" />
</section>