Updated on 10 July 2015: This review initially stated that Frame Rate Target Control (FRTC) and Virtual Super Resolution (VSR) would not be available on the Radeon R7 and R9 200 series cards, but AMD's latest Catalyst 15.7 WHQL driver now offers support for these features on older cards. The article has been amended to reflect this change.
Originally published on 18 June 2015:
AMD yesterday finally gave consumers what they’ve been waiting for – a new slate of graphics cards to serve as an alternative to NVIDIA’s second-generation Maxwell cards in 2015. Choice is always good for the consumer, and AMD’s 2015 offering consists of a comprehensive top-to-bottom line-up of cards for virtually every conceivable budget.
But as you probably already know by now, the R7 and R9 300 series cards are actually rebadges of existing cards. But despite being based on existing architectures like Pitcairn and Tonga, the cards will support new features like Asynchronous Shaders, Frame Rate Target Control (FRTC), and Virtual Super Resolution (VSR) that improve power consumption, efficiency and visual quality, so we’re not entirely rehashing old news.
And with AMD's Catalyst 15.7 WHQL driver update, older cards like the Radeon R7 and R9 200 series cards will also support FRTC and VSR. But while the Graphics Core Next (GCN) architecture on cards like the Radeon R9 290X supports a certain amount of Asynchronous Shader work, the 300 series cards support for DirectX 12 will enable gamers to realize the full potential of Asynchronous Shaders.
Another key thing to note is that AMD has positioned its cards which go by the R7 and R9 300 series monikers. Instead of the R9 cards comprising the higher end of the line-up, both R7 and R9 cards now round up the base of AMD’s 2015 product line-up, which has been expanded to include the Radeon R9 Fury X, Fury, and Nano.
With a US launch price of US$149 and US$199 respectively, the AMD Radeon R7 370 and Radeon R9 380 are quite a bit cheaper than their predecessors were at launch. For instance, the AMD Radeon R9 280 cost US$279 when it was announced in early 2014.
We’ll now take a look at more details on these new features in these rebadged cards before diving into the specifics with the ASUS Strix Radeon R7 370 and R9 380.
First off, the R7 and R9 300 cards will support something called Asynchronous Shaders. The core of AMD’s GCN-based GPUs comprises large, highly parallel computation engines capable of processing thousands of individual pieces of data at the same time. These are fed by one central graphics command processor and multiple asynchronous compute engines (ACE).
The command processor handles the main graphics queues while the ACEs handle compute queues, which enables the GPU to handle multiple compute tasks simultaneously. This increases GPU efficiency and boosts performance, which in turn also helps to reduce latency and deliver more consistent frame rates.
Previously, task submission was usually queued on a single stream and gaps between rendering tasks would leave part of the GPU idling, which reduced GPU efficiency as there was a time gap between processing one thread and then waiting for the next.
Asynchronous shaders further address this by scheduling compute tasks asynchronously – or during the gaps in graphics workload when the GPU is idle – with graphics rendering tasks without waiting for the current rendering work to finish. This gets a more complicated when they have to submit tasks to multiple sources, but upcoming next-generation APIs like DirectX 12 and Vulkan will help in this area because they enable multi-threaded task submission.
Asynchronous shaders thus allow tasks from multiple threads to be submitted to the GPU and processed simultaneously, essentially reducing latencies in the graphics pipeline and improving efficiency and performance.
The second feature is Frame Rate Target Control (FRTC), which will come in useful when playing games that run at very high frame rates on a monitor with a lower 60Hz refresh rate. For instance, even if the graphics card is capable of churning out 250fps, only 60 frames will get displayed every second, which means that 190 frames – and the resources that went to rendering them – have essentially gone to waste.
FRTC works by dispensing with the rendering of superfluous frames. It adjusts the GPU clock speed to deliver only the necessary frames, thus reducing heat, noise and power consumption. Furthermore, users have control over this entire process as they will be able to set a target frame rate for their games and applications.
And then there’s Virtual Super Resolution (VSR), AMD’s riposte to NVIDIA’s Dynamic Super Resolution (DSR). VSR allows users to get near-4K quality on a 1080p display by rendering the game at a higher resolution and then re-scaling it to fit the monitor. This has a similar effect to anti-aliasing, and should in theory result in higher fidelity images with smoother edges.
Finally, the new AMD cards will support the next-generation DirectX 12 API that gives game developers greater access to GPU hardware and more control over its resources.
DirectX 12 will support Multi-Threaded Command Buffer Recording that will finally allow developers to fully utilize the capabilities of modern multi-core CPUs. DirectX 11 couldn’t really break a game’s command buffer – the game’s list of things it needs to do to render a scene – into small, parallel and computationally quick blocks that can be spread over multiple cores.
DirectX 11 was also limited because of the inherent CPU overhead – the CPU spent a disproportionate amount of time on driver and API interpretations – which left less time for executing the actual game code that translates into real quality and frame rates.
DirectX 12 cuts through these limitations by overhauling the command buffer to reduce CPU overhead, distribute workloads more effectively over multiple CPU cores, and allow all CPU cores to communicate with the graphics card simultaneously.
This also goes hand in hand with the use of Asynchronous Shaders, which allows developers to implement compute jobs like dynamic global illumination and more realistic physics simulation in parallel.
In addition, developers will also find resource utilization much improved, so they will have more GPU resources on hand that can in turn be channelled to produce more visually pleasing graphics or better performance.