(此崗位為外包崗位)
崗位職責:
1.參與自研異構芯片上包括Linux驅動、運行時、編譯器、應用層等組件在內的軟件棧規劃、需求分析、以及軟件棧設計的可行性評估;
2.與硬件工程師合作,評估異構芯片在上述基礎軟件棧可實現性上的表現,作為優化硬件設計的依據;
3.芯片核心模擬器、應用軟件框架SDK的選型,以及基于SDK的適配開發;支持應用軟件團隊基于SDK框架的算法和應用開發;
4.參與分析和解決芯片研發和驗證過程中的問題,包括指令流水、離散和DMA訪存、IO、計算等方面;
5.參與分析和解決硅后板級應用調試中遇到的各類問題,通過分析和實驗有效收斂問題范疇。
崗位要求:
1.熟悉Linux開發環境和常用命令行,熟悉git、vim等開發工具;
2.了解Linux系統中從頂層應用、解釋性語言、高級語言、運行時庫、系統調用、驅動、內核、直到底層芯片和板級的多層軟硬件棧構成,了解GPU等異構芯片的多層軟硬件棧的常規組建方式;
3.熟悉編譯器從前端、中端、后端、鏈接到加載的一般性流程;
4.熟悉計算機體系結構和各級硬件并行化設計方法者優先,了解常見的硬件并行化性能挖掘和評估方法;
5.熟悉CUDA、OpenMP、OpenCV等并行編程模型者優先;
6.具有Linux驅動、內核、虛擬化等領域開發經驗者優先;
7.具有LLVM或GCC、MLIR等編譯器開發經驗者優先;
8.有良好的學習能力、溝通能力和團隊合作能力,工作態度端正。