● 奥林匹斯之巅的陨落
整个DirectX 10时代最大的悲剧是什么?相信这个问题的答案对于绝大多数人而言都是唯一的,那就是ATI的陨落……
R580虽然将GPU在DirectX
9时代的辉煌推向了最顶点,但这位英雄却没有为自己的境遇迎来转机。在那个即便强调吞吐,效率的提升也依旧会被分离单元设计吃掉的年代,R580尽管理念
先进但却着着实实的赢了面子输了肚子。它为效率提升付出了巨大芯片面积的代价,而最终的性能却被非统一单元低下的运作率无情的吞噬。市场对于G71架构的
青睐让ATI陷入了难堪的衰退状态,运营状况逐渐开始变得糟糕起来。最终,在2006年7月24日那个令无数A饭五味杂陈的夜晚,ATI终于正式被AMD
斥资54亿美元收购。
![视觉时代的回响 GPU十年历史追忆(中)](http://2b.zol-img.com.cn/product/117_500x2000/725/ceOIwWW9DBrg.png) 香消玉殒的ATI……
被收购之后的ATI并没有因此而获得任何转机,因为对于新东家AMD而言,GPU完全是一个陌生的领域,如何整合并正确的使用ATI之前的技术
积累以及宝贵的经验对于这位“新手”来说无疑是一个太过沉重的课题,迅速发现ATI遗留的R600架构的重大失误更是不可能的事。双线作战的全新竞争环境
以及收购带来的组织结构变化严重削弱了AMD的竞争力,同时也让新一代GPU架构的研发在本来就错误的方向上陷入了停滞。
不仅如此,AMD对ATI的收购过程本身就充满了各种令人不解的溢价和交叉交易,AMD甚至不得不举债超过20亿美元才完成了这笔从头到尾都是
“冤枉钱”交易,这种不成熟到有些荒谬的举动让我们有理由怀疑之前已经剥离掉AMD唯一赢利点,也就是NAND业务的并将整个企业导入下行轨道的首席执行
官Hector
Ruiz的行为动机不怎么纯洁——事实上他也确实因被控内幕交易而受到调查并险些锒铛入狱。这桩收购令AMD流失了巨量的宝贵资金和时间,进而丧失了
GPU架构研发工作正常进行的必要条件。没有钱,没有时间,没有环境来继续实现自己推动GPU进步的抱负,ATI这位垂暮英雄就这样走完了自己一生,虽然
其品牌并没有在收购瞬间消失,但那位曾经在DirectX 9时代铸就无数传奇的英雄之魂却已经消散在风中了。
![视觉时代的回响 GPU十年历史追忆(中)](http://2a.zol-img.com.cn/product/117_500x2000/724/ceozWCOl0gVk.png) 在位期间将AMD乃至整个业界拖入下行的“涨薪CEO”——Hector Ruiz
该怎么说呢?如果把ATI被收购前后发生的故事交给莎士比亚来谱写的话,那应该会是一部有机会比肩《奥赛罗》或者《李尔王》的传世佳作吧……
当然,ATI并不孤单,还有另一位重量级的神祗与它一起谱写属于那个时代的悲剧,那就是曾经辉煌的DirectX 9的接班人——DirectX 10。
尽管DirectX
9.0C堪称完美,但它的完美本身在出发点上就存在局限。传统的shader单元是分立的,根据不同的需要被分成了独立的Vertex
shader单元和Pixel shader单元,分别处理不同的shader programs,实际的shader
program是不可能完全做到两种单元的平衡,也不可能根据特定硬件架构的单元比例来安置代码结构。软件和硬件两端的双重制约呼唤着图形API这位隐性
主宰的进步,而作为回应,DirectX 10来了。
![谁是微软忠实随从 A/N统一架构历史回顾](http://2b.zol-img.com.cn/product/59_500x2000/887/ceg6hxSlgZJ5Q.jpg) 不同单元在负载方面的效率问题
Unified Shader是DirectX 10最大的特点,它将Vertex
Shader和Pixel Shader单元合并成一个具有完整执行能力的US(Unified
Shader)单元,指令可以直接面向底层的ALU而非过去的特定单元,所以在硬件层面US可以同时吞吐一切shader指令,同时并不会对指令进行任何
的修改,也不会对shader program的编写模式提出任何的强迫性的改变要求,遵循DirectX
10规范设计的硬件在理论上可以达到100%的shader效率,这无疑是积极向上的,足以让DirectX继续辉煌下去的一次更新。
但是,DirectX 10却成了微软历史上第一个同时也是唯一一个几乎被人遗忘的API……
![忠实随从为何不快 A/N统一构架细节分析](http://2a.zol-img.com.cn/product/60_500x2000/268/ceauqTI4mjRvs.jpg) Unified Shader执行过程
作为统一构架的开端,微软的初衷显然是好的,Unified解决方案不仅能够保证Shader指令执行
率的最大化,更可以最大限度的保障对旧有指令格式的兼容性。也就是说,即便是一个编程习惯和思路依旧停留在DirectX
9时代的程序员,他所写出的仅符合DirectX 9要求的代码,在DirectX
10硬件中依旧可以被完全无问题的执行。这种良好的初衷带来了一个令人尴尬的结局——开发商并不需要为新的API开发全新的引擎,程序员也不需要去学习新
的编程方式并改变自己的编程习惯,整个业界都缺乏一个明确的必须过渡到DirectX 10的理由。
DirectX
10究竟尴尬到了什么地步呢?在推出5年之后的2011年3月,真正意义上支持DirectX
10的游戏的总量,仅为56个……甚至直到今天,我们仍就能够从各色游戏配置列表中那一行“DirectX 9.0C/DirectX
11”当中读到DirectX 10的寂寞。
铸就GPU10年时代中辉煌开端的量大重要支柱,也就是图形API和对等且激烈的竞争,在接下来的3年时间里消失得无影无踪。曾经屹立于奥林匹斯之巅的诸神们纷纷陨落,整个业界仿佛都陷入了无光的寒夜。
|