• Competitor rules

    Please remember that any mention of competitors, hinting at competitors or offering to provide details of competitors will result in an account suspension. The full rules can be found under the 'Terms and Rules' link in the bottom right corner of your screen. Just don't mention competitors in any way, shape or form and you'll be OK.

Why Windows 10 and DirectX 12 Represent a Big Step Forward for Gaming

I would like to ask about the relevance of the 'unified shaders'. Is it really worth it to introduce the so called "unified shaders" instead of pixel shaders and vertex shaders?

For example, let's compare ATi Radeon X1950 XTX, DX 9.0c (9_3):
R580+ 90nm, 352 mm^2, 384 MTransistors
48 pixel | 8 vertex shaders
16 TMUs | 16 ROPs
125 W TDP https://www.techpowerup.com/gpu-specs/radeon-x1950-xtx.c168

And ATi Radeon HD 2900 XT, DX 10.0 (10_0):
R600 80nm, 420 mm^2, 720 MTransistors
320 unified shaders
16 TMUs | 16 ROPs
215 W TDP https://www.techpowerup.com/gpu-specs/radeon-hd-2900-xt.c192

Performance in FarCry @ 2048x1536 4xAA, 16AF https://www.techpowerup.com/review/ati-hd-2900-xt/6.html
1950 XTX: 88.2 FPS
2900 XT: 65.6 FPS

F.E.A.R @ 2048x1536 4xAA, 16AF
1950 XTX: 38 FPS
2900 XT: 41 FPS

Prey @ 2048x1536 4xAA, 16AF
1950 XTX: 41.1 FPS
2900 XT: 48.4 FPS

Quake 4 @ 2048x1536 4xAA, 16AF
1950 XTX: 28.4 FPS
2900 XT: 43.3 FPS

X3 @ 2048x1536 4xAA, 16AF
1950 XTX: 50.9 FPS
2900 XT: 44.4 FPS

3D Mark 03 @ 2048x1536 4xAA, 16AF
1950 XTX: 7453
2900 XT: 7951

3D Mark 05 @ 2048x1536 4xAA, 16AF
1950 XTX: 6442
2900 XT: 7904
 
Pixel Shaders are dedicated shader types, separate Logic and Vertex

Unified Shaders contain these instructions in a single unit.

The upside of Unified Shaders is a denser package with more Shaders, there is no real downside to Unified Shaders, that is so long as the front end of your architecture doesn't bottleneck the backend, which AMD's GCN architecture did, the GCN architecture had an inefficient front end which is why by the time they got to 2800 Shaders they needed a 512Bit bus or HBM with even more to 'help' eliminate a the front end bottleneck, its also why they had these very dense 4096 Shader GPU's with HBM that weren't really much faster per clock than a 2816 Shader R9 290X, Vega 64 had 45% more Shaders and a clock speed of 1.4Ghz vs the 290X at 1.05Ghz, so Vega 64 vs 290X = 45% more Shaders and 35% higher clocks, performance difference of about 50% even with HBM, diminishing returns due to a front end bottleneck.

Vega 64 on the backend was an absolute monster, but heavily bottlenecked.
 
The idea behind unified shaders is they are more flexible, it's impossible to know what kind of resources a game will require. it's not really meaningful to compare different architectures.
 
The idea behind unified shaders is they are more flexible, it's impossible to know what kind of resources a game will require. it's not really meaningful to compare different architectures.

Still fun, and somewhat relevant to do it tho....

(Not exacting but close enough)

RX 590: 2304 GCN 1.2 Shaders at 1.5Ghz 100% performance
RTX 2070: 2304 Turning Shaders at 1.9Ghz 170% performance
RX 5700XT: 2560 RDNA 1.0 Shaders at 1.9Ghz 175% performance

Clocks and Shader numbers normalized efficiency:

GCN 1.2: 100%
RDNA 1.0: 130%
Turing: 133%
 
Still looking forward Greg ?

:p

I guess no :(

Another question - is DX12 the last DirectX and what is DXR in the whole scheme? What about DX13, DX14 or at least DX12.1, DX12.2?

The idea behind unified shaders is they are more flexible, it's impossible to know what kind of resources a game will require. it's not really meaningful to compare different architectures.

Flexible but for whom, the game developers?
We got an architecture (R500) that had ~half the transistors, around two-thirds the power consumption, and still was faster in some games than the TeraScale arch with unified shaders.

Pixel Shaders are dedicated shader types, separate Logic and Vertex

Unified Shaders contain these instructions in a single unit.

The upside of Unified Shaders is a denser package with more Shaders, there is no real downside to Unified Shaders, that is so long as the front end of your architecture doesn't bottleneck the backend, which AMD's GCN architecture did, the GCN architecture had an inefficient front end which is why by the time they got to 2800 Shaders they needed a 512Bit bus or HBM with even more to 'help' eliminate a the front end bottleneck, its also why they had these very dense 4096 Shader GPU's with HBM that weren't really much faster per clock than a 2816 Shader R9 290X, Vega 64 had 45% more Shaders and a clock speed of 1.4Ghz vs the 290X at 1.05Ghz, so Vega 64 vs 290X = 45% more Shaders and 35% higher clocks, performance difference of about 50% even with HBM, diminishing returns due to a front end bottleneck.

Vega 64 on the backend was an absolute monster, but heavily bottlenecked.

Dedicated shaders are faster, no?
Maybe it would be better to have less shaders but loaded more consistently, as far as I can recall, the Vega architecture was heavily underutilised.

Also, the predecessor of Vega 64 is R9 Fury X that gives 80% the speed of the former, with 71% of the transistor count and 82% of the clock.
 
Back
Top Bottom