新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 粗粒度的時(shí)空計(jì)算

粗粒度的時(shí)空計(jì)算

作者:沈緒榜 孫璐 時(shí)間:2013-03-18 來源:電子產(chǎn)品世界 收藏

  1985年,Xilinx公司推出了全球第一款FPGA產(chǎn)品XC2064[7] ,現(xiàn)在28nm工藝的FPGA陣列芯片已經(jīng)作為應(yīng)用平臺(tái)[8] ,實(shí)現(xiàn)了操作粗粒度的時(shí)空計(jì)算。但算法是通過硬件描述語言的邏輯設(shè)計(jì)映射到陣列芯片上的,沒有與TLP/的軟件設(shè)計(jì)語言統(tǒng)一起來,抽象層次低,靈活性差,限制了OLP的應(yīng)用。

本文引用地址:http://butianyuan.cn/article/143176.htm

  陣列語言

  支持粗粒度時(shí)空計(jì)算的陣列語言,是能在標(biāo)量語言(例如,C語言和MATLAB語言)的基礎(chǔ)上統(tǒng)一設(shè)計(jì)的。

  首先,陣列數(shù)據(jù)及其特例(標(biāo)量數(shù)據(jù)和向量數(shù)據(jù))在MATLAB語言中已有明確的表示[9] 。陣列數(shù)據(jù)就是C語言中的Data Array(數(shù)據(jù)陣列/數(shù)組),是用來表示同一類型的標(biāo)量數(shù)據(jù)的集合的。因此,陣列語言的數(shù)據(jù)表示和類型,可以與C語言的相同而統(tǒng)一的。在陣列語言中,陣列數(shù)據(jù)采用了與MATLAB或C語言類似的順序描述方法。

  二是陣列數(shù)據(jù)的計(jì)算,與數(shù)學(xué)語言的矩陣加減法計(jì)算一樣,是對(duì)其標(biāo)量數(shù)據(jù)元素進(jìn)行的。計(jì)算的操作類型及其表示符號(hào)均可以與C語言中的相同而統(tǒng)一的,只需要補(bǔ)充支持實(shí)現(xiàn)幾何變換的播送(broadcast)等3個(gè)操作及其操作符。  

 

  三是由于控制語句是時(shí)間一維的,陣列語言的控制語句是可以與標(biāo)量語言(例如C語言)的控制語句相同而統(tǒng)一的。而計(jì)算語句則應(yīng)由標(biāo)量語句上升到由不同標(biāo)量語句元素(statement elements)組成的陣列語句。標(biāo)量語句元素的設(shè)計(jì)是可以與C語言的標(biāo)量語句的設(shè)計(jì)相同而統(tǒng)一的。陣列語句的描述可以像C語言的Data Array那樣,采用先行后列,并從第一行開始順序描述的程序設(shè)計(jì)方法。使陣列語言統(tǒng)一了標(biāo)量語言,繼承順序程序設(shè)計(jì)的特點(diǎn),建立了陣列語言的程序設(shè)計(jì)的確定性。

  陣列計(jì)算機(jī)

  最近,人們分析發(fā)現(xiàn),自1985年以來,計(jì)算機(jī)體系結(jié)構(gòu)革新與芯片技術(shù)進(jìn)步對(duì)計(jì)算機(jī)性能的貢獻(xiàn)是相當(dāng)?shù)?sup>[10] 。現(xiàn)在的芯片制造技術(shù),已經(jīng)可以研制粗粒度計(jì)算的二維的陣列處理器(Array Processor)和三維(時(shí)間1維+空間2維)的陣列存儲(chǔ)器(Array Memory)。例如,Intel公司80個(gè)處理元的TeraScale Processor計(jì)劃的系統(tǒng)芯片[11] 。支持粗粒度時(shí)空計(jì)算的陣列計(jì)算機(jī),可以是由指令存儲(chǔ)器、陣列處理器和陣列存儲(chǔ)器組成的。其實(shí),馮.諾依曼體系結(jié)構(gòu)的Flynn分類,以單指令流多數(shù)據(jù)流的SIMD(Single Instruction Multiple Data)體系結(jié)構(gòu),可以在陣列處理器上實(shí)現(xiàn)的數(shù)據(jù)粗粒度的計(jì)算。以多指令流單數(shù)據(jù)流的MISD(Multiple Instruction Single Data)和多指令流多數(shù)據(jù)流MIMD(Multiple Instruction Multiple Data)體系結(jié)構(gòu),可以設(shè)計(jì)相應(yīng)的陣列指令(array instruction),在陣列處理器上實(shí)現(xiàn)OLP計(jì)算模式的操作粗粒度的計(jì)算。

  陣列語言中順序描述的陣列數(shù)據(jù)和陣列語句的陣列表示,是通過存儲(chǔ)到陣列存儲(chǔ)器中而自動(dòng)完成的。存放在陣列存儲(chǔ)器中的陣列數(shù)據(jù)和陣列指令,是分別由指令存儲(chǔ)器中的操作指令和調(diào)用指令控制讀出,在陣列處理器上執(zhí)行的。從時(shí)間上來看,操作指令/調(diào)用指令是一條接一條地順序執(zhí)行的;從空間上來看,陣列存儲(chǔ)器中的陣列數(shù)據(jù)/陣列指令都是在單指令的控制下,有效地完成數(shù)據(jù)/操作粗粒度的時(shí)空計(jì)算。與標(biāo)量計(jì)算機(jī)類似,陣列計(jì)算機(jī)的ISA也是作為更高抽象層次的接口,使陣列語言的程序設(shè)計(jì)不必了解ISA的實(shí)現(xiàn)細(xì)節(jié),能從算法解決問題的方式中直覺地產(chǎn)生出來。成為一種確定而可預(yù)測(cè)的過程,可促進(jìn)粗粒度時(shí)空計(jì)算的軟件繁榮。

  結(jié)束語

  不斷提高計(jì)算機(jī)的能力是支持?jǐn)?shù)學(xué)上的的技術(shù)途徑之一?,F(xiàn)在已有由十幾萬芯片組成的千萬億次超級(jí)計(jì)算機(jī),但其功耗就已達(dá)到2MW左右,使機(jī)房面積比龐然大物的電子管計(jì)算機(jī)的機(jī)房面積還大10倍,約700平米。有專家認(rèn)為,2017年可能實(shí)現(xiàn)的Eflops超級(jí)計(jì)算機(jī)的核心處理器的數(shù)量大概在1000萬到1億個(gè)之間,這就遭遇到了能源使用問題。

  計(jì)算機(jī)的功耗是由芯片的功耗和芯片之間互連線的功耗組成的。為了實(shí)現(xiàn)航空航天圖像處理計(jì)算機(jī)的小型化,早在1987年,休斯公司就開發(fā)了圓片級(jí)的硅直通技術(shù)(TSV, Through Silicon Via)?,F(xiàn)在,IBM公司針對(duì)超級(jí)計(jì)算機(jī)的能源使用問題,也研發(fā)了TSV技術(shù),使芯片之間的距離只有幾微米,縮短了1000倍。甚至有人預(yù)測(cè)2023年到2062年之間,新型芯片和納米技術(shù)將使超級(jí)計(jì)算機(jī)的體積縮小到一塊方糖那么大,再?zèng)]有各種電纜,也不需要散熱[12] 。而粗粒度的陣列計(jì)算機(jī)的規(guī)則性是適合于TSV技術(shù)的。

  參考文獻(xiàn):
  [1]Zukav G. The Dancing Wu Li Masters. New York: William Morrow and Company,1979 (中譯本:像物理學(xué)家一樣思考.廖世德,譯.???海南出版社,2011)
  [2]Reilly E. Milestones in Computer Science and Information Technology. America: Greenwood Publishing Group, 2003
  [3]Flynn M J. Very high speed computing systems. Proceeding of IEEE, 1966, 54(12):1901-1909
  [4]Marowkia A. Back to Thin-Core Massively Parallel Processors. Computer, 2011, 44(12):49-54
  [5]Kahle J. The Cell Processor Architecture//Proceedings of the 38th Annual IEEE/ACM International Symposium on Microarchitecture. Barcelona, Spain, 2005:3
  [6]Keckler S W, et al. GPUs and the Future of Parallel Computing. IEEE MICRO, 2011, 31(5):7-17

  [7]Sklyarov V, Skliarova I, Sudnitson A. FPGA-based systems in information and communication//Proceedings of the International Conference on Application of Information and Communication Technologies. Baku, Azerbaijan, 2011:1-5
  [8]Altera. Achieving One TeraFLOPS with 28-nm FPGAs[R/OL]. http://www.altera.com.cn/literature/wp/wp-01142-teraflops_CN.pdf
  [9]Chapman S J. MATLAB Programming. 4th Edition. Singapore: Cengage Learning, 2011 (英文影印本.北京: 科學(xué)出版社, 2011)
  [10]Danowitz, et al. CPU DB: Recording Microprocessor History. CACM 2012-04
  [11]Mattson T G, Wijngaart R V, Frumkin M. Programming the Intel 80-core network-on-a-chip Terascale Processor//Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis. Austin, USA, 2008:1-11
  [12]美刊預(yù)測(cè)未來110年科技發(fā)展.參考消息,2012-12-19


上一頁 1 2 下一頁

關(guān)鍵詞: infinite 計(jì)算模式 DLP 201303

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉