The PCMark 10 Full System Drive Benchmark uses a wide-ranging set of real-world traces from popular applications and common tasks to fully test the performance of the fastest modern drives.
The benchmark is designed to measure performance of fast system drives using the SATA bus at the low end and devices connected via PCI Express at the high end. The goal of the benchmark is to show meaningful real-world performance differences between fast storage technologies such as SATA, NVMe, and Intel’s Optane.
The Full System Drive Benchmark uses all 23 traces, running 3 passes with each trace. It typically takes an hour to run.
|Result file label
|Booting Windows 10
|Adobe Acrobat - starting the application until usable
|Adobe After Effects - starting the application until usable
|Adobe Illustrator - starting the application until usable
|Adobe Premiere Pro - starting the application until usable
|Adobe Lightroom - starting the application until usable
|Adobe Photoshop - starting the application until usable
|Battlefield V - starting the game until the main menu
|Call of Duty Black Ops 4 - starting the game until the main menu
|Overwatch - starting the game until main menu
|Using Adobe After Effects
|Using Microsoft Excel
|Using Adobe Illustrator
|Using Adobe InDesign
|Using Microsoft PowerPoint
|Using Adobe Photoshop (heavy use)
|Using Adobe Photoshop (light use)
|Copying 4 ISO image files, 20 GB in total, from a secondary drive to the target drive (write test)
|Making a copy of the ISO files (read-write test)
|Copying the ISO to a secondary drive (read test)
|Copying 339 JPEG files, 2.37 GB in total, to the target drive (write test)
|Making a copy of the JPEG files (read-write test)
|Copying the JPEG files to another drive (read test)
The PCMark 10 FUll System Drive Benchmark produces an overall score, which is calculated from the bandwidth and average access time sub-scores.
PCMark 10 Storage score = geometric mean (bandwidth, 1 / average access time)
The secondary metrics are Bandwidth and Average access time.
During a trace playback, the start and end time is measured for each I/O.
access_time_for_an_I/O = end time - start time
Specifically, filesystem target type can issue other types of I/O than read and write, for example, create file and close file. To be able to focus on actual data transfer performance:
average_access_time = arithmetic mean of only read and write access time
Busy time is a metric used to quantify the amount of time that the storage device is executing I/Os. It is defined as the sum of all times when at least one I/O was executing. Again, to be able to focus on data transfer performance, we define busy_time_for_read_and_write as the time when at least one read or write operation was executing. Using this and the number of bytes being transferred during the trace playback, we define:
bandwidth = bytes / busy_time_for_read_and_write