第164章 AMD(1/2)
amd的总部位於桑尼维尔,只是五栋灰色的办公楼。
实际上这才是硅谷公司的常规形態,甲骨文那种气派的总部不是每个公司都能建的。
尤其是amd和英特尔相爱相杀得非常厉害,在显卡上也没干过英伟达,资金一直很紧张,根本没资格追求表面的气派。
陈一然最近见了两个气派的总部,看到amd的这个,甚至感觉有点寒酸。但是真的走进去,感觉也还不错。
唯一有点特色的,就是大堂里装饰的几个玻璃展柜,里面从k6到最新的推土机架构晶片,按年代一字排开。
和甲骨文的安静不同,这里更有生气一些,走道里经常有抱著主板显卡以及各种部件的工程师走动,甚至空气里有时是焊锡和咖啡的奇怪混合味道。
一直跟著项目的哈利和代理ceo托马斯·塞弗特一起接待了陈一然。带著陈一然到处参观了一下,然后领著他去了四楼。
虽然陈一然不需要天天来上班,只是每周和amd的人对齐一下流程就行了,但是amd还是给他配了一个非常宽敞的四十多平的办公室。
办公室的窗户正好对著一片低矮山脉,一张l形的大號转角办公桌。边上摆著一个小型工作站,甚至还配了单独的咖啡机,还有个小冰箱里面摆满了可口可乐。
看得出来,布置得很用心。
陈一然点了点头:“可以,你们先去忙吧,让对接的小组过来吧,我们直接开始。”
哈利和托马斯点头出去了,没一会,四个工程师敲门走了进来。领头的是个四十出头的华人,戴著一副金属框眼镜。
“陈先生,我是马文,opencl编译器团队的技术主管。这三位是林、苏尼尔和艾米,都是我们编译器后端和內存管理组的人。
我们小组下面,还有几个可以配合的工程师,我们直接开始?”
陈一然点了点头:“行,你们先说一下你们的想法吧。”
几个人也没有特意去会议室,马文把一台笔记本电脑接上会议桌上的投影仪,就在边上的白墙上打出了一张架构图。
上面是amd opencl运行时的完整编译流水线,opencl的c源文件经过前端解析生成中间表示,再经过统一优化器转换成amd il中间语言,最后由gpu后端编译器把il映射到具体的超长指令槽上。
“这是我们目前的编译流水线,一共是四层,大概六万多行c++。主要瓶颈在后端,超长指令打包这个环节。
我们的gpu是超长指令字架构,编译器需要把多条独立的指令捆成一个执行束才能充分利用流处理单元,但是捆指令这件事非常依赖输入代码的结构。”
马文在投影仪上调出另一张ppt,上面是几段用红色標出来的代码。
“如果是比较规整的计算密集型內核,我们的后端能在百分之七十到八十的指令槽上填满。但一旦內核里有复杂的分支或者非连续的全局內存访问,填充率会掉到百分之四十以下。”
苏尼尔补充道:“我们现在的思路是分两步走。第一步,给全局內存访问模式识別加一个预分析。第二步,在超长指令调度器里加一个启发式算法。”
本章未完,点击下一页继续阅读。