嵌入式学习者
我做过几年GPU性能建模,现在转做自动驾驶芯片的系统软件。说说我的直观感受。
技术深度上,两者都深,但“深”的地方不一样。性能建模是用C++/Python写周期精确或近似模型,仿真的数据量巨大,要会分析瓶颈,提出架构改进。这个岗位让你对GPU的流水线、缓存体系、并行计算有穿透性的理解,但容易离实际RTL和软件栈有点远,有时候像个“参谋部”。BSP/驱动是实打实的底层战斗,写代码让芯片跑起来,调通PCIe、DDR、各种IP,优化启动时间、中断延迟。你会对硬件寄存器、操作系统调度、内存管理有肌肉记忆般的熟悉。
不可替代性?我觉得系统软件工程师的护城河更“实在”一些,因为芯片出来总要有人让它工作,这部分知识非常依赖经验,且跨平台可迁移。性能建模的高手当然也极其稀缺,但更依赖所在公司的平台和工具链。
行业前景,GPU是现在最火的赛道,但巨头林立,新玩家压力大。自动驾驶芯片还在群雄逐鹿,未来五年肯定会洗牌,但天花板高。如果你赌对了公司,回报可能更大。
职业发展,性能建模岗更容易转架构或者去做AI硬件优化,路径比较清晰。系统软件工程师的路子更宽,可以深耕成为BSP/驱动领域的专家,也可以转到更上层的应用软件、中间件,或者因为熟悉整个软硬件栈而转向项目管理、产品管理。
给你的建议是,想想你每天坐在电脑前,是更愿意分析海量数据、画趋势图、写分析报告,还是更愿意对着电路图、数据手册、用调试器一行行啃代码。前者是A,后者是B。第一个工作会很大程度塑造你的思维模式,选那个让你更兴奋的。
