Verilog练习生
绝对会深入考察,这几乎是区分候选人的关键了。常规的体系结构知识是门槛,现在大家卷的都是对前沿模型和硬件协同设计的实战理解。你提到的稀疏化、量化、数据流编排,正是当前AI芯片架构的核心战场。
从准备的具体内容来看,我建议你聚焦以下几个点,这些都是我面试时被问过或听朋友分享的:
1. 注意力机制的硬件友好性改造:面试官可能会问,原始的Softmax注意力有哪些硬件不友好的地方(比如高精度指数计算、动态范围大)?你知道有哪些近似注意力算法(如FlashAttention)吗?它们从硬件角度看优化了什么(减少HBM访问)?你能不能从数据复用和并行度的角度分析一下?
2. 片上存储层次的设计权衡:这和你IC设计经验相关。问题可能很具体,比如:“给定一个预算(面积、功耗),为Transformer主要层设计片上SRAM,容量和带宽如何权衡?是多bank小SRAM还是集中式大SRAM?为什么?” 你需要理解不同层(Attention、FFN)对带宽和容量的需求差异。HBM的知识也要懂,比如如何通过数据分块(Tiling)来掩盖HBM的高延迟。
3. 从算法优化到硬件映射的完整链条:这是系统架构师的核心能力。他们可能会给你一个简单的算法变更(比如一种新的激活函数或稀疏模式),问你这对数据通路、控制逻辑、存储系统会产生什么影响。你需要展示出“算法-架构-电路”的联动思考能力。
如何准备?光看书不够。最好能找到一些开源项目(比如TVM、MLIR的某些例子),或者学术论文(ISCA、MICRO、HPCA会议上关于AI芯片的),看看别人是怎么做硬件建模和优化的。自己动手用Excel或简单Python脚本为一个小型Transformer模型做一下带宽和计算量的估算,体验一下瓶颈分析的过程。面试时,结合你的项目经验,清晰地阐述你的思考过程,比直接抛出一个完美答案更重要。
