Re: [請益] compiler engineer跟一般sw engineer差別

看板Soft_Job作者 (夏克維夫)時間4年前 (2021/12/06 20:39), 編輯推噓7(703)
留言10則, 9人參與, 4年前最新討論串2/2 (看更多)
※ 引述《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://www.ptt.cc/bbs/Soft_Job/M.1638794350.A.E89.html

12/06 21:54, 4年前 , 1F
感謝大大回覆,小弟我會認真學的:)
12/06 21:54, 1F

12/07 00:47, 4年前 , 2F
推推!!!
12/07 00:47, 2F

12/07 02:59, 4年前 , 3F
QQ
12/07 02:59, 3F

12/07 05:41, 4年前 , 4F
真的,只要編譯器是為了補救硬體缺陷而修改的刻板印象在
12/07 05:41, 4F

12/07 05:42, 4年前 , 5F
搶都來不及了,別人不要最好
12/07 05:42, 5F

12/07 08:09, 4年前 , 6F
推,推爆
12/07 08:09, 6F

12/07 13:32, 4年前 , 7F
強者我朋友 阿婆砍拍樂engineer
12/07 13:32, 7F

12/08 00:47, 4年前 , 8F
推 compiler 板發起板主
12/08 00:47, 8F

12/08 14:42, 4年前 , 9F
推強者
12/08 14:42, 9F

12/09 08:37, 4年前 , 10F
12/09 08:37, 10F
文章代碼(AID): #1XhWHkw9 (Soft_Job)
文章代碼(AID): #1XhWHkw9 (Soft_Job)