微软的Build大会上做过一个多显卡的演示,分别使用独显及独显+集显两种方式渲染635帧的UE引擎,其中独显渲染帧速35.9fps,支持Muti-Adapter的集显+独显平台成绩为39.7fps,小幅优势领先了独显平台。(提升不大的原因主要是独显与集显的性能差距通常很大,并行运算的时候不会有CF/SLI这样的接近2倍提升,之前Lucid的Virtu技术也是如此。)
Muti-Adapter技术另一个好处就是多卡下对GPU显存的利用率更高,以往不论是CF还是SLI技术,DX只能将其中一个显卡的显存存储数据,另一个显卡的显存就浪费了,比如GTX 980 Ti显卡双卡SLI时,其总的显存容量还是4GB,多卡互联时其GPU容量并不能翻倍。现在有了Muti-Adapter技术,它就可以合并所有的显存而利用了,显存容量可以翻倍了。(微软的WDDM 2.0模型还支持了GPU虚拟内存,猜测跟这个也有关系)
总之,微软的DX12最重要的变化就是带来了底层硬件优化,它改善了多线程效率,降低了驱动开销,这对游戏玩家和开发者来说都是大有裨益的。3D渲染技术上DX12也有更新,而在多卡互联上,DX12有可能成为黑马,如果最终对AMD、NVIDIA及Intel核显异构运算支持到位,那么游戏玩家届时就不会受CF或者SLI的限制了。
2、DX12显卡兼容列表
巧妇难为无米之炊,不过在解决米之前我们得先解决做饭用锅问题——那些显卡才能支持DX12,或者说完整支持DX12,从前面的介绍来看,支持和完整支持还是有些不同的。
对于DX12支持,我们之前听到的最多的就是AMD、NVIDIA各自宣称他们的GCN架构、Fermi及之后的架构都会支持DX12,Intel也是自第四代智能处理器、也就是Haswell开始的核显开始支持DX12。
这方面,AMD之前公布了具体的DX12兼容列表了,NVIDIA前不久也公布了自家的DX12兼容名单,不过NVIDAI还趁机“黑”了AMD一把,因为AMD的显卡目前并不完整支持DX12规范,但N家的GTX 980/980 Ti等GM2xx核心的GPU可以完整支持DX12_1。要知道在DX11时代,AMD的显卡能完整DX11.1及DX11.2规范,而NVIDIA的显卡只能支持到DX11.0,现在只能说是风水轮流转了。
AMD、NVIDIA、Intel对DX12规范的支持度:
AMD、NVIDIA、Intel三家厂商的GPU对DX12的详细支持规格可以参考上图,AMD的GCN 1.0架构(多数HD 7000及后来的马甲)只能支持兼容DX12、支持到Feature Level 11_1,HD 7790及R7 260/260X、R9 285等GCN新核心的显卡可以支持到Feature Level 12_0,但目前所有显卡都不能完整支持Feature Level 12_1功能。
AMD显卡的DX12支持列表:
NVIDIA方面,虽然Fermi及之后的显卡都可以兼容DX12,不过真要支持DX12功能还得看Maxwell架构,其中GM1xx第一代Maxwell架构的显卡可以支持到Feature Level 12_0,包括GTX 980/970/960/Titan X/980 Ti在内的第二代Maxwell架构则可以支持到Feature Level 12_1。
Intel方面,Haswell之后的核显都可以兼容DX12,但说到Feature Levei支持,Haswell及最新的Broadwell依然只能支持到Feature Level 11_1。
当然,事情也得分两面看,NVIDIA当年不能完全支持DX11.1,就说DX11.1是可选功能,实际影响不大,现在他们能完整支持DX12,就开始宣传DX12_1的好处,实际上DX12_1的3D功能也不会有什么质变,实际游戏中也难说能带来明显的体验差别,大家对这个问题还是淡定就好。