3DMark definition files let you set up and run benchmarks with standard or custom settings. By default, these definition files are found in C:\Program Files\UL\3DMark\.
Benchmarks
The default definitions are the same as running a test from the GUI.
Definition file | Description |
---|---|
steelnomad_dx12.3dmdef | Run the default Steel Nomad test using DirectX 12 |
steelnomad_vulkan.3dmdef | Run the default Steel Nomad test using Vulkan |
steelnomad_light_dx12.3dmdef | Run the default Steel Nomad Light test using DirectX 12 |
steelnomad_light_vulkan.3dmdef | Run the default Steel Nomad Light test using Vulkan |
speedway.3dmdef | Run the default Speed Way test |
solarbay.3dmdef | Run the default Solar Bay test |
firestrike.3dmdef | Run the default Fire Strike test |
firestrike_extreme.3dmdef | Run the default Fire Strike Extreme test |
firestrike_ultra.3dmdef | Run the default Fire Strike Ultra test |
nightraid.3dmdef | Run the default Night Raid test |
portroyal.3dmdef | Run the default Port Royal test |
timespy.3dmdef | Run the default Time Spy test |
timespy_extreme.3dmdef | Run the default Time Spy Extreme test |
wildlife.3dmdef | Run the default Wild Life test |
wildlife_extreme.3dmdef | Run the default Wild Life Extreme test |
cpuprofile.3dmdef | Run the default CPU Profile test |
Benchmarks with custom settings
Custom definition files mirror the options available on the Custom tab of the GUI. Copy the appropriate custom definition file and edit it to match your desired settings. Note that custom runs only produce sub-scores, never an overall score.
Definition file | Description |
---|---|
custom_steelnomad.3dmdef | Run Steel Nomad with custom settings |
custom_speedway.3dmdef | Run Speed Way with custom settings |
custom_solarbay.3dmdef | Run Solar Bay with custom settings |
custom_firestrike.3dmdef | Run Fire Strike with custom settings |
custom_ firestrike_extreme.3dmdef | Run Fire Strike Extreme with custom settings |
custom_ firestrike_ultra.3dmdef | Run Fire Strike Ultra with custom settings |
custom_ nightraid.3dmdef | Run Night Raid with custom settings |
custom_ portroyal.3dmdef | Run Port Royal with custom settings |
custom_ timespy.3dmdef | Run Time Spy with custom settings |
custom_ timespy_extreme.3dmdef | Run Time Spy Extreme with custom settings |
custom_ wildlife.3dmdef | Run Wild Life with custom settings |
custom_ wildlife_extreme.3dmdef | Run Wild Life Extreme with custom settings |
custom_cpuprofile.3dmdef | Run the CPU Profile with custom settings |
Feature tests
Definition file | Description |
---|---|
directxraytracingft.3dmdef | Run default DirectX Raytracing feature test |
meshshaderft.3dmdef | Run default Mesh Shader feature test |
pciexpress.3dmdef | Run default PCI Express test |
samplerfeedbackft.3dmdef | Run default Sampler Feedback test |
vrs.3dmdef | Run default VRS tier 1 test |
vrs2.3dmdef | Run default VRS tier 2 test |
nvidiadlss.3dmdef | Run default NVIDIA DLSS test |
nvidiadlss2.3dmdef | Run default NVIDIA DLSS 2 test |
nvidiadlss2.3dmdef | Run default NVIDIA DLSS 3 test |
intelxessft.3dmdef | Run default Intel XeSS test |
Stress tests
Definition file | Description |
---|---|
stresstest_steelnomad_dx12.3dmdef | Run the Steel Nomad Stress Test with DirectX 12 |
stresstest_steelnomad_light_vulkan.3dmdef | Run the Steel Nomad Stress Test with Vulkan |
stresstest_steelnomad_light_dx12.3dmdef | Run the Steel Nomad Light Stress Test with DirectX 12 |
stresstest_steelnomad_vulkan.3dmdef | Run the Steel Nomad Light Stress Test with Vulkan |
stresstest_speedway_performance.3dmdef | Run the default Speed Way Stress Test |
stresstest_solarbay_performance.3dmdef | Run the default Solar Bay Stress Test |
stresstest_firestrike_performance.3dmdef | Run the default Fire Strike Stress Test |
stresstest_firestrike_extreme.3dmdef | Run the default Fire Strike Extreme Stress Test |
stresstest_firestrike_ultra.3dmdef | Run the default Fire Strike Ultra Stress Test |
stresstest_nightraid_performance.3dmdef | Run the default Night Raid Stress Test |
stresstest_portroyal_performance.3dmdef | Run the default Port Royal Stress Test |
stresstest_timespy_performance.3dmdef | Run the default Time Spy Stress Test |
stresstest_timespy_extreme.3dmdef | Run the default Time Spy Extreme Stress Test |
stresstest_wildlife_performance.3dmdef | Run the default Wild Life Stress Test |
stresstest_wildlife_extreme_performance.3dmdef | Run the default Wild Life Extreme Stress Test |
Unlimited Mode
In Unlimited mode, the benchmark runs offscreen using a fixed time step between frames. Unlimited mode renders exactly the same frames in every run on every device. You can use Unlimited mode to make chip-to-chip comparisons without vertical sync, display resolution scaling, and other operating system factors affecting the result.
Definition file | Description |
---|---|
steelnomad_light_unlimited_dx12.3dmdef | Run Steel Nomad Light in Unlimited mode with DirectX 12 |
steelnomad_light_unlimited_vulkan.3dmdef | Run Steel Nomad Light in Unlimited mode with Vulkan |
stresstest_steelnomad_light_unlimited_dx12.3dmdef | Run the Steel Nomad Light Stress Test in Unlimited mode with DirectX 12 |
stresstest_steelnomad_light_unlimited_vulkan.3dmdef | Run the Steel Nomad Light Stress Test in Unlimited mode with Vulkan |
solarbay_unlimited.3dmdef | Run Solar Bay in Unlimited mode |
stresstest_wildlife_unlimited.3dmdef | Run the Solar Bay Stress Test in Unlimited mode |
wildlife_unlimited.3dmdef | Run Wild Life in Unlimited mode |
stresstest_wildlife_unlimited.3dmdef | Run the Wild Life Stress Test in Unlimited mode |
wildlife_extreme_unlimited.3dmdef | Run Wild Life Extreme in Unlimited mode |
stresstest_wildlife_extreme_unlimited.3dmdef | Run the Wild Life Extreme Stress Test in Unlimited mode |
Examples
timespy.3dmdef
<?xml version="1.0" encoding="utf-8"?>
<benchmark>
<application_info>
<selected_workloads>
<selected_workload name="TimeSpyDemoP"/>
<selected_workload name="TimeSpyGt1P"/>
<selected_workload name="TimeSpyGt2P"/>
<selected_workload name="TimeSpyCpuP"/>
</selected_workloads>
</application_info>
</benchmark>
The test names are fairly self-explanatory, for example, "TimeSpyDemoP" is the demo, "TimeSpyGt1P" the Graphics test 1, and so on. Note that you will only get an overall score when all sub-tests are included.
If all you want is to specify which tests to run (for example, to skip the Demo), just make a copy of the appropriate definition file and edit the list of tests.
stresstest_firestrike_performance.3dmdef
<?xml version="1.0" encoding="utf-8"?>
<benchmark>
<application_info>
<selected_workloads>
<selected_workload name="FireStrikeGt1XST"/>
</selected_workloads>
</application_info>
<settings>
<setting>
<name>loop_count</name>
<value>20</value>
</setting>
</settings>
</benchmark>
The stress test definitions function in a similar manner to other definition files but must also contain a valid loop count setting (between 2 and 5000).
Note that when specifying file paths in a custom definition file, for example for outputting frames via the Image Quality Tool feature, do not add quotation marks around the path or the test will fail.
Setting command-line options with .3dmdef files
Some command-line settings can be set within .3dmdef files, for both default and custom benchmark runs.
If the same setting is set from both the command line and the .3dmdef file, the value differing from the default value will be used. For example, if --debug-log=off is specified on the command line, but the .3dmdef file contains the code below, then the debug log will be enabled since it is the non-default setting.
<setting>
<name>enable_debug_log</name>
<value>1</value>
</setting>
The table below lists all settings that can be set within a .3dmdef file.
.3dmdef setting name | .3dmdef default value | Command-line option with default value |
---|---|---|
enable_debug_log | 0 | --debug-log=off |
swapchain_height | 0 (auto) | |
swapchain_width | 0 (auto) | |
enable_audio | 1 | --audio=on |
enable_systeminfo_monitor | 0 | --systeminfomonitor=off |
enable_systeminfo_collect | 0 | --systeminfo=off |
gpu_count | 0 (auto-detect) | |
scaling_mode | centered | --scalingmode=centered |
Note that using the --scalingmode setting on the command line always overrides the value in .3dmdef file.
Using custom settings
Custom workloads have separate identifiers. For example, to run Fire Strike with a non-default resolution or other setting:
<application_info>
<selected_workloads>
<selected_workload name="FireStrikeDemoC"/>
<selected_workload name="FireStrikeGt1C"/>
Specifying the "C" version of each workload name is required for the custom settings to have an effect. If another name (for example FireStrikePhysicsP) is used, all custom settings that could potentially affect the score will be ignored.