1 課程背景
2006年是有計(jì)算機(jī)歷史以來處理器更新?lián)Q代最快的一年,以Intel與AMD為代表的處理器廠商在年初發(fā)布了雙核處理器,之后發(fā)布了多款雙核處理器,在2006年底又發(fā)布了四核處理器,2007年1月10日,英特爾展示了配置兩個(gè)四核處理器的八核計(jì)算機(jī),多核處理器開始全線進(jìn)入市場,計(jì)算機(jī)多核時(shí)代真正來臨。到2006年底,多核處理器出貨量已經(jīng)達(dá)到處理器總出貨量的90%以上。在未來幾年里,處理核的數(shù)目將會(huì)越來越多,根據(jù)Intel公司的處理器發(fā)展路線圖,Intel在2010年的主流處理器將是128核到144核。除此之外,其他的一些芯片廠商也在研發(fā)更多核的處理器,其中美國硅谷一家創(chuàng)業(yè)公司Rapport宣布,計(jì)劃開發(fā)整合了1000個(gè)簡單處理器的芯片。多核時(shí)代的到來無疑揭開了計(jì)算機(jī)發(fā)展歷史的新篇章。
相對(duì)于多核處理器如雨后春筍般不斷推出的發(fā)展速度,軟件業(yè)對(duì)多核時(shí)代的到來并沒有做好充分的準(zhǔn)備。正如微軟公司軟件架構(gòu)師Herb Sutter在2005年In-Stat/MDR秋季處理器論壇會(huì)議上所指出的,處理器廠商未能確切了解多核的設(shè)計(jì)為軟件行業(yè)帶來多少額外工作,客戶端應(yīng)用程序開發(fā)者多年來一直停留在單線程世界,生產(chǎn)所謂的“順序軟件”,但是多核時(shí)代到來的結(jié)果是軟件開發(fā)者必須找出新的開發(fā)軟件的方法。這對(duì)于軟件廠商和學(xué)術(shù)界來說都是一個(gè)巨大的挑戰(zhàn)。
對(duì)于作為計(jì)算機(jī)人才培養(yǎng)主要基地的高等院校來說,如何調(diào)整計(jì)算機(jī)教育課程以適應(yīng)多核時(shí)代的到來也是一個(gè)新的挑戰(zhàn)。隨著多核技術(shù)的發(fā)展,可以預(yù)見目前以及未來大多數(shù)的軟件開發(fā)都將以多核芯片為基礎(chǔ)硬件平臺(tái)。從2005年起,計(jì)算機(jī)知識(shí)體系與教學(xué)體系就應(yīng)該根據(jù)硬件發(fā)展走勢(shì)作相應(yīng)的變化,例如從編程語言到軟件工程,從計(jì)算機(jī)組成到芯片設(shè)計(jì),都可以引入多核技術(shù)。未來的編程語言、數(shù)據(jù)結(jié)構(gòu)、算法理論、軟件工程等都將隨著多核的出現(xiàn)而進(jìn)行修訂,計(jì)算機(jī)硬件方向的課程變化則更大。
但是,大部分相關(guān)專業(yè),包括計(jì)算機(jī)專業(yè)、電子工程、自動(dòng)化等專業(yè)方向的課程沒有進(jìn)行相應(yīng)的修改,尤其是計(jì)算機(jī)專業(yè),目前培養(yǎng)畢業(yè)的學(xué)生還不具備在主流計(jì)算機(jī)硬件上做開發(fā)的能力。究其原因是多核的發(fā)展振聾發(fā)聵,產(chǎn)業(yè)界與教育界都還來不及建立相應(yīng)的課程體系。
我們?cè)谶^去的一年中對(duì)大學(xué)生與工程師做多核培訓(xùn)過程中,對(duì)多核以及多線程技術(shù)的需求進(jìn)行了調(diào)查。目前企業(yè)對(duì)有能力利用多核硬件的人才需求很旺盛,但是如何界定多核人才是模糊的。有25%的工程師當(dāng)前正在使用多核與多線程相關(guān)的技術(shù);有35%的工程師認(rèn)為在未來的一年(即2007年)將會(huì)在工作中使用多核以及多線程技術(shù),其余65%的工程師都認(rèn)為多核以及多線程技術(shù)將會(huì)有利于普及。90%以上的大學(xué)生認(rèn)為需要在大型課程中學(xué)習(xí)在實(shí)際中會(huì)遇到的多核以及多線程技術(shù)。
在這樣的背景下,為了適應(yīng)多核時(shí)代對(duì)計(jì)算機(jī)人才的需要,浙江大學(xué)計(jì)算機(jī)學(xué)院計(jì)算機(jī)體系結(jié)構(gòu)及支撐環(huán)境課程小組從2005年開始進(jìn)行多次研討,決定在多核時(shí)代到來之初就開始探索計(jì)算機(jī)相關(guān)課程的革新。在計(jì)算機(jī)技術(shù)應(yīng)用方面,設(shè)置本科生多核編程課程,培養(yǎng)熟悉多核硬件架構(gòu)、面向多核硬件進(jìn)行軟件開發(fā)的人才;在計(jì)算機(jī)科學(xué)研究方面,設(shè)置研究生多核課程,培養(yǎng)了解國際計(jì)算機(jī)研究前沿、能勝任計(jì)算機(jī)體系架構(gòu)研究即基于多核的硬件和系統(tǒng)軟件設(shè)計(jì)的研究型人才。同時(shí),通過課程的開設(shè),有助于企業(yè)明晰什么樣的人才,是掌握多核以及多線程技術(shù)的人才。
2 參考課程設(shè)計(jì)
浙江大學(xué)計(jì)算機(jī)學(xué)院在設(shè)計(jì)自己的多核課程時(shí),查閱了大量的相關(guān)文獻(xiàn)資料,了解了國外著名高校相關(guān)課程對(duì)多核技術(shù)的適應(yīng)性改造。
CC2005與CCCE2004是計(jì)算相關(guān)課程設(shè)計(jì)提供的指導(dǎo)性建議。CC2005中涉及目前的多核部分包括了Hardware and devices領(lǐng)域中的Design a chip與Program a chip兩部分。在CCCE2004中,涉及多核的有:10課時(shí)的CE-CAO6(Processor systems design)、3課時(shí)的CE-CAO9(Distributed system models)、12課時(shí)的CE-DIG6(Digital systems design)、選修的CE-ESY8(Embedded multiprocessors)。
顯然在這兩份權(quán)威的報(bào)告里面缺少了多核技術(shù)相關(guān)課程的建議,無論是多核體系結(jié)構(gòu),還是多核軟件開發(fā),都未涉及。究其原因是這兩個(gè)報(bào)告推出于多核處理器推出之前,這讓我們?cè)谠O(shè)計(jì)課程時(shí)無法從中獲取有效的信息。
是等待美國計(jì)算機(jī)學(xué)會(huì)(ACM)、美國信息系統(tǒng)協(xié)會(huì)(AIS)和電氣和電子工程師協(xié)會(huì)計(jì)算機(jī)社區(qū)(IEEE-CS)推出下一個(gè)版本的計(jì)算機(jī)課程,還是走在技術(shù)發(fā)展的前沿去開發(fā)適應(yīng)多核時(shí)代的課程,是否有能力開發(fā)相關(guān)的課程,是擺在我們面前的問題。
表1羅列了CMU、MIT、Backley、Harvard,Stanford這五個(gè)國際一流大學(xué)課程計(jì)劃中與多核技術(shù)相關(guān)的課程。這些課程主要包括了分布式系統(tǒng)、并行計(jì)算與性能優(yōu)化方向的課程,還都是從傳統(tǒng)計(jì)算機(jī)角度設(shè)置課程,有沒有針對(duì)多核的課程,能否提供我們參考。世界上一些高校已經(jīng)開始作了很多嘗試。2006年5月10~11日,在美國俄勒岡州(Oregon)的Tigard召開了全球多核課程會(huì)議,包括清華、北大、上交、復(fù)旦、浙大、香港科大等來自34個(gè)國家51所高校的教師研討了多核技術(shù)在大學(xué)課程設(shè)置與教學(xué)方法的相關(guān)問題。這些世界上著名的高校都開始或者有計(jì)劃在相關(guān)專業(yè)開設(shè)計(jì)算機(jī)多核課程。
麻省理工學(xué)院(MIT)與喬治亞理工學(xué)院(GIT)最早啟動(dòng)多核課程。MIT從2003年起開始在Theory of Parallel Systems課程中講授Cilk語言(一種多線程C語言),2006年開始逐步在該課程中增加Cilk多核編程的內(nèi)容,并且在硬件平臺(tái)方面從UltraSPARC,Origin2000,AlphaServer,Intel SMP擴(kuò)展到Intel的多核平臺(tái)上。
GIT的電子和計(jì)算機(jī)工程學(xué)院在多核課程方面走得更為大膽,他們?cè)?006年春開設(shè)新的多核課程,面向高年級(jí)本科生和研究生,內(nèi)容涉及到系統(tǒng)和體系、編譯和編程語言、高性能計(jì)算和應(yīng)用、企業(yè)計(jì)算和信息綜合以及嵌入式應(yīng)用程序接口等。GIT還將改造一系列課程以適應(yīng)多核技術(shù),包括操作系統(tǒng)設(shè)計(jì)、高級(jí)操作系統(tǒng)、計(jì)算機(jī)組成、分布式計(jì)算、計(jì)算機(jī)體系和高性能通訊等13門課。
香港科技大學(xué)也將在2007年春開始新的多核編程課程,并且改造程序設(shè)計(jì)、計(jì)算機(jī)體系、微處理器體系、嵌入式系統(tǒng)等課程。
都柏林大學(xué)圣三一學(xué)院改造了他們的并行計(jì)算課程以適應(yīng)多核技術(shù),他們改造了并行編程模型、線程同步和通訊、進(jìn)程/線程調(diào)度、測試和調(diào)試策略、并行體系結(jié)構(gòu)、Cache和內(nèi)存管理、Cache-aware軟件開發(fā)等內(nèi)容,并增加了線程池、投機(jī)多線程、決定論和超線程等新內(nèi)容。
這些課程的實(shí)踐與嘗試,給了我們很好的參考,我們通過研討多核技術(shù)本身與對(duì)其他技術(shù)的影響,分析了多核方面的課程設(shè)置方案。
3 多核技術(shù)的知識(shí)點(diǎn)分析
我們認(rèn)為多核技術(shù)涉及的知識(shí)點(diǎn)如圖1所示。這些多核技術(shù)相關(guān)的知識(shí)點(diǎn)都需要在多核課程中涉及,包括:
* 多核SOC芯片技術(shù)
* 多核芯片與傳統(tǒng)單核微處理器、SMP的區(qū)別
* 多核下的各種硬件設(shè)計(jì)技術(shù)(Cache與存儲(chǔ)一致性、網(wǎng)絡(luò)互連、IO管理)
* 并行體系與多核體系結(jié)構(gòu)
* 典型多核芯片:Cell、OpenSparc、Intel雙核芯片、AMD雙核芯片
* 嵌入式多核芯片技術(shù)
* 多核平臺(tái)結(jié)構(gòu)與芯片組支持技術(shù)(包括固件技術(shù))
* 多核操作系統(tǒng)
* 多核系統(tǒng)軟件對(duì)并行編程的支持
* 多線程編程對(duì)多核的支持
* Windows多核多線程編程技術(shù)
* Linux多核多線程編程技術(shù)
* OpenMP對(duì)多核的支持
* 多核平臺(tái)上的編譯優(yōu)化技術(shù)
* 多核平臺(tái)上編譯工具
* 多核API優(yōu)化函數(shù)庫
* 多核多線程程序的性能評(píng)測方法
* 多核多線程程序的性能評(píng)測工具
所有這些多核技術(shù)相關(guān)的知識(shí)點(diǎn)中,一部分屬于多核編程技術(shù)與技巧,可以結(jié)合多核編程工具與性能調(diào)優(yōu)工具,通過編程實(shí)踐鍛煉學(xué)生對(duì)多核編程能力的培養(yǎng)。另一部分屬于并行計(jì)算機(jī)與數(shù)字芯片技術(shù)方向的最前沿,可以作為研究生的課程,擴(kuò)大學(xué)生們的知識(shí)面,了解計(jì)算機(jī)體系結(jié)構(gòu),并行計(jì)算和芯片設(shè)計(jì)技術(shù)等領(lǐng)域的最新熱點(diǎn)。
4 浙江大學(xué)的多核課程設(shè)計(jì)
綜合上述高校的多核課程以及我們對(duì)多核技術(shù)涉及的知識(shí)點(diǎn)分析,我們?cè)O(shè)計(jì)了浙江大學(xué)的多核課程體系。是集中這些知識(shí)于獨(dú)立課程,還是分布到各相關(guān)課程中,是第一個(gè)問題。考慮到目前多核技術(shù)推出不久,集中力量把這些內(nèi)容介紹清楚,我們認(rèn)為是合適合理的。
獨(dú)立的多核課程,其教學(xué)目的是讓學(xué)生了解當(dāng)前計(jì)算機(jī)芯片設(shè)計(jì)領(lǐng)域中新興多核體系設(shè)計(jì)的基本原理、技術(shù)難點(diǎn)、目前發(fā)展?fàn)顩r以及對(duì)計(jì)算機(jī)領(lǐng)域帶來的相關(guān)影響等,通過建立體系經(jīng)典理論研究和實(shí)際的發(fā)展方向之間的橋梁,為將來從事體系結(jié)構(gòu)領(lǐng)域、系統(tǒng)軟件領(lǐng)域以及相關(guān)領(lǐng)域的高水平研究打好扎實(shí)的基礎(chǔ)。
多核課程面向的對(duì)象可以包括計(jì)算機(jī)專業(yè)以及相關(guān)專業(yè)。從事高性能計(jì)算的學(xué)生,可以從這門課程學(xué)習(xí)到如何將并行計(jì)算與現(xiàn)代多核處理器結(jié)合起來;從事應(yīng)用軟件開發(fā)的學(xué)生,可以學(xué)習(xí)到如何發(fā)揮現(xiàn)有硬件的性能。
學(xué)習(xí)該課程的基本目標(biāo)是通過本課程的學(xué)習(xí),使學(xué)生掌握多核體系的基本原理、典型設(shè)計(jì)策略、操作系統(tǒng)和編譯器的相應(yīng)設(shè)計(jì)、編程方式的變化方向等,并通過查閱這些領(lǐng)域的最新文獻(xiàn)來不斷更新知識(shí)。
考慮到多核課程涉及面很廣,包括了把多核技術(shù)應(yīng)用在計(jì)算機(jī)技術(shù)上,以及多核體系、優(yōu)化等不同層次的兩個(gè)方面,我們將多核課程分為兩個(gè)部分,分別面向計(jì)算機(jī)學(xué)院高年級(jí)本科生和研究生。
由于多核技術(shù)很大程度上是由產(chǎn)品推動(dòng)教學(xué),我們更加重視實(shí)踐環(huán)節(jié),為本科生和研究生設(shè)計(jì)了三部分的實(shí)踐訓(xùn)練,包括實(shí)驗(yàn)、project和相關(guān)研究項(xiàng)目。其中實(shí)驗(yàn)、project包括在課程之中,學(xué)生可以借助FPGA開發(fā)板、多核計(jì)算機(jī)、多核軟件等實(shí)驗(yàn)設(shè)備學(xué)習(xí)多核技術(shù)。研究項(xiàng)目是針對(duì)對(duì)多核研究有興趣的學(xué)生,可以加入多核技術(shù)實(shí)驗(yàn)室的研究小組。
4.1 本科生“并行計(jì)算與多核編程”課程
我們?cè)O(shè)計(jì)的本科生課程,名稱為并行計(jì)算與多核編程,作為專業(yè)選修課程,使用的教材暫定為Intel Press的《Multicore programming》,以后會(huì)使用我們與清華、北大、復(fù)旦、上海交大合作編寫的多核編程教材,該教材將于2007年9月啟用。
本科課程完全以編程訓(xùn)練為主,結(jié)合多核編程工具,通過編程作業(yè)鍛煉學(xué)生多核編程能力。希望學(xué)生在了解多核體系結(jié)構(gòu)和系統(tǒng)軟件設(shè)計(jì)的基礎(chǔ)上,學(xué)習(xí)多核平臺(tái)上的并行編程設(shè)計(jì),學(xué)到多核硬件與單核在編程技巧上的差異性,以及多核程序評(píng)測和調(diào)優(yōu)工具的使用以及優(yōu)化技巧。課程共2學(xué)分32學(xué)時(shí)。其簡要大綱如下:
(1)多核系統(tǒng)概述。介紹并行體系與多核體系結(jié)構(gòu)的起源和特點(diǎn),典型多核芯片Cell、Intel雙核芯片體系分析,多核系統(tǒng)軟件對(duì)并行編程的支持,共計(jì)4學(xué)時(shí)。
(2)并行編程技術(shù),介紹多線程編程技術(shù)、Windows多線程技術(shù)、Unix下Pthread編程優(yōu)化、OpenMP、MPI,共計(jì)14學(xué)時(shí)。
(3)多核編譯優(yōu)化。介紹多核平臺(tái)上的編譯優(yōu)化技術(shù),學(xué)習(xí)使用多核平臺(tái)上編譯工具、多線程優(yōu)化策略、多核優(yōu)化函數(shù)庫使用,共計(jì)8學(xué)時(shí)。
(4)性能評(píng)測。介紹硬件性能評(píng)測工具、多線程程序的性能評(píng)測方法與評(píng)測優(yōu)化工具使用,共計(jì)6學(xué)時(shí)。
該課程的實(shí)驗(yàn),是基于英特爾多核硬件平臺(tái)的。英特爾公司與浙江大學(xué)于2006年4月成立了多核技術(shù)實(shí)驗(yàn)室,我們開始開展了多核課程建設(shè)。之后浙江大學(xué)自己投資于2006年7月建成了擁有80臺(tái)多核計(jì)算機(jī)的學(xué)生機(jī)房,英特爾贈(zèng)送了100套多核軟件(IntelC++ Compiler for Windows;IntelC++ Compiler for Linux;IntelVisual Fortran, Standard Edition, for Windows;IntelFortran Compiler for Linux;IntelMath Kernel Library (MKL) for Windows;IntelMath Kernel Library (MKL) for Linux;IntelIntegrated Performance Primitives (IPP) for Windows;IntelIntegrated Performance Primitives (IPP) for Linux;IntelVTuneTM Performance Analyzer for Windows;IntelVTuneTM Performance Analyzer for Linux;IntelThread Checker for Windows;IntelThread Profiler for Windows;IntelMPI Library for Linux)。這些軟件可以運(yùn)行在英特爾的多核處理器上,實(shí)現(xiàn)多核的編譯、運(yùn)行庫、性能測試、多線程檢測與優(yōu)化,對(duì)多核教學(xué)幫助極大。
基于這些軟硬件,學(xué)生們學(xué)習(xí)編程技巧,其效果立竿見影,優(yōu)化過程可以圖形顯示,有很好的教學(xué)效果。為此在共性的多核并行程序之外,我們還介紹了Intel多核平臺(tái)上的性能評(píng)測和調(diào)優(yōu)工具,以保證在程序的正確性的基礎(chǔ)上提高多核程序的運(yùn)行性能。
該課程與其他課程有一定的聯(lián)系。由于多核平臺(tái)下編程與編譯的緊密關(guān)系,所以該課程介紹部分多核編譯的知識(shí),以通過編譯充分發(fā)揮并行程序的優(yōu)勢(shì)。同時(shí),并行程序受到操作系統(tǒng)與其他軟件的影響,要寫出一個(gè)能發(fā)揮硬件性能的多核并行程序,不能孤立于操作系統(tǒng)之外,所以本科生課程需要介紹操作系統(tǒng)對(duì)多核的支持。
除了開設(shè)獨(dú)立多核編程課程以外,還需要對(duì)相關(guān)課程進(jìn)行改革。計(jì)算機(jī)體系結(jié)構(gòu)課程可以增加多核芯片與傳統(tǒng)單核微處理器、SMP的區(qū)別,典型多核芯片等知識(shí);操作系統(tǒng)課程可以增加多核操作系統(tǒng);編譯原理課程可介紹支持多核的編譯技術(shù)。
4.2 研究生課程
多核計(jì)算技術(shù)是計(jì)算機(jī)科學(xué)與技術(shù)的最新發(fā)展前沿,是計(jì)算機(jī)體系結(jié)構(gòu)、芯片集成制造技術(shù)近年來最為重大的發(fā)展。多核課程的研究生部分以理論培養(yǎng)為主,兼顧多核編程的原理。通過本課程的開設(shè),可以使學(xué)生對(duì)多核計(jì)算技術(shù)與應(yīng)用有一個(gè)全面深入的認(rèn)識(shí),完善學(xué)生的知識(shí)結(jié)構(gòu),以更好適應(yīng)未來的計(jì)算機(jī)技術(shù)及其應(yīng)用的發(fā)展與革新。
我們?cè)O(shè)計(jì)的研究生課程,稱為“多核計(jì)算”,主要著眼于當(dāng)前多核技術(shù)的研究熱點(diǎn)和多核技術(shù)的高級(jí)課題,在研究生的體系結(jié)構(gòu)課程和超大規(guī)模集成電路基礎(chǔ)上進(jìn)一步提高,結(jié)合操作系統(tǒng)、編譯原理、編程方法等交叉學(xué)科,介紹在體系結(jié)構(gòu)上的多核理論與相關(guān)學(xué)科對(duì)此的相應(yīng)發(fā)展。課程以多核體系結(jié)構(gòu)、多核芯片現(xiàn)狀、多核系統(tǒng)軟件、多核編譯優(yōu)化為主線,闡述當(dāng)今多核體系的基本理論、思想和方法,力求使研究生了解世界前沿的體系結(jié)構(gòu)技術(shù),為從事高水平研究打好基礎(chǔ)。課程2學(xué)分32學(xué)時(shí)。簡要大綱如下:
(1)SOC技術(shù),2學(xué)時(shí)。
(2)多核芯片架構(gòu)。介紹多核SOC芯片的發(fā)展、多核芯片與傳統(tǒng)處理器的區(qū)別、多核體系結(jié)構(gòu)設(shè)計(jì)技術(shù),共計(jì)6學(xué)時(shí)。
(3)多核芯片案例分析。分析Cell芯片、Open-Sparc芯片、Intel與AMD多核芯片體系結(jié)構(gòu),共計(jì)6學(xué)時(shí)
(4)多核系統(tǒng)平臺(tái)。介紹多核平臺(tái)結(jié)構(gòu)與芯片組,共計(jì)2學(xué)時(shí)。
(5)多核系統(tǒng)軟件。介紹多核平臺(tái)的啟動(dòng)與中斷、調(diào)度、存儲(chǔ)管理,共計(jì)4學(xué)時(shí)。
(6)多核編譯優(yōu)化。介紹多核編譯、編譯優(yōu)化的重點(diǎn)與難點(diǎn)、多線程化策略,共計(jì)8學(xué)時(shí)。
(7)多核編程模式。分析現(xiàn)有多核編程技術(shù)(MPI、線程、OpenMP)的差異,共計(jì)4學(xué)時(shí)。
該課程與研究生其他課程能有機(jī)的結(jié)合一起,并對(duì)相關(guān)課程進(jìn)行相應(yīng)改造?!案呒?jí)操作系統(tǒng)”課程,可以增加多核系統(tǒng)軟件對(duì)并行軟件的支持,并介紹操作系統(tǒng)對(duì)SMP和現(xiàn)在的多核提供的支持?!案呒?jí)體系結(jié)構(gòu)”偏重存儲(chǔ)訪問優(yōu)化、亂序發(fā)射,超長流水,超標(biāo)量、超流水,可以適當(dāng)增加介紹多核芯片與多處理器的差異。研究生課程“嵌入式系統(tǒng)”偏重實(shí)時(shí)理論、節(jié)能軟件、IP設(shè)計(jì)軟硬件協(xié)同設(shè)計(jì)等,針對(duì)多核介紹了嵌入式系統(tǒng)中使用多核架構(gòu),如ARM+DSP,這是目前嵌入式系統(tǒng)的熱點(diǎn)之一。“并行計(jì)算機(jī)結(jié)構(gòu)和程序設(shè)計(jì)”偏重并行計(jì)算理論、并行計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)(PVP、SMP、MPP、DSM、COW)、并行計(jì)算機(jī)存儲(chǔ)器訪問模型、并行算法的常用設(shè)計(jì)方法,劃出片上多處理器及相關(guān)內(nèi)容給“多核計(jì)算”。
5 教學(xué)與實(shí)踐經(jīng)驗(yàn)
到目前為止,我們已經(jīng)在多核技術(shù)教學(xué)和推廣中積累了相當(dāng)?shù)慕?jīng)驗(yàn),浙江大學(xué)-英特爾多核技術(shù)實(shí)驗(yàn)室是英特爾多核技術(shù)大學(xué)計(jì)劃中五個(gè)多核技術(shù)實(shí)驗(yàn)室之一。這個(gè)計(jì)劃中,英特爾與本地大學(xué)合作,進(jìn)行開發(fā)多核課程,聯(lián)合實(shí)驗(yàn)室建設(shè)和師資培訓(xùn)。
在2006年秋冬學(xué)期,我們?cè)O(shè)計(jì)了多核研究生課程,并補(bǔ)充了相關(guān)課程的內(nèi)容,甚至在浙江大學(xué)遠(yuǎn)程教育學(xué)院計(jì)算機(jī)本科中進(jìn)行了多核編程的授課。此外,我們還與教育部合作開發(fā)多核編程精品課程,與其他四所高校合作的多核編程教材也在編寫過程之中。
在2006年9月,我們建設(shè)的英特爾多核技術(shù)大學(xué)合作網(wǎng)站(http://multicore.zju.edu.cn, http://multicore.net.cn)正式開通。這個(gè)Intel國內(nèi)唯一面向高校的多核在線平臺(tái)可以讓學(xué)生和老師們?cè)诰€學(xué)習(xí)和討論多核技術(shù),提供了五所高校相關(guān)多核的課件、多核培訓(xùn)錄像、在線學(xué)習(xí)、在線測試。
我們?cè)O(shè)計(jì)多核課程是在多核技術(shù)教育方面進(jìn)行的一次嘗試,尤其是將多核課程分為本科生部分和研究生部分,更是一次探索。通過這個(gè)系列課程,對(duì)于本科生,希望他們能了解流行的多核硬件平臺(tái),掌握多核編程和程序評(píng)測、調(diào)優(yōu)技能,具有扎實(shí)的動(dòng)手實(shí)踐能力;對(duì)于研究生,希望讓學(xué)生了解當(dāng)前多核計(jì)算機(jī)體系和多核芯片設(shè)計(jì)的基本原理、技術(shù)難點(diǎn)、目前發(fā)展?fàn)顩r以及對(duì)計(jì)算機(jī)領(lǐng)域帶來的相關(guān)影響等,通過建立體系經(jīng)典理論研究和實(shí)際的發(fā)展方向之間的橋梁,為將來從事體系結(jié)構(gòu)領(lǐng)域、系統(tǒng)軟件領(lǐng)域以及相關(guān)領(lǐng)域的高水平研究打好扎實(shí)的基礎(chǔ)。