課 程 : 論文研討
班 級 : 資工產碩二
日 期 : 100年 10月7日
演講者 : 輔仁大學電機工程系王元凱教授
姓 名 : 張振欣
學 號 : 99366555
從電腦被發明在這個世界後,根據Moore定律:中央處理器的電晶體數量每18個月增加一倍,隨著資訊爆炸的世紀,人們也不段的要求更高速的運算速度,也不斷的提升CPU的處理時脈,然而卻發現高熱度的物理現象瓶頸,此時開始思考CPU透過循序方式處理資料,最簡單的例子就是,一個人做事比較快?還是多個人做事比較快?因此發展了多核心的中央處理器技術,透過多個核心平行處理資料,也得以繼續應付高速運算的時代。
這次課題非常的有意義,身為資訊界的我們,也一路看著資訊界發展至今,這真是個高速運算的轉類點,王教授以一個資訊發展的歷史小故事來開場白,重頭戲就是平行處裡的應用,「充分使用硬體替軟體加速!」很玄妙的形容,以往CPU在執行程式處理時,是以循序方式進行(Serial Computing), 所謂的Step by Step方式:程式一行一行的跑完!而平行方式(Parallel Computing), 是將整個程式切割N個部分,由N個核心同時處理,因此程式執行完成的速度差距是天壤之別!下圖簡單的描述兩者運算方式的差別:
這次也提到另一個主題CUDA, 由nVIDIA所發展的軟體執行平台,利用顯示卡上的GPU高速運算能力以及平行處理能力,來替CPU分擔運算壓力,讓CPU單純的負擔系統I/O、傳輸等繁重工作,讓執行程式運算的工作交給GPU來執行,自然而然地整理效能也更加的好,王教授這次課程的重點概念主要就是這點,我們現在看到的電影所運用維妙維肖的電腦特效,光是影像模擬運算所耗用的資料量是非常的大,若是傳統循序方式來跑程式,可能跑個一年半載,但是透過平行處理技術,速度縮短至幾個小時並不是難題!
王教授也分享了些訊息,即使仍然是傳統循序方式設計的程式,透過CUDA平台也是可以達到加速的效果,如果程式架構修改成平行處理架構,加速上百倍也不是問題,而且在CUDA平台中,也已經將平行處理方法包裝起來,程式直接呼叫就可以了,更是大幅度的減少程式修改的難度,因此我也可以想像我們也即將盡力超高速運算的時代。