<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

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

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

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

            摘要:不斷提高計(jì)算機(jī)的能力是支持?jǐn)?shù)學(xué)上的的技術(shù)途徑之一,本文介紹了標(biāo)量計(jì)算機(jī)、并行、陣列語(yǔ)言、陣列計(jì)算機(jī)等技術(shù)。但強(qiáng)大的計(jì)算能力遭遇到了能耗問(wèn)題。圓片級(jí)的硅直通技術(shù)(TSV)是降低能耗的途徑之一。粗粒度的陣列計(jì)算機(jī)的規(guī)則性是適合于TSV技術(shù)的?! ?/p>本文引用地址:http://www.ex-cimer.com/article/143176.htm

           

            前言

            按照牛頓物理學(xué),人們可感知的3維空間中的事物是隨1維時(shí)間而演變的[1] ;而按照愛(ài)因斯坦的狹義相對(duì)論,時(shí)間和空間并不是有所分別的兩件東西,兩者是合成4維的時(shí)空(space-time)的,時(shí)間是第4個(gè)維度。狹義相對(duì)論是4維時(shí)空的數(shù)學(xué)框架,和牛頓物理學(xué)本質(zhì)上是相同的。因此,可以認(rèn)為人們可感知的客觀世界的一切事物是在4維時(shí)空中演變的。計(jì)算機(jī)是用來(lái)對(duì)事物演變的數(shù)據(jù)完成時(shí)空計(jì)算的,其的實(shí)現(xiàn)應(yīng)該是自然反應(yīng)時(shí)空計(jì)算的概念的。數(shù)學(xué)家是以描述客觀世界的數(shù)學(xué)語(yǔ)言為基礎(chǔ)發(fā)明計(jì)算機(jī)的。數(shù)學(xué)是無(wú)窮()的科學(xué),是研究數(shù)和形的。計(jì)算機(jī)就是以無(wú)窮的存儲(chǔ)空間(圖靈抽象機(jī)的無(wú)窮長(zhǎng)的帶,和馮.諾依曼計(jì)算機(jī)的輸入/輸出體系結(jié)構(gòu))和無(wú)止境的提高計(jì)算能力(也就是提高處理器的計(jì)算頻率,以及增加處理器的復(fù)雜度)來(lái)支持?jǐn)?shù)學(xué)上的的,而數(shù)和形的研究不僅有細(xì)粒度標(biāo)量計(jì)算的特點(diǎn),還有粗粒度陣列計(jì)算的特點(diǎn)。

            標(biāo)量計(jì)算機(jī)

            芯片技術(shù)問(wèn)世之后,計(jì)算機(jī)的設(shè)計(jì)工作越來(lái)越多地轉(zhuǎn)移到了芯片上。1971年Intel公司的Ted Hoff(特德.霍夫)工程師發(fā)明了世界上第一顆微處理器芯片Intel 4004[2]。處理器將ISA(Instruction Set Architecture)的設(shè)計(jì)工作轉(zhuǎn)移到了芯片上。按照馮.諾依曼體系結(jié)構(gòu)的Flynn分類[3] ,單處理器計(jì)算機(jī),是以單指令流單數(shù)據(jù)流的SISD體系結(jié)構(gòu)為基礎(chǔ)的標(biāo)量計(jì)算機(jī)(Scalar Computer)。細(xì)粒度的標(biāo)量計(jì)算是“從點(diǎn)開(kāi)始,從點(diǎn)到線,從線到面”再“分層處理” 完成事物演變的時(shí)空計(jì)算的,是一種(時(shí)間)1維的計(jì)算機(jī),粗粒度的陣列計(jì)算在標(biāo)量計(jì)算機(jī)上是順序完成的。標(biāo)量計(jì)算機(jī)是以ISA作為更高抽象層次的接口,使程序設(shè)計(jì)不必了解ISA的實(shí)現(xiàn)細(xì)節(jié),能從算法解決問(wèn)題的方式中直覺(jué)地產(chǎn)生出來(lái),成為一種確定而可預(yù)測(cè)的過(guò)程,促進(jìn)了細(xì)粒度時(shí)空計(jì)算的軟件繁榮[4] ?! ?/p>

           

            并行

            1974年 Robert Dennard等提出了按比例縮小定律。芯片的集成度是在功耗密度與成本幾乎不變的情況下,按摩爾預(yù)言的速度提高的。1987年人們提出了系統(tǒng)芯片(SoC,System On Chip)的概念,要將計(jì)算機(jī)的系統(tǒng)設(shè)計(jì)工作也轉(zhuǎn)移到芯片上來(lái),發(fā)展出了TLP(Tread Level Parallel,進(jìn)程級(jí)并行)、 (Data Level Parallel,數(shù)據(jù)級(jí)并行)和OLP(Operation Level Parallel,操作級(jí)并行)三種并行計(jì)算模式。但其實(shí)現(xiàn),遭遇到了計(jì)算可擴(kuò)展性限制和能源使用問(wèn)題。只有OLP計(jì)算模式實(shí)現(xiàn)了操作粗粒度的時(shí)空計(jì)算,但是采用ASIC/FPGA陣列芯片,而不是陣列處理器實(shí)現(xiàn)的。

            由多核/眾核CPU系統(tǒng)芯片實(shí)現(xiàn)的TLP計(jì)算模式,是將計(jì)算任務(wù)分成多個(gè)線程安排在每個(gè)標(biāo)量處理器核(CPU)上執(zhí)行的。線程之間是通過(guò)共享存儲(chǔ)器通信的,沒(méi)有直接的互連關(guān)系,實(shí)際上是一種單指令流多線程流的SIMT(Single Instruction Multiple Thread)執(zhí)行。雖然線程可以同時(shí)開(kāi)始執(zhí)行計(jì)算,但不一定能同時(shí)完成計(jì)算,存在如何同步(同時(shí)完成)的問(wèn)題;線程之間也可能存在數(shù)據(jù)相關(guān),不能完全獨(dú)立的執(zhí)行,有互斥(數(shù)據(jù)依賴)的問(wèn)題。使多核程序設(shè)計(jì)是一種內(nèi)在不確定性的過(guò)程(nondeterministic process),需要徹底了解多核計(jì)算機(jī)的實(shí)現(xiàn)細(xì)節(jié)[4] 。

            按照馮.諾依曼體系結(jié)構(gòu)的Flynn分類,計(jì)算模式應(yīng)該是以單指令流多數(shù)據(jù)流的SIMD體系結(jié)構(gòu)為基礎(chǔ),實(shí)現(xiàn)數(shù)據(jù)粗粒度的時(shí)空計(jì)算的。而現(xiàn)在實(shí)現(xiàn)計(jì)算模式的GPU/GPGPU系統(tǒng)芯片,計(jì)算效率雖然比多核芯片的高得多,已應(yīng)用在超級(jí)計(jì)算機(jī)中,但都不能有效實(shí)現(xiàn)數(shù)據(jù)粗粒度的時(shí)空計(jì)算。例如,索尼、東芝和IBM公司聯(lián)合開(kāi)發(fā)的總線互連的Cell芯片,只是DLP計(jì)算模式的一種SIMT執(zhí)行[5]。Nvidia公司的GPGPU系統(tǒng)芯片,是一種GPU+CPU的系統(tǒng)芯片,由于GPU和CPU的數(shù)目是固定的,在不同應(yīng)用中會(huì)出現(xiàn)比例分配不平衡和數(shù)據(jù)傳輸?shù)膯?wèn)題[6] ?! ?/p>

           

          上一頁(yè) 1 2 下一頁(yè)

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

          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();