无论是流体模拟、光线追踪,还是材料的应力分析,都需要在计算机中重建一个符合物理规律的虚拟世界。
而SGI所做的,正是为这种重建提供最强大的工具。”
电话那头沉默了几秒钟。
“有点意思。那你谈谈,你对我们公司的产品有什么了解?”
“我了解不多。”
韩蕊选择了诚实。
“但我有幸在哈佛的计算物理实验室,见过一台IRIS 2400工作站。它处理和渲染三维模型的能力,让我印象非常深刻。”
“哦?那你认为,它为什么能做到这一点?和普通的个人电脑相比,它的优势在哪里?”
问题来了。
韩蕊将马克告诉她的,以及自己从书本上学到的知识,迅速在脑中组织起来。
“我认为关键在于体系架构的革新。
传统的冯·诺依曼结构中,CPU和图形处理单元之间的数据总线,在处理大规模图形数据时会成为性能瓶颈。
而IRIS工作站通过集成专门的几何引擎,将坐标变换、裁剪、光照计算等大量的、重复性的浮点运算任务从CPU中剥离出来,用专门的硬件来处理。
这极大地解放了CPU和总线带宽,让CPU可以专注于更高级的逻辑控制,从而实现了流畅的实时交互。”
她说完后,电话那头又是一阵长久的沉默。
韩蕊紧张的能听到自己的心跳声。
她不知道自己的回答是对是错,是太浅,还是太深。
“几何引擎……”
米勒的声音再次响起,这次,他的语气里多了一点东西。
“这个词你从哪里听来的?”
“实验室的一位博士生告诉我的。
我对此非常感兴趣,但很遗憾,在公开的资料里,我找不到关于它更详细的说明。”
韩蕊巧妙地把问题抛了回去。
米勒没有直接回答,而是换了一个问题。
“你的简历上说,你在做一个关于金属凝固的模拟项目。
这是一个典型的流体力学问题。
如果让你来设计一个算法,在一台拥有多个MIPS处理器的并行计算平台上运行,你会如何考虑?”
这个问题,比之前那个要刁钻得多。
它不仅考察理论知识,更考察实际的工程思维。
韩蕊的脑子飞速运转。
MIPS,精简指令集,并行计算……
“首先,我会做区域分解。
将整个计算空间划分成多个子区域,每一个处理器负责一个子区域的计算。
这样可以最大程度地减少处理器之间的通信需求。
其次,是指令级的优化。
MIPS是精简指令集架构,单条指令执行速度很快,但功能单一。
我会和编译器一起工作,通过循环展开、指令调度等方式,将内层循环的计算效率压榨到极致,特别是浮点数乘加运算的流水线效率。
最后,也是最关键的,是数据同步问题。
在每个时间步迭代结束后,相邻子区域的边界数据需要交换。
我会设计一个异步通信的机制,让计算和通信可以部分重叠,避免处理器因为等待数据而产生空闲,从而提高整个平台的并行效率。”
一套临时方案下来,逻辑清晰,层层递进。
这已经不是一个学生在背书,而是一个有经验的工程师在阐述自己的设计方案。
电话那头,米勒彻底沉默了。
过了足足半分钟,他才开口,声音里带着一种难以置信的赞叹。
“韩小姐,你确定你只是一个硕士生?”
“我正在攻读硕士学位。”韩蕊回应道。
“好吧,硕士生。”米勒笑了笑。
“你是我今年面试的所有实习生里,最让我意外的一个。”
他停顿了一下,然后用果断的语气说道。
“我们不提供电话实习。
公司在山景城,你明白我的意思吗?
如果你愿意来加州,实习的职位就是你的。
我们会提供业内最有竞争力的实习薪水,以及差旅和住宿的补贴。”
“我愿意。”
韩蕊几乎没有犹豫。
“很好。
下周一,你会收到人力资源部发出的正式录用通知。欢迎加入SGI。”
挂掉电话,韩蕊靠在墙上,长长地吐出了一口气。
韩蕊感到这一切都显得那么不真实。
但她的心里,却是一片前所未有的火热。
她做到了。
她敲开了那扇通往技术核心的大门。
一周后,韩蕊暂时告别了柯林斯教授和马克,登上了从波士顿飞往旧金山的飞机。
当她站在SGI那栋充满未来感的玻璃幕墙大楼前时,
她知道,自己的留学生涯,将进入一个全新的阶段。
韩蕊的身份是实习软件工程师,工位被安排在图形驱动程序开发组。
带她的正是电话面试她的那位大卫·米勒。
米勒是一个不苟言笑的中年男人,他把韩蕊带到她的工位,指着桌上的一台IRIS工作站和旁边一个半人高的文件柜。
“你的工作,就是熟悉我们的驱动程序架构。
柜子里是所有的技术文档和代码打印稿,你可以随时查阅。
你的电脑上有完整的源码访问权限。”
他丢下一句话,转身就走进了自己的办公室。
韩蕊看着那个文件柜,心跳开始加速。
技术文档。
代码打印稿。
完整的源码访问权限。
她走到文件柜前,拉开其中一个抽屉。
里面整整齐齐地码放着几十本厚厚的蓝色封皮文件夹。
她随手抽出一本,封面上印着一行字。
几何引擎架构与程序员手册。
韩蕊的手指微微颤抖。
她翻开第一页,复杂的电路逻辑图、指令集列表、时序图和寄存器定义,扑面而来。
这些在外界被视为顶级技术,此刻就以最详尽的方式,呈现在她的面前。
只要将这些完全掌握,韩栋信中所说的各种难题都能够迎刃而解!
所有的一切,似乎都找到了答案!