PCEVA,PC绝对领域,探寻真正的电脑知识
打印 上一主题 下一主题
开启左侧

关于ACE在虚拟现实(VR)中的关键作用

[复制链接]
跳转到指定楼层
1#
VRerse 发表于 2016-5-24 02:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
点击数:6466|回复数:16
本帖最后由 VRerse 于 2016-5-24 02:38 编辑

在最近的A/N之争中,主要的争议论点在于DX12/Vulkan带来的更接近硬件底层的API变化,导致了硬件架构更加优异的A卡取得了不少优势,反而N卡却有了一定程度的倒退,尤其是『奇点:灰烬』团队爆出来的被Nvidia公关压制的情况,更是烧了一把火。

而这个关键点,就在于AMD是硬件支持异步计算的,而NV只有AWS,名字很类似但其实并不是一回事,不过也的确引导一群N粉认为N支持异步计算。

那么,异步计算到底是什么意思呢?首先要说明的是,ACE全称异步计算引擎,是由索尼在PS4时代和AMD合作基于GCN构架的PS4处理器中所严重强调的。简要来说,就是让计算和图形异步同时进行。在渲染一帧画面时,AI/伤害计算等一个也没有拉下。这在那些即时战略游戏比如『Total War』这类title里尤其明显。


也就是说,如果NV是在提升单一任务的干活速度的话,那么AMD的这种策略就是让同时能处理的任务数量提升,就算干一件事的速度慢了点,但同时能做的事情多了,这样增加了效率,降低了延迟

而这个降低了延迟,则是对虚拟现实最重要的属性之一。

据前Valve VR组负责人,现Oculus首席科学家Michael Abrash的研究结论,如果想要用户不因为头显产生晕眩感,从VR头显感应到人的头部位置和方向发生变化,到经过电脑通过传感器处理数据让GPU渲染图形到最后刷新到人眼前的整个流程,延迟不能超过20ms

而实际上,由于目前的头戴显示设备在采用了无动态模糊低余晖OLED屏的情况下,通过90hz的刷新来抵消低余晖带来的闪烁,意味着每一帧的预算只有11.1ms。由于本来VR的运算开销就很高,GPU很容易miss到每一帧刷新前的vsync。

这时候轮到Oculus的CTO天才John Carmack出场了。如果说,核心目标是降低晕眩的话,那么画面出差错也是可以接受的。从0渲染一帧画面或许开销很高,渲染时长已经超过了预算,错过了下一帧的vsync。不过,传感器是1000hz的刷新,每一毫秒都在更新最新的头部数据,因此如果拿上一张已经渲染好的画面,依据目前传感器得到的人的当前头部位置来把上一张画面进行变形扭曲,即便它并不能精确代表你当前看到的实物,但是这个虚拟的世界是稳定的,即便在快速转头时你能看到黑边,你也知道是渲染跟不上了,而不会头晕,因为所有东西的相对位置是稳定的。这一招也被命名为时间扭曲(Timewarp)。这个概念其实很早就有,但是 Carmack 最先实践完成的。

不过,这个还是有一个局限,因为所有过程都是顺序进行的,一旦某一帧被卡住了,时间扭曲也没用,因为也得等那一帧完成啊。这时候异步引擎就派上用场了。所谓异步,就是把Timewarp这个纯计算的线程,和GPU渲染图形的线程分离开来,你该渲染图形还渲染你的,到下一帧vsync之前几毫秒timewarp线程就直接切换进来对上一帧画面进行扭曲。

而这个上下文切换(context switch)的细腻程度(granularity),就是ace带来的本质区别。有了ACE,你可以在一个drawcall之内进行切换,而nvidia的切换边界只能在drawcall之外。也就是说,如果你的一个drawcall处理的事情过多,开销过大,对于amd来说并无影响,对于nvidia则会直接造成性能下降。这也导致nvidia在他们的gameworks vr说明中提醒大家一定要把大的drawcall都分裂成小drawcall的原因。同时,nvidia的context switch还有1ms的延迟。pascal有所改进,但是硬件本身依然依靠preemption来做切换,并没有真正的并行功能。


Gameworks VR, Nathan Reed@SIGGRAPH2015

Carmack最先在GearVR上实现了Timewarp,受到广泛好评后,PC 组也准备引进这个东西。A卡由于有ACE,非常轻松。但NV是没有这个的,在经过Oculus内部各种纠结后,采用了Nvidia的比较差的方式,用有额外开销的preemption来做ATW,并很有可能还需要游戏开发者去做相应的适配。(比如分裂drawcall)

值得一提的是,NVIDIA的公关做得非常好,在2014年发布980时就已经发布了VR Direct的特性说明,但实际上项目才刚启动,而且没有和任何业界公司进行合作。当时Oculus被问起时,他们说:“NV和我们没有任何合作。”而AMD那边的合作则早开始了。在GDC2015时,Nvidia和AMD都有专门针对VR的session(Liquid VR 和 Gameworks VR),Oculus员工表示“对AMD的进展感到兴奋”,而Nvidia的进展属于“从狗屁不是到就那么回事之间”。当然,由于NVIDIA的市场份额太大,Oculus只好去寻找workaround,以技术上的妥协方式去部分性地部署ATW。

此外,对于多卡交火,在需要低延迟的情况下一般也不采取afr的方式,而是各种形态的sfr,因此对于显卡之间在不影响渲染的情况下进行数据交互,也让ACE变得重要。在2015年GDC上Valve的Advanced VR Rendering演讲中,他们提到采用了AMD的MGPU方案,帧率提升了一倍。而在同一场GDC上,NVIDIA自己的演讲中提到“有40-50%提升说明你干得很不错了”。也就是说,第三方采用了AMD的方案得到了将近一倍的提升,而NVIDIA自己说自己最多50%。





https://www.reddit.com/r/oculus/ ... ring_tricks/cntgkfd
https://developer.oculus.com/blog/asynchronous-timewarp-examined/
https://www.linkedin.com/pulse/v ... dvantage-roy-taylor
http://www.tomshardware.com/news ... nnect-vr-amd-nvidia,27729.html


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
2#
mrplplplpl 发表于 2016-5-24 08:50 | 只看该作者
学习了, 谢谢楼主
3#
飞翔的企鹅 发表于 2016-5-24 09:30 | 只看该作者
别说VR了,手持一个大法单电盯着屏幕快速移动这个延迟也会让你有晕眩感
4#
SCE-PhyreEngine 发表于 2016-5-24 11:02 | 只看该作者
“『奇点:灰烬』团队爆出来的被Nvidia公关压制”,那其实是次裸露露的威胁。。。
我在我的帖子里也说了下ACE对于VR的效率提升作用,但是没有楼主总结的详细。
目前Nvidia在公关各类VR公司。反正那些人不敢跑到我们这不老实
5#
txgy 发表于 2016-5-24 16:23 | 只看该作者
好强的技术贴,赞一个
6#
overthink 发表于 2016-5-24 16:35 | 只看该作者
16nm时代NV起点就落后了,不知道后期会不会追上。
7#
yufei_311 发表于 2016-5-24 17:02 | 只看该作者
技术贴,学习了。。。
8#
inSeek 发表于 2016-5-24 17:33 | 只看该作者
无比担心NV在感受不到竞争之后,开始吃老本...然后被超车...
9#
墙上的另一块砖 发表于 2016-5-28 13:37 | 只看该作者
哎,因为家庭、瞎忙……很久很久没有看见这样子的技术贴了!
先顶再说,虽然很多术语ATW、afr……都不认识
又见CARMARK大神!
对于显卡业界的2大服装厂,俺一直比较喜欢A记一点,但是NV比它成功得多。你就说下一代马甲吧,入门级和主流是中端Polaris 10 、入门级Polaris 11 。到了Vega,又T M反过来了!顶级Vega 11、高端Vega 10……这市场部门是什么错乱了?!
反观NV,一直就给淫务实的感觉,不少新技术不是它挑头的,但是淫家可能做的更好!而且一般来说NV的流处理器总是比ATI的少,但是效率高,性能整体领先。那个异步计算NV可能是根据市场观察根本不着急,现在的PASCAL也说完整支持了。
即使A早有了异步计算,目前也没什么优势,而且NV市场占有率71%,根本不惧
10#
SCE-PhyreEngine 发表于 2016-5-28 14:29 | 只看该作者
墙上的另一块砖 发表于 2016-5-28 13:37
哎,因为家庭、瞎忙……很久很久没有看见这样子的技术贴了!
先顶再说,虽然很多术语ATW、afr…… ...

如果nv是很务实的,nv技术领先。那么他们家的那两位硬件工程师就没必要跳槽到我们伦敦部门来。
当然amd也不是那么务实。而且amd猪一样的市场策略。。。
帕斯卡是否支持硬件异步计算也早有定论,楼主陈述的是个详细事实。
11#
墙上的另一块砖 发表于 2016-5-29 09:18 | 只看该作者

跳槽、猎头很正常

SCE-PhyreEngine 发表于 2016-5-28 14:29
如果nv是很务实的,nv技术领先。那么他们家的那两位硬件工程师就没必要跳槽到我们伦敦部门来。
当然amd也 ...

以前DEC的某大神还从INTEL跳槽到了AMD呢,技术人才甚至是科学家的职场经历有自己的考虑,未必说明公司……
负责全球伙伴及游戏开发者关系管理13年资历的Leslie Pirritano从NV到了AMD。那么AMD首席架构师Jim Keller离职呢(特斯拉聘用)?主管战略发展副总裁Bob Feldstein(搞定三大主机平台)跳槽到NV呢?

AMD这个不争气的东西从46开到24%的市场占有率,实在让人摇头。现在还好点,29.4%
而A饭最厌恶的恐怕未必是其市场部门而是媒体的捧杀党,差不多每天都能看到神马“雄起”、“Intel颤抖”“性能暴增”“AMD豪言”…………
都T M媒体说的,淫家AMD自己压根没这么扯,A记只是漂漂亮亮地展示自己典范级的PPT而已
问题是几乎极少看见标题党这样来形容NV,而且楼主也说了NV对异步计算的成功引导,这老黄的公关能力,俺给100分!
话说回来,即使NV的异步计算再打折对于消费者并不重要,性能测试说了算!

NVIDIA公司是最愿意花钱研发的,拿出33.9%的营收去做R&D(intel也就22%、高通19%)。 AMD只有10.6亿美元的研发投入(19.2% )
12#
SCE-PhyreEngine 发表于 2016-5-30 10:52 | 只看该作者
墙上的另一块砖 发表于 2016-5-29 09:18
以前DEC的某大神还从INTEL跳槽到了AMD呢,技术人才甚至是科学家的职场经历有自己的考虑,未必说明公司… ...

最愿意花钱研发的其实是索尼。ace是索尼搞出来的,gcn1.1的ace那就是抄袭索尼的。研发一线的人跳槽是找技术发展最好的地方。不在研发一线的,通常会找适合养老的地方,职位越高越这样,太正常不过了。
其实大伙都不知道amd最大的鸡贼在哪
美帝的x86指令集和他的f22一样,统治世界必不可少。amd从2013年开始就每个季度亏顺1个多亿美元非常均匀,然后前一阵x86指令集卖了出去。正常的,美帝高科技想卖给别人难上加难,美国国会不会让高科技的东西跑出去,就像f22死活不卖给别国一样。如果amd这么个亏法,前年就真倒闭了。之所以amd的x86指令集能卖出一则是amd的财报搞出来的倒闭趋势,二来拆分intel很麻烦。三来那套x86肯定不是很先进,而且完整的。
所以无论zen还是vega频繁流片就得益于x86的那份收益。
显卡走量走的最大的大头是入门级和低端。因为这两样在校园市场卖的最火。在amd第七代apu出现之前,intel锐炬6200之类大规模出现在diy市场之前入门级显卡的位置不会受到动摇。zen架构apu出现之前低端显卡的市场位置依然稳固不可动摇。由于amd要搞apu,加之amd的营销策略一直很猪,所以别指望amd会把市场占有率玩多好。


13#
FlankerWang 发表于 2016-5-30 11:35 | 只看该作者
SCE-PhyreEngine 发表于 2016-5-30 10:52
最愿意花钱研发的其实是索尼。ace是索尼搞出来的,gcn1.1的ace那就是抄袭索尼的。研发一线的人跳槽是找技 ...

主流独显转向性能级甚至更高级别的趋势已经出现
老黄去年说,独显的平均售(出)价在上涨,然而民众只愿意理解成老黄涨价


14#
SCE-PhyreEngine 发表于 2016-5-30 20:21 | 只看该作者
FlankerWang 发表于 2016-5-30 11:35
主流独显转向性能级甚至更高级别的趋势已经出现
老黄去年说,独显的平均售(出)价在上涨,然而民众只愿 ...

这个趋势变成铁定事实还需要长时间要办到,因为核显对比入门级和低端的优势目前不是很明朗。

NV那边对于国内游戏公司装机的很受欢迎的显卡是750和750Ti。因为国内大部分公司搞手游,程序策划750/750ti足矣,而且750肯定是不用外接供电的。

企业装机很注重能耗比,所以NV家的显卡必然在这块销量独享。

不过像那种办公用的文案类电脑,基本上开始偏核显卡了,i3 6300/6100之类的HD 530应付这种绰绰有余,而且TDP只有51W,整机很省电。而且配出来的机器还不占地方。

入门级显卡和低端显卡的地盘不断被蚕食是肯定的,不过,这两者消亡的过程也是很长的
15#
墙上的另一块砖 发表于 2016-6-2 22:19 | 只看该作者
SCE-PhyreEngine 发表于 2016-5-30 10:52
最愿意花钱研发的其实是索尼。ace是索尼搞出来的,gcn1.1的ace那就是抄袭索尼的。研发一线的人跳槽是找技 ...

最愿意花钱研发的其实是索尼?
你说的是比例吧?它已经不在TOP 10 了……
16#
SCE-PhyreEngine 发表于 2016-6-2 23:05 | 只看该作者
墙上的另一块砖 发表于 2016-6-2 22:19
最愿意花钱研发的其实是索尼?
你说的是比例吧?它已经不在TOP 10 了……
...

对于研发人员来说有前途+有钱途+每天愉快的工作=好地方
17#
fastone 发表于 2016-6-3 10:45 | 只看该作者
墙上的另一块砖 发表于 2016-6-2 22:19
最愿意花钱研发的其实是索尼?
你说的是比例吧?它已经不在TOP 10 了……
...

索尼最大的好处是提供的开发环境,主要在于自由度和放权这块
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部