宝剑锋自磨砺出!细谈RV770背后的故事
[泡泡网显卡频道 1月13日] 感谢anandtech放出这篇博客,更感谢chiphell帮助我们消除语言的障碍,让我们读到如此精彩的“背后”。
当我步出AMD Santa Clara办公室的电梯时,我听到背后有人叫我名字。我回过头去却发现谁也不认识。不过这很正常,因为我是上了年纪的人啦,在这个行业里已经干了12年。谢天谢地Carrell Killerbrew根据一张照片认出了我。至于他是根据哪张照片认出我的,我不知道。
我们往前走,进了一个小房间,里面有一张桌子几把椅子,桌子中央有一个麦克风。屋里除了我,还有Carrell Killebrew,Eric Demers, Mike Schmit和Mark Leather(编者按:牛人云集啊,基本都是AMD的院士,可见AnandTech站长面子很大)。这些人中的大部分我都没有见过,但是听过他们的名字。最好情况下我们能和Technical Marketing的人交流,但是很少有机会能和主架构师或者院士打交道。但是今天,在这个房间里,我发现我和AMD和一群院士,一群最聪明的人在一起。
Carrell Killebrew是RV770项目的领导者,他正是你期望的那类人,带领一个工程师团队开发GPU。Carrell作了开场白,他说今天所有的谈话都会被记录在案,他假设所有人对这一点都没有异议。他问我我想谈什么,他给我了一些话题以供选择,比如GPU未来的趋势,GPU的架构,用GPU来实现视频的转码等等。或者他和其他人,可以谈谈RV770背后的故事。
Carrell最后提出的话题引起了我的兴趣,我从来没有想象过这一点。当RV770在夏天发布的时候,我们想当然的认为这是款很好的产品,它搅乱了NVIDIA的架构体系,给了我们在$200和$300美金价位最有价值的产品。那时我们探寻了Readeon 4800系列的架构和性能,但是只花了一页的篇幅来讨论AMD的小核心(Small-die)策略。AMD过去8年中一直致力于制造越来越大的GPU。但是在RV770上,AMD反其道而行之,但是那时我居然没有注意这一点。我随意的提到这一点,谈论了下这个策略和NVIDIA的策略的不同之处,但是我没有深入进去。
通常情况下,类似AMD这样的制造商告诉我他们做了什么事,我通常都会问“为什么”。当Intel向我介绍Nehalem的Cache架构,我问他们为什么要这样设计并稍后发布了我的心得。对Radeon HD4800系列的每一个方面,我们也做了同样的事,但我们都忽略了最重要的一点!那就是设计GPU的策略。这篇文章我写得很艰难,没有图表,没有架构可以分析,我只是坐在这间房子里,听这些人谈话,这些人在两个小时时间里和我分享过去三年他们干的事情。我想把文章写得客观中立,我希望我会,因为在那个房间里和他们的交流是我跟AMD最好的一次交流。
● 序幕:让全世界为之一振的枪声
让我们回到2001年,那时ATI还是独立的公司,正在设计R300(Readeon 9700 Pro)。那时NVIDIA正统领着市场,ATI还不能推翻NVIDIA的王位。那时ATI正在讨论Radeon和Radeon 8500,公司内部认为要赢得市场,就必须赢得光环效应。如果ATI可以制造出最快的GPU,就能增加品牌认知度并培育品牌忠诚度,不只是卖出高端的GPU芯片,低端GPU的芯片的销售也能因此受益。但是最重要的一点是:那时高端产品的售价是$399--记住这一点。
ATI里的每一个人都在思考他们必须设计最快的GPU,击败NVIDIA,所以Radeon 8500的继任者是一个大家伙。Radeon 8500采用0.15微米工艺,大概有六千万个晶体管。R300仍然采用0.15微米工艺,但是有1.1亿个晶体管,芯片面积基本是Radeon 8500的两倍。GeForce4(NV25)大概有6300万个晶体管。即使NVIDIA也不敢在150nm的工艺上造如此大的芯片。因此GeForce4的继任者准备采用130nm的工艺。我们都知道接下来的故事,R300最终被命名为ATI Radeon 9700 Pro,蹂躏了GeForce4。R300的成功坚定了ATI的策略:为了击败NVIDIA,芯片面积要不断增大,以后每一代的GPU都要更大更快。
● 重新评估策略:2005年设计RV770
记住导致成功的因素比记住成功更重要。2005年ATI的处境和当初设计R300的时候相似。R300的成功是因为ATI重新评估了制造GPU的策略。在那个时候,ATI决定造一颗大芯片来赢得高端,并将其转化为每一个价格区间都有竞争力的产品。值得一提的是R300的持续成功还部分归因于NVIDIA在GeForce FX上的失败。这是ATI上演的完美风暴。ATI造了一颗最大的GPU,NVIDIA在其后的一段时间里无法回应。正如Intel在试图疯狂提高P4的频率时撞上了功耗墙。但是2005年时,ATI开始发现GPU(当时ATI还称核心为VPU)过于庞大了。设计周期越来越长,芯片面积不断增长。制造如此大的GPU已经不是那么合算了。
AMD认为一颗非常大的GPU,如果没有使用Repair Structures和Harvesting(两种技术我稍后会讨论)的话,只有30%是可用的。也就是说,对一片晶圆而言,每100个GPU只有30%是功能完好,可以零售的。制造如此复杂的电路成本是非常昂贵的,那些Fab的设备造价很容易就达到数十亿美金。所以不能让如此多的晶圆被浪费。谢天谢地有技术可以让30%可用变成90%可用。第一种技术称之为可修复性(Repair Structures)。
其思想非常简单:设计冗余单元。如果芯片某个功能单元包含10个流处理器,实际上要设计11个流处理器。如果有瑕疵出现那么我们可以启用那个备用的流处理器。这种技术通常也用在片上内存(on-die memory)的设计上。这样当某一部分出现问题时,不会导致整个功能单元不能用。但是这个地方通常有个折中,如果你设计了太多的冗余单元,那么你就面临着芯片面积太大的风险,并且这些增大的面积对实际性能毫无贡献。但是如果你设计的冗余单元不够,那么你的良品率就不足。
第二种技术称之为Harversting,所有人肯定都很熟悉。其思想是:假设一片晶圆上功能完好的芯片只有很少一部分,但是我们并不丢掉那些有瑕疵的芯片,我们关闭某些功能单元,然后把他们当做低端芯片卖。例如,如果你设计某个功能单元包含了10个流处理器,预期只有30%的产品是10个流处理器都可用,50%的产品可用其中的8个。那么你可以把8个流处理器可用的芯片当做稍微低端的芯片卖。因此这种方法使得一片晶圆上80%的芯片都可用,如果可能的话,你还可以屏蔽更多的流处理器单元,使得接近100%的芯片都可用。良率会随着时间改善,如果你一直依赖于Harversting,那么这种方法最终会损害你的财务表现。在上面的例子中,随着良率的改善,越来越多的芯片10流处理器可用,但是你还是只能当成8流处理器卖。某种意义上说,值一块钱的东西你卖八毛钱。当然你也可以设计8流处理器的新版本,但是这会耗费额外的时间、金钱和工程师资源。
GT200系列就是采用Harvesting技术的典型。GeForce GTX260就是GTX280的Harvesting版本。随着良率的改善,NVIDIA推出了GeForce GTX 260+(216 SP)。但是要注意并没有为GT200系列设计任何的冗余单元。因此GT200系列的芯片上最多有240个流处理器,如果240个流处理器不能用的话,那么就当成GTX260或者GTX260+来卖。与之形成鲜明对比的是RV770系列,两个版本的RV770功能单元的规格都是一致的,所不同的只有频率和功耗的不同。从芯片的角度来看,AMD不必通过卖缩减版本的产品来保证良率(编者按:估计AnandTech站长当时还不知道Radeon HD4830)。注意,一家公司是否采用Harvesting技术并不会影响终端用户。
在这种情况下,GeForce GTX260/260+实际上对终端用户是有利的,因为它具有和Radeon HD4870同样的价值。但是它无助于改善NVIDIA的财务表现,如果一家公司长期依赖于Harvesting策略的话,最终是要付出代价的。但是我怀疑NVIDIA会在事情变坏之前用55nm的GT200版本使自己全身而退。AMD并不想设计一颗GPU过度依赖于靠Repair和Harvesting来提高良率。于是一个杀手级的论断出炉:制造大型的GPU并非最符合客户利益。
● 思路进发:设计一款为需求而生的GPU
对桌面CPU市场而言,性能级产品只占7%左右。虽然这一部分贡献了大量的营收,但是市场的大头是主流级的产品。ATI在2005年就意识到这一点。高端的GPU变得越来越昂贵。R300上市价格是$399,但是随后我们看到$499、$599、$600的GPU。
越来越高的价格是由于越来越大的芯片面积,以及采用类似Harvesting这样技术,保证不论GPU有多大,营收是稳定的。售价$399的R300同主流级的产品价格是足够接近的,这使得ATI能够花几个月缩减它的规模来占领其他市场区间。但是现在,缩减高端GPU的规模(编者按:这里的意思大概是设计出流处理数量更少的原生GPU)来占领主流级市场所花费的时间已经增加到了6-9个月。到现在为止,我们仍然看不到采用GT200架构的中端产品。NVIDIA把GTX280的发布价格定在$600,然后花9个月时间制造出价值$200的中端衍生品,这在AMD看来是在伤害消费者的利益(doing the market a disservice)。现在是时候来重新审视这个策略了。
AMD不再想重新裁剪高端GPU的规模来制造中端CPU,他们想设计一款在$200-$300价格区间中最有价值的产品。要这么做就不得不推翻原来的策略,并且希望NVIDIA在某种程度上不要采用同样的策略。(编者按:其实从G80转型至G92这样的策略上,不多不少都显示了NVIDIA开始倾向着这样的想法)
● 打赌:NVIDIA会跟风采用同样策略吗?
在2005年的春天,ATI有R480在市场上(Radeon X850 系列)。它采用130nm工艺,是另一颗130nm芯片R420(Radeon X800)系列的改进版。从R420到R480的演进是非常重要的,因为NVIDIA会以此来推断ATI未来的行动。ATI仍然在设计R520,也就是Radeon X1800,但是正如你们记得的那样,它延期了。R520的延期引发了多米诺效应,其后的每一个项目都受到了影响,包括R600,当然R600的延期还有其自身原因。
当ATI审视R520的时候,发现它很大并且也不划算。因此在R520的基础上设计R580的时候,ATI做了一个让人意想不到的改变:打破1:1:1:1的比例。在R520中,ALU:TMU:ROP:Z的比例是1:1:1:1,但是在R580里,这个比例变为3:1:1:1。增加ALU资源但是不增加纹理单元和显存带宽。ATI注意到,应用程序对Shader的运算能力的要求在增加但是对纹理过滤和显存位宽的需求并没有增加。这个改变使得从R520到R580的演化远比很多人想象中的大,包括NVIDIA。那时Radeon X1800并不是很有竞争力,一方面因为它的延期,另一方面也因为G70的确很好。
AMD收购ATI后,Radeon X1900使NVIDIA让出了性能王座。AMD从R520到R580让人意想不到的变化无疑激怒了NVIDIA,NVIDIA习惯把持性能王座,它肯定不想王位被AMD夺去。在AMD内部,Carrell正在下一个赌注,他打赌NVIDIA会低估R580,NVIDIA会像评估R480一样评估R580。他打赌NVIDIA会被R580弄得大吃一惊然后弄出一颗比G70大得多的芯片。NVIDIA不想丢掉性能王座,G80会是一个怪兽。AMD原计划R520在2005的初夏上市,结果是10月才上市,差不多晚了6个月。正如我之前提到的,这个延期使得后续所有项目都被延期。整个R600家族都受此影响。AMD估计NVIDIA的G71会比R520快20%左右,并且不会估计到R580在架构上的大改变。(编者按:事实的确如此,G71仍然不敌R580,但其实在市场上,G71借助优秀的成本控制战胜了R580)
此时,AMD正在计划R600项目,知道这是一个大家伙。最开始预估芯片面积18mm x 18mm,然后变成19mm,然后是20mm。工程师一直在问Carrell,你觉得NVIDIA的芯片会比这还大?当然会,因为他们不想丢掉性能王座,在R580之后他们当然要重新夺回。R580的成功是否会影响到G80的大小和功耗在AMD内部一直被讨论。我很确定NVIDIA肯定会说他们的设计和AMD毫无关系,但是明显我们都知道AMD的地位,并且Carrell的预计是正确的,G80是一个大家伙。不只是因为G80优秀,还因为R600延期,延得太晚了。
R600仍然被R520的延期影响,并且它自身还面临AA的硬件单元等一系列问题。即便不开AA,R600与G80的竞争也很艰难。AMD丢掉了GPU性能王座,AMD最大的芯片不能和NVIDIA竞争,其后一年,AMD的营收和市场占有率都不断下降。而与此同时,Carrell仍然试图让每个人都信服RV770的设计走了一条正确的道路,赢得性能王座并不像R300那会就意味着赢得一切!那时,他的论调听起来就像是一个疯子说的一样。当Carrell和他的同仁们正在规划RV770的时候,他们预想RV770不只是和对手同样大小的芯片相比要好,也要有足够的竞争力。因为NVIDIA仍然坚持大芯片这个模式。Carrell相信G80的继任者非常大,RV770有优势,因为NVIDIA不得不在设计上有很多改变。
Carrell和他的ATI同仁将会经历他们生命中的惊奇时刻!
● 如果不打破这个现状
如果不打破现状,我们会很危险。在2005年,AMD和NVIDIA都面临这样的情况:造一颗最快的GPU,并提供稳定的驱动程序,那么就可以赢得市场。过去几年中,AMD一直是这么干的。但是在公司内部,有一些人认为是时代改变了。在很多方面AMD和NVIDIA都面临不同的挑战,NVIDIA从之前激进的工艺更新策略中汲取了教训,GT200很有可能仍然采用老的,更成熟的工艺,因此导致GT200的面积很大。AMD选择走一条NVIDIA没有走过的路,制造工艺的演进更加迅速,以此造出更小面积的GPU。竞争对手偏爱造一颗越来越大的GPU,而AMD则分两面看待这个问题,他们没有遇到真正的竞争,他们可以干任何他们想干的事。对AMD而言,问题变成小核心的策略会奏效吗?
今天我们很容易说:“当然”。但是你要明白那是在2005年,RV770的规格正在被草拟的时候。想象坐在一大群人中,他们的工作一直是制造世界上最快的GPU,但是你却要对他们说“把性能王座让给NVIDIA,让NVIDIA获得光环效应,我们要做的是设计在$200-$300价格段最好的GPU”的话,会是怎样的一个状况。当然接下来就是白热化的讨论,是否AMD能把赌注下在不再造一颗最快的GPU,而是造一颗稍微低端的GPU上。
AMD把图形市场划分为5个区间:狂热级,性能级,平衡级,主流级和入门级。在2005年夏,AMD决定瞄准性能级市场,而非狂热级市场。你可以认为性能级市场正是2002年R300竞争的市场。R300 $399的价格和Radeon 4870 $299的价格很接近,而GTX280发布的时候价格是$599。AMD把这看作是策略上的改变,R300当时为了性能可以不管芯片面积,而RV770不同,它面临这芯片面积和功耗的明确限制。
我们今天知道,AMD内部很多人对RV770大开绿灯。Rick Bergman,决定把他的职业生涯和RV770拴在一根线上,因为如果RV770不成功,他要为此负责。Carrell回忆Rick Bergman和一群人坐在桌子旁讨论RV770的场景;Rick把头转向Matt Skynner,问他是否认为这个策略可行,是否造一颗比NVIDIA的GPU更小,但是仍然能成功的GPU的可行性,是否我们能在性能级市场上制造光环效应。
Matt很显然仔细思考了这个问题,他转向Rick说,我认为我们能。Carrell感到如果没有Matt Skynner的支持,AMD不可能走这条路。而Rick Bergman确保了RV770的项目被良好执行。当然也有很多非常聪明的工程师,他们造就了R300和R580这样的产品,但并不认同这个策略。有些人会说,如果AMD不弄出个和GT200能真正单挑的芯片,游戏就结束了。但是Carrell这样的人会说,这个策略是可行的,因为它是正确的方向。这就像政治,每一方都认为自己的观点是正确的,但是你只能选择一个。并且两方还要同处一个屋檐下,低头不见抬头见。
● 部分人很沮丧但是整个团队在继续发展
整个RV770设计花了大约三年时间,这意味着当我们讨论R600的失败时,那帮工程师正在设计RV770并对此持乐观态度。Carrell,Rick Bergman和其他人要求整个团队忘记发生在R600上的事情,忘掉AMD丢掉性能王座这个事情,致力于做好RV770。在我的整个采访中,我一直能感受到这样一个事实:整个RV770团队给AMD留下了深刻印象。整个团队没有分崩离析,尽管有不同意见,尽管对往哪个方向走有过摇摆,但是整个团队仍然团结有力。
AMD认为采取不追求绝对性能的设计策略是有意义的,但是如果失去了光环效应怎么办?历史上因为失去光环效应而失败的案例不甚枚举。对此AMD制定了严格纪律,把历史放在一边,做我们认为正确的事情。这不仅要求不受历史的影响,还要同以前养成的观念做斗争,即,要转变这样一种观念:在设计的时候从来不考虑芯片变大的限制。AMD通过RV770取得的成功使我想起了Intel的Atom设计团队。每一个团队成员在设计他们负责的模块的时候都面临着模块大小的严格限制,而这个限制从来不会被妥协。逆境中往往会涌现最好的人。在业界我听过最好的故事,就是Intel设计Banias的工程师,以及AMD设计RV770的工程师全身心的投入工作,而不管是否会被击倒。激情以一种有趣的方式成为一个人最强大的盟友。
● 对于功耗的规划
我们所有人都应该为把功耗当做免费的午餐而感到自责。Intel设计了5年的处理器,从来没有考虑过功耗问题,设计GPU的家伙同样如此。在R300和R420的时代,ATI从来没有考虑过功耗。在那个时候,对功耗的估计是如此的微不足道以至于ATI甚至没有找到一套好的估计功耗的方法。设计一款TDP被限定的产品是不可能的。现在AMD的工具好了很多,现在要达成功耗上的目标和达成时钟频率的目标或是芯片大小的目标没有什么不同。现在,功耗不会有大的变化(想想为什么高端CPU的功耗总是130W附近)。
每一个人的设计都面临功耗的限制,现在面临的问题是如何在功耗保持不变的情况下提高性能。现在我们的处理器,无论是CPU还是GPU变得更加高效,而不是傻傻的堆规模上去以此提高性能。架构上面临一个有趣的问题是,在一颗大约10亿个晶体管的芯片里传递数据要耗费很多的功耗。Carrell告诉我在45nm和32nm阶段,在FPU里传递数据的功耗和这个FPU进行乘法运算的功耗一样多。考虑到数据传递变成了一个越来越高功耗的任务,未来GPU的设计很重要的一点是要尽可能的保持数据存储在本地,减少数据传递到寄存器和片上缓存中。我们能看到更多的本地寄存器(Local register)以及更多的多层内存结构。随着芯片变得越来越复杂,把寄存器文件集中放到一个位置越来越困难。
AMD承认在R600的制造上功耗过大的问题。从那以后,AMD重新专注于功耗效率。当晶体管越来越小时,漏电也变成一个日益严峻的问题,有时候为了提高那点效率而使得漏电很高并不划算。假设你有一块100W的GPU,你愿意其中的40W都是因为漏电而被消耗掉吗?还是你想要其中的80W用来真正干事情,只有20W被浪费?Intel也同样汲取了P4的教训。
● 真的只是小问题?AMD需要新的内存技术
R600拥有令人难以置信的512bit显存位宽,因此引出的问题是芯片面积很大,所以你不得不进行复杂的绕线(Route)。为了达成RV770的芯片面积目标,AMD需要256bit的显存位宽。但是如果使用现在的显存技术,256bit的位宽无法提供足够的显存带宽来达成RV770的性能目标。再一次想象那是在2005年,ATI决定完全抛弃过去赢得GPU战争的策略,即使这个小核心策略的成功要依赖于一种新的显存技术,在那时这个新的显存技术甚至连技术原型都没有。那时GDDR5的规范还没有最终确定,没有测试设备,没有界面设计,什么都没有。只知道GDDR5可以提供GDDR3两倍的带宽,这样就可以依靠256bit的显存位宽达成一个512bit显存位宽的目标。这正是AMD想要的,所以AMD决定采用GDDR5。
三年前谁会知道GDDR5会成功面世?
不幸的是GDDR5能否在2008年夏上市并不只是取决于AMD,内存制造商也有很多问题需要解决。AMD投入了很多金钱和工程师资源来和内存制造商紧密合作,以确保不仅GDDR5的规格要定下来,而且在2008夏GDDR5要可用,性能良好。注意只有RV770会用到GDDR5,这意味着只有AMD来独自推动这项新技术。
AMD做了很多工作来推动GDDR5,这是有风险的,即使RV770性能非常好,但是在上市时如果显存没有准备好,RV770仍然不得不延期。RV770许配给了GDDR5,没有其他选择了。如果GDDR5不能在3年内准备好并投入生产上市,AMD将面临既没有高端GPU,也没有性能级GPU的窘境。如果GDDR5工作正常,那么意味着RV770能够成功,并且从另一方面来讲,这是NVIDIA所不具备的。当然,这是建立在AMD的小核心策略是可行的基础上……
● 一名网站编辑拯救了Radeon HD4850
AMD有这样的习惯:从媒体中选择好的评论员,然后招致到公司里。我们的第一个图形版块编辑Matthew Witheiler,从杜克大学毕业后就加盟了AMD。在加盟AMD之前,他在AnandTech度过了3年的美好时光。在ATI,他最终成为了最年轻的产品经理。另一个杰出的评论员是Dave Baumann,来自于Beyond 3D。在Beyond 3D,Baumann在分析两款彼此竞争的产品时表现出了卓越的能力。他在AMD的一项主要工作就是在公司内部比较R600和G80,这是发生在2006年11月份的事情(编者按:Dave Baumann是在06年6月加盟ATI的)。很显然,G80对RV770有重大影响。虽然当时架构已经定了,但是时钟频率、电路板设计、显存大小等等都是在2008年初才定下来。
最初,RV770的目标是R600的1.5倍,现在回过头去看,这是不够的。在接下来的一年半里,1.5倍R600的性能变成2倍R600的性能,最终达到了2.5倍R600的性能,而价格却是位于$200 - $300这个区间里。Dave在2008年二月变成了RV770的产品经理。考虑到他加盟AMD并不久,而且这个产品非常重要,这是件大事。RV670让我们看到了AMD重回竞争者的行列,但是AMD需要RV770让他们重回巅峰。
Radeon HD4850爆发的光芒差点被埋没
当Dave开始负责RV770的时候,很多产品的规格已经规划好了。芯片已经从Fabs里流片回来。在这个时候,AMD的工程师并没有准备好或者并不愿意再对规格做改变。Baumann先生认为RV770XT不错(XT是Radeon HD4870的内部代号),用他的话讲,规格很完美。对Radeon HD4870的唯一修改就是增加了第二条PCIe电源连接线,仅此而已。他关注的是另一个更重要的产品,RV770 Pro,即Radeon HD4850,他认为规格有些低了。
让我们来了解下AMD当时的处境。你的工程师团队过去三年一直在设计一款可能失败的产品,因为这是同过去你所做过的完全不同的产品。你的上一代旗舰级GPU并不完美(R600),而RV670做得不错,可仍然没有从NVIDIA手中抢到多少市场份额。你刚刚完成一款全新的GPU的设计,但是这个年轻的产品经理却告诉你必须要做些改变。对Baumann而言,这是有胆识的行动,他并不看重脸面,他要的是帮助他的团队赢得胜利。最后的改变迅速而容易的发生了,这是发生在RV770上的真实故事。
Radeon HD4850原来是256MB显存,500MHz的核心频率,900MHz的显存频率。Dave坚持认为Radeon HD4850需要512MB的GDDR3和625MHz的核心频率,以及933MHz的显存频率。他不但坚持这个规格,也使得工程师团队信服了这个规格并做了改变。Dave向工程师们论述为什么要改变规格以及市场需要怎样的规格。在讨论快结束时,他已经不需要说服他们了。板卡和ASIC团队拥护这样的改变。
如果没有这样的改变,RadeonHD4850不能对NVIDIA的GeForce 9800GTX施加如此大的压力,GeForce 9800GTX的价格也不会降得这么快。
● 最后的小插曲:在RV770上市开卖之后
RV770的设计在2008年五月完成,六月开始制造。直到NDA解除那一天,公司内部仍然有人感觉小核心策略是错误的。但是他们后来很快发现这个决定是多么的正确,快得超出他们想象。Radeon HD4800系列最后遇到的一点小障碍发生在上市前一周。当Chris hook打电话给我,告诉我一些Radeon HD4850已经在欧洲开卖,我们拿到了第一块Radeon HD4850。AMD做了如下规定:我们可以谈论Radeon HD4850的性能,但是不能谈论Radeon HD4870的性能和RV770的架构。在30小时之内,我们发布第一份分析文章,做出了一个很明确的结论:AMD做了正确的事。GeForce 9800GTX的价格突然暴降,以便维持竞争力,但是即使如此也不够,Radeon HD4850是$199价位最好的卡。
从台湾回来我一直在思考一件事:AMD怎么知道NVIDIA的计划或者是NVIDIA怎么知道AMD的计划,所以我很问得很直白:你们这些家伙从哪儿得到这些信息?回答不出意外:台湾。所有的板卡制造商都知道两家的信息并且常常共享信息(编者按:板卡厂商这种无间道行为,其实往往最终目的都是获得更多的资源和利益)。
Radeon HD4000系列的出现,让GT200系列成为历史上降价最快的高端显卡
AMD计划推进他们这一成功的策略,通过观察路线图我们可以得知,当AMD发布RV770时,NVIDIA在G92上没法大做文章(编者按:这或许也是NVIDIA大力推行CUDA和物理引擎的原因之一)。NVIDIA力求GT200像G80一样,他发布了一款全新的芯片,把价格定得高高在上,多数用户可能在2010年的某个时候买得起它。已有的产品线已经足够充实了。
AMD幸运之处在于NVIDIA在2008年只有GT200,而且GT200的性能并不足够强。Radeon HD4850最初目标是性能超过GeForce 8800GT,击败GeForce 9800GTX并不是必须的,毕竟GeForce 9800GTX卖$300,而Radeon HD4850只卖$200。Radeon HD4870的目标是击败GeForce 9800GTX。但是AMD没有想到的是Radeon HD4870如此的优秀以至于打败了GeForce GTX260(编者按:原文打败这词有点偏向性,用“稍胜过”这样的表达方式更为稳妥)。AMD现在卖$300的卡可以和NVIDIA卖$400的全新设计的卡竞争。对AMD而言,RV770是一块蛋糕,美味超出预期。每个人都可以闻到它的香味,他们知道RV770会很好,但是他们没有估计到他会如此之好。NVIDIA的反应非常迅速,坦白讲,没有哪个公司可以如此迅速的反应,但是这不会改变AMD已经成功的事实。
现在没有人质疑Carrell的想法,每个人都同意这个策略是对的。我的问题是:多久AMD会再一次重新评估他们设计GPU的策略?第一次是2001年,造就了R300;第二次是2005年,造就了RV770。什么时候那些艰难的决定需要再一次做出?可能在2012/2013年前我们都看不到策略的改变。接下来的问题是NVIDIA会对AMD的策略做出何种反应?黄仁勋并不会乐意接受失败,尤其是像这样失败。NVIDIA仍然有很强的研发实力,过几年我们会看到RV770是如何影响NVIDIA的设计。可能NVIDIA也意识到小核心策略是对的,可能NVIDIA仍然坚持造很大的GPU,或许第三种可能也存在,只是我们没有想到。
● 接下来的挑战和关于INTEL的威胁
正如R300一样,RV770的成功部分由于NVIDIA的失败(编者按:或许说得更贴切的是轻视)。与NV30不同的是,GT200并没有延期,性能也不是差得离谱。它只是价格太高了。AMD制造出RV770很幸运,NVIDIA造了一颗如此巨大的GPU,因为它回避了两个主要的风险:55nm和GDDR5。这两点AMD都抓住了。下一轮的较量并不轻松,NVIDIA采用了55nm,最终也会使用GDDR5。AMD不可能每年都能发布Radeon HD4800这样的产品。即使现在NVIDIA试图通过激进的价格策略拉近差距,但是仍然面临没有任何GT200系列的主流产品的尴尬局面,在2010年之前都不会有。更别提把核心面积为576mm的芯片和AMD的260mm的芯片卖同样价格对NVIDIA财务的影响。
在AMD眼中,巨型核心GT200其实处于一种既成功又失败的地位
Carrell非常坦白的告诉我不可能每一次都能做出完美的产品。他想这样,但是现实中这样是不可能的。有很多因素超出了AMD或者NVIDIA的控制,但是有时候机会降临然后又抓住了机会,就会造就Radeon HD4800或是Radeon 9700Pro这样的产品。Carrell补充到,在那些外部因素的限制的范围内,AMD能做最有竞争力的产品。在各种情况的限制下,有可能做到最好。也许它不能成为完美的产品,但是可以成为一款好产品。我特别问到RV8xx系列有何特别之处,他告诉我AMD有些非常有趣,非常创新,非常有用的技术会用到RV8xx系列中。我想问更多,但是考虑到Carrell和其他AMD同仁给我的信息,我不能太贪心。
作为老对手,Intel仍然是AMD最强的对手
除了刚才提到的,还有Intel的Larrabee,最神秘的GPU,第一款可编程的GPU。我和Carrell在最后的30分钟里自然也谈到了它。AMD和Intel,以及NVIDIA,都认为数据级并行会变得难以置信的重要。他是下一次计算机性能发展的新浪潮。我们还不清楚在桌面市场上数据级并行计算会以何种方式进行,但是如果它发生,这是一件大事。这间屋里的每一个人都对竞争对手表现了崇高敬意。像NVIDIA一样,AMD把Larrabee看成非常像CPU的GPU。对GPU而言,最大的挑战是让数据并行算法在GPU上能像在CPU上一样实现。Intel在这方面的确有独到之处,因为Larrabee是基于X86的,对程序员而言,整个开发环境都很熟悉。AMD相信自己的GPU同Larrabee相比在性能上仍然占优(巨大的优势),但是Larrabee自出娘胎起就有编程上的优势。值得一提的是,无论谁制造GPU,AMD、NVIDIA或是Intel,程序员仍然需要重写数据并行的代码。AMD相信写出高效的并行代码需要一定功力,难度比程序员通常编写的代码要高一个数量级。如果你能够有效利用GPU的能力,你就能驾驭巨大的计算能力。你只需$170就可以获得大约1万亿次浮点指令的计算能力。如果你是个杰出的程序员,你当然知道如何看待下一波浪潮。
● 结语:
Derek和我花了6460个单词完成了Radeon HD4850和Radeon HD4870的评测文章。这篇文章我花了7788个单词。我所做的只是记录了那些导致RV770诞生的决定。我们评测的那些产品,无论好坏,都耗费了大量的心血。芯片架构师的生活是很艰难的,为某个产品呕心沥血三年,仅仅因为一些错误决定就招致一些评测网站尖酸刻薄的评论(编者按:突然哪里来的一阵阵罪恶感)。如果我搞糟了一篇评测文章,下周我总是可以改正错误。如果一个芯片设计师设计了一个数十亿晶体管的GPU,但是在市场上遭致失败,他/必须要等几个月或是几年才有机会东山再起。我在想芯片设计公司是否会提供心理咨询服务作为员工福利的一部分。
每一款芯片上市的背后都有数以千计的故事,无论好坏,它们中的大部分都不为人知。部分原因是我们花了如此多的时间在产品的褒贬上以至于我们很少有时间来讲述这些幕后的故事。当然有很多公司并不乐意披露他们的消息。Carrell给我这一级别的交流让我三生有幸,在这一点上,AMD让我印象深刻。我仍然要谢谢这些人,我所遇到的工程师,以及更多我没有遇到的人。NVIDIA也许对RV770团队的努力并不乐意,但是我们都受益了。如果你最终买了Radeon HD4800及其衍生产品,你已经知道你为什么会充满感激。如果你买了NVIDIA的产品,有很有可能少花了很多钱。我们常常说竞争对市场而言是好事,但是很少会有像RV770这样鲜明的案例来证明这一点。那些原来值$300的显卡现在只卖$200,一款全新的卖$400的显卡突然间降到了$300。消费者赢了,RV770的团队瞄准了性能级市场,满足了消费者的需求。所有这些都起源于2005年,一些家伙想要掀起一场变革。
后记:和Chiphell翻译本文的网友一样,编辑本人经过阅读本文后感触很深,在经过阅读本文后这种信念终于得到了肯定!请一路走好吧,勇敢的红色大军!■<