Contents
Overview
Configuration of RenderMan diagnostics primarily affects the presentation and reporting of data. By default, the system will set up an internal server for reporting live stats for any running render. The it
tool displays live stats as part of its HUD, toggled on with the "V
" (capital "vee") keyboard shortcut. Each DCC plugin also has a built-in "Live Stats" presentation panel, enabled by default.
Advanced users may also configure other presentation Listeners through the use of an INI configuration file.
It is currently recommended that live stats be explicitly disabled for farm renders. The live stats system will spawn a background process sbrokerd
which can interfere with process lifetime and cgroup management of farm processes.
Advanced Configuration: INI File
The stats configuration file (default name: "stats.ini") holds the basic default settings for a stats session. Below is the default configuration for the stats system, equivalent to the default behavior of the system if there were no configuration file specified:
This file can be found in the RenderMan distribution at $RMANTREE/etc/stats.ini
It can also be utilized for advanced configuration to build a list of listeners to attach, and per-listener rules for metric data to be observed by each listener.
Below is an example of a configuration file that enables an end-of-render JSON report, including checkpoints:
This example configuration file has both the verbose
and logLevel
settings dialed up for maximum verbosity when parsing the configuration file and starting the stats system, respectively. Once it is fully configured and working as expected these can be set back to their defaults of verbose 0
and logLevel 3
.
The stats configuration file is provided to the prman
command via the "-statsconfig" option:
prman -statsconfig /path/to/checkpoint_stats.ini /path/to/rib/scene.rib
See JSON Report Listener reference page for JSON output configuration options.
Config File Search Order
If command-line prman is not provided a config file via the -statsconfig option then the default configuration filename "stats.ini" will be used.
The stats system will search for the configuration file in the following order:
Order | Location | Default |
---|---|---|
1 | /stats/configpath setting in rendermn.ini | .:${RMANTREE}/etc |
2 |
| none |
3 | prman -statsconfig </path/to/filename.ini> | stats.ini |
If you specify an absolute path on the command line it will override any requested search paths. This is a convenient way to do quick testing without having to modify an existing config file. For example, suppose you normally run with a certain configuration of listeners, but then want to do a render with details printed to the console about a specific metric or group of metrics. You could do a debugging run that temporarily overrides the default configuration in one of two ways - either by setting/pre-pending the environment variable override:
setenv RMAN_STATS_CONFIG_PATH /my/test/directory prman -statsconfig debug_stats.ini complicatedScene.rib
Or by providing a full-path, absolute file name:
prman -statsconfig /my/test/directory/debug_stats.ini complicatedScene.rib
Both of these methods will load the stats configuration from "/my/test/directory/debug_stats.ini"
Currently, configuration files are not merged if more than one is found. The last one found wins. Future releases will include advanced configuration mechanisms, including the merging of configuration files.
DCC Configuration
A live stats configuration UI pane is available in all RenderMan bridge products, with the exception of Solaris which does not yet have support for the new stats system. In addition, advanced configuration with an INI file is also available through the use of the config environment variable. See below for DCC-specific details.
Blender
RfB uses the prman
command-line mechanism as described above, including the use of the RMAN_STATS_CONFIG_PATH
override environment variable.
Houdini
If the RMAN_STATS_CONFIG_PATH
environment variable is set RfH will use that search path to look for a file named stats.ini.
If no file is found, or if that environment variable is not set then the default configuration will be used.
Katana
If the RMAN_STATS_CONFIG_PATH
environment variable is set RfK will use that search path to look for a file named stats.ini.
If no file is found, or if that environment variable is not set then the default configuration will be used.
Additional configuration is also available in RfK through the following attributes:
prmanGlobalStatements.stats.configPath
(default: "."
)
prmanGlobalStatements.stats.configFile
(default: "stats.ini"
)
These attributes are currently not exposed in PrmanGlobalStatements, they must be set via AttributeSet or OpScript at the moment. Below is an OpScript which exposes these two attributes as user args with defaults as listed above. Copy and paste into your Katana scene and modify the path and config file name as needed.
RfK no longer allows interactive configuration of stats through the PrmanLiveStats Tab. Configuration of options will soon be allowed through exposed attributes, in the meantime, all configuration must come from an INI configuration file as described above.
Maya
If the RMAN_STATS_CONFIG_PATH
environment variable is set RfM will use that search path to look for a file named stats.ini.
If no file is found, or if that environment variable is not set then the default configuration will be used.
Solaris
The new stats are not yet supported in Solaris.