計算機并行處理技術范例6篇

前言:中文期刊網精心挑選了計算機并行處理技術范文供你參考和學習,希望我們的參考范文能激發你的文章創作靈感,歡迎閱讀。

計算機并行處理技術

計算機并行處理技術范文1

關鍵詞:雷達數據處理;線程級并行;任務級并行;數據局部性

中圖分類號:TP301.6 文獻標識碼:A

1引言

未來戰爭中的電磁環境將異常復雜,雷達會受到各種形式的欺騙和干擾,產生大量的雜波,并且需要檢測的目標日益增多,目標的運動速度越來越快,目標的機動性也越來越靈活[1-2]。上述情況的出現將會大大增加雷達數據處理的運算量,而雷達數據處理系統作為一個實時系統,必須在規定的時間內計算出結果,這對數據處理的計算能力提出了很高的要求。

并行處理技術是提高計算速度最有效的技術之一,通過把求解問題分解為多個可以并行運算的子問題,在多個處理器上同時求解,從而降低解決時間。目前,并行處理已廣泛的應用于石油勘探、氣象預報、核武器模擬等對計算能力有迫切需求的領域[3],并且在雷達仿真系統、雷達信號處理、多傳感器數據融合等方向也有應用[4-6]。

本文將對并行處理技術在雷達數據處理中的應用進行研究,探索并行雷達數據處理設計方法,解決雷達系統中面臨的計算能力不足問題。

2并行處理相關工作

2.1并行計算機系統

對稱多處理器(symmetric multiprocessor, SMP)并行計算機均采用均勻存儲訪問結構,如圖1(a)所示。共享存儲結構提供了一個對用戶友好的編程視角,處理器間的通信通過共享存儲的方式實現,速度快,其缺點是需要用戶保證存儲一致性,擴展性較差。

分布式存儲結構中每個處理器都有自己獨立的內存,本地內存的改變將不會影響到其他的處理器,處理器間通過互聯網絡進行通信,如圖1(b)所示。分布式存儲的優點是擴展性好,不需要維護存儲一致性,缺點是需要用戶顯式地進行處理器間通信。

2.3并行計算機編程模型

并行計算機編程模型主要包括共享存儲和消息傳遞兩種編程模型[8-9]。

共享存儲并行編程模型基于線程級的細粒度并行,主要應用于SMP等共享存儲結構的并行計算機。在多個處理器訪問共享內存時,需要采用同步機制以保證共享數據的一致性,常用的同步機制有互斥量和信號量。OpenMP是目前比較流行的面向共享存儲的并行編程技術。進行循環級并行的應用程序適合采用共享存儲編程模型。

3雷達數據處理分析

雷達數據處理系統接收到信號處理送來的點跡,一般按照圖2所示流程進行處理[10]。

點跡預處理:把每一個新點跡從目標量測坐標系轉換到數據處理所在坐標系。

數據互聯:建立當前時刻新點跡與歷史數據之間的關系,以確定這些點跡是否來自同一個目標,分為新點跡與舊點跡的互聯、新點跡與航跡的互聯。典型的數據互聯算法有最近鄰域法(NNF)和概率數據互聯法(PDAF)。最近鄰域算法根據對目標狀態的預測設置跟蹤門(相關波門),判斷新點跡是否落入某個跟蹤門內,設置相關度,最后選擇相關度最高的點航配對。點跡與點跡的互聯方法同點航互聯。

航跡起始:航跡起始是目標跟蹤的第一步,主要包括暫時航跡形成和軌跡確定。

跟蹤:對來自目標的新點跡量測值進行處理,以便保持對目標現時狀態的估計。目前,經常采用的目標跟蹤方法有交互式多模型算法、Jerk模型算法等,濾波算法多使用卡爾曼濾波[10]。交互多模型算法通過多個目標模型的有效組合來實現對目標機動狀態的自適應估計[11-12]。

點跡與航跡維護:對每個點跡和航跡進行維護,刪除滿足條件的點跡和航跡。

4實驗結果分析

根據第3節的分析,分別搭建了共享存儲并行計算機系統和分布式存儲并行計算機系統。

共享存儲計算機系統配置為:Intel Xeon W3565 四核處理器,Linux 2.6.32操作系統,6 GB內存,四個處理器核通過處理器內部的互連總線共享內存。分布式存儲計算機系統由四個節點組成,每個節點配置為Intel Xeon W3565處理器,Linux 2.6.32操作系統,6 GB內存,千兆以太網卡,節點之間通過千兆以太網交換機進行通信。

在實驗中,仿真1500幀數據,模擬2000批目標,每幀數據隨機產生20000個雜波點,雷達的探測距離為1000 km,目標和雜波點跡在探測空域均勻分布。

采用任務級并行處理方法時,相鄰區域的重疊范圍20 km,按照表1中的配置對任務進行分解。

在點跡預處理、航跡起始和跟蹤等步驟中,隨著任務的分解,運算量線性降低。線程級并行和任務級并行均具有這種特點,因此兩種并行方法的執行時間變化情況基本一致。

根據第3節的分析可知,按照探測距離分解任務時,數據互聯計算量的降低與任務個數增加成平方關系,而線程級并行方法中數據互聯計算量與任務分解個數成線性關系。因此,在數據互聯步驟,線程級并行執行時間成線程降低,任務級并行執行時間成平方關系降低,與圖7中的統計結果基本一致。

點跡與航跡維護主要是對保存點跡、航跡、點航配對的鏈表等共享數據進行查找、刪除等操作。線程級并行方法中訪問共享數據需要采用同步機制,頻繁的訪問共享數據會導致線程的阻塞。另外,多個線程同時訪問內存,競爭激烈,每個線程的訪存帶寬下降明顯,因此線程級并行處理中點跡與航跡維護并行處理的效果不好。

在任務級并行時,每個子任務有獨立的內存,不存在訪存競爭問題和同步。每個子任務負責部分區域的處理,點跡和航跡鏈表長度與任務個數成線性關系降低,點航配對鏈表長度與任務個數呈平方關系下降,因此任務級并行處理中點跡與航跡維護時間降低非常明顯。圖7中的統計結果與上述分析基本一致。

在任務級并行中增加了綜合步驟,當只有一個任務時,不需要綜合步驟,多個任務執行時,綜合步驟的時間開銷占總時間的比例在5%以內,對系統執行時間影響很小。

通過以上為分析可知,按照探測區域進行任務級粗粒度并行處理比線程級的細粒度并行處理效果更好。

5結論

本文通過對雷達數據處理進行分析,提出了兩種并行處理方法。第一種方法是對數據處理各步驟中的循環采用多個線程并行處理,屬于細粒度并行;第二種方法是根據雷達數據的局部性特征,把雷達探測空域按照徑向距離劃分成多個部分,由多個子任務并行處理,屬于粗粒度并行。實驗結果顯示,4線程細粒度并行雷達數據處理架構性能接近原來的3倍,4任務粗粒度并行架構性能接近原來的5倍,證明了并行處理技術在雷達數據處理中的有效性。

在線程級并行處理方法中,線程之間同步頻繁,訪存競爭激烈等原因導致性能有所損失。任務級并行處理方法中同步次數較少,不存在訪存競爭問題,并且按照區域分解任務減少了總任務的計算量,性能提高更明顯。因此,任務級的粗粒度并行更適合雷達數據處理。

參考文獻

[1]康耀紅. 數據融合與應用[M]. 西安:西安電子科技大學出版社,1997.

[2]俞志富,呂久明. 基于航跡跟蹤的EKF應用研究[J]. 現代防御技術,2007,35(2):113-117.

[3]王志斌,陳 波,萬玉發,等. 天氣雷達資料實時并行處理方法[J]. 計算機工程,2009,35(23) :255-257.

[4]徐雷,吳嗣亮,李海. 相控陣雷達仿真系統并行計算研究[J]. 北京理工大學學報,2008,28(6):517-520.

[5]何勇,張必銀. 多傳感器數據融合并行處理方法研究[J]. 艦船電子工程,2011,31(8):56-59.

[6]黃鴻,王秀春. 并行計算機在現代雷達信號處理中的應用[J]. 現代雷達,2004,26(3):25-28.

[7]多核系列教材編寫組. 多核程序設計[M]. 北京:清華大學出版社,2007.

[8]陳國良. 并行計算:結構算法編程[M]. 第3版. 北京:高等教育出版社,2011.

[9]RABENSEIFNER, R.Hybrid. MPI/OpenMP Parallel Programming on Clusters of MultiCore SMP Nodes[J]. 17th Euromicro International Conference on Parallel, Distributed and Networkbased Processing, 2009: 427-436.

[10]何友,修建娟,張晶煒,等. 雷達數據處理及應用[M]. 第二版. 北京:電子工業出版社,2009.

計算機并行處理技術范文2

【關鍵詞】大數據;三維場景;快速可視化;LOD;GPU

1 引言

地理信息系統(Geographic Information System,GIS )是一種采集、存儲、管理、分析、顯示與應用地理信息的計算機系統,是分析和處理海量地理數據的通用技術。隨著人們對GIS行業越來越深入的了解,伴隨著計算機軟、硬件技術和通信技術高速迅猛的發展,GIS已然滲透進入國民生產的各個行業和國民生活的各個方面。然而傳統的GIS技術仍然存在著明顯的缺陷,主要表現為它以處理二維信息為主,把連續分布的三維現實世界抽象成二維的數字信息,不能給人以自然界三維空間真實物體身臨其境的感受。三維GIS是GIS技術發展的重要領域,是進行全方位、多層次、多要素時空分析的基礎,開發結構簡單、功能完善的真三維GIS軟件是當前GIS研究人員的重要目標。由于空間數據具有的數據量龐大、內容豐富等特點,使得三維GIS中要處理的空間數據量遠遠超出了當前計算機硬件所能處理的能力,該特點已經成為了三維GIS可視化的制約性因素。

層次細節(Level Of Detail, LOD)思想提供了一個解決龐大數據量與快速可視化問題A方向LOD技術主要是根據人眼的視覺原理,一個物體距離人眼越遠,人眼看到該物體的細節也就越少,因此系統就可以將距離觀察點較遠的物體用較粗粒度的模型來代替,從而在不降低視覺效果的前提下大幅度降低了計算機需要處理的數據量,解決了系統的實時動態顯示效果。在同樣大小的顯示范圍內,采用LOD技術可以使數據處理量基本保持不變,這一特性對海量空間數據的實時三維可視化是非常重要的。

近年來,隨著計算機圖形處理器(Graphic Processing Unit, GPU)的計算能力的提升,極大的提高了計算機圖形處理的速度和圖形生成的質量。GPU技術的極速發展一方面提高了圖形處理的計算速度,另一方面還促使了一些與圖形處理相關的硬件技術的進步,比如:具有可編程的像素處理模塊和具有頂點處理功能的圖形硬件@染管道。在3DGIS可視化方面,LOD模型正朝著與GPU集成的方向發展,建模的方法已經不再是逐個選擇某個多邊形進行繪制,而是在大量的多邊形組中選擇一組進行批量繪制,建立適合于現代GPU處理的LOD框架,不再追求盡可能的減少多邊形的繪制,只要能達到硬件的繪制要求即可。

本文基于對LOD與GPU技術的研究,設計并實現了一個3DGIS平臺,并利用該平臺解決了海量空間數據實時三維可視化問題。

2 LOD金字塔構建

本文使用的LOD金字塔模型是基于四叉樹結構,以分層分塊的方式構建的。利用這種方式組織的金字塔模型具有以下特點:

(1)對于樹中任意相鄰的層,從上到下,分辨率呈雙倍遞增關系,這樣可以很方便的使用四叉樹索引技術進行快速定位。

(2)樹中每個節點對應一塊區域,這樣可以直接提供不同分辨率的數據而無需實時重采樣。

在構建金字塔時,首先把原始柵格數據作為金字塔的底層,并對其進行分塊,形成底層瓦片矩陣。在底層的基礎上,從左下角開始,從左至右、從下到上按每2×2個像素合成一個像素的方法生成像素矩陣,并進行分塊,形成上一層瓦片矩陣。

分層分塊后的文件命名要能反映出數據所在層數和數據的坐標信息,本文采用如下命名規則:Dataset Name\Level of LOD\FileX\ FileX_FileY.abc,其中,Level of LOD為數據所在金字塔模型的層號,FileX為塊的行號,FileY為塊的列號。利用該規則可以實現文件名與文件坐標之間的換算。

3 GPU高速并行計算

圖形處理器(Graphic Processing Unit,GPU)是一個專門用于圖形渲染的微處理器,它可以快速的操作和改變內存以加快輸出幀緩存中的圖像。

在GPU處理器出現以前,顯卡只負責圖形渲染的操作,大部分的運算處理都由CPU來實現。在GPU出現以后,主流計算機中的處理器大都包含CPU和GPU,由CPU和GPU協同結合來完成大數據量運算和圖形@染的工作。CPU和GPU協調工作,CPU負責處理邏輯性強的事務處理和串行計算,GPU則專注于執行高度線程化的并行處理任務。與CPU相比,GPU在運算能力和存儲器帶寬上具有明顯的優勢,它可以通過增加并行處理單元和存儲器控制單元的方式來提高計算機的并行處理能力和存儲器帶寬。與CPU相比,GPU具有很多優勢:

(1)高度并行性:GPU具備多個@染管道,能并行處理多個頂點和像素數據,具有很高的并行性;

(2)GPU具有向量運算架構,使得其在處理大規模向量運算時性能更佳;

(3)只讀高速緩存:GPU中的緩存是只讀的,其主要功能是用于過濾對存儲器的請求,減少對顯存的訪問,這使得它比CPU更適合于流處理計算,處理邏輯分支簡單的大規模數據并行任務。

4 3DGIS平臺設計與實現

本文結合LOD與GPU技術,通過C++語言,使用Microsoft Visual Studio 2012開發工具開發了一套3DGIS軟件平臺,其功能設計如圖1所示。

如上圖所示,配置文件中存儲一些系統相關參數,如默認圖層等,系統初始化時通過配置文件模塊讀取配置文件內容并創建默認對象;場景控制模塊負責事件監聽,并保存事件觸發后相關場景參數的修改;數據調度模塊使用基于四叉樹的瓦片檢索算法檢索當前場景的可見瓦片,并負責在緩存或服務器中獲取數據;渲染模塊通過構建地形網格和紋理貼圖產生三維場景。測試結果顯示,當三維窗口大小為800×600時,平均幀頻為24.8幀/秒。

5 結束語

本文利用LOD金字塔與GPU的高度并行計算能力和可編程性解決了3DGIS中大數據量場景的快速可視化的問題,并取得了良好的實驗效果。本文的主要創新點是將LOD與GPU兩項技術相結合,并成功應用到3DGIS軟件的開發中。

系統在實現時,為了明確系統目標,降低編碼工作量和數據整理搜集的工作量,僅從局部角度考慮三維GIS的快速可視化,沒有像Google地球和NASA的WorldWind那些從全球的角度來實現系統的三維可視化,這也是本文下一步考慮解決問題。

參考文獻

[1]陳述彭,魯學軍,周成虎.地理信息系統導論[M].北京:科學出版社,2001.

[2]李青元,林宗堅,李成明.真三MGIS技術研究的現狀與發展[J].測繪科學,2000.25(2):47-51.

[3]肖樂斌,鐘耳順,劉紀遠,等.三維GIS的基本問題探討.中國圖象圖形學報,2001(9).

[4]James HClark,HierarchicalGeometric Models for Visible Surface Algorithms[J].Communieation of ACM, 1976(10).

計算機并行處理技術范文3

關鍵詞:直連網絡;wormhole尋徑;死鎖的避免和恢復;虛擬通道

中圖分類號:TP393文獻標識碼:A文章編號:1009-3044(2012)03-0558-02

對于大規模問題求解時,要求很高的計算求解的速度,電子技術的發展曾使計算機的運算速度獲得驚人的提高,但現在已接近電子傳輸的物理極限,傳統的大型機和向量巨型機由于自身物理因素和工藝水平的限制,在性能上很難進一步達到要求。因此,傳統計算機的串行結構是阻礙速度提高的關鍵因素,并行處理技術就成了進一步提高性能的主要途徑。

并行處理技術是并行計算機的關健技術,它涉及的范圍很廣,包括并行結構、并行算法、并行操作系統、并行語言及其編譯系統等,其中并行結構是關鍵因素。

計算機根據指令流和數據流是單一的還是多個的進行分類,并行處理機可以分為SIMD(單指令流多數據流)和MIMD(多指令流多數據流)兩大類。SIMD比較專用,世界上裝用的數量并不多,MIMD則應用廣泛,發展出多種類型。MIMD可進一步劃分為以下五種類型:并行向量處理機(PVP)、對稱多處理機(SMP)、大規模并行處理機(MPP)、分布共享存儲器(DSM)多處理機、機群系統(COW)。

本文討論當今較為常用的MPP計算機組成的關鍵部分――互連網絡的結構,并對wormhole尋徑技術展開分析和討論。

1基本術語與性能指標

1.1消息、包和片

消息(Message)是在多計算機系統的處理接點之間傳遞包含數據和同步消息的信息包。它是一種邏輯單位,可由任意數量的包構成。包(Packet)的長度隨協議不同而不同,它是信息傳送的最小單位,64-512位。片(Flit)的長度固定,一般為8位。1.2互連網絡技術指標

互連網絡用來在多計算機系統的處理結點之間傳遞消息?;ミB網絡性能的兩個重要指標是傳輸時延(Transmission Latency)和吞吐量(Throughput)。吞吐量指系統在每秒內發送或接收到的消息的字節數,它取決于節點的體系結構和通信機制。傳輸時延主要有三個部分組成:

一個消息的傳輸時延:從它在源結點進行發送初始化到它在目的結點完整的被接收所耗費的時間。一個網絡的傳輸時延:在一定條件下發送消息的平均時延。

網絡的吞吐量:單位時間內網絡所能傳輸的消息數目或長度。

圖1 wormhole尋徑

2 Wormhole尋徑(Wormhole Routing)

首先把一個消息分成許多片,消息的頭片包含了這個消息的所有尋徑信息,尾片是一個其最后包含了消息結束符的片,中間的片均為數據片。片是最小信息單位。每個結點上只需要緩沖一個片就能滿足要求。

Wormhole尋徑方式如圖1所示。

當消息的頭片到達一個結點A的尋徑器后,尋徑器根據頭片的尋徑信息立即做出尋徑選擇:如果所選擇的通道空閑而且所選擇的結點B的通信緩沖器可用,那么這個頭片就不必等待,直接通過結點A傳向下一個結點B;隨后的其它片跟著相應的向前“蠕動”一步。當消息的尾片向前“蠕動”一步 后,它剛才所占用的結點就被放棄了。如果所選擇的通道非空閑或者所選擇的結點的通信緩沖器非可用,那么這個頭片就必須在此結點的通信緩沖器中等待,直到上述兩者都可用為止;其它片也在原來的結點上等待。此時,被阻塞的消息不從網絡中移去,片不放棄它所占有的結點和通道。這是Wormhole技術和其它流控制技術都不同的地方。

Wormhole方式從管道消息流的概念中所繼承的。它的優點是每個結點的緩沖器的需求量小,易于用VLSI實現;較低的網絡傳輸延遲;所有的片以流水方式向前傳送。而在存儲轉發中,消息是整個的從一個結點“跳”向另一個結點,通道的使用是串行的。Wormhole與線路開關的網絡傳輸延遲正比于消息包的長度,傳輸距離對它的影響很小(消息包較長時的情況)。通道共享性好、利用率高。對通道的預約和釋放是結合在一起的一個完整的過程:占有一段新的通道后將立即放棄用過的一段舊通道。易于實現Multicast和Broadcast。允許尋徑器復制消息包的片并把它們從多個輸出通道輸出。

由于wormhole技術淡化了路徑長度對網絡性能的負面影響,使人們有希望采用簡單、規整的低維網格結構來實現高性能的大規模并行處理(MPP)互連網絡。所以,wormhole技術已被廣泛用于MPP互連網絡中,并收到了較好的效果。

3虛擬通道與死鎖

對于wormhole尋徑方式最重要的問題在于防止消息傳遞的阻塞和死鎖。一個消息有可能在一個向相反方向傳遞的消息后阻塞,如圖2所示。

圖2 Wormhole尋徑的阻塞

圖中,源2與目的2兩各節點之間首先開始傳輸片,這樣就阻塞了源1到目的1的片的傳送。在這種情況下,通常使用虛擬通道來解決阻塞的問題。一個虛擬通道是一個物理通道的邏輯抽象概念,與一個物理通道關聯的所有虛擬通道具有不同的片緩存,并且它們時分復用該物理通道。與此類似,每個與虛擬通道相關聯的緩存實際上是該物理通道的緩存的一部分,如圖3所示。

圖3虛通道示意圖

在圖3所示的虛通道示意圖中,兩個虛通道共用一個物理通道,實現了物理通道的時分復用,從而解決了阻塞的問題。在虛擬通道中,一條物理通道在邏輯上分成兩個傳輸方向相反的通道,每一個虛擬通道為單向且有自己的緩存區;一條物理通道上的虛擬通道邏輯上被劃分成多個虛擬通道,這些虛擬通道共享這條物理通道發送或接收信息。由于虛擬通道能夠有效的減小沖突和阻塞,因此為增強性能和設計非死鎖的尋徑算法方面,在多計算機系統尤其是MPP中使用的非常頻繁。

綜上所述,wormhole技術的通道具有共享性好,靈活的連接方式,較高的吞吐率等優點。在wormhole技術中,對通道的預約和釋放是結合在一起的一個完整過程。當占有一段新的通道后,將立即釋放用過的一段舊通道,充分考慮多個數據包對通道資源的共享。數據包經過的每一段通道既不在數據包到達之前預約,也不在數據包通過之后繼續占有,僅僅在數據包到達時才被使用。對于某一段通道來講,在數據包到達之前它不必空閑等待,當數據包經過之后它立即可以為其它數據包所利用。

4避免死鎖的wormhole尋徑方式

4.1維序尋徑

維數排序路由是一種確定的wormhole尋徑方式,它規定了消息傳遞時所選擇的路徑的維數即方向的順序。這種網絡的維數按照時限定好的單調的順序排序。消息首先在最高維或最低維進行置換,直到它在這一維的方向上到目的節點的距離為0,然后消息再在一個相鄰的維上進行交換,重復這個過程,直到該消息抵達目的節點。所有的消息不會反向傳送,不會形成循環,因此就保證了死鎖的避免。

維數排序路由將最短路徑分布在整個網絡中,這樣同時均衡分布了網絡的通信量。對于不對稱工作量的網絡來說,有些通道就會比其他通道繁忙得多,而由于這種算法將路徑限制在一個固定的通道上,即使在沖突或網絡發生錯誤的情況下也不能夠分散流量。對于所有的確定的wormhole尋徑方式中,都存在這個問題。因此,這是確定的wormhole尋徑方式的局限性。

(下轉第591頁)

4.2轉向模型(Turn Model)

轉向模型開創了避免死鎖的自適應算法新方向。它要求通道獨立圖中沒有自環。轉向模型針對無附加通道的網絡提供了一套發展自適應尋徑算法的系統方法,無論是完全自適應還是部分自適應。在這樣的情況下死鎖的發生是因為包的尋徑轉向形成了自環。

參考文獻:

[1] Duato J, Yalamanchili S, Ni L.Interconnection Networks[M]. IEEE Computer Society Press, Los Alamitos, CA, 1997.

[2] SCOTT S,THORSON G.Optimized routing in the CrayT3D[C].Proceedings of the International Workshop on Parallel Computer Routing and Communication, 1994:281-294.

[3] Liu Yan, Deng Bo, Yang Xiao Dong. LCFFA: A LOW-COST FULLY ADAPTIVE ROUTING ALGORITHM [J].JOURNAL OF COMPUT? ER RESEARCH & DEVELOPMENT,1999,36(3):331-336.

計算機并行處理技術范文4

關鍵詞:煤礦井下供電;RS-485;可編程串口控制器;綜合保護器

1引言

煤礦生產在井下作業,供電負荷場所環境、地質條件復雜,隨著近年來煤礦現代化程度的不斷提高、井下供電距離的增加以及供、配電要求的日益提高,對煤礦井下供、配電系統的穩定性、安全性和不間斷性要求也越來越高?,F在的工業現場控制網絡中,串口通信網絡是最廣泛,成本最低的通信方式,其中以RS458最常用。在通訊數據量越來越大的情況下,串口通訊也帶來了延遲高,速率低的問題。同時在煤礦供電監控系統建設過程中,面臨著眾多廠家不同規格型號綜合保護器接入系統問題,由于各個廠家甚至同一廠家不同型號不同時期的綜合保護器通訊協議都不盡相同,給系統建設帶來很大困難。本文作者利用可編程串口控制器(Programmable Serial Controller,PSC)技術構建煤礦井下供電監控系統,解決了上述問題,同時保障了煤礦井下供電安全。

2可編程串口控制器(PSC)技術原理

在煤礦井下串口通訊中采用輪詢制,即當總線的通訊速率一定時,系統數據刷新時間=單個分機通訊時間×分機個數÷總線使用率。要減少系統數據刷新時間有兩種方式:

(1)在所接分機數量不變情況下在計算機和分機之間加入一個適當的設備,支持N條RS485總線,采用同時并行通訊處理,這樣系統刷新時間=單個分機通訊時間×分機個數÷N÷總線使用率;

(2)提高總線使用率。在計算機和分機之間加入一個適當的設備,當計算機沒有和下面分機通訊的時候,這臺設備繼續和分機進行通訊,將數據儲存在自帶的緩存中,只要計算機需要數據,馬上通過以太網將數據成批發給計算機。

PSC就是基于以上原理,采用多CPU并行通訊處理以及超大容量緩存技術,同時對若干智能控制器或者儀表進行并行通訊,所得的數據存儲在超大容量緩存中,然后成批量將數據發往上位監控設備。將以往的串口通訊方式改為多路同時并行處理方法,將所有的被控設備按地址進行分組、分批,配合內建的超大容量緩存進行批量通訊,一改以往在規模比較大的串口控制網絡中出現的通信速率低、通訊時間遲延長、以及對各種通訊協議不能高度整合等缺點。

1)PSC架構

PSC的架構以ARM處理器為核心,ARM處理器采用32位嵌入式ARM Cortex系列單片機STM32F103x作為PSC的CPU,每個處理器帶有可以并行處理的兩個串口,共有4片處理器,可以并行處理八路串口,對設備按地址進行分組、分批,并配合大容量緩存進行批量通訊,處理相應速度快,可兼容現場不同種類通訊協議。PSC具有程序存儲功能和獨立運行的特性,綜保的通訊協議在PSC上進行轉換并存儲起來。即使更換綜保,也無需重寫程序,做到即換即用。PSC可以單獨運行,即使在上位機缺失的情況下,也能保證設備的正常監控。圖1為PSC硬件結構圖:

圖1 PSC硬件結構圖 圖2基于PSC技術的煤礦井下供電監控系統架構圖

2)信號隔離器結構

在煤礦供電監控系統中,難以通過關聯試驗確認現場綜保輸出信號是否為本質安全的,根據GB3836的規定,非本安RS-485信號與本安設備連接要做信號隔離處理,即需在非本安信號和本安設備之間加裝一個RS-485信號隔離器。本文中與PSC配套的隔離芯片選用ADM2483,芯片內部集成了磁耦隔離通道和RS-485收發器,設計電路連接簡單方便,通過單芯片就可以實現RS-485的信號隔離,而且產品體積小,功耗僅為傳統光耦隔離的1/10,傳輸延時為ns級,可靠性高,增強了信號傳輸的安全性與抗干擾性。

3)PSC編程語言開發平臺Rstep

PSC具有使用PC編程語言的可編程功能,較強的擴展性與融合性。使用編程工具就可以將不同的通訊協議轉換為規范的協議,從而達到支持不同綜合保護器通訊的功能,無需更換綜保。與PSC配套的編程開發平臺軟件為Rstep,軟件采用梯形圖的編程方式編寫程序,梯形圖與電氣控制系統的電路圖很相似,具有直觀易懂的優點,很容易被工廠電氣人員掌握。

3系統組成和特點

本文中利用PSC技術構建的煤礦井下供電監控系統采用管理層、信息層、設備層三層網絡架構,如圖2所示。

(1)管理層:地面控制主站和調度管理中心構成管理層。采用工業以太網通訊,其基于IEEE802.3標準的EtherNet/IP網絡結構,設備組按點對點連接到工業級網絡交換機,由交換機提供RJ-45或SC端口。傳輸速率為1000/100Mbps,傳輸介質為單模光纖或5類雙絞屏蔽網線。

(2)信息層:井下環網和地面網絡構成信息層。信息層是基于IEEE802.3標準的EtherNet/IP網絡結構。監控分站與井下環網交換機之間采用以太網通訊,監控分站與監控分站間通過井下環網連接,井下環網通過光纖與地面網絡連接。

(3)設備層:綜合保護器、傳輸總線以及監控分站構成設備層。綜合保護器通過總線與監控分站連接,監控分站內的PSC將不同協議進行轉化并加以存儲。監控分站與井下交換機通過以太網連接。

系統具有以下特點:

(1)可編程性:采用Rstep編程軟件,以梯形圖方式,在PSC內部定義與各種綜合保護器的通訊協議,并進行存儲,這樣監控分站就能與不同通訊協議的綜合保護器進行通訊;

(2)自動識別通訊協議:由于每類綜合保護器的通訊協議均不相同,所以存儲在PSC的程序能自動識別不同類型的綜保,達到即換即用,無需重新更新程序,也無需更換任何硬件;

(3)獨立性:由于PSC存儲了與綜合保護器通訊的程序,即使在分站與上層沒有網絡連接的情況下,依然可以實現就地監控,保障了系統的安全性;

(4)快速性:監控分站與綜保通過PSC進行數據處理,每個PSC帶有可以并行處理的兩個串口,可以并行處理八路串口,對綜保按地址進行分組、分批,提高了系統實時性。

4現場應用

本文中基于PSC技術構建的煤礦井下供電監控系統,在安徽淮北礦業集團公司祁南煤礦井下八個變電所進行了工業性試驗,對系統的功能、性能、可靠性進行了長期測試,結果表明:

(1)系統接入了祁南煤礦正在使用的五個生產廠家、九種規格的綜合保護器;

(2)具備地面遠程、井下區域、就地三種監控方式;

(3)具有遙測、遙信、遙調、遙控的“四遙”功能;

(4)系統運行可靠,速度快,響應時間小于1s。

計算機并行處理技術范文5

關鍵詞:高階矩陣;并行算法;MPI技術

中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2007)16-31080-01

The Research of High Matrix Multiplication's Algorithm

YANG Yong-juan,JIANG Qun

(Anhui University of Science & Technology Computer Science and Technology,Huainan 232001,China)

Abstract:Through the comparison between serial and parallel multiply arithmetic of high-level matrix, especially the study on parallel arithmetic through MPI method, the author concludes that it is possible, simple and necessary to multiply high-level matrix under MPI environment.

Key words:High-level Matrix;Parallel Arithmetic;MPI Method

1 緒言

我們經常會遇到大型的高階矩陣的有關計算,尤其是兩矩陣相乘更為常見。在應用中常用矩陣相乘的定義算法對其進行計算,即通常所說的串行算法。這個算法用到了大量的循環和相乘運算,這使得算法效率不高。而矩陣相乘的計算效率很大程度上的影響了整個程序的運行速度,所以對矩陣相乘算法進行一些改進是必要的。隨著大型的具有多處理機的并行計算機系統的發展,一些大型計算可以構造相應的并行計算方法進行并行處理,從而減少機器的工作單元,提高計算效率,節約資源,這也就是所要研究的并行算法。

在并行機上實現矩陣相乘必須要研究相關的并行算法,目前矩陣相乘并行算法有許多種,它們主要取決于矩陣的劃分,根據不同的劃分有行列劃分法、行行劃分法、列列劃分法等許多技術,下面主要采用行列劃分法進行矩陣相乘的串并行運算比較。

設矩陣Am×k與Bk×n,積矩陣為Cm×n。則Cm×n=Am×k×Bk×n。

每個元素Cij=∑Ait×Btj(i=1,…,m;j=1,…,n)

2 矩陣乘法的串行算法

在java串行中很好解決這個問題,直接用三個循環即可算出結果:

for (int i=0;i

for (int j=0;j

c[i][j]=0;

for (int t=0;t

c[i][j]=c[i][j]+a[i][t]*b[t][j];

}

}

}

3 矩陣乘法的并行算法

并行計算是提高計算機系統計算速度和處理能力的一種有效手段。它的基本思想是用多個處理器來協同求解同一問題,即將被求解的問題分解成若干個部分,各部分均由一個獨立的處理機來并行計算。并行計算系統既可以是專門設計的、含有多個處理器的超級計算機,也可以是以某種方式互連的若干立計算機構成的集群。 它是基于一個簡單的想法:N臺計算機應該能夠提供N倍計算能力,不論當前計算機的速度如何,都可以期望被求解的問題在1/N的時間內完成。顯然,這只是一個理想的情況,因為被求解的問題在通常情況下都不可能被分解為完全獨立的各個部分,而是需要進行必要的數據交換和同步的。 盡管如此,并行計算仍然可以使整個計算機系統的性能得到實質性的改進,而改進的程度取決于欲求解問題自身的并行程度。

由上面的公式定義Cij=∑Ait×Btj(i=1,…,m;j=1,…,n)可以看出,矩陣C中每個元素的計算彼此之間都是不相關的,其并行性一目了然,因此可以進行并行運算。

3.1并行算法的分析

此并行算法思想是:將一高階矩陣分解成除數小得多的矩陣相乘的子問題,然后交給各節點機實現,最后進行簡單的相加得到最終的結果。

假設現有兩個4×4的矩陣進行相乘,則為,

將上面的公式替換為:

按照矩陣乘法計算即為:

C11=A11×B11+A12×B21

C12=A11×B12+A12×B22

C21=A21×B11+A22×B22

C22=A21×B12+A22×B22

此時由剛才的4×4階的兩個大矩陣相乘,改為2×2的8個小矩陣相乘與四個2×2的四個小矩陣相加,可以將各8個小矩陣分配給不同的節點然后利用不同的處理機進行并行運算,這樣就可以提高機器的利用效率,最后再加所有的結果交給一個主控機由它進行合并。這時它的復雜性就很少了,若階數若高,同時處理機的數目越大的話,這種并行計算的優勢將體現的更多!但這里還要注意的是,不能因為追求并行性而盲目加大處理器數目,因為各個處理器之間的通訊也是需要代價的。

3.2 并行算法的MPI流程圖

假設并行機的處理器有p個:

圖1 并行算法圖

在剛開始時需要將A、B矩陣的各個子矩陣分別傳遞給各個不同的處理器,因此需要順序做,而一旦傳送完畢后,各個處理器就可以自己做自己的矩陣相乘運算了,即圖中所標的并行處理開始處,直到各個部分處理完畢后,再進行最后的合并。

4 結論

通過上述串行算法與并行算法的比較,可以看出并行算法的明顯優勢,它具有巨大的數值計算和數據處理能力?,F實生活中有許多情況都可以利用并行算法來解決,它能夠被廣泛地應用于各行各業中。特別是現在的MPI技術,更使得人們編寫并行程序越來越簡單。

參考文獻:

[1]朱旭.矩陣計算的并行算法和實現[J].工程數學學報,1997,14(2):99-103.

[2]李小洲,李慶華.矩陣相乘Cannon并行算法在工作站機群上的實現[J].計算機工程,vol.14 No.8 Aug.2004:49-51.

[3]彭雷,朱永芬,戴光明.PVM下矩陣相乘并行算法的研究與實現[J].微機發展,2004,28(6):102-103.

[4][美]科爾曼(Corrmen,T.H).算法導論(第2版影印版)[M].北京:高等教育出版社,2002.

[5]Wikinson B,Allen M.陸鑫達等譯.并行程序設計[M].北京:機械工業出版社,2002.

計算機并行處理技術范文6

關鍵詞:云計算技術;海量;數據挖掘;模型;效率

前言

最近幾年,信息技術的不斷發展,使得目前三季度產生的數據量是以前幾百年的總和,且處于持續增長的狀態。盡管激增的數據量擴展了人們的信息范圍,然而無形中也提高了企業或個人從大量數據中挖掘出有價值信息的困難程度。針對該問題,基于云計算的大量數據挖掘技術實現了資源配置和利用的優化,具有虛擬性、實用性等特征,符合數據挖掘快速、準確的要求。由此可見,將云計算技術應用于數據挖掘是目前提高數據利用效率的有效方式?;诖?,本文提出的以云計算為基礎的海量數據挖掘模型,旨在提供給各企業快速有效的數據挖掘服務,從而減少生產成本和提升生產效率。

1云計算技術

1.1基本概念

至今為止,關于云計算的定義尚未有統一標準,維基百科上關于云計算的介紹如下:云計算是通過網絡提供給用戶相關服務的新計算模式,主要提供可動態變化的虛擬資源,無需用戶掌握基本支持設施的應用和管理。也就是說,云計算是一種新商機,借助價格低、可連接的計算機聯網進行任務處理,為各系統提供數據存儲、運算或其他功能。就技術面而言,云計算技術起步較早,是虛擬技術的拓展、分布計算技術的發展,是資源統一管理和智能控制的重要表現。和傳統計算機技術相比,云計算技術推動了觀念創新和方法改進。就商業角度而言,云計算技術的應用目標是提供服務,用戶產生需求時會主動購買和應用,適應企業發展和系統升級。通常來講,云計算技術發展衍生出三種商業契機,包括服務即平臺、服務即架構和服務即軟件三種。圖1所示是云計算商業模式邏輯圖。

1.2基于云計算技術的并行運算模型

為了實現對海量數據的并行處理,谷歌公司開發出Ma-pReduce,是一個分布并行運算架構或模型。某個MapReduce可分解成多個Reduce和Map任務,其會將海量數據分解成多個單獨運算的Map任務,同時配發到對應計算機進行運算處理,生成一定格式的中間數據,最后由相關Reduce任務對其進行合并反饋運算結果。谷歌公司關于云計算技術的研發比較成功,其五大主要技術有分布式文件系統、大容量分布式數據庫、分布式鎖機制、集群管理和MapReduce?;谏鲜鲋饕夹g,云計算方能提供大量數據挖掘服務和運算系統??偠灾朴嬎闫脚_會將大量數據分解成統一規格的數據模塊,并分布存儲在云端服務器中,之后通過MapReduce并行運算模型進行數據處理,其是谷歌公司在網絡搜索引擎方面的重大突破。盡管通過MapReduce并行運算模型可進行海量數據處理,然而其要求數據結構相同、運算過程簡單。關于數據挖掘這類密集型的數據處理技術,可能涉及迭代、近似求解等復雜算法,運算過程比較困難。在這種情況下,以云計算技術為基礎的大量數據挖掘受到IT行業的重視,是社會熱點問題之一。

2基于云計算技術的海量數據挖掘

2.1數據挖掘

所謂的數據挖掘,是發現數據庫中有價值信息的過程,即從大量數據中挖掘出有價值或有意義的信息。就企業角度而言,數據挖掘的目的是從大量數據中發現有利于企業經營管理的信息,而且數據量越大,信息準確性越高。一般而言,海量數據挖掘對網絡環境和應用條件要求較高,而云計算技術的應用有效提高了數據挖掘效率?;谠朴嬎愕馁Y源管理系統可存儲大量數據,并結合數據挖掘要求來合理配發網絡資源,提高數據挖掘算法的延伸性,且具有一定的容錯性,提高了數據挖掘的可靠性和安全性。

2.2云計算技術在數據挖掘中的應用優勢

(1)基于云計算技術的數據挖掘可進行分布式并行處理,提高了數據挖掘的實時性和有效性。并且適合各種規模的企業,降低了中小企業數據應用成本,減少大型企對特殊數據應用軟件和設備的依賴性;(2)以云計算技術為基礎的海量數據挖掘更便捷、更快速,用戶層被隱藏起來了,不需要用戶進行數據分類、數據分配和任務控制等操作;(3)云計算實現了數據挖掘的并行處理,可提升傳統設備的海量數據處理能力,增加了多個控制節點,具有一定的容錯性;(4)以云計算為基礎的數據挖掘實現了數據應用技術的共享,滿足了不同類型用戶的數據挖掘需要。

2.3基于云計算技術的海量數據挖掘模型

云計算技術在海量數據挖掘中的應用體現在云計算提供了并行處理能力和大容量存儲能力,有效解決了當前海量數據挖掘的難點。圖2所示是關于基于云計算技術的海量數據挖掘模型的結構圖。據圖,以云計算技術為基礎的海量數據挖掘模型包括云服務層、數據運算層和用戶層三層。云服務層是最基層,負責存儲海量數據和提供分布并行數據處理功能。云計算環境除了要保證數據的實用性之外,還要確保數據的安全可靠性。關于數據的存儲,云計算采取分布存儲形式,提供了數據副本冗余存儲功能,確保在數據遺失等情況下用戶的正常運轉。當前,比較普遍的云計算數據存儲技術有開源的HDFS和非開源的GFS兩種。除此之外,云計算數據挖掘實現了數據的并行處理,可在多用戶發出指令的情況下,及時回復并提供數據挖掘服務。圖2基于云計算技術的海量數據挖掘模型的架構圖第二層是數據挖掘運算層,主要負責數據的預處理和挖掘算法的并行處理。數據預處理是對大量無規則的數據進行預先整理,基于云計算的MapReduce并行運算模型只適合同一結構的數據挖掘,常見的數據預處理方法有數據轉化、數據分類、數據抽調、數據約束等。對數據進行預處理是提升數據挖掘質量的重要保障,使海量數據挖掘更實時、更快速。用戶層是最頂層,直接面向用戶,主要負責接收用戶請求,同時將數據傳遞到下一層,并且將數據挖掘的運算結果反饋給用戶。除此之外,用戶還可通過可視化界面來監督和控制任務進度,并實時查看任務執行結果?;谠朴嬎慵夹g的數據挖掘的流程是:用戶在輸入模塊中發出數據挖掘指令,并傳遞給系統服務器,服務器自動根據用戶的挖掘指令在數據庫中調出數據,同時在算法庫中調出最優的挖掘算法,對數據進行預處理之后,傳遞到MapReduce運算模塊進行深入數據挖掘,最后將挖掘結果反饋到可視化界面,以便用戶查看和了解。

2.4云計算技術應用于數據挖掘的缺陷和應對措施

云計算技術尚處于發展階段,勢必會存在諸多問題或缺陷,以云計算為基礎的數據挖掘也存在如下問題:(1)用戶需求問題。以云計算技術為基礎的數據挖掘勢必會成為一種新服務形式,用戶需求也會更多樣化、個性化;(2)數據容量問題。就數據容量而言,未來可能要處理TB甚至PB容量以上的數據,同時還包括噪音數據、動態數據和高維數據等,某種程度增加了數據挖掘的難度;(3)算法選擇問題。數據挖掘效果受算法是否最優和是否并行化等影響顯著,算法設計、參數設置等都對數據挖掘結果有直接作用;(4)不確定性問題。數據挖掘過程中不確定因素較多,比如任務需求描述不準確、數據采集和預處理不確定、算法選擇不確定等。針對上述問題,可從以下幾點入手加強云計算技術在海量數據挖掘中的應用:(1)基本設施的構建。要結合用戶具體的個性化要求,同時考慮各行各業的特點,建立合適的云計算數據挖掘系統;(2)虛擬技術為云計算在數據挖掘中的應用提供了重要保障,未來要加強虛擬技術的研發,并推動其成果的最大限度應用,可有效控制網絡資源的配發和控制;(3)關于各種云計算產品的研發,要充分結合社會具體需要,引導大眾積極參與,從而提高數據挖掘的多樣化和個性化;(4)就可信度而言,設計和應用的算法要具備一定的通用性,滿足后續調查和檢驗的要求;(5)關于數據安全性方面,不可用傳統加密方式來保證數據安全,而要結合用戶的具體需要,在客戶端通過合適的加密方式來保證數據安全性。

3結語

亚洲精品一二三区-久久