作者kyuudonut (善良老百姓)
看板graduate
標題Re: [心得] 外系準備資工所心得
時間Mon Feb 3 21:40:35 2020
在去年五月看到短ID大大 (shortid) 分享外系就讀資訊所心得時,
那時的我也剛口試完,也想發文響應,但無奈當時候還在趕實驗,因此作罷。
直到最近剛退伍才又想起這篇文章的存在,此文章的受眾設定為對於計算機系統
(Architecture/Compiler/Operating system) 有興趣的學生們,其中又主要為外系學生。
會寫下這篇文章的最大原因是,我發現其實許多計算機系統領域的前輩們,
都不是如我們所想像地原先就讀於本科系,
但系統的底層似乎又離非本科系的我們太過遙遠,
希望我的經驗能夠帶給有志於系統領域的大學生們一些參考。
網誌好讀版 (無廣告及音樂):
https://2henwei.blogspot.com/2020/02/thoughts-on-my-ms-degree-in-cs.html
-
原本這篇文章,在百般深思後,是打算不寫的。但在就職日 (On board) 來臨之際,內心
也隨之躁動而不安;我想,有必要藉此,順便喚醒我甫退伍後鬆散的思緒,同時也因為受
到太多人的幫忙,讓我感到有責任必須去紀錄在這個人生里程碑下 (Milestone) 間所發
生的事,供有需要的後輩參考。
-
故事得從 2015/11/4 開始說起,這天,我向成功大學交通管理科學系的 L 老師正式
請辭研究助理的工作,因自覺無法在此地繼續精進資訊系統相關的知識。我拿著當年暑假
參加的資訊比賽 (由中興工程顧問公司所舉辦) 所獲得的獎學金,毅然報名了資訊工程學
研究所的補習班課程。準備的心得可見我在 PTT 所發表的文章。
-
時間來到 2017 年 2 月,各研究所陸續放榜,我也順利地在臺灣大學找到指導教授,承
蒙 Y 老師不嫌棄我的管理背景下,收了我做研究生。我也在離研究所開學的這段時間
,選修了 jserv 老師在國立成功大學開設的系統軟體課程,藉以精進自己對計算機系統
的了解。
從我當時的期末個人評量可以看到,這堂課程啟蒙了我對當代電腦系統的認識,
不僅是程式碼專案的維護 (Coding style, build system, version-control system,
...),還有培養得以一窺網路上開源專案 (Open source project) 的能力。除了大家一
般在意的實作之外,老師也會指派會議論文 (Conference paper) 給我們撰寫心得報告 (
直到碩二時,回去翻過往記錄才發現:哇,以前讀的是一篇 TACO paper 啊!)
最後,修這堂課還可以體驗在三更半夜裡,老師不斷在 GitHub 發 Comments/PRs 過來;這麼好的課,不修嗎?
-
然而,與 jserv 老師的緣分並未隨著課程結束而日薄,在學期即將結束之際,我在
Facebook 發了訊息給老師,表明想一起研究當時 Java 9 所新增的 AoT (Ahead-of-Time) feature。
這也是我第一次,從無到有,去設計數個實驗去測試幾個仍在開發中的程式碼專案
(OpenJDK & OpenJ9),相關成果可見 JCConf 2017 的錄影。
也因為這樣的經驗,jserv 老師繼續邀請我加入國立成功大學分散式帳本實驗室 (DLTcollab),並籌備了 dcurl 專案,藉以榨乾 (Utilize) 伺服器硬體架構來加速 Proof of Work
(PoW) 的運算,相關成果可見 SITCON 2018 的錄影。
-
儘管在系統實務上的經驗有所建樹,我在碩士班一年級裏唸得並不是很開心。因為研究課
題認知上的歧異 (Accelerate/optimize machine learning system),在 2018 甫過完年
的學期初,我決定更換指導教授到 H 老師的實驗室,堅持研究新興的計算機架構
RISC-V。
可想而知,這段時間的心理壓力非常大,因除了未定的研究題目外,暑假亦得前
往老師安排的新竹晶心科技架構設計部實習;但在事後,這也是我認為在學涯期間,所獲
得很有價值 (Valuable) 的經驗之一。實習結束後,
我也順水推舟地安排產學兩邊的合作,一同進行向量架構 (Vector architecture) 的研究。
進行這個研究題目的難處在於:向量架構在電腦科學史裏算得上是一種上古技術。
研究過程中,我彷彿在進行某種資訊領域的文藝復興,一邊閱讀著 2,30 年前的文獻,
一邊從 H 老師口中摸索曾經的微架構 (Microarchitecture) 細節 (註: H 老師曾於 Cray Research 工作,後者為當時超級電腦市場霸主。)
當我描繪出心目中的架構設計,還得與新竹晶心確認是否夠實際 (Practical);
當我考慮到太多實作細節時,便不曉得該如何在期限內完成研究。而這兩邊的權衡,
也一直為架構領域學生們 (Architecture students) 所困擾著。而等到我完
成模擬器 (Simulator) 的實作後,已約是 2019 年 2 月中了,與 H 老師設計幾個實驗後
,便順勢投稿在臺灣舉辦的 RISC-V Workshop 發表,成果可見錄影。
在三月份的 RISC-V Workshop 發表結束後,又花了一個月撰寫碩士論文以準備五月份的
論文口試 (發表結束後的茶會,H 老師突然跟我說可以畢業了,可以不要這麼突然嗎?)
口試後的兩個月期間,因為實驗工具已儼然成形,又另外準備了幾個關於編譯器最佳化
(Compiler optimization) 的實驗,準備投稿其他研討會。
求職方面,我前往面試的 MediaTek, Qualcomm, Synopsys, SiFive 都有獲得頗正面的評價,
由於面試過程過於冗碎,不在此贅述。最後,碩士學涯便在投稿及求職完成後平靜地結束。
-
文末,我想鼓勵外科系對計算機系統有興趣的學生,努力爭取充實自己的機會。如果我大
四沒有跑去修成功大學電機系陳中和老師的 Computer organization (當時還並未決定轉
唸資訊所),Y 老師或許就不會收我這個外系學生做 RA;
如果我沒有在暑假時與 jserv 老師一起研究 Java virtual machine 以及跑去 H 老師的虛擬機器課堂上踴躍發問,H 老師可能也不會收我這中途學生;
如果我沒有去新竹晶心科技實習,我的模擬器也不可能在 RISC-V vector specification
都還沒有確定的情況下,花費四個月完成。
而在做這些決定之前,我都還沒有想過這麼多意料之外的事情會發生。正因為如此喜歡計算機系統運作的細節,讓我們願意拉起衣袖、弄髒雙手,踏離原本的舒適圈,一頭埋入這個世界。
zhenw
--
◢ ◣ ▁▂█▂▁◢茄你老木! ◥ ▁▂▁
你這個茄子 ◤◥◤◥ 你有得茄嗎? ◢█ ◆ █◣ 【茄~】
◣ ◤ ˋ ˊ ◥ 你有得茄嗎?◢ ◤ ◥◥◤◤ ◥ ◤
◤ ㄧ ◣ ◤ (因為很重要 ▉ ⊙ ⊙ ▏
…
▍ 所以說兩次)▉ △ ◢ ▏
◣ ◤◤ ◣ ◤◢ ψJeans1020
◢ ◣ ▁▂█▂▁◢茄你老木! ◥ ▁▂▁
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.16.173 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/graduate/M.1580737240.A.D78.html
1F:推 DLHZ: 大推 140.113.176.41 02/03 21:47
2F:推 nickman0718: 推 223.137.48.225 02/03 21:57
3F:推 ok8752665: 猛ㄛ 114.137.51.145 02/03 21:59
4F:推 cococing: 推 39.11.69.0 02/03 21:59
5F:→ canson: 北科大比较好··· 180.176.52.38 02/03 22:12
6F:推 kyrie77: 推一個111.252.192.112 02/03 22:13
7F:推 mistel: 推 42.72.204.44 02/03 22:44
8F:推 derekjj: 猛 真神人 101.12.100.249 02/03 22:51
9F:推 YandereLove: 好猛 42.72.150.79 02/03 22:54
10F:推 plsmaop: 看來是徐老師了,徐老師真的厲害 36.231.112.15 02/03 23:04
11F:推 parsons12342: 推180.217.197.171 02/03 23:09
12F:推 odanaga: 太猛熱 124.218.48.175 02/03 23:14
13F:推 tataTangQQ: 推 真希望有一天我能對開源有貢獻 111.248.14.28 02/03 23:16
Don't hesitate, just show your code out!
14F:推 Curvacks: 推 1.160.12.59 02/03 23:44
15F:推 ken52011219: 好久不見 k大推 1.173.136.54 02/04 00:07
好久不見!
16F:推 gR7P4zXH: 哇 1.163.77.23 02/04 00:16
17F:推 Dnfcallan: 好猛 61.231.176.147 02/04 06:02
18F:推 deltoidhuang: 好猛 推111.241.233.237 02/04 08:19
19F:推 bobsonlin: 推 101.9.161.83 02/04 09:18
20F:推 wl00888294: 推 文筆也超好 101.15.160.29 02/04 10:44
21F:推 ShenJing: 大推後續更新,對當年k大的考研心得文跟 39.9.41.134 02/04 11:41
22F:→ ShenJing: 解題還有印象 39.9.41.134 02/04 11:41
考研心得真的只是一個手段,希望大家還是能在 C.S. 找到自己的熱愛
23F:推 nn3356: 好猛 114.25.153.244 02/04 13:12
※ 編輯: kyuudonut (115.82.19.1 臺灣), 02/04/2020 15:43:22
24F:推 kevin020504: 推推 42.74.186.101 02/04 16:02
25F:推 sunmezz: 推厲害學長!180.204.149.163 02/04 16:39
26F:推 dmeiki: 推 39.13.98.48 02/04 20:15
27F:推 shortid: 推最後一段QQ 219.70.167.6 02/04 22:34
28F:推 yoyoyeeee: 推推 101.13.240.226 02/05 10:00
29F:→ GeniusPuddin: 推 太神... 114.24.203.64 02/05 18:51
30F:推 joey11121: 推我店校神課老師jserv 119.14.9.131 02/05 20:56
31F:→ joey11121: 你該不會是+的指導學生吧,聽說她很嚴 119.14.9.131 02/05 20:58
32F:→ joey11121: 格 119.14.9.131 02/05 20:58
是的,Y 老師看研究方向很準,如果有志要唸 PhD 的學生很推薦找 Y 老師,
強者我同學碩二時就發了一篇 ISCA。
另外資源方面,老師很給力,不用太怕沒機器做實驗,只能說研究方向吻合的話,
跟著 Y 老師研究會做的蠻過癮的。但版上好像比較少 Y 老師的資訊 :p
※ 編輯: kyuudonut (115.82.19.1 臺灣), 02/06/2020 00:02:38