• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

Is DirectX 12 Worth the Trouble?

Joined
Dec 31, 2009
Messages
19,366 (3.71/day)
Benchmark Scores Faster than yours... I'd bet on it. :)
This type of concern will not bode well for adaptation. It also makes me worry about 'RX 4x0 cards being better in DX12 titles down the road' if there is such concern at the ROI...
 
Joined
Oct 2, 2005
Messages
3,059 (0.45/day)
Location
Baltimore MD
Processor Ryzen 5900X
Motherboard ASUS Prime X470 Pro
Cooling Arctic liquid freezer II 240
Memory 2 x 16 Gb Gskill Trident Z 3600 Mhz
Video Card(s) MSI Ventus 3060 Ti OC
Storage Samsung 960 EVO 500 Gb / 860 EVO 1 Tb
Display(s) Dell S2719DGF
Case Lian Li Lancool II Mesh
Audio Device(s) Soundblaster Z
Power Supply Corsair RM850x
Mouse Logitech G703
Keyboard Logitech G513
Software Win 11
TLDR lazy devs are lazy, its much easier to just recommend an 1080ti.
 
Joined
Jun 10, 2014
Messages
2,900 (0.81/day)
Processor AMD Ryzen 9 5900X ||| Intel Core i7-3930K
Motherboard ASUS ProArt B550-CREATOR ||| Asus P9X79 WS
Cooling Noctua NH-U14S ||| Be Quiet Pure Rock
Memory Crucial 2 x 16 GB 3200 MHz ||| Corsair 8 x 8 GB 1333 MHz
Video Card(s) MSI GTX 1060 3GB ||| MSI GTX 680 4GB
Storage Samsung 970 PRO 512 GB + 1 TB ||| Intel 545s 512 GB + 256 GB
Display(s) Asus ROG Swift PG278QR 27" ||| Eizo EV2416W 24"
Case Fractal Design Define 7 XL x 2
Audio Device(s) Cambridge Audio DacMagic Plus
Power Supply Seasonic Focus PX-850 x 2
Mouse Razer Abyssus
Keyboard CM Storm QuickFire XT
Software Ubuntu
As I've stated many times before, people will be disappointed from Direct3D 12 because they have the wrong expectations. Most of this is caused by hype of course, but the tabloid press does certainly have their share of the blame.

The core problem is that Direct3D 12 is in fact the least exciting major version in ages, it does in fact have no major changes, at least when compared to version 8, 9, 10 and 11.

So let me address the common misconceptions one by one.

0 - "Low level API"
This is touted as the largest feature that probably everyone have heard about, yet most people don't have a clue what it means.

"Low level" is at best a exaggeration, "slightly lower level" or "slightly more explicit control". Any programmer would get confused by calling this a low level API. What we are talking of here is slightly more explicit control over memory management, lower overhead operations and fewer state changes. All of this is good, but it's not what I would call a low level API, it's not like I have more features in the GPU code, more control over GPU scheduling or other means of direct control over the hardware. So it's not such a big deal really.

Lower overhead is always good, but in order for there to be a performance gain, then there needs to be some overhead to remove in the first place. API overhead consists of two parts; overhead in the driver (will be addressed in (1)) and overhead in the game engine interfacing with the driver. Whether CPU overhead becomes a major factor is depending on how the game engine works. A very efficient engine using the API efficiently will have low overhead, so upgrading it to Direct3D 12 (or Vulkan) will yield minimal gains. Any game engine which is struggling with CPU overhead will guaranteed have much more overhead inside the game engine itself than the API anyway, so the only solution is to rewrite it properly. A clear symptom of this misconseption is all the people cheering for being able to use more API calls.

There are two ways to utilize a new API in a game engine:
- Create a completely separate and optimized render path.
- Create a wrapper to translate the new API into the old.
Guess which option "all" games so far is using? (The last one)
The whole point of a low level API is gone when you wrap it in an abstraction to make it behave like the old thing. Game engines have to be built from scratch specifically for the new API to have any gain at all from it's "lower level" features. People have already forgot disasters from the past like Crysis, a Direct3D 9 game with Direct3D 10 slapped on top, and why did it perform worse on a better API do you think?

1 - AMD
There is also the misconception that AMD is "better" suited for Direct3D 12, which is caused by a couple factors. First of all, more games are designed for (AMD based) consoles, which means that a number of games will tilt a few percent extra in favor of AMD.

Do you remember I said that the API overhead improvements consisted of two parts? Well the largest one is in the driver itself. Nvidia chose to bring as much as possible to all APIs(1)(2), while AMD retained it for Direct3D 12 to show a larger relative gain. So Nvidia chose to give all games a small boost, while AMD wanted a PR advantage instead.

When it comes to scalability in unbiased games, they scale more or less the same.

2 - Multi-GPU
Since Dirct3D 12 is able to send queues to GPUs of unmatched vendor and performance, many people and journalists assumed this meant multi-GPU scalability across everything. This is very far from the truth, as different GPUs will have to be limited to separate workloads, since transfer of data between GPUs is limited to a few MB per frame to minimize latency and stutter. This means you can offload a separate task like physics/particle simulations to a different GPU, and then just transfer a state back, but you can't split a frame in two and render two halves with a dynamic scene.

3 - Async compute
Async compute is also commonly misunderstood. The purpose of the feature is to utilize idle GPU resources for other workloads to improve efficiency. E.g. while rendering, you can also load some textures and encode some video, since this uses different GPU resources.

If you compare Fury X vs. 980 Ti you'll see that Nvidia beats AMD even though AMD has ~52% more theoretical performance. Yet, when applying async compute to some games AMD get a much higher relative gain. Fans always touts this as superior performance for AMD, but fails to realize that AMD has a GPU with >1/3 of the cores idling, which makes a greater potential to do other tasks simultaneously. So it's in fact the inefficiency of Fury wich gives a greater potential here, not the brilliance. It's also important to note that in order to achieve such gains each game has to be fine tuned to the GPUs, and optimizing a game for an inferior GPU architecture is always wrong. As AMD's architectures become better, we will see diminishing returns from this kind of optimization. Remember, the point of async compute is not to do similar tasks on inefficient GPUs, but to do different types of tasks.

Conclusion

So is Direct 3D 12 worth the trouble?
If you're building it from scratch and not adding any abstractions or bloat then yes!
Or even better, try Vulkan instead.

-----

The idea behind new-generation "close-to-the-metal" APIs such as DirectX 12 and Vulkan, has been to make graphics drivers as less relevant to the rendering pipeline as possible.
That didn't make any sense at all, please try again. None of the new APIs make the drivers less relevant.

No, so far Direct3D 12, NOT DirectX 12 (why do people are still calling that?!) , has almost no relevance for existing games.
When people don't make that distinction, it's a sign that they don't know the difference, and when that's the case they clearly don't know anything about the subject at hand.

Unless a game is build from ground up to use D3D 12, no significant performance gains can be seen compared with D3D 11.
If only people understood this at least. See my (0).

I think the main focus should be on building game engines natively on D3D12 instead of D3D9 or 10/11. Unless you have an Unreal Engine 5, for example, or Frostbite 3 build with that in mind, all the games are going to suck on D3D12.
Yes. If you have a game in the works already, just continue with the old API. If you are starting from scratch, then go with the latest exclusively.

That's not how things work. For an engine, there is no "native" thing. You're confusing game engine and renderer (render path). They are not the same thing. But they do work together to output image you see in the end. There may be things that explicitly depend on game engine support and are hard to do later, but majority isn't.
Calling it "native" might be a stretch, but it's about adding what's called a wrapper or abstraction layer. To a large extent you can make two "similar" things behave like the same at a significant overhead cost. Any coder will understand how an abstraction works.

Let's say you're building a game and you want to target Direct3D 9 and 11, or Direct3D 11 and OpenGL, etc.. You can then create completely separate render paths for each API (basically the whole renderer), or you create an abstraction layer. So when you build a "common API" that hides all the specifics of each API, and then create a single pipeline using the abstraction. Not only is this wasting a lot of CPU cycles on pure overhead, you'll also get the "worst of every API". Because when you break down the rendering into generic API calls, this has to be compatible with the least efficient API, which means that the rendering will not translate into an optimal queue for each API. This will result in a "naive" queue of API calls, far from optimal.
 
Joined
Feb 8, 2012
Messages
3,013 (0.68/day)
Location
Zagreb, Croatia
System Name Windows 10 64-bit Core i7 6700
Processor Intel Core i7 6700
Motherboard Asus Z170M-PLUS
Cooling Corsair AIO
Memory 2 x 8 GB Kingston DDR4 2666
Video Card(s) Gigabyte NVIDIA GeForce GTX 1060 6GB
Storage Western Digital Caviar Blue 1 TB, Seagate Baracuda 1 TB
Display(s) Dell P2414H
Case Corsair Carbide Air 540
Audio Device(s) Realtek HD Audio
Power Supply Corsair TX v2 650W
Mouse Steelseries Sensei
Keyboard CM Storm Quickfire Pro, Cherry MX Reds
Software MS Windows 10 Pro 64-bit
I'm sure devs will have no problem using dx12 or vulkan wen it's as simple as setting a DefaultRenderer option in the engine config :rolleyes:
Given choice, is there any downside in choosing supporting Vulkan along with DX12? I can't think of one, only advantages because of the bigger reach.
If you are an engine developer and you are implementing dx12 renderer, might as well do the vulkan renderer too while your head is already swimming in low level gpu arch specifics.
Slowly but surely vulkan render path is becoming as common in major engines as dx12 ... Epic for example, I believe you can use vulkan renderer directly in unreal editor now ... still experimental though

It could be bright future for vulkan ... (puts on shades) ... when it erupts ... YEAAAHH
 
Last edited:
Joined
Oct 2, 2004
Messages
13,791 (1.93/day)
Well, using abstract layers kinda defeats the use of metal API, doesn't it? I mean, why bother going closer to the metal and then wrapping all of it into software layer again. Unless doing so still presents less of a drag than doing D3D11 and optimizing it to hell specifically.
 
Joined
Jun 10, 2014
Messages
2,900 (0.81/day)
Processor AMD Ryzen 9 5900X ||| Intel Core i7-3930K
Motherboard ASUS ProArt B550-CREATOR ||| Asus P9X79 WS
Cooling Noctua NH-U14S ||| Be Quiet Pure Rock
Memory Crucial 2 x 16 GB 3200 MHz ||| Corsair 8 x 8 GB 1333 MHz
Video Card(s) MSI GTX 1060 3GB ||| MSI GTX 680 4GB
Storage Samsung 970 PRO 512 GB + 1 TB ||| Intel 545s 512 GB + 256 GB
Display(s) Asus ROG Swift PG278QR 27" ||| Eizo EV2416W 24"
Case Fractal Design Define 7 XL x 2
Audio Device(s) Cambridge Audio DacMagic Plus
Power Supply Seasonic Focus PX-850 x 2
Mouse Razer Abyssus
Keyboard CM Storm QuickFire XT
Software Ubuntu
Well, using abstract layers kinda defeats the use of metal API, doesn't it? I mean, why bother going closer to the metal and then wrapping all of it into software layer again. Unless doing so still presents less of a drag than doing D3D11 and optimizing it to hell specifically.
Exactly.
 
Joined
Apr 19, 2011
Messages
2,198 (0.46/day)
Location
So. Cal.
I think the main focus should be on building game engines natively on D3D12 instead of D3D9 or 10/11.
Exactly! the first group of developers that stops wanking, and trying to patch Engines designs from 2009 and older and start from scratch will be rewarded.

Looking to drive performance "expanding super playable game to larger audience" as RejZoR stated, the faster all such technology will show it true merits. Once a group really makes complete use of all the various technologies with this then the floodgate will have be opened and others will need to follow or flounder. Many games and gaming houses have stayed in a stagnant place looking to maximize profits believing if they tout visual fidelity, although only delivering bullshit eye candy that eats resources as their sponsoring Over-Lord wants them to enriches their bottom line.
 
Joined
Feb 8, 2012
Messages
3,013 (0.68/day)
Location
Zagreb, Croatia
System Name Windows 10 64-bit Core i7 6700
Processor Intel Core i7 6700
Motherboard Asus Z170M-PLUS
Cooling Corsair AIO
Memory 2 x 8 GB Kingston DDR4 2666
Video Card(s) Gigabyte NVIDIA GeForce GTX 1060 6GB
Storage Western Digital Caviar Blue 1 TB, Seagate Baracuda 1 TB
Display(s) Dell P2414H
Case Corsair Carbide Air 540
Audio Device(s) Realtek HD Audio
Power Supply Corsair TX v2 650W
Mouse Steelseries Sensei
Keyboard CM Storm Quickfire Pro, Cherry MX Reds
Software MS Windows 10 Pro 64-bit
Well, using abstract layers kinda defeats the use of metal API, doesn't it? I mean, why bother going closer to the metal and then wrapping all of it into software layer again. Unless doing so still presents less of a drag than doing D3D11 and optimizing it to hell specifically.
Well, can't have only one layer (graphics api library), must have one above "metal", for example there is one single Unreal Engine so right there it is that common software layer above metal API ... not only it exists to keep devs from going insane, but the benefit here is that Tim Sweeney can optimize UE as a whole when using vulkan code path - specific optimizations for the way shadows are drawn in UE, the way LOD is handled in UE, reflections, draw call batching, render threads etc. all tweaked for vulkan - so the devs don't think about calls to vulkan api, rather about using UE features.
Essentially number of layers now with dx12/vulkan compared to before stayed the same ... only graphics api layer got much thinner and both latency and throughput optimized
So Epic and Dice are expected to do the hard part (close to the metal part), only they have been busy with dx12.
 
Last edited:

bug

Joined
May 22, 2015
Messages
13,222 (4.06/day)
Processor Intel i5-12600k
Motherboard Asus H670 TUF
Cooling Arctic Freezer 34
Memory 2x16GB DDR4 3600 G.Skill Ripjaws V
Video Card(s) EVGA GTX 1060 SC
Storage 500GB Samsung 970 EVO, 500GB Samsung 850 EVO, 1TB Crucial MX300 and 2TB Crucial MX500
Display(s) Dell U3219Q + HP ZR24w
Case Raijintek Thetis
Audio Device(s) Audioquest Dragonfly Red :D
Power Supply Seasonic 620W M12
Mouse Logitech G502 Proteus Core
Keyboard G.Skill KM780R
Software Arch Linux + Win10
Well, can't have only one layer (graphics api library), must have one above "metal", for example there is one single Unreal Engine so right there it is that common software layer above metal API ... not only it exists to keep devs from going insane, but the benefit here is that Tim Sweeney can optimize UE as a whole when using vulkan code path - specific optimizations for the way shadows are drawn in UE, the way LOD is handled in UE, reflections, draw call batching, render threads etc. all tweaked for vulkan - so the devs don't think about calls to vulkan api, rather about using UE features.
Essentially number of layers now with dx12/vulkan compared to before stayed the same ... only graphics api layer got much thinner and both latency and throughput optimized
So Epic and Dice are expected to do the hard part (close to the metal part), only they have been busy with dx12.
You've got that wrong (in a sense).
Yes, the number of layers has remained the same. The thing is, some of the things that the drivers was optimizing (per title) behind closed doors, is now exposed to developers. When you put an engine on top of an API (doesn't matter which API), you have two options. First is to act as a facade and present to the user a simplified view of the underlying API and sacrificing flexibility in the process. Second, you expose the maximum level of features, but then the end user gets to deal with all the flexibility plus your engine's API. I wouldn't want to be on the spot to have to choose the right approach :D
 
Joined
Jul 9, 2015
Messages
3,413 (1.06/day)
System Name M3401 notebook
Processor 5600H
Motherboard NA
Memory 16GB
Video Card(s) 3050
Storage 500GB SSD
Display(s) 14" OLED screen of the laptop
Software Windows 10
Benchmark Scores 3050 scores good 15-20% lower than average, despite ASUS's claims that it has uber cooling.
If you compare Fury X vs. 980 Ti you'll see that Nvidia beats AMD even though AMD has ~52% more theoretical performance.

Oh, come on.
Stock Fury X beats stock 980 Ti at 1440p and higher from, what, release date?

And for 1000s time, tflops are just one of the things cards do, not the only measure.
 

Mussels

Freshwater Moderator
Staff member
Joined
Oct 6, 2004
Messages
58,413 (8.19/day)
Location
Oystralia
System Name Rainbow Sparkles (Power efficient, <350W gaming load)
Processor Ryzen R7 5800x3D (Undervolted, 4.45GHz all core)
Motherboard Asus x570-F (BIOS Modded)
Cooling Alphacool Apex UV - Alphacool Eisblock XPX Aurora + EK Quantum ARGB 3090 w/ active backplate
Memory 2x32GB DDR4 3600 Corsair Vengeance RGB @3866 C18-22-22-22-42 TRFC704 (1.4V Hynix MJR - SoC 1.15V)
Video Card(s) Galax RTX 3090 SG 24GB: Underclocked to 1700Mhz 0.750v (375W down to 250W))
Storage 2TB WD SN850 NVME + 1TB Sasmsung 970 Pro NVME + 1TB Intel 6000P NVME USB 3.2
Display(s) Phillips 32 32M1N5800A (4k144), LG 32" (4K60) | Gigabyte G32QC (2k165) | Phillips 328m6fjrmb (2K144)
Case Fractal Design R6
Audio Device(s) Logitech G560 | Corsair Void pro RGB |Blue Yeti mic
Power Supply Fractal Ion+ 2 860W (Platinum) (This thing is God-tier. Silent and TINY)
Mouse Logitech G Pro wireless + Steelseries Prisma XL
Keyboard Razer Huntsman TE ( Sexy white keycaps)
VR HMD Oculus Rift S + Quest 2
Software Windows 11 pro x64 (Yes, it's genuinely a good OS) OpenRGB - ditch the branded bloatware!
Benchmark Scores Nyooom.
Deus ex ran at 55-60FPS for me in DX12, and a mere 30-40 in DX11.

DX12 was the difference between playable and unplayable, at the settings i used at 4K.
 

FordGT90Concept

"I go fast!1!11!1!"
Joined
Oct 13, 2008
Messages
26,259 (4.63/day)
Location
IA, USA
System Name BY-2021
Processor AMD Ryzen 7 5800X (65w eco profile)
Motherboard MSI B550 Gaming Plus
Cooling Scythe Mugen (rev 5)
Memory 2 x Kingston HyperX DDR4-3200 32 GiB
Video Card(s) AMD Radeon RX 7900 XT
Storage Samsung 980 Pro, Seagate Exos X20 TB 7200 RPM
Display(s) Nixeus NX-EDG274K (3840x2160@144 DP) + Samsung SyncMaster 906BW (1440x900@60 HDMI-DVI)
Case Coolermaster HAF 932 w/ USB 3.0 5.25" bay + USB 3.2 (A+C) 3.5" bay
Audio Device(s) Realtek ALC1150, Micca OriGen+
Power Supply Enermax Platimax 850w
Mouse Nixeus REVEL-X
Keyboard Tesoro Excalibur
Software Windows 10 Home 64-bit
Benchmark Scores Faster than the tortoise; slower than the hare.
D3D12/Vulkan is fantastic for gamers but trouble for developers. Adoption rate of big name engines for those technologies have been slow (e.g. UE4, Unity 5, and so on). They are closer to the metal which makes developing for them more complicated. OpenGL and D3D11 did things for developers that now the developers have to take charge of.

So it's in fact the inefficiency of Fury wich gives a greater potential here, not the brilliance.
I'd caution that the problem here is that games are predominantly optimized for NVIDIA and not AMD. When games encounter a huge processor like Fiji, they don't change their workload to saturate it (which usually would mean upping the visuals). We see Fiji shine when the resolution rises. I'd argue that Fiji wins from a detail perspective that isn't shown in framerate (can increase visuals with a significantly smaller dent to frame rate).
 
Last edited:
Joined
Apr 30, 2012
Messages
3,881 (0.89/day)
 
Joined
Nov 4, 2005
Messages
11,683 (1.73/day)
System Name Compy 386
Processor 7800X3D
Motherboard Asus
Cooling Air for now.....
Memory 64 GB DDR5 6400Mhz
Video Card(s) 7900XTX 310 Merc
Storage Samsung 990 2TB, 2 SP 2TB SSDs and over 10TB spinning
Display(s) 56" Samsung 4K HDR
Audio Device(s) ATI HDMI
Mouse Logitech MX518
Keyboard Razer
Software A lot.
Benchmark Scores Its fast. Enough.
Async compute is mostly developer side software to do what Nvidia has hardware patents on in their command queue/dispatch engine.
 
Joined
Feb 8, 2012
Messages
3,013 (0.68/day)
Location
Zagreb, Croatia
System Name Windows 10 64-bit Core i7 6700
Processor Intel Core i7 6700
Motherboard Asus Z170M-PLUS
Cooling Corsair AIO
Memory 2 x 8 GB Kingston DDR4 2666
Video Card(s) Gigabyte NVIDIA GeForce GTX 1060 6GB
Storage Western Digital Caviar Blue 1 TB, Seagate Baracuda 1 TB
Display(s) Dell P2414H
Case Corsair Carbide Air 540
Audio Device(s) Realtek HD Audio
Power Supply Corsair TX v2 650W
Mouse Steelseries Sensei
Keyboard CM Storm Quickfire Pro, Cherry MX Reds
Software MS Windows 10 Pro 64-bit
When you put an engine on top of an API (doesn't matter which API), you have two options. First is to act as a facade and present to the user a simplified view of the underlying API and sacrificing flexibility in the process. Second, you expose the maximum level of features, but then the end user gets to deal with all the flexibility plus your engine's API.
In this context you are describing some graphics library not an engine (sort of, if we stretch the meaning of "simplified view") and what's with futility of wrapping already exposed public underlying api methods? ...
... sigh
Graphics engine is so much more and exposes to users/devs highly tunable pre-made systems along with higher api on top of underlying api (engine libs calling underlying api methods).
What I'm saying game devs that use UE never need to think about vulkan api methods, I mean have you seen vulkan api cheat sheet?
https://www.khronos.org/files/vulkan10-reference-guide.pdf
That's the gpu command pipeline level with fences, sync and cache control, etc. ... however you'd definitely need it if you're rolling your own engine
In the case of the vulkan your first approach would produce vulkan graphics utility library, and second approach would do the same and aditionally produce vulkan wrapper
 
Joined
Dec 6, 2016
Messages
152 (0.06/day)
System Name The cube
Processor AMD Ryzen 5700g
Motherboard Gigabyte B550M Aorus Elite
Cooling Thermalright ARO-M14
Memory 16GB Corsair Vengeance LPX 3800mhz
Video Card(s) Powercolor Radeon RX 6900XT Red Devil
Storage Kingston 1TB NV2| 2x 1TB 2.5" Hitachi 7200rpm | 2TB 2.5" Toshiba USB 3.0
Display(s) Samsung Odyssey G5 32" + LG 24MP59G 24"
Case Chieftec CI-02B-OP
Audio Device(s) Creative X-Fi Extreme Audio PCI-E (SB1040)
Power Supply Corsair HX1200
Mouse Razer Basilisk X Hyperspeed
Keyboard Razer Ornata Chroma
Software Win10 x64 PRO
Benchmark Scores Mobile: Asus Strix Advantage G713QY | Ryzen 7 5900HX | 16GB Micron 3200MHz CL21 | RX 6800M 12GB |
No, so far Direct3D 12, NOT DirectX 12 (why do people are still calling that?!) , has almost no relevance for existing games.
Unless a game is build from ground up to use D3D 12, no significant performance gains can be seen compared with D3D 11.

Besides, so far, Vulkan seems a more mature and better API, and personally I am fully supporting it, even only for the fact that is multi-platform, or can be ported to any platform, compared to DirectX(D3D) 12 which is Windows 10 only (pff)

....no. You my friend, like me are probably an nvidia card owner, and probably have a decently specked machine - if so, then there is indeed little to no performance gain from DX12. My GTX 1070 gets almost the same exact framerate in DX11 as it does in DX12 in Rise of the Tomb Raider, and gets a measly 5-6% boost in Doom using the Vulkan API. Neither of these games supported D3D 12 or Vulkan at launch, but got support for it later.

On the AMD side, the story differs. The cheap RX 470 I got for my guest gaming PC sees massive gains in both games - especially in RotTR, where the game is very enjoyable at Ultra settings on DX12 - including a little AA, while being completely unplayable (for me) at the same setting in D3D 11 (stuttering, huge framerate spikes). Doom gets a comfy 60-70 fps @ 1080p / ultra in D3D 11, but does 90-120 fps in Vulkan (witch puts it close to my GTX 1070 / D3D 11).

If devs ported last-year's AAA titles to D3D 12 / Vulkan, you'd see massive increases in performance on older / lower spec systems, witch is what most consumers want, and what game devs SHOULD want, because their game could reach a broader audience.

NOTE: the machine in question uses an old Phenom II X6 1090T overclocked to 3.6GHz with 4GHz boost - the old CPU might be the main reason for these huge performance increases. The motherboard is a modern MSI AM3+ AMD 970 chipset board and the machine uses 2133MHz CL11 DDR3 running at 1866 CL9.

Oh, come on.
Stock Fury X beats stock 980 Ti at 1440p and higher from, what, release date?

And for 1000s time, tflops are just one of the things cards do, not the only measure.

^ This ^

In fact the Fury X can match and (rarely) outperform the 1070 in some games (it smashes the 1070 in Doom / Vulkan) but only with the latest drivers - try it with launch date drivers and it will disappoint. It's seen quite a bit of a performance increase since launch - BUT (and it's a fat one) - it's a very hungry card. In full load it will drink a lot of power compared to the 1070. Heat-wise both are about the same (my 1070 easily gets to 80 something C when boosting to 1911MHz) with the Fury X being slightly hotter. People have been kind of ignoring this card, but it can compete with the 1070 in most titles, especially newer DX12 / Vukan games - good buy if your machine has a good PSU and if you can find it cheaper then the 1070.
 
Last edited:
Joined
Jul 27, 2015
Messages
9 (0.00/day)
Location
U.K.
So who is this speaker?

To date Nvidia have been the ones who've held back the A synchronous uptake. And now we have someone trying to steer developers away from using it. So at face value I'd say someone with links to Nvidia. Once Nvidia's next architecture (the one we are told is going to be more like GCN and have better support for A-sync ect) releases this will all change and they'll suddenly be pushing it because it'll help them persuade all the Maxwell and Pascal users to move on to the new range. They've been abusing their market controlling position for some time now.
 

W1zzard

Administrator
Staff member
Joined
May 14, 2004
Messages
27,037 (3.71/day)
Processor Ryzen 7 5700X
Memory 48 GB
Video Card(s) RTX 4080
Storage 2x HDD RAID 1, 3x M.2 NVMe
Display(s) 30" 2560x1600 + 19" 1280x1024
Software Windows 10 64-bit

FordGT90Concept

"I go fast!1!11!1!"
Joined
Oct 13, 2008
Messages
26,259 (4.63/day)
Location
IA, USA
System Name BY-2021
Processor AMD Ryzen 7 5800X (65w eco profile)
Motherboard MSI B550 Gaming Plus
Cooling Scythe Mugen (rev 5)
Memory 2 x Kingston HyperX DDR4-3200 32 GiB
Video Card(s) AMD Radeon RX 7900 XT
Storage Samsung 980 Pro, Seagate Exos X20 TB 7200 RPM
Display(s) Nixeus NX-EDG274K (3840x2160@144 DP) + Samsung SyncMaster 906BW (1440x900@60 HDMI-DVI)
Case Coolermaster HAF 932 w/ USB 3.0 5.25" bay + USB 3.2 (A+C) 3.5" bay
Audio Device(s) Realtek ALC1150, Micca OriGen+
Power Supply Enermax Platimax 850w
Mouse Nixeus REVEL-X
Keyboard Tesoro Excalibur
Software Windows 10 Home 64-bit
Benchmark Scores Faster than the tortoise; slower than the hare.
Joined
Mar 27, 2017
Messages
6 (0.00/day)
No, so far Direct3D 12, NOT DirectX 12 (why do people are still calling that?!) , has almost no relevance for existing games.
Unless a game is build from ground up to use D3D 12, no significant performance gains can be seen compared with D3D 11.

Besides, so far, Vulkan seems a more mature and better API, and personally I am fully supporting it, even only for the fact that is multi-platform, or can be ported to any platform, compared to DirectX(D3D) 12 which is Windows 10 only (pff)

they are calling it DirectX 12 because that is its name and Direct3D 12 is but a part of DirectX 12

you lost me at "and how they're yet to see the kind of console-rivaling performance" who wrote this? does he/she have anything to do with computers? PC's dont rival console performance.. they beat it to death without a sweat since ever....
 
Last edited by a moderator:
Joined
Sep 17, 2014
Messages
20,917 (5.97/day)
Location
The Washing Machine
Processor i7 8700k 4.6Ghz @ 1.24V
Motherboard AsRock Fatal1ty K6 Z370
Cooling beQuiet! Dark Rock Pro 3
Memory 16GB Corsair Vengeance LPX 3200/C16
Video Card(s) ASRock RX7900XT Phantom Gaming
Storage Samsung 850 EVO 1TB + Samsung 830 256GB + Crucial BX100 250GB + Toshiba 1TB HDD
Display(s) Gigabyte G34QWC (3440x1440)
Case Fractal Design Define R5
Audio Device(s) Harman Kardon AVR137 + 2.1
Power Supply EVGA Supernova G2 750W
Mouse XTRFY M42
Keyboard Lenovo Thinkpad Trackpoint II
Software W10 x64
You've got that wrong (in a sense).
Yes, the number of layers has remained the same. The thing is, some of the things that the drivers was optimizing (per title) behind closed doors, is now exposed to developers. When you put an engine on top of an API (doesn't matter which API), you have two options. First is to act as a facade and present to the user a simplified view of the underlying API and sacrificing flexibility in the process. Second, you expose the maximum level of features, but then the end user gets to deal with all the flexibility plus your engine's API. I wouldn't want to be on the spot to have to choose the right approach :D

I feel that the right approach depends 100% on the application you're building. Some games do fine with DX11 and will never see any benefit being developed on 12. In a perfect world, DX12 is utilized to create a more interesting game, most notably through the increased headroom for things like draw calls - or to unlock a performance level for lesser CPUs through better threading.
 
Last edited:

Aquinus

Resident Wat-man
Joined
Jan 28, 2012
Messages
13,147 (2.94/day)
Location
Concord, NH, USA
System Name Apollo
Processor Intel Core i9 9880H
Motherboard Some proprietary Apple thing.
Memory 64GB DDR4-2667
Video Card(s) AMD Radeon Pro 5600M, 8GB HBM2
Storage 1TB Apple NVMe, 4TB External
Display(s) Laptop @ 3072x1920 + 2x LG 5k Ultrafine TB3 displays
Case MacBook Pro (16", 2019)
Audio Device(s) AirPods Pro, Sennheiser HD 380s w/ FIIO Alpen 2, or Logitech 2.1 Speakers
Power Supply 96w Power Adapter
Mouse Logitech MX Master 3
Keyboard Logitech G915, GL Clicky
Software MacOS 12.1
No they f**king aren't. You game dev moppets do that with idiotic design decisions. Instead of leaving the 30% gain to the user in terms of higher framerate, expanding super playable game to larger audience, you add some bullshit eye candy that consumes 40% of the gain with maybe 1% added visual fidelity.
Then maybe you should show them how it's done but, oh wait, you would probably get canned because devs usually don't have latitude to make these decisions on their own and that someone higher-up determined that the cost was worth it. When you are assigned a feature, you build it. If you don't, you lose your job. So instead of bitching, how about you learn a little bit about how the software industry works instead of bashing the developers. :slap:

A lot of you seem to have very strong opinions on development. I wonder if any of you actually are software engineers in your day job...
 
Joined
Oct 2, 2004
Messages
13,791 (1.93/day)
@Aquinus
"game dev" means Game Developer aka entire studio. This includes everyone from tie wearing suites down to code monkeys. I don't care from who the order comes, it's dumb and retarded. And clearly from someone with a tie who doesn't even know what the F he's doing. Making game more accessible performance wise means you'll expand the potential sales to everyone, not just those with ridiculously high end systems. +PROFIT. But whatever, what do I know, I'm just a nobody...
 
Top