Hi all!
here is a small OpenGL benchmark I coded for my graphics cards tests:
http://www.ozone3d.net/demos_projects/soft_shadows_benchmark.php
This benchmark is focused on the pixel processing unit: soft shadows rendering
with a 7x7 filter. The bench lasts 1 minute. You can enable or disable the dynamic
branching in the pixel shader in order to see the impact of branching.
Here are some results:
X1950XTX / C6.9 / Branching OFF : 1805 o3Marks
X1950XTX / C6.9 / Branching ON : 3634 o3Marks
7950GX2 / FW91.47 / Branching OFF : 2306 o3Marks
7950GX2 / FW91.47 / Branching ON : 2125 o3Marks
7600GS / FW97.28 / Branching OFF : 373 o3Marks
7600GS / FW97.28 / Branching ON : 352 o3Marks
6600GT / FW97.28 / Branching OFF : 391 o3Marks
6600GT / FW97.28 / Branching ON : 603 o3Marks
6800GT / FW97.28 / Branching OFF : 583 o3Marks
6800GT / FW97.28 / Branching ON : 821 o3Marks
We can see the benefits of dynamic branching: on radeon R5xx the perf are doubled (ratio=2).
But on G7x the perf stay almost the same (ratio=0.9).
The weird thing is on NV4x arch (6600GT/6800GT), the branching in pixel shader seems to be
more efficient (ratio=1.4) than on G7x. Comes from NV4x's threads that contain less pixels ?
If anyone has an explanation...
Thanks,
JeGX
here is a small OpenGL benchmark I coded for my graphics cards tests:
http://www.ozone3d.net/demos_projects/soft_shadows_benchmark.php
This benchmark is focused on the pixel processing unit: soft shadows rendering
with a 7x7 filter. The bench lasts 1 minute. You can enable or disable the dynamic
branching in the pixel shader in order to see the impact of branching.
Here are some results:
X1950XTX / C6.9 / Branching OFF : 1805 o3Marks
X1950XTX / C6.9 / Branching ON : 3634 o3Marks
7950GX2 / FW91.47 / Branching OFF : 2306 o3Marks
7950GX2 / FW91.47 / Branching ON : 2125 o3Marks
7600GS / FW97.28 / Branching OFF : 373 o3Marks
7600GS / FW97.28 / Branching ON : 352 o3Marks
6600GT / FW97.28 / Branching OFF : 391 o3Marks
6600GT / FW97.28 / Branching ON : 603 o3Marks
6800GT / FW97.28 / Branching OFF : 583 o3Marks
6800GT / FW97.28 / Branching ON : 821 o3Marks
We can see the benefits of dynamic branching: on radeon R5xx the perf are doubled (ratio=2).
But on G7x the perf stay almost the same (ratio=0.9).
The weird thing is on NV4x arch (6600GT/6800GT), the branching in pixel shader seems to be
more efficient (ratio=1.4) than on G7x. Comes from NV4x's threads that contain less pixels ?
If anyone has an explanation...
Thanks,
JeGX