https://www.youtube.com/watch?v=XOGIDMJThto
https://www.reddit.com/r/Amd/comments/4skgy1/async_compute_lots_of_misunderstanding_in_the/
Also good video here from Unity conference (part of which is shown in the above video): https://youtu.be/H1L4iLIU9xU
AMD has a video here as well from 2015 which talks about async compute as well as Preemption (what pascal is using): https://youtu.be/v3dUhep0rBs?t=94
^ The sources in this video come from various IHVs (AMD ofc, Sony and Microsoft) and developers. It should explain what Async Compute is all about, it certainly helped me understand it better.
We often see devs on consoles hype up Async Compute, seeing major gains for them, but you all know console hardware is very low shader count. Console API also are fully multi-threaded and so shader utilization isn't an issue.
Likewise, with Vulkan in Doom on the RX 480 and even older GCN like Tahiti 7970/280X seeing massive gains, these lower shader-count GCN would get little gains if Async Compute was only about shader utilization.
Ultimately, think of it as a Multi-Engine API, tapping the Shaders, Rasterizers and DMAs simultaneously in parallel.
https://www.reddit.com/r/Amd/comments/4skgy1/async_compute_lots_of_misunderstanding_in_the/
Also good video here from Unity conference (part of which is shown in the above video): https://youtu.be/H1L4iLIU9xU
AMD has a video here as well from 2015 which talks about async compute as well as Preemption (what pascal is using): https://youtu.be/v3dUhep0rBs?t=94