2020年2月3日 星期一

研究所畢業了

研究所畢業了,
陸軍退伍了,
工作要 On Board 了,
能走到這裡真的太不可思議了。

2015 年 11 月。
時處大四的我終於向成大交管系上的研究室請辭研究助理的工作,因自覺無法在這邊繼續精進資訊系統相關的知識。我拿著由中興工程顧問公司的獎學金報名了補習班。

 2017 年 2 月。
各研究所陸續放榜,我也順利地在臺灣大學找到指導教授,承蒙楊佳玲老師不嫌棄我的科系背景下,收了我做研究生。我也在離開學的這段時間,選修了 jserv 老師在成功大學開設的系統軟體課程,藉以精進自己對計算機系統的了解。從我當時的期末個人評量可以看到,這堂課程啟蒙了我對當代電腦系統的認識,不僅是程式碼專案的維護(Coding style, build system, version-control system, ...),還得以一窺網路上開源專案的能力。除了大家一般在意的實作之外,老師也會指派研討會論文給我們撰寫心得報告(直到碩二時,回去翻過往記錄才發現:哇,當初讀的是一篇 TACO 論文啊。)最後,修這堂課還可以體驗在三更半夜裡,老師不斷在 GitHub 發 Code Review 跟 Pull Requests 過來。這麼好的課,不修嗎?

2017 年 6 月。
成大畢業後,我在 Facebook 發了訊息給 jserv 老師,表明想一起研究當時 Java 9 所新增的 AoT (Ahead-of-Time)功能。這也是我第一次去設計數個實驗去測試幾個仍在開發中的程式碼專案 (OpenJDK & OpenJ9),相關成果可見 JCConf 2017 的錄影。也因為這樣的經驗,jserv 老師繼續邀請我加入國立成功大學分散式帳本實驗室 (DLTcollab),並籌備了 dcurl 專案,藉以伺服器硬體架構來加速區塊鏈所需的 PoW(Proof of Work)的運算,相關成果可見 SITCON 2018 的錄影

2018 年 2 月。
我更換到徐慰中老師的實驗室,開始研究新興的計算機架構 RISC-V。

2018 年 7 月。
暑假期間前往老師安排的新竹晶心科技架構設計部實習。我大概花了兩週的時間處理 SPEC Benchmarks,方便工程師進行量分。剩下的六週在前輩的指導下,在公司的處理器模型上實作了實驗性質的分支預測演算法。最後一週也有跟 Designer 報告結果,不過已經忘記有沒有採納了就是。

2018 年 9 月。
回來學校後,我跟徐老師確定了研究題目是想要做 RISC-V Vector 架構的效能分析。也因爲前面在晶心科技的經驗,我們簽訂了產學合作,得已讓我繼續在晶心的處理器模型上進行我的研究。當時進行這個研究題目的難處在於:Vector Architecture 在電腦科學史裏是一種骨灰技術,你不太能向其他研究生一樣單純看最新的 Top Conference Papers。研究過程中,我彷彿在進行某種資訊領域的文藝復興,一邊閱讀著 20、30 年前的文獻,一邊聽著徐老師口述 Cray Research Vector Supercomputer 的 Microarchitecture 細節。當我描繪出心目中的架構設計,同時得與晶心工程師確認是否夠實際;但當我考慮到太多實作細節時,便不曉得該如何在期限內完成研究。這兩邊的權衡,實在很兩難。

2019 年 2 月。
完成 Performance Model 後,便與徐老師設計幾個實驗,整理結果後投稿 3 月在臺灣舉辦的 RISC-V Workshop 發表,成果可見錄影。有趣的事情是,發表結束後的茶會,徐老師就邊吃東西邊跟我說:「你可以畢業了。」老師!可以不要這麼突然嗎!

2019 年 4 月。
我記得我每天都穿著很邋遢,拿著功能最破爛的筆電,跑去社科院圖書館寫作碩士論文,同時準備五月份的論文口試。

2019 年 6 月。
口試順利結束。因為各種實驗工具已儼然成形,跟徐老師又另外準備了幾個關於編譯器最佳化的實驗,準備投稿國際研討會。

2019 年 8 月。
好消息與壞消息。壞消息是,國際研討會都沒有投稿成功,真是愧對徐老師跟中研院的吳老師及洪學長。好消息是,求職方面很順利,我前往面試的 MediaTek, Qualcomm, Synopsys, SiFive 都有獲得正面的評價。

最後。
碩士學涯便在投稿及求職完成後,辦理離校手續中安靜地結束。

如果我大四沒有跑去修成功大學電機系陳中和老師的計算機組織,楊老師或許就不會收我這個外系學生做研究助理。如果沒有楊老師的敦促,我閱讀的論文量可能寥寥可數。如果沒有跟 jserv 老師一起研究 Java 虛擬機器,徐老師可能不會收我這中途學生;如果我沒有去新竹晶心科技實習,論文研究不可能僅花費四個月完成。

填大學志願的時候完全沒有想過這麼多事情啊。
這真是太不可思議了。

沒有留言:

張貼留言