cancel
Showing results for 
Search instead for 
Did you mean: 

[GUIDE] 3DMark Score Calculation - how to calculate 3DMark Scores

Henkenator68NL
Level 13
3D Mark Scoring explained[INDENT=13]Author : Henkenator68NL
Date : 1-july-2013
Source : Official Futuremark 3DMark Technical Guide


[INDENT=13]http://www.futuremark.com/downloads/3DMark_Technical_Guide.pdf

Fellow ROG-ers and Benchers,

I have done some reading about 3DMark and the scoring system behind it, I will share my findings in this thread.


3DMark (2013 version that is) has been out for some time now, it is the latest in the Futuremark's 3D bench tests family. 3DMark is a cross platform bench program (Windows PC’s, Windows RT, Android and iOS) which is quite unique.
The Benchmark Test contains 3 different Test suites:
Ice Storm, Cloud Gate and Fire strike.


Ice Storm

Ice storm is targeted at mobile devices and entry level PCs. There a 2 predefined settings:


  • Ice Storm Default: resolution 1280x720, 128MB GPU memory, Low Texture quality, 1/8 Bloom resolution.
  • Ice Storm Extreme: graphic resolution: 1920x1080, Physics res: 1280x720, 256 MB GPU memory, High Texture quality, ¼ Bloom res.

Each setting contains the following tests:

Graphics Test 1
Stresses the GPU by processing lots of vertices with a light pixel load. Hardware (for this level) may have a fixed operation level for vertex and pixel processing. By stressing them separately it’s not hard to find hardware limitations.

Graphics Test 2
The GPU is pushed hard to process lots of pixels. Lower number of vertices and triangles than Graphic test 1.

Physics Test
This tests the CPU’s capability to simulate gameplay physics. One thread per available CPU core is assigned to creating the simulations, while other threads are completing other tasks. The GPU load is kept as low as possible. The Bullet Open Source Library is used for this Physics Test.

Cloud Gate

Cloud Gate is test suite developed for notebooks and your average home computer. The benchmark utilizes a DirectX 11 engine dialled back to DX10 level for testing. The default settings are:

Rendering resolution 1280x720, 256MB GPU memory, Shadow Sample Count: 4, Shadow Map Res: 1024, Depth of Field Quality: low, 1/8 Bloom resolution.

The individual tests are:


Graphic test 1

Strong geometry processing with simple shaders and some particle effects. FFT based bloom and depth of field added during post processing.

Graphics test 2

Shaders with more complex math, but less geometric details than test 1. Post processing is the same.

Physics test

This test utilizes the cpu to simulate gameplay. GPU load is kept low to keep each CPU core busy. The simulations run on 1 thread per CPU core while other threads are completing other tasks.


Fire Strike
Fire Strike is designed for high-performance gaming PCs. It uses a multi-threaded DX11 engine.
There a 2 setting levels:



  • Fire Strike default: resolution: 1920x1080, GPU memory: 1 GB, Tessellation detail: medium, Surface shadow sample count: 8, Shadow map resolution 1024, Volume illumination quality, Particle illumination quality, Ambient occlusion quality and Depth of field quality: all at medium. Bloom resolution ¼.

  • Fire Strike Extreme: resolution: 2560x1440, GPU memory: 1.5 GB, Tessellation detail: high, Surface shadow sample count: 16, Shadow map resolution: 2048. Volume illumination quality, Particle illumination quality, Ambient occlusion quality and Depth of field quality: all at High. Bloom resolution ¼.


3DMark Fire Strike Extreme is aimed at multi-GPU systems and future hardware generations.

The tests in Fire Strike are:


Graphics Test 1

This test focusses on geometry and illumination. Particles are drawn at half resolution and dynamic particals are disabled. 100 spotlights cast shadows and 140 point lights that do not. Lower pixels processing than in test 2, since there is no depth of field.

Graphics Test 2

Now it is time to focus on the particles and the GPU simulations: Particles are drawn at full resolution and dynamic particle illumination is enabled. Two smoke fields are simulated by the GPU, 6 spotlights cast a shadow and 65 lights without shadows. Shaders are utilized for particle and fluid simulations and post processing (including depth of Field).

Physics Test

The CPU is being stressed by running gameplay physics simulations. The GPU is kept out of the wind to ensure that only the CPU is stressed. In the test there are 32 simulated worlds, 1 thread per available core is used to run the simulations.

Combined Test
Now the torture really starts: both CPU and GPU are pushed hard at the same time. The GPU load is a mix of Graphics test 1 and 2, using tessellation, volumetric illumination, fluid simulation, particle simulation, FFT based bloom and Depth of Field. The CPU is pushed by creating the rigid body physics of the breaking statues (background).
The test runs 32 world simulations running in separate threads each containing 1 statue crumbling into 113 parts. On top off that: 16 invisible rigid bodies (in all but one world). The simulations run on one thread per available CPU core.



Additional information:
Multithreading


Futuremark 3DMARK TECNICAL GUIDE: The multithreading model is based on DX11 deferred device contexts and command lists. The engine utilizes one thread per available CPU core. One of the threads is considered as the main thread, which uses both immediate device context and deferred device context. The other threads are worker threads, which use only deferred device contexts.

Rendering workload is distributed between the threads by distributing items (e.g. geometries and lights) in the rendered scene to the threads. Each thread is assigned roughly equal amount of scene items.
When rendering a frame, each thread does the work associated to items assigned to the thread. That includes, for example, computation of transformation matrix hierarchies, computation of shader parameters (constants buffer contents and dynamic vertex data) and recording of DX API calls to a command list. When the main thread is finished with the tasks associated to its own items, it executes the command lists recorded by worker threads.


Tesselation
The Engine supports rendering with or without Tessellation, supported techniques: PN Triangles, Phong and displacement map based Tessellation details. Both triangle and square tessellation is supported.

continued in next post:
66,303 Views
26 REPLIES 26

Henkenator68NL
Level 13
Some information about the scoring in 3DMark

The overall score formula


3DMARK uses a formula to calculate your scores. The overall score is calculated by the following formula:

22908
Legend:
Wgraphics = Graphic Score Weight Sgraphics = Graphics Score
Wphysics = Physics Score Weight Sphysics = Physics Score
Wcombined = Combined Score Weight Scombined = Combined Score

Each individual score (graphics, physics and combined) is derived from the raw FPS score that is found while running the test. Through the individual scores the overall 3DMark score is calculated.

A weighted harmonic has been brought into the equation and also some constants (see table Weights and Constants further below). The Weights in fact determine the proportion of the GPU and CPU in the calculation of the individual and end result.

For a balanced system the weights show the ratio between the effect off the Graphics and Physics performance on the overall score. A balanced system is one where the Graphics and Physics are roughly of the same magnitude. For systems with a substantially higher Graphics or Physics sub-score, the harmonic mean rewards boosting the side where the lower score is.

This is in line with real life, for example: If you use an entry-level GPU and if you double the CPU speed: it has little or no improvement on your system performance when playing games. Because the systems gaming performance is limited by the GPU. The same applies on a system with a low-end CPU and an overpowered GPU.
With the following example, I will explain how this works

Your latest 3DMark Fire Strike bench test has the following results:


For this example the calculated scores are blurred out, so we can check them later with the calculations below.

22916

Graphic Test Scoring
Each test produces a raw result in frames per second (FPS). The harmonic mean of these Raw results is multiplied with its corresponding scaling constant. This leads to the graphics score (Sgraphics):

22911
Now take a look at the Graphics Test: Graphic Test 1 = 42.4 fps, in the formula this is Fgt1. Graphics Test 2 = 32.2 fps in the formula Fgt2.
The result of the formula: Sgraphics = 8847

Physics Test Scoring
The Physics score is easy to calculate, multiply the physics constant with the raw fps score (Fpyshics ).


22910
The fps score is 41,2 and the constant found in the table is 315.
The result of the formula: Spyshics 41,2 x 315 = 12978

Combined Test Scoring
The combined test score can be found with this formula:

22909
In the example the combined test scored 15,6 fps (Fcombined) the constant from the table is 215.
The combined score: Scombined 15,6 x 215 = 3354

Now with all the sub scores the Overall S3DMARK score can be calculated:

22914

Here is the same example, with the actual scores.

22915
As you will notice the results deviate a little bit, the is caused by rounding off in the formula. The actual results in frames per second are not shown by the benchmark test. But in general the score is pretty accurate.

Weights and Constants Table:

22912

3DMark score calculator
I have made a calculator in excel, and if it is completely finished I can make it available for download. For those who would like to check their own scores and or see the influence off each sub-test in the total score.


22913

Disclaimer: This represents my personal opinion or findings, by no means do I claim to be an authority on this subject, I am NOT tied to Futuremark in anyway.

I will try to add new information on the subject in this thread.

At the moment I am running a series of tests to see how the scores are affected by different settings like:
overclocking the CPU
Overclocking the GPU
Overclocking the DRAM
OS tweaks / versions
etc.

I will post my findings here in the near future!

Henk, that's excellent! Congrats for your effort and all the info. Rep from me for your contribution and willness to share 🙂

nikosa43 wrote:
Henk, that's excellent! Congrats for your effort and all the info. Rep from me for your contribution and willness to share 🙂


Ευχαριστώ πολύ, μου φίλος

Thank you m8!

nikosa43
Level 12
You continue to surprise me :D. Φιλε

Arne_Saknussemm
Level 40
Nice one Henk! now you just have to work out how to add a couple of thousand points to the score 😉

Henkenator68NL
Level 13
Thanks Arne!

Well that is what I am running the test for as mentioned: compairing which overclock causes what end result in the score......
but I am not sure it will be thousends but improvements must be achievable !!! :cool:

unless you count the bugged runs .... that was about 7000 up :confused:

Zka17
Level 16
Nice one, Henk! :cool:

HiVizMan
Level 40
Looking good mate.
To help us help you - please provide as much information about your system and the problem as possible.

I like your humble approach...(couple of thousands), what about 10 grand, that would be good for me 😄