作者mshockwave (夏克维夫)
看板Soft_Job
标题Re: [请益] compiler engineer跟一般sw engineer差别
时间Mon Dec 6 20:39:07 2021
※ 引述《armorNoob (pro臭酸肥宅)》之铭言:
: 标题: [请益] compiler engineer跟一般sw engineer差别
: 时间: Fri Dec 3 14:42:58 2021
:
(小弟没有在台湾做过compiler的工作,但还是就我的经验丑人献曝一下)
: 各位大大好
: 小弟有几个疑惑
: 1. 想请问下写compiler的话,跟一般的sw会差很多吗?
我不太清楚你的"差很多"意思是什麽 但如果要说差别的话
compiler engineer 需要的 domain knowledge 会比较多一些 但除此之外
依然需要具备跟一般的SWE一样的技能
: C++写LLVM,扩充openCL语法,整个flow都会碰到
: 如果之後要转纯软不晓得年资会不会重算
:
: 2. 大部分时间focus的点会是在软体还是硬体?
: 听说要很多硬体的东西,不晓得这样会不会大部分都在搞硬体的架构,
: 软体的部分反而很少碰到。
简短的答案:看你接触的区块
极端一点的例子是你的工作只负责 Clang 里面的C++语意检查(Sema)
那这部分就基本上不会摸到硬体了
但如果以我过往待过的 compiler team 情况来看,通常工作分配不会分的那麽细
除了少数过於专门的问题以外 一般处理的工作里整个 compilation pipeline 都有
机会碰到。这时你软硬体都会接触了
当然主管的确会依照你擅长的部分分配 ticket,有时候你也会分配到某个
project,但通常你的生涯不会"只"解决特定的compiler问题
:
: 3. 如果跳其他写compiler的缺,多少知识是可以共用的?
: 听说韧体如果是不同device资历就会砍很重,compiler
: 也专攻硬体的知识,也会怕硬体不一样很多东西要重学,年资会被砍
并没有.jpg
如果真的发生这种事情 有问题的是该公司 不是你
compiler engineer 很多技能在不同公司都是可以适用的 即便硬体或者产品不同
你这边提到的硬体知识我猜最接近的就是 compiler backend 相关的
的确,架构不同很多东西都要重记 但不包括核心的知识 像是你大学学的计算机结构
或是 backend development 相关的知识。对方雇用的是你的不能取代的技能、经验,
以及解决问题的能力,而不是看你能不能回答x86_64最长的instruction有几个bits
这种google一下就可以出来的东西
举个最近发生的例子:LLVM X86 backend 的 code owner,Craig Topper 去年从
Intel 跳槽到 SiFive。他过去10几年都在跟 x86 backend 打混 (搞不好你问他
上面那个问题他还真的回答得出来),但是他现在在SiFive做的是...RISCV backend
X86 和 RISCV 两个天差地远的架构,但Craig还不是以 Staff 或 Senior Staff
engineer 身份被SiFive雇用。
: → VF84: 像 Chris Lattner 在 Apple 搞 swift,跳去 google 搞 12/03 16:25
: → VF84: Tensorflow,去年跳去 sifive 搞 riscv。最近还在弄什麽 12/03 16:26
: → VF84: MLIR,compiler 能玩的东西可多的咧 12/03 16:26
准确来说他最近正在朝EDA进军XD 用MLIR做 hardware compiler
: 推 VF84: 像是游戏主机公司也有在请 compiler 的人。他们那里在做的事 12/03 16:29
: → VF84: 就跟硬体一点关系也没有,你可以去问问 CompilerDev 版主 12/03 16:30
恩...我相信 PS/Xbox compiler team 有人的确是做跟硬体无关的工作
但他们的业务有很大一部分是我喜欢称作 "hyper-optimization"的东西:
针对单一一个处理器把软体效能搾到极致(这也是为啥都已经2021年了他们还是
认为出console有钱赚)这部分就需要超出一般 compiler engineer 所需的
硬体知识了。准确来讲你不只需要了解ISA,还要知道同ISA但不同处理器
在细节上 -- 例如 latency 或者记忆体存取方式 -- 的差异
: → VF84: 饿不死。只要电脑一天没消失,compiler 就绝对会持续存在 12/03 17:10
嘘~小声~不要讲出来 要不然 compiler engineer 因为很少人所以有薪水上的
优势这件事就会被发现了(喂
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.132.208.67 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1638794350.A.E89.html
1F:→ armorNoob: 感谢大大回覆,小弟我会认真学的:) 12/06 21:54
2F:推 eopXD: 推推!!! 12/07 00:47
3F:→ Firstshadow: QQ 12/07 02:59
4F:推 labbat: 真的,只要编译器是为了补救硬体缺陷而修改的刻板印象在 12/07 05:41
5F:→ labbat: 抢都来不及了,别人不要最好 12/07 05:42
6F:推 VF84: 推,推爆 12/07 08:09
7F:推 taffy128s: 强者我朋友 阿婆砍拍乐engineer 12/07 13:32
8F:推 ChampYen: 推 compiler 板发起板主 12/08 00:47
9F:推 snaketsai: 推强者 12/08 14:42
10F:推 CoNsTaR: 推 12/09 08:37