上周日的直播中,我们对PS5 GPU的架构选择,以及PS5 GPU不支持DXR,这两个时下很多“玩家”关心的热点问题做了一些个人解释。
直播完后,周日晚上到周一,仍然有一些人追问这两个问题,追问的关键点集中在“RDNA2架构是AMD和微软联合开发的,所以只能XSX用,索尼用不上”,另外还有人仍不理解API和硬件的关系,所以今天再在这个帖子里补充一下。
先说“RDNA2架构是AMD和微软联合开发”这个事。先说结论,联合开发或许不假,但和“只能XSX用,索尼用不上”根本不成为因果。
其实如果稍微了解一下过去二十年的GPU发展史,就应该知道在十几二十年前,那个竞争异常激烈的仙古纪元,这种“联合”属于基操。
举个简单的例子,NVIDIA Geforce FX5800和ATI Radeon 9700Pro那一代,想必一些老友仍记忆犹新,那是ATI对NVIDIA有着压倒性优势的、最风光的一段日子。而形成这种局面的直接原因,就是ATI在设计9700Pro的时候,和微软爸爸进行了充分合作交流,GPU的各项技术特性完全遵循全新一代DX9.0 API的规范。
反观NVIDIA,可能是之前市场上的成功使其过于自信,高估了当时自己的影响力,FX5800并没有完全遵循DX9.0的规范,将其对浮点数计算的支持设定在了16bit/32bit,完美避开了DX9.0要求的24bit。这就导致其在DX9.0游戏中,要么将24bit浮点数升格到32bit计算,浪费一部分性能,要么降格到16bit计算,损失一部分精度。
此外,FX5800的渲染流水线也被设计成了4*2的架构,在渲染DX9.0游戏时,远不如9700Pro的8*1流水线灵活高效。
设计上的错误,不仅浪费了大量晶体管,还迫使FX5800必须跑到更高频率以求弥补性能损失,这也导致FX5800的功耗发热爆炸,被迫用上了2003年世所罕见的“双槽”“纯铜”“涡轮”吹风机。
然而戏剧性的是,接下来的Geforce 6800Ultra和Radeon X800XT,则完全是FX5800和9700Pro互换了角色。在FX5800上吃了暴亏的NVIDIA,将旧架构彻底推倒,洗心革面紧抱微软大腿,设计出了全新的6800Ultra,完美贴合爸爸家最新DX9.0c API的一切要求。
而9700Pro的成功也使ATI飘成了之前NVIDIA的样子,X800XT只是在9700Pro的基础上扩充流水线规模,对爸爸的新技术要求充耳不闻,认为支持到DX9.0b就够了。结果……可想而知。
可见,图形芯片设计公司在研发新一代产品时,“听微软的话”是格外重要甚至关乎生死的戒条,这次AMD联合微软搞出RDNA2也是同样的道理。“RDNA2架构是AMD和微软联合开发”不假,但其目的并不是为了让新产品“只能XSX用,索尼用不上”,而是为了在Win PC的图形市场上牢牢占据主动。
再说说PS5不支持DXR,直播中我说这是理所当然的,因为索尼从来都是用自己的API,支持其他平台的API根本毫无意义。可能有部分人还是不明白硬件和API的关系,甚至认为不支持DXR就等于不是RDNA2,所以这里我再补充解释一下。
所谓API(Application Programming Interface,应用程序接口),其实只是一些预设的函数,其功能是沟通软件代码和硬件底层,是软件命令硬件干活儿的工具,或者也可以理解成翻译。
就拿DX12和DXR来说,DirectX并不是一个单一的图形API,而是一堆API的集合,包括Direct 3D、Direct Draw、Direct Input、Direct Sound等十多个组件,DXR(DirectX Raytracing)就是在DX12时期新加入的一个组件。
这些不同的组件,有命令硬件画点线面的,有命令硬件出声音的,有命令硬件计算光追的,合在一起才能理解为“命令硬件跑游戏的”。
但是,前面说了,API只是软件命令硬件干活儿的工具,DX12,或者具体到DXR,作为这个工具来说,既不是唯一解(起码在PC上还有个和DX12平起平坐的Vulkan,更别提非PC平台的),也谈不上不是最优解。作为工具,只要能干好沟通软硬件这份工作,就是好工具,完全不用管它姓啥叫啥,谁人门第。
再换个比方,索尼和微软的硬件就好比麦当劳和肯德基,你有麦辣鸡腿、麦辣鸡翅、可口可乐,他有香辣鸡腿、香辣鸡翅、百世可乐,都是一样的玩意儿,叫法不同而已。你要去麦当劳问:你资瓷不资瓷圣代啊?那肯定是不资瓷的,这辈子也不可能资瓷的。但你说麦当劳有没有这东西呢?有啊,不就是新地嘛……
最后不得不说的是,大家都别忘了,微软的DX12 API也都是在AMD Mantle API的基础上偷天换日而来的,Vulkan更是嫡系,索尼自己的这套API也持续发展了不只一年两年了,替AMD+索尼的组合操心API的支持,真是杞人忧天了……
直播完后,周日晚上到周一,仍然有一些人追问这两个问题,追问的关键点集中在“RDNA2架构是AMD和微软联合开发的,所以只能XSX用,索尼用不上”,另外还有人仍不理解API和硬件的关系,所以今天再在这个帖子里补充一下。
先说“RDNA2架构是AMD和微软联合开发”这个事。先说结论,联合开发或许不假,但和“只能XSX用,索尼用不上”根本不成为因果。
其实如果稍微了解一下过去二十年的GPU发展史,就应该知道在十几二十年前,那个竞争异常激烈的仙古纪元,这种“联合”属于基操。
举个简单的例子,NVIDIA Geforce FX5800和ATI Radeon 9700Pro那一代,想必一些老友仍记忆犹新,那是ATI对NVIDIA有着压倒性优势的、最风光的一段日子。而形成这种局面的直接原因,就是ATI在设计9700Pro的时候,和微软爸爸进行了充分合作交流,GPU的各项技术特性完全遵循全新一代DX9.0 API的规范。
反观NVIDIA,可能是之前市场上的成功使其过于自信,高估了当时自己的影响力,FX5800并没有完全遵循DX9.0的规范,将其对浮点数计算的支持设定在了16bit/32bit,完美避开了DX9.0要求的24bit。这就导致其在DX9.0游戏中,要么将24bit浮点数升格到32bit计算,浪费一部分性能,要么降格到16bit计算,损失一部分精度。
此外,FX5800的渲染流水线也被设计成了4*2的架构,在渲染DX9.0游戏时,远不如9700Pro的8*1流水线灵活高效。
设计上的错误,不仅浪费了大量晶体管,还迫使FX5800必须跑到更高频率以求弥补性能损失,这也导致FX5800的功耗发热爆炸,被迫用上了2003年世所罕见的“双槽”“纯铜”“涡轮”吹风机。
然而戏剧性的是,接下来的Geforce 6800Ultra和Radeon X800XT,则完全是FX5800和9700Pro互换了角色。在FX5800上吃了暴亏的NVIDIA,将旧架构彻底推倒,洗心革面紧抱微软大腿,设计出了全新的6800Ultra,完美贴合爸爸家最新DX9.0c API的一切要求。
而9700Pro的成功也使ATI飘成了之前NVIDIA的样子,X800XT只是在9700Pro的基础上扩充流水线规模,对爸爸的新技术要求充耳不闻,认为支持到DX9.0b就够了。结果……可想而知。
可见,图形芯片设计公司在研发新一代产品时,“听微软的话”是格外重要甚至关乎生死的戒条,这次AMD联合微软搞出RDNA2也是同样的道理。“RDNA2架构是AMD和微软联合开发”不假,但其目的并不是为了让新产品“只能XSX用,索尼用不上”,而是为了在Win PC的图形市场上牢牢占据主动。
再说说PS5不支持DXR,直播中我说这是理所当然的,因为索尼从来都是用自己的API,支持其他平台的API根本毫无意义。可能有部分人还是不明白硬件和API的关系,甚至认为不支持DXR就等于不是RDNA2,所以这里我再补充解释一下。
所谓API(Application Programming Interface,应用程序接口),其实只是一些预设的函数,其功能是沟通软件代码和硬件底层,是软件命令硬件干活儿的工具,或者也可以理解成翻译。
就拿DX12和DXR来说,DirectX并不是一个单一的图形API,而是一堆API的集合,包括Direct 3D、Direct Draw、Direct Input、Direct Sound等十多个组件,DXR(DirectX Raytracing)就是在DX12时期新加入的一个组件。
这些不同的组件,有命令硬件画点线面的,有命令硬件出声音的,有命令硬件计算光追的,合在一起才能理解为“命令硬件跑游戏的”。
但是,前面说了,API只是软件命令硬件干活儿的工具,DX12,或者具体到DXR,作为这个工具来说,既不是唯一解(起码在PC上还有个和DX12平起平坐的Vulkan,更别提非PC平台的),也谈不上不是最优解。作为工具,只要能干好沟通软硬件这份工作,就是好工具,完全不用管它姓啥叫啥,谁人门第。
再换个比方,索尼和微软的硬件就好比麦当劳和肯德基,你有麦辣鸡腿、麦辣鸡翅、可口可乐,他有香辣鸡腿、香辣鸡翅、百世可乐,都是一样的玩意儿,叫法不同而已。你要去麦当劳问:你资瓷不资瓷圣代啊?那肯定是不资瓷的,这辈子也不可能资瓷的。但你说麦当劳有没有这东西呢?有啊,不就是新地嘛……
最后不得不说的是,大家都别忘了,微软的DX12 API也都是在AMD Mantle API的基础上偷天换日而来的,Vulkan更是嫡系,索尼自己的这套API也持续发展了不只一年两年了,替AMD+索尼的组合操心API的支持,真是杞人忧天了……