?

并行硬件簡介

2016-10-18 10:58白圓
中國新通信 2016年16期
關鍵詞:并行計算硬件速率

白圓

【摘要】 隨著社會的進步,人們的生活節奏也越來越快 ,對電子產品的快速反應的需求也越來越大。并行計算技術是目前提高數據處理速率的主要手段,而不管采取什么樣的技術都離不開硬件的支持,本文簡要介紹了CPU、 FPGA、 GPU、 集群的并行實現結構。

【關鍵詞】 并行計算 速率 硬件

進程是計算機中的程序關于某數據集合上的一次運行活動,是操作系統進行資源分配和調度的基本單位,當運行一個程序時,也就啟動了一個進程。線程是操作系統能夠進行運算調度的最小單位。一個進程可以有很多線程,每條線程并行執行不同的任務。在多核或多CPU上,使用多線程程序設計的好處是顯而易見,即提高了程序的執行吞吐率。進程是資源分配的最小單位,線程是CPU調度的最小單位。線程和進程的區別在于,子進程和父進程有不同的代碼和數據空間,而多個線程則共享數據空間,每個線程有自己的執行堆棧和程序計數器為其執行上下文。多線程主要是為了節約CPU時間。

一、CPU的并行

1、多處理器。多處理器系統由分布在不同芯片上的多個處理器組成。多處理器系統可以構建在同一塊電路板上,處理器之間通過一個高速通信接口連接。因此,多處理器系統一般有如下特征:包含兩臺及以上功能相近的處理器,并且可以相互交換數據;所有的處理器共享內存、共享I/O通道、控制器和外部設備;在統一的操作系統的控制下,各處理器實現程序和數據的全面并行計算。

2、多核處理器。多核處理器是指在一枚處理器中集成兩個及以上的完整的計算內核。通俗的講,就是單個芯片上包含任意多個(如2、4或8)CPU的處理器,各個處理器并行執行不同的線程,根據內部核的結構的相同與不同,將其分成同構和異構兩類。處理器之間通過片外Cache或者是片外的共享存儲器來進行通信。

二、FPGA的并行

FPGA(現場可編程門陣列)是一種由邏輯門組成的硅片,被視為具有極佳并行處理能力的硬件設備,非常適合高性能計算與海量數據處理,如數字信號處理(DSP)應用。FPGA的運行時鐘低于微處理器,但功耗較高。CPU在同一時刻只能執行一個任務,CPU里基本的單元是邏輯控制單元來執行程序。許多的邏輯單元構成的FPGA與CPU內部構造不一樣,可以把FPGA看成是一推與門,非門,查找表,觸發器的組合,各元件之間的連線已經完全固定,對FPGA編的程序用來選擇哪些相連、哪些斷開,這樣就決定了與門、非門、觸發器的連接方式。與門、非門、觸發器根據外部引腳決定輸出,許許多多的引腳同時變化,FPGA就有不同的輸出,這樣就構成了FPGA的并行。FPGA是由三個基本組件構成的可編程芯片。首先,在邏輯模塊中,數據被計算并處理以得到分析結果。其次,通過將信號從一個邏輯單元路由至下一個單元的可編程互聯,實現邏輯組塊的互相聯通。第三,I/ O組塊與芯片的管腳相連,以提供與外圍電路的雙向通信。由于FPGA以并行的方式運行,所以它支持用戶創建任意多的任務專用核,所有這些任務專用核以類似于并行電路的方式運行于FPGA芯片中。FPGA邏輯門的并行特質支持非常高的數據吞吐量,更是遠勝于與其相對應的微處理器。

三、GPU的并行

GPU(圖像處理器),是整個顯卡的核心,顯卡是由GPU、顯存等等組成的。由于限制CPU發展的瓶頸(如:CPU的緩存和控制邏輯對計算速度的影響,處理器到存儲器帶寬的制約)日益突出,研究者們試著從其他領域找到突破口,轉而開始重視GPU的發展,其在處理數據、計算能力方面已經遠遠超過CPU,而且GPU制作的工作流程并不復雜,成本低,使得它的應用越來越普遍了。GPU設計者將更多的晶體管用作執行單元,而不是像CPU那樣用作復雜的控制單元和緩存。從實際來看,CPU芯片空間的5%是ALU,而GPU空間的40%是ALU。如果我們把CPU多核的概念放到現在的GPU身上,核心的一個流處理相當于一個“核”,GPU的“核”數量已經不再停留在單位數,而是幾十甚至是上百個,因此GPU的擁有很強的并行計算能力。

四、集群上的并行

集群(Cluster)就是將多臺計算機互相連接在一起,構成一個并行或分布式系統。根據處理器的不同,可以分為CPU集群和GPU集群。這些計算機一起工作,并行執行一系列共同的應用程序。通常由開發人員指定一臺計算機為主機(Master),監控多個從機(Slaves)協調完成任務。從外部來看,它們僅僅是一個系統,對外提供統一的服務。集群內的計算機物理上通過電纜連接,程序上則通過集群軟件(如:Hadoop)連接。這些連接允許計算機使用故障應急與負載平衡功能。集群主要使用MapReduce這種編程模型,將用戶提交的程序由Master分解成多個線程,分配到多個Slaves上同時執行。

五、總結

數據的處理可以分為數據的存儲、傳輸、計算。本文所介紹的硬件主要針對的是數據的計算,可以分為兩類:多處理器型和FPGA。無論是多核、多處理器、GPU,還是集群,都屬于多處理器型,因為它們的并行是基于線程級的。而FPGA的并行是選擇連線的方式,所以,它的并行是基于硬件的。并行計算方面的硬件需要和數據存儲、傳輸方面的硬件相匹配才能達到理想的效果,這將在以后的學習中介紹。

猜你喜歡
并行計算硬件速率
基于自適應線程束的GPU并行粒子群優化算法
盤點高考化學反應速率與化學平衡三大考點
Ovation系統調試階段常見硬件故障診斷分析
云計算平臺的計算機硬件遠程實驗室實現研究
云計算中MapReduce分布式并行處理框架的研究與搭建
矩陣向量相乘的并行算法分析
基于Matlab的遙感圖像IHS小波融合算法的并行化設計
化學反應速率與化學平衡考點分析
通過提高心理速率改善記憶
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合