電腦效能應用與安全研究室 Performance, Applications and Security Lab


我們的研究範圍很廣,從嵌入式系統、手機應用、一直到雲端計算、商務應用、資訊安全都有做。
我們的合作研究夥伴很多,包括聯發科、IBM、中研院、資策會,還有和台大、清大、交大的教授合組研發團隊
,包括高階應用處理器架構研究、虛擬化技術、異質計算、系統軟體等重要技術的研究與創新,我們很關切台灣人才與產業的未來。

2015年9月4日 星期五

回黃博奕同學給我的感謝卡


這是剛畢業的碩班生黃博奕給我的感謝卡。

博奕謙稱他進實驗室的時候什麼都不會。我想這不是他個人如此,事實上大部分(我想有十之八九)進到碩士班的學生,不懂什麼是系統研究,更不用說要怎麼在系統領域上找問題、解問題,實作能力也很不足。

我特別為了這樣的學生開一門「系統研究專題」的課,為學生快速補充做系統研究所需的知識和技能,包括:Linux kernel, virtualization, hardware/software co-design, performance analysis, simulation,搭配實驗室的研究計畫,讓學生有辦法在短期間做出若干成果。

有些學生喜歡想新點子,有些學生比較喜歡幫忙學長解決問題,博奕比較像是後者,他幫忙過幾個計畫,但難度都頗高的。他先是研究如何將異質系統架構(HSA)虛擬化,接著探討如何讓HSA架構的GPU支援快速的context switch,但這兩個題目都遇到一些實驗環境上的問題,實作遇到困難,產生不出實驗數據。

我知道博奕遇到這些問題時,嘗試了很多方法,已經比一般學生有毅力了,可說是不屈不撓。但有時候研究不能夠硬碰硬,尤其是碩士班,通常必須在一年半載的時間內做出結果,所以必須要學會變通。

距離口試不到半年,博奕主動提出新題目,研究GPU/FPGA在執行OpenCL版本的蒙地卡羅模擬程式的效能差異。我當時想,這個題目也不容易做,搞不好就得延畢,但是博奕認為這個題目可以學到新東西,所以就毅然決然開始做新題目。

寫過OpenCL程式的朋友應該知道,寫程式雖然有其門檻,但學會寫出對的程式並不難,難的是寫出效能好的程式。要出效能好的OpenCL程式,必須懂得平行計算和GPU的架構,不然就算你拿過ACM程式競賽獎牌也沒用。

最後,博奕不只讓這個用於輻射癌症治療規劃的MCML程式(http://omlc.org/software/mc/),在GPU上的效能大幅改進,還說到做到,還這個程式能轉到FPGA上跑。試問,沒有扎實的學習,怎麼有辦法在短期間做出這些成果?這些都是所謂「不足為外人道」的成就 -- 只有內行人才知道這種沒有絢麗外表的工作,最好是能在解決多個疑難雜症之後,對人輕描淡寫地說「沒什麼」。

所以當博奕提到他「心理素質」變得更好,我想這是他個人努力不懈的結果。所謂「要怎麼收穫,就怎麼栽」,在研究生的生涯,不要只看研究的結果,更要看自己在研究方法、態度、和精神上,是不是有所長進。心理素質的成長,有時候比課業上的進步還要重要。

很多前瞻的系統研發計畫,如果要成功,不只需要有創新想法,也需要有毅力和不畏困難。我相信博奕的做事態度,一定能讓他在工作單位成為貢獻良多的棟梁人才。

沒有留言:

張貼留言