PCMark 10 comes with definition files that enable you to set up and run a benchmark with standard or custom settings. By default, these definitions can be found in:

 C:\Program Files\UL\PCMark 10\ 

Using the default definition files is the same as running a test from the GUI. 

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.

PCMark 10 performance benchmarks

Definition fileDescription

pcm10_benchmark.pcmdef

Run default PCMark 10 benchmark tests

pcm10_express.pcmdef

Run default PCMark 10 Express tests

pcm10_extended.pcmdef

Run default PCMark 10 Extended tests

pcm10_benchmark_custom.pcmdef

Run custom PCMark 10 benchmark tests

pcm10_express_custom.pcmdef

Run custom PCMark 10 Express tests

pcm10_extended_custom.pcmdef

Run custom PCMark 10 Extended tests

pcm10_applications.pcmdef

Run default PCMark 10 Applications test.

pcm10_applications_custom.pcmdef

Run custom PCMark 10 Applications test.

PCMark 10 Battery Life Profile

Definition fileDescription

pcm10_applications_batterylife.pcmdef

Run default Applications Battery Life test.

pcm10_gaming_batterylife.pcmdef

Run default Gaming Battery Life test.

pcm10_idle_batterylife.pcmdef

Run default  Idle Battery Life test.

pcm10_modern_office_batterylife.pcmdef

Run default Modern Office Battery Life test.

pcm10_video_batterylife.pcmdef

Run default Video Battery Life test.

pcm10_applications_batterylife_custom.pcmdef

Run custom Applications Battery Life test.

pcm10_gaming_batterylife_custom.pcmdef

Run custom Gaming Battery Life test.

pcm10_idle_batterylife_custom.pcmdef

Run custom Idle Battery Life test.

pcm10_modern_office_batterylife_custom.pcmdef

Run custom Modern Office Battery Life test.

pcm10_video_batterylife_custom.pcmdef

Run custom Video Battery Life test.

PCMark 10 Storage benchmarks

Definition fileDescription

pcm10_storage_full_default.pcmdef

Run default Full System Drive benchmark

pcm10_storage_full_custom.pcmdef

Run custom Full System Drive benchmark

pcm10_storage_quick_default.pcmdef

Run default Quick System Drive benchmark 

pcm10_storage_quick_custom.pcmdef

Run custom Quick System Drive benchmark 

pcm10_storage_data_default.pcmdef

Run default Data Drive benchmark 

pcm10_storage_data_custom.pcmdef

Run custom Data Drive benchmark 

pcm10_storage_consistency_default.pcmdef

Run default Drive Performance Consistency Test 

pcm10_storage_consistency_custom.pcmdef

Run custom Drive Performance Consistency Test 

Examples

pcm10_express.pcmdef

<?xml version="1.0" encoding="utf-8"?>
<benchmark>
     <test_info>
           <benchmark_tests>
                <benchmark_test name="Pcm10ExpressBenchmarkDefault" test_run_type="EXPLICIT" version="1.0"/>
           </benchmark_tests>
     </test_info>
     <application_info>
           <selected_workloads>
                <selected_workload name="Pcm10VideoConferencingDefault"/>
                <selected_workload name="Pcm10WebBrowsingDefault"/>
                <selected_workload name="Pcm10AppStartUpDefault"/>
                <selected_workload name="Pcm10WritingDefault"/>
                <selected_workload name="Pcm10SpreadsheetDefault"/>
           </selected_workloads>
     </application_info>
</benchmark>

If all you want is to specify which tests to run (for example, to skip a certain test), just make a copy of the appropriate definition file and edit the list of tests.

pcm10_express_custom.pcmdef

<?xml version="1.0" encoding="utf-8"?>
<benchmark>
     <test_info>
           <benchmark_tests>
                <benchmark_test name="Pcm10ExpressBenchmarkCustom" test_run_type="EXPLICIT" version="1.0"/>
           </benchmark_tests>
     </test_info>
     <application_info>
           <selected_workloads>
                <selected_workload name="Pcm10VideoConferencingCustom"/>
                <selected_workload name="Pcm10WebBrowsingCustom"/>
                <selected_workload name="Pcm10AppStartUpCustom"/>
                <selected_workload name="Pcm10WritingCustom"/>
                <selected_workload name="Pcm10SpreadsheetCustom"/>
           </selected_workloads>
     </application_info>
     <settings>
         <setting>
             <name>wait_between_workloads</name>
            <value>15</value>
         </setting>
           <setting>
                <name>use_video_acceleration</name>
                <value>1</value>
           </setting>
           <setting>
                <name>use_opencl</name>
                <value>1</value>
          </setting>
            <setting>
                <name>tempdir</name>
                <value>"C:\TEMP\MY_TEMP"</value>
           </setting>
           <!-- OpenCL device values are indices of the devices and are specific to a given computer.
                You can find allowed values by running the command line application with the option list-opencl-devices -->
           <!--
         <setting>
             <name>spreadsheet_opencl_device</name>
            <value>0</value>
         </setting>
         <setting>
             <name>opencv_opencl_device</name>
            <value>0</value>
         </setting>
         -->
     </settings>
</benchmark>

Custom definition files contain settings with the default values used in the test.

Definition file settings

The table below lists all settings used in the definition files.

SettingDescription

wait_between_workloads

The time to wait between each workload run.

use_video_acceleration

1 - enable the use of hardware acceleration in video processing

0 - disable the use of hardware acceleration in video processing

use_opencl

1 - use OpenCL

0 - disable OpenCL

opencv_opencl_device

The index of the OpenCL device to use in the Video Conferencing

photo_opencl_device

The index of the OpenCL device to use in the Photo Editing test

spreadsheet_opencl_device

The index of the OpenCL device to use in the Spreadsheets test

video_opencl_device

The index of the OpenCL device to use in the Video Editing test

tempdir

Sets the directory where the temporary workload data will be stored.

use_opengl

Debug setting for Spreadsheets and Writing.

1 - use OpenGL

0 - disable OpenGL

Default value: 1 - use OpenGL

use_chromium_sandbox

Debug setting for Application Startup and Web Browsing.

1 - use sandbox

0 - disable sanbdbox

Default value: 0 - disable sanbdbox

Battery Life definition file settings

SettingDescription

minimum_run_time

Tells the workload how long to run in each loop. A zero value tells the workload to not loop but instead run continuously.

Storage definition file settings

SettingDescription

storage_path

The path to the drive to benchmark. Can be a drive letter or a path.

String. Default value: C:\

modify_power_profile

Allow the benchmark to temporarily create and use a custom power profile based on the current power profile.

Boolean. Default value: true

server_interactive_login

Setting for the Data Drive benchmark. Enables that Windows can display an interactive login dialog for the network resource if needed.

Boolean. Default value: false

server_username

Setting for the Data Drive benchmark. Purpose: Specifies the username to login to the network resource.

String. Default value: empty

server_password

Setting for the Data Drive benchmark. Specifies the password to login to the network resource.

String. Default value: empty

required_free_space

Megabytes of free space required on the target drive after the initialization of the benchmark. The test will not run if less space available.

Related: fill_space

Integer in megabytes. Default value: 4096

fill_space

Fill the drive with extra data.

Boolean. Default value: true for Consistency test, false otherwise.

idle_compression

Idle periods longer than the value are shorted to the value.

An integer in milliseconds. Default value: 1000 for FUll, Quick and Data tests; 10 for Consistency test.

trace_playback_time_limit

The maximum time spent on playing back a trace. Then the time is reached, the playback stops for the trace and the test moves on to the next one. Results are calculated based on the actual executed I/O.

Integer in milliseconds. Default value: 600000 for Full, Quick and Data tests; 120000 for Consistency test

precondition_queue_depth

Setting Drive Performance Consistency Test. The queue depth of write operations in the precondition phase.

Integer. Default value: 10

precondition_passes

Setting Drive Performance Consistency Test. The number of passes in the precondition phase. 

Integer. Default value: 2

precondition_block_size

Setting Drive Performance Consistency Test. The block size (in bytes) used for write operations in the precondition phase.

Integer in bytes, a multiple of 4096. Default value: 131072

post_precondition_idle

Setting Drive Performance Consistency Test. The time to idle (in ms) between precondition and degrade phases.

Default value: 0

degrade_duration_init

Setting Drive Performance Consistency Test. The initial duration (in ms) of a degrade phase pass.

Integer in milliseconds. Default value: 60000

degrade_duration_increment

Setting Drive Performance Consistency Test. The amount of time (in ms) that the duration of the degrade phase pass is (cumulatively) incremented on each pass.

Integer in milliseconds. Default value: 60000

degrade_data_size_init

Setting Drive Performance Consistency Test. The initial maximum data size (in megabytes) of a degrade phase pass.

Integer in megabytes. Default value: 51200

degrade_data_size_increment

Setting Drive Performance Consistency Test. The amount of maximum data size (in megabytes) that the data size of the degrade phase pass is (cumulatively) incremented on each pass.

Integer in megabytes. Default value: 51200

degrade_queue_depth

Setting Drive Performance Consistency Test. The queue depth of write operations in the degrade phase.

Integer. Default value: 10

degrade_passes

Setting Drive Performance Consistency Test. The number of passes in the degrade phase.

Integer. Default value: 8

degrade_min_block_size

Setting Drive Performance Consistency Test. The minimum block size (in bytes) used with write operations in degrade phase.

Integer in bytes, a multiple of 4096. Default value: 4096

degrade_max_block_size

Setting Drive Performance Consistency Test. The maximum block size (in bytes) used with write operations in the degrade phase.

Integer in bytes, a multiple of 4096. Default value: 1048576

degrade_alignment

Setting Drive Performance Consistency Test. Alignment of write operation offsets in the degrade phase.

Integer in bytes, a multiple of 4096. Default value: 4096

steady_passes

Setting Drive Performance Consistency Test. The number of passes in the steady phase.

Integer. Default value: 3

recovery_duration_init

Setting Drive Performance Consistency Test. The initial duration (in ms) of a recovery phase pass.

Integer in milliseconds. Default value: 300000

recovery_duration_increment

Setting Drive Performance Consistency Test. The amount of time (in ms) that the duration of the recovery phase pass is (cumulatively) incremented on each pass.

Integer in milliseconds. Default value: 0

recovery_passes

Setting Drive Performance Consistency Test. The number of passes in the recovery phase. 

Integer. Default value: 5

postcondition_queue_depth

Setting Drive Performance Consistency Test. The queue depth of write operations in the postcondition phase.

Integer. Default value: 10

postcondition_passes

Setting Drive Performance Consistency Test. The number of passes in the postcondition phase.

Integer. Default value: 1

postcondition_block_size

Setting Drive Performance Consistency Test. The block size (in bytes) that is used with write operations in postcondition phase.

Integer in bytes, a multiple of 4096. Default value: 131072

Selecting an OpenCL device

To get the index of the OpenCL device to use with the OpenCL settings, list the available OpenCL devices by running the following command line:

PCMark10Cmd.exe --list-opencl-devices

The indexes are system-specific, so the definition file can only be used on that specific system if an OpenCL device has been specified.

Here is an example of a custom run of the Spreadsheets test using the OpenCL device with the index of one.

<?xml version="1.0" encoding="utf-8"?>
<benchmark>
     <test_info>
           <benchmark_tests>
                <benchmark_test name="Pcm10ExpressBenchmarkCustom" test_run_type="EXPLICIT" version="1.0"/>
           </benchmark_tests>
     </test_info>
     <application_info>
           <selected_workloads>
                <selected_workload name="Pcm10SpreadsheetCustom"/>
           </selected_workloads>
     </application_info>
     <settings>
         <setting>
             <name>spreadsheet_opencl_device</name>
            <value>1</value>
         </setting>
     </settings>
</benchmark>