[心得] 李濬屹 平行計算概論

看板NTHU_Course作者 (黑人電機機)時間2年前 (2021/08/27 16:33), 2年前編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
課名:平行計算概論 科號:CS 411100 老師:李濬屹 課本:無 課別:電資院專業選修 學分:3 涼度:★★★ 甜度:★★★★☆ 建議先修課程:計算機程式設計、計算機結構、(Optional)高等計算機結構 課程內容\簡介: 這堂課主要是教你如何去平行化一個程式,並講解在平行化的過程中,各個層面帶來的影 響(ex: 硬體配置、Performance評估)。 學期初: 先從CPU層面的平行化開始(Pthread, OpenMP),會複習到一些計算機結構的內容,接著會 介紹Message Passing Interface,這兩個部分會各出一個作業實作。 學期中: 開始介紹GPU的平行化策略(CUDA),同時也是這一門課比較重要的地方,因為現在GPU的運 算已經是趨勢所在。除了講解GPU的平行化架構外,會有三份作業讓我們用CUDA去實作各 種平行化的任務。 學期末: 講解平行化實際執行時會遇到的問題,包含: 如何根據目標去選定適合的方法去評估表現 (Performance Evaluation)、平行化的過程如何確保cache的正確性(Cache Coherency)等 等。這邊不會出相關作業,可以當作吸收知識去聽。 上課方式: 實體上課用投影片上課,投影片會先上傳到iLMS上,後面因為疫情就改成線上直播上課, 然後教授不會點名。XD 給分: Lab Assignment: 10% Homework * 5: 40% Midterm Exam: 20% Final Project: 30% 考試作業型態: 這堂課評分方式比較多元,有5次程式作業、1次期中考以及1次Final Project。 程式作業: 每次都會有一個指定的任務,助教會提供sequential code,讓我們嘗試去對它平行化。 作業評分的部分除了report (20%),還需要繳交code上去,由助教那邊的測資去做測試, 並以其正確性(40%)和運行時間(40%)作為評分標準。助教會在server上建立一個scoreboa rd,作為運行時間的排行榜,可以和同學比較誰的code比較快。 期中考: 範圍是到學期中教過的內容,雖然範圍有點多,不過考題並不會很刁鑽,基本上有好好讀 過講義兩遍就可以回答出來了! Final Project: 題目由學生自由發想沒有特別限制,只需要找到一個task,去對它做平行化後再寫報告討 論即可。有人是以merge sort的平行化作為題目,也有強者去做流體力學的模擬平行化, 所以各種有趣的題目都有。 老師的喜好、個性: 老師人很好,課程schedule制定都會參考同學意見,像是作業做不完延期或是期中考考試 時間等等都很有彈性,有問題都可以跟老師溝通~~ Btw期中考試時老師會訂飲料請大家邊寫邊喝 給加簽嗎? 因為寫作業的server資源有限,基本上不給加簽。不過在加退選階段,有一些人聽完課程 大綱,或是寫第一次作業後就退掉了,所以可以嘗試點點看! 如果真的很想加簽,也可以 前幾周都去教室聽課,表現出學習熱忱,或許老師會幫你加簽XD。 補充: 這堂課整體下來蠻充實的,不同面向的學習都有(考試、作業、project實作),學完之後 我才看懂GPU到底在幹嘛,然後真正學會該怎麼寫C/C++,以前系上程式設計課沒學好QQ。 另外,老師上課的講義算是擷取了重點部分,如果有看不太懂得部分或是想要學更多,我 覺得可以參考CMU的線上課程及講義。我覺得CMU的講義寫得很不錯,可以跟課堂講義搭配 一起看。 Link: http://www.cs.cmu.edu/afs/cs/academic/class/15418-s20/www/schedule.html 總成績:A+ 成績分布:未公開 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.136.149.106 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/NTHU_Course/M.1630053235.A.AE1.html ※ 編輯: blackmaninEE (114.136.149.106 臺灣), 08/27/2021 22:52:31
文章代碼(AID): #1XAADphX (NTHU_Course)