• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于MPI+OpenMP的紅外弱小目標檢測并行計算

    2014-07-03 08:15:48賀維維曾瑤源
    計算機與現(xiàn)代化 2014年7期
    關(guān)鍵詞:弱小進程波段

    賀維維,吳 京,曾瑤源

    (國防科學技術(shù)大學電子科學與工程學院,湖南 長沙 410072)

    0 引言

    紅外弱小目標檢測技術(shù)是精確制導系統(tǒng)、目標監(jiān)視系統(tǒng)的一項關(guān)鍵技術(shù),一直以來是研究的熱點。由于成像距離遠,紅外弱小目標在圖像中只有一個到幾個像素的大小,加上強雜波干擾和紅外傳感器像元噪聲干擾,圖像的信噪比很低[1-2],通過對弱小目標運動全過程中紅外輻射特性的分析,發(fā)現(xiàn)采用單一波段已無法有效地實現(xiàn)目標檢測,只有綜合利用多個波段[3-6]的信息才能滿足對目標運動全過程的探測需求。紅外弱小目標檢測計算復雜,且對實時性要求較高。多波段融合的紅外弱小目標串行檢測時間是3個波段檢測與融合時間的疊加,無法滿足實際應用中實時性的要求。本文提出一種基于MPI+OpenMP的并行處理方法。并發(fā)執(zhí)行4個進程,3個從進程分別執(zhí)行3個波段的目標檢測計算部分并將處理結(jié)果發(fā)送給主進程,主進程從3個從進程接收數(shù)據(jù)并進行波段間融合。各計算進程內(nèi)部,采用OpenMP線程并行。經(jīng)仿真驗證,這種MPI位于頂層OpenMP位于底層的層次化并行模型適用于紅外弱小目標多波段融合檢測算法,能取得較好的檢測效果。

    1 MPI+OpenMP混合并行編程模型

    并行編程模型一直是并行計算研究領(lǐng)域中的重點內(nèi)容,目前2種最重要的并行編程模型是共享存儲編程模型和消息傳遞編程模型。共享存儲編程模型具有單地址空間、編程容易、可移植性差等特點,其實現(xiàn)有OpenMP和Pthreads等。消息傳遞編程模型的特點是多地址空間、編程困難、可移植性好,其實現(xiàn)有MPI和PVM等。

    1.1 MPI簡介

    MPI[7]用于開發(fā)基于消息傳遞的并行程序,為用戶提供一個實際可用的、可移植的、高效和靈活的消息傳遞接口庫,它提供了與Fortran和C/C++語言的綁定,是目前最重要的基于消息傳遞的并行編程工具。各個并行執(zhí)行的部分通過消息傳遞來協(xié)調(diào)步伐[8],控制執(zhí)行。應用的分解、開發(fā)和調(diào)試相對困難,通信可能造成大的開銷,為了最小化延遲,通常需要大的代碼粒度[9]。

    1.2 OpenMP 簡介

    OpenMP是基于fork-join的并行編程模型[10],它將程序劃分為并行區(qū)和串行區(qū),串行區(qū)由主線程執(zhí)行,到并行區(qū)主線程派生出多個線程,并行執(zhí)行該區(qū)域的代碼。直到并行區(qū)域中所有子線程負責的任務(wù)都執(zhí)行完畢后,主線程才繼續(xù)執(zhí)行。使用者無需關(guān)心復雜的線程創(chuàng)建、同步、銷毀等工作。OpenMP完全依賴用戶保證制導的正確性[11]。用戶通過構(gòu)造并行區(qū)域來編寫可擴展的并行程序,可以使計算密集的程序部分得以有效并行。OpenMP基于共享內(nèi)存的機器,因此它的可擴展性比較差,受系統(tǒng)可用的計算單元的限制,當問題規(guī)模增加,很難添加新的資源來加速計算。

    1.3 MPI+OpenMP混合編程模型

    MPI是集群計算中應用較廣泛的編程平臺,但是單一的MPI消息傳遞并行編程模型在多處理器節(jié)點集群上并不能實現(xiàn)理想的并行效果。MPI+OpenMP這種層次化的并行模型[12],能夠結(jié)合分布式內(nèi)存結(jié)構(gòu)和共享內(nèi)存結(jié)構(gòu)的優(yōu)勢,提供節(jié)點間和節(jié)點內(nèi)的2級并行,模型結(jié)構(gòu)如圖1所示。

    圖1 MPI+OpenMP混合編程模型

    MPI+OpenMP并行編程模型容易實現(xiàn)。如圖1所示,MPI的初始化和結(jié)束仍然調(diào)用MPI_Init()和MPI_Finalize()。每個MPI進程可以在#pragma omp parallel編譯制導語句所標識的區(qū)域內(nèi)產(chǎn)生線程級并行而在區(qū)域外仍為單進程?;旌夏P椭校琈PI提供多處理器節(jié)點之間的粗粒度并行,OpenMP提供單個處理器內(nèi)多核之間的數(shù)據(jù)交互。這種MPI位于頂層OpenMP位于底層的混合編程模型很好地映射了多處理節(jié)點集群體系結(jié)構(gòu)。

    混合編程模型提供了節(jié)點間和節(jié)點內(nèi)的2級并行機制,它的優(yōu)勢在于結(jié)合了進程級的粗粒度并行(例如區(qū)域分解)和線程級的細粒度并行(如循環(huán)并行),在很多情況下,其執(zhí)行效率高于純 MPI或OpenMP程序[13-14]。混合編程模型中 OpenMP能夠很好地彌補在MPI并行程序中可能出現(xiàn)負載不平衡的問題;混合編程模型首先執(zhí)行MPI分解策略,啟動理想數(shù)目的進程,再用OpenMP進一步分解子任務(wù),則可以使所有處理機得到高效利用;混合模型的程序?qū)p少通信的次數(shù),并且OpenMP的線程級并行具有較小的延遲,可緩解純MPI程序進程間的通信帶寬和延遲的問題。

    2 基于混合并行的多波段目標檢測算法設(shè)計與優(yōu)化

    2.1 紅外弱小目標檢測算法

    2.1.1 目標紅外輻射特性分析

    根據(jù)維恩位移定律,黑體電磁輻射能流密度的峰值波長λm與自身溫度T成反比,即:

    其中,λm的單位是 μm,T 的單位是 K,a=2897.95μm·K,為一常數(shù)。紅外弱小目標在運動的全過程中,由于自身推進器工作、與大氣摩擦等原因具有不同的溫度,由上述公式可知,其在不同運動階段具有不同的紅外輻射特性[15],采用單一的波段無法對運動全程實現(xiàn)有效探測,需采用不同的波段進行探測。不同的傳感器工作在不同的電磁波段,探測到的目標在對比度、信噪比、強度等方面有很大的差別。在遠距離、強雜波干擾的情況下,利用多個波段的探測信息的互補性能夠?qū)崿F(xiàn)對運動全過程的有效監(jiān)控。

    2.1.2 多波段紅外弱小目標檢測

    包含目標的紅外圖像可表示為:

    其中,s(x,y)表示目標信號,在包含目標的紅外圖像中,目標除了受到背景雜波信號b(x,y)的干擾外,還受到成像和傳輸過程中的噪聲的影響,統(tǒng)稱為n(x,y)。背景抑制和閾值分割[16]主要作用是盡可能排除背景雜波和噪聲對目標的干擾,并盡可能降低虛警點的個數(shù)。紅外弱小目標在圖像中表現(xiàn)為信噪比很低,僅依靠單幀圖像實現(xiàn)檢測比較困難,還必須利用目標的運動特性進行多幀關(guān)聯(lián),以進一步剔除虛警點。紅外檢測的流程如圖2所示。

    圖2 目標檢測算法流程

    2.2 串行檢測性能分析

    圖2(b)給出了單個波段檢測算法的流程,圖2(a)給出了多個波段串行檢測的流程。由圖2可知,串行檢測時間是各個波段的檢測時間與融合時間之和。針對1200×1200規(guī)格的圖像,在高性能計算服務(wù)器上進行測試(運行環(huán)境見3.1節(jié)),測試時間如表1所示。

    表1 單幀多波段串行檢測時間(ms)

    上述多波段串行算法單幀檢測的時間為3835.7 ms,無法滿足實際應用中單幀檢測時間小于500 ms的要求。因此,必須對多波段檢測算法進行并行計算研究,將計算任務(wù)進行分解才能充分利用硬件的計算資源,從而獲得性能的提升。

    2.3 并行設(shè)計及優(yōu)化

    2.3.1 算法并行可行性分析

    多波段檢測算法中,單個波段的檢測比較耗時,而融合處理時間較短,3個波段之間只有在融合處理過程中才有數(shù)據(jù)的交互。因此,可以開啟多個進程并發(fā)執(zhí)行各個波段的檢測任務(wù),進程之間采用MPI指令進行消息傳遞。單個波段檢測算法中,背景抑制和閾值分割都是針對全局圖像像素點進行處理,這種循環(huán)遍歷像素點的算法比較適合采用OpenMP的for制導指令進行并行任務(wù)分擔。

    通過以上分析可以看出,這種多波段的串行檢測算法比較適合采用基于MPI+OpenMP的混合并行模型進行加速處理,并發(fā)執(zhí)行4個進程,3個從進程分別處理3個波段的檢測任務(wù),然后將處理結(jié)果發(fā)送給主進程進行融合處理;各個進程內(nèi)部采用OpenMP的多線程技術(shù)對背景抑制和閾值分割等相關(guān)算法進行加速處理。后續(xù)的仿真結(jié)果也驗證了該模型對多波段串行檢測算法的適用性。

    2.3.2 算法并行設(shè)計及優(yōu)化

    多波段紅外弱小目標融合檢測中,3個波段的檢測計算部分采用相同的算法,耗時基本相同,用3個進程來并行計算不會造成負載不均衡的問題。

    檢測過程要處理多幀圖像,3個從進程和主進程之間的通信在循環(huán)體內(nèi)部調(diào)用。針對多波段融合檢測算法特點,在并行設(shè)計時采取以下幾種優(yōu)化策略:

    1)進程之間采用重復非阻塞的通信方式,將通信參數(shù)與MPI內(nèi)部對象建立固定的聯(lián)系,并通過該對象完成重復通信,降低不必要的通信開銷。

    2)各從進程發(fā)送給主進程用于融合檢測的數(shù)據(jù)是不同類型的數(shù)據(jù)塊,在算法實現(xiàn)過程中,自定義新的數(shù)據(jù)類型,將所需傳輸?shù)臄?shù)據(jù)以新的數(shù)據(jù)類型打包[17],以減少通信個數(shù)。

    3)節(jié)點內(nèi)采用OpenMP并行設(shè)計時,綜合考慮并行粒度和系統(tǒng)開銷,選擇檢測流程中合適的的算法并行化。例如:背景抑制和閾值分割是對全局圖像的像素點進行處理,計算比較耗時,而多幀軌跡關(guān)聯(lián)是對閾值分割產(chǎn)生的備選點處理,計算時間較短,所以只針對背景抑制和閾值分割算法采取OpenMP多線程并行。

    檢測算法在混合編程模型上的實現(xiàn)架構(gòu)如圖3所示。

    圖3 多波段目標檢測在混合編程模型上的架構(gòu)實現(xiàn)

    3個從進程的處理流程相同,圖3中只給出了單個從進程和主進程之間的通信模式。

    3 測試環(huán)境及結(jié)果分析

    3.1 測試環(huán)境

    硬件環(huán)境為IBM Flex System x240中的4個節(jié)點,每個節(jié)點包含2顆E5-266 CPU(2.9 GHz/6-core)共12 core,采用Infiniband網(wǎng)絡(luò)。其軟件環(huán)境包括Red Hat Enterprise Linux 6.0的操作系統(tǒng),支持OpenMP和MPI的Intel Composer XE 2013并行環(huán)境。程序采用C語言編寫,MPI+OpenMP混合程序需使用帶有-openmp選項的編譯命令編譯,該選項激活、解釋程序中的OpenMP編譯制導。

    3.2 測試結(jié)果及分析

    選擇1200×1200規(guī)格的3個波段的序列圖像各100幀進行測試,統(tǒng)計單幀平均處理時間如表2所示。

    表2 不同方法程序測試時間表

    本文通過計算各種并行方法的加速比來衡量加速效果,加速比定義如下:

    其中,Tparallel為并行方法的計算時間,Tserial為串行檢測的時間。方法1為3個波段串行檢測,其計算時間為3835.7 ms,本文以該時間為基準計算加速比,從而分析加速性能。通過上述公式,計算得到4種不同并行方法的加速比如圖4所示。

    圖4 不同并行實現(xiàn)方法的加速比

    圖4中,方法2,3,4都是針對集群系統(tǒng)的單個節(jié)點測試。方法2,在多波段串行檢測算法中,只針對單個波段檢測中的背景抑制和閾值分割進行OpenMP多線程加速處理,加速比能達到2.56。方法3,在單個節(jié)點開啟4個進程,分別執(zhí)行3個波段的檢測和融合任務(wù),加速比能達到2.79。方法4,在單個節(jié)點開啟4個MPI進程,3個從進程內(nèi)部分別采用OpenMP并行,加速比為5.29,其加速效果優(yōu)于純OpenMP并行和純MPI并行。方法5,在4個節(jié)點各啟動一個MPI進程,各節(jié)點內(nèi)部采用OpenMP并行,加速比為 8.61。

    測試所用的集群系統(tǒng),單個節(jié)點有12個core,方法5每個進程內(nèi)部分配12個OpenMP線程,而方法4每個進程分配4個線程。方法5利用了多處理器節(jié)點內(nèi)部的多核計算資源,加速效果優(yōu)于方法4。如果單從開啟的OpenMP線程數(shù)來看,方法5理論上的加速比應該是方法4的3倍,但實際為1.63(724.2/445.3)倍。分析其原因在于,單個進程內(nèi)部雖然采用OpenMP多線程技術(shù),但是只是針對背景抑制和閾值分割等算法,其中還有輸入圖像數(shù)據(jù)、軌跡關(guān)聯(lián)、輸出處理結(jié)果等算法不適合采用OpenMP并行,從而影響了整體的加速效果。下一步可以考慮對這些算法做進一步的優(yōu)化。

    對于多波段紅外弱小目標檢測算法,單純的MPI并行和OpenMP并行實現(xiàn)都不能達到很好的加速效果,基于MPI+OpenMP的層次化并行充分利用分布式存儲和共享存儲的優(yōu)勢,加速比能達到8.61,單幀處理時間為455.3 ms,滿足實際應用中實時性的要求(單幀處理時間小于500 ms)。實驗結(jié)果表明,這種層次化的并行模型適用于多波段檢測算法,能夠達到很好的加速效果,實驗結(jié)果驗證了第2節(jié)中的理論分析。

    4 結(jié)束語

    紅外弱小目標檢測對于導彈攻防、實時監(jiān)控具有重要的意義,對實時性要求比較高,高性能計算在這個領(lǐng)域一直是研究的熱點?;贛PI+OpenMP的混合編程模型結(jié)合分布式內(nèi)存結(jié)構(gòu)和共享內(nèi)存結(jié)構(gòu)的優(yōu)勢,在多波段紅外弱小目標檢測的實現(xiàn)上能夠達到較好的加速效果。這種層次化的并行結(jié)構(gòu)也存在一些問題,例如:MPI進程數(shù)目受限、MPI進程間的通信帶寬和延遲、OpenMP線程產(chǎn)生的系統(tǒng)開銷[18]等問題。在實際應用上,一定要考慮二者的結(jié)合能否提供一個更加優(yōu)化的平臺以及如何結(jié)合能夠達到更高的計算效率。最新發(fā)布的Intel? Xeon PhiTM基于MIC(Many Integrated Core)架構(gòu)的芯片集成了60個精簡的x86核心,能夠并發(fā)執(zhí)行200多個線程[19]。下一步,可以將檢測任務(wù)進行分解,將密集計算的部分移植到MIC上,邏輯判斷的部分放在CPU端,充分利用CPU和MIC的計算資源,以達到更好的加速效果。

    [1] 于海南,趙保軍.低信噪比紅外圖像小目標的檢測[J].激光與紅外,2004,34(1):40-42.

    [2] 羅曉清,吳小俊.利用小波變換與Gabor濾波檢測紅外小目標[J].紅外與激光工程,2011,40(9):1818-1822.

    [3] 楊杰,楊磊.基于紅外背景復雜程度描述的小目標檢測算法[J].紅外與激光工程,2007,36(3):382-386.

    [4] 李麗亞,盧濤.一種雙/多波段紅外目標融合檢測方法[J].激光與紅外,2011,41(6):687-690.

    [5] 張光明,盛衛(wèi)東,樊士偉,等.基于多傳感器融合的紅外圖像序列檢測性能分析[J].紅外與毫米波學報,2009,28(1):16-19.

    [6] 王建濤.一種雙波段紅外圖像弱小目標融合檢測新算法[J].西安電子科技大學學報(自然科學版),2008,35(3):530-535.

    [7] 都志輝.高性能計算之并行編程技術(shù)[M].北京:清華大學出版社,2001:30-58.

    [8] 袁景艷,劉方愛,趙芳芳.基于MPI的集群系統(tǒng)的研究[J].信息技術(shù)與信息化,2010(2):33-35.

    [9] 熊仕勇.并行計算平臺的模擬與并行算法的實現(xiàn)[J].科技創(chuàng)新導報,2010(27):25.

    [10] 蔡佳佳,李名世,鄭鋒.多核微機基于OpenMP的并行計算[J].計算機技術(shù)與發(fā)展,2007,17(10):87-91.

    [11] 任小西,唐玲,李仁發(fā).OpenMP多線程負載均衡調(diào)度策略研究與實現(xiàn)[J].計算機科學,2010,37(11):148-151.

    [12] 馮云,周淑秋.MPI+OpenMP混合并行編程模型應用研究[J].計算機系統(tǒng)應用,2006,15(2):86-89.

    [13] Quinn M J.MPI與OpenMP并行程序設(shè)計(C語言版)[M].陳文光,等譯.北京:清華大學出版社,2004:82-104.

    [14] 潘衛(wèi),陳燎原,張錦華,等.基于 SMP集群的 MPI+OpenMP混合編程模型研究[J].計算機應用研究,2009,26(12):4592-4594.

    [15] 田國良.熱紅外遙感[M].北京:電子工業(yè)出版社,2006:20-25.

    [16] 楊衛(wèi)平,沈振康.紅外圖像序列小目標檢測預處理技術(shù)[J].紅外與激光工程,1998,27(1):23-28.

    [17] 陳輝,孫雷鳴,李錄明,等.基于MPI+OpenMP的多層次并行偏移算法研究[J].成都理工大學學報(自然科學版),2010,37(5):528-534.

    [18] 張延紅,史永昌,朱曉珺.非規(guī)則循環(huán)的OpenMP調(diào)度算法[J].計算機工程,2011,37(6):68-70.

    [19] 王恩東,張清,沈鉑,等.MIC高性能計算編程指南[M].北京:中國水利水電出版社,2012:30-48.

    猜你喜歡
    弱小進程波段
    春日暖陽
    ??!水手,上岸吧
    債券市場對外開放的進程與展望
    中國外匯(2019年20期)2019-11-25 09:54:58
    M87的多波段輻射過程及其能譜擬合
    日常維護對L 波段雷達的重要性
    西藏科技(2015年4期)2015-09-26 12:12:58
    我有特別的喝水技巧
    柴的嘲笑
    社會進程中的新聞學探尋
    民主與科學(2014年3期)2014-02-28 11:23:03
    L波段雷達磁控管的使用與維護
    河南科技(2014年18期)2014-02-27 14:14:53
    我國高等教育改革進程與反思
    孝昌县| 上犹县| 汝城县| 灌阳县| 虞城县| 长泰县| 美姑县| 南澳县| 伊宁县| 赤峰市| 揭东县| 博爱县| 原平市| 安图县| 武汉市| 浮山县| 广灵县| 衡东县| 天峨县| 望城县| 蓝田县| 云安县| 历史| 柳河县| 准格尔旗| 海淀区| 辽阳县| 洪湖市| 沁源县| 三原县| 天气| 灵川县| 喀喇沁旗| 通榆县| 宜州市| 尼木县| 固镇县| 阿坝县| 彰化县| 开封县| 普洱|