借助异步着色技术 DirectX 12和LiquidVR为AMD GPU带来新鲜生命力

  •   2015-04-10/18:16
  • 作者 Joel Hruska  

    DirectX 12即将随Windows 10一起推出,与此同时,多家厂商大力推动VR虚拟现实技术,并且Vulkan API已经推出。对PC游戏来说,这是一个非常有趣的时刻。AMD GCN架构推出已有三年,其内建的某些功能到现在才崭露头角,这要归功于新一代API带来的改进。

    业界快讯;AMD;DirectX 12;Liqui

    这其中关键技术是异步命令引擎(ACE),它存在于每个GCN架构GPU当中。原来的HD 7900系列每颗GPU有两个ACE,而AMD代号Hawaii 的GPU更进一步,在GPU内部集成了8个ACE。

    AMD出品的Hawaii, Kaveri, 和PS4 GPU都有8个ACE,Xbox One GPU可能只有2个ACE,但是也具备完整的ACE功能。

    业界快讯;AMD;DirectX 12;Liqui   

    和Maxwell架构GTX 900系列GPU一样,AMD GCN架构GPU在一定程度上能够异步执行。NVIDIA之前的GPU,如开普勒、GTX Titan则无法异步执行。

    什么是异步命令引擎

    AMD GCN架构当中的ACE被设计用来提供灵活性操作。下表解释了其中区别 – 和被迫安装预先确定的顺序来执行单个队列任务相反,ACE能够调度和完成不同队列的任务。这让GPU有能力来乱序执行任务 – 如果GPU知道队列当中有一个对时间敏感的操作需要10ns的计算时间,还有一个对时间不敏感的长内存拷贝,需要10万ns计算时间,那么GPU会先将这个10ns任务抓过来执行,并且完成,然后才去运行更长的任务。

    业界快讯;AMD;DirectX 12;Liqui

    异步线程 vs. 同步线程

    使用的ACE的意义是,ACE允许GPU以并行方式处理和执行多个命令流。在DirectX11当中,这种能力基本上不可能的,多个游戏开发商告诉我们,DX11从第一天起就不支持多线程,因此一直没有正确的方式来告诉图形卡,如何在同一工作量当中同时处理图形和计算。

    业界快讯;AMD;DirectX 12;Liqui

    DX11 GPU管线 vs. DX12 GPU管线

    AMD原来的GCN硬件内建2个ACE,但AMD声称,它在代号夏威夷等GPU当中增加了6个ACE,作为前瞻性计划的一部分,AMD知道这6个ACE有一天会非常有用。目前一些客观的证据表明,AMD所言不虚,即便是在DX11时代,GCN和开普勒并驾齐驱的时候,AMD GCN产品在许多GPGPU工作负载当中性能比GK104和GK110性能更加强大,特别是在虚拟货币开采方面,性能差别更加明显。借助更加强大的计算引擎,加之硬件上支持一些SHA-1功能,AMD显卡在挖矿性能上能够撕碎Nvidia硬件。

    当AMD打造Kaveri和PS4以及Xbox OneSoC的时候,前两者内建了8个ACE,Xbox One可能仅内建了2个ACE。这一举动背后的想法是,增加更多的异步计算能力,可以让程序员能够更有效地利用GPU计算能力,这样物理和某些其他类型的游戏内计算,包括虚拟现实等模拟工作,都可以在后台进行处理。

    业界快讯;AMD;DirectX 12;Liqui

    异步着色器性能模拟演示

    AMD的说法是,随着DX12(Mantle / Vulkan)推出,开发人员终于可以充分发挥这些引擎潜力,在上图中,上部是DX11的渲染管线,采用串行处理大多数任务,下方是DX12渲染管线。

    程序员是否会利用这些特定的AMD功能尚未可知,但无论是PS4,还是Xbox One都拥有全套ACE的事实表明,程序员可能会使用到这些AMD特定功能。如果开发人员已经为GCN硬件编写的代码,那么将代码移植到DX12和Windows 10上并非难事。

    业界快讯;AMD;DirectX 12;Liqui

    目前有多款PS4游戏和一款PC游戏使用异步着色器,但是这种情况将会产生变化。

    眼下,AMD只发布了关于PS4使用异步着色器的信息,但是这并不意味着Xbox One无法使用,随着DX12推出,微软正在计划为Xbox One增加功能。

    业界快讯;AMD;DirectX 12;Liqui

    AMD将ACE作为其LiquidVR平台的一大特色 - 它声称这项基本功能,将让Radeon显卡优势超过竞争对手Nvidia显卡产品。我们在做出任何结论之前,需要看到最终的硬件和驱动程序。但是该公司显卡的计算能力已经非常成熟。值得一提的是,虽然AMD这方面的优势超过开普勒,开普勒只有一个计算单元,一个图形管线,但是Nvidia的Maxwell有一个图形管线和32个计算管道, AMD GPU当中ACE最多只有8个。在使用这些特殊功能的DX12游戏上市之后,我们就可以看到双方的设计孰优孰劣。

    从最终用户的角度来看,问题显然可以归结为哪个公司在下一代DX12 API中提供更好的性能(或性价比)。现在这个问题还为时过早- 最近的3DMark 12基准测试结果显示AMD R9 290X 部分DX12性能领先Nvidia的GTX 980,而今年早些时候的测试结果正好相反。

    不过现在可以明确的是,DX12和Vulkan正在重塑3D API,推而广之,游戏开发也正在采用我们过去几年没有看到的方式进行。这些框架的新功能正在让图形硬件和技术天翻地覆,从多GPU配置到VR显示器,从4K显示器到FreeSync / G-同步技术,PC游戏产业正在经历一个激动人心的时刻。


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多