胡 辰張 帆*李國君李 偉崔忠馬
①(北京化工大學信息科學與技術(shù)學院 北京 100029)②(北京遙感設(shè)備研究所 北京 100854)
基于冗余計算約簡的環(huán)掃SAR回波多GPU快速模擬
胡 辰①張 帆*①李國君①李 偉①崔忠馬②
①(北京化工大學信息科學與技術(shù)學院 北京 100029)
②(北京遙感設(shè)備研究所 北京 100854)
環(huán)掃SAR作為一種特殊工作模式雷達,在對地觀測方面有著廣泛應用。隨著分辨率提高及測繪帶寬增大,對環(huán)掃SAR成像精度提出了更高的要求。而快速的海量回波模擬方法能夠?qū)Ω呔瘸上袼惴ㄔO(shè)計、研究提供有力的支撐。本文給出一種基于多GPU(Graphics Processing Unit,圖形處理器)的環(huán)掃SAR回波模擬方法,并在此基礎(chǔ)上進行冗余計算優(yōu)化,通過MPI(Message Passing Interface,消息傳遞接口)在多GPU上進行了實現(xiàn),實驗結(jié)果表明在使用4塊GPU的條件下,經(jīng)過冗余計算約簡,并行效率提高2倍以上,硬件成本降低50%,相對傳統(tǒng)CPU串行仿真提高350倍左右。
環(huán)掃SAR;回波模擬;GPU并行;計算優(yōu)化
引用格式:胡辰, 張帆, 李國君, 等.基于冗余計算約簡的環(huán)掃SAR回波多GPU快速模擬[J].雷達學報, 2016, 5(4): 434-443.DOI: 10.12000/JR15078.
Reference format: Hu Chen, Zhang Fan, Li Guojun, et al..Computation reduction oriented circular scanning SAR raw data simulation on multi-GPUs[J].Journal of Radars,2016, 5(4): 434-443.DOI: 10.12000/JR15078.
合成孔徑雷達(Synthetic Aperture Radar,SAR)能夠在復雜的氣象條件下全天時工作,獲得高分辨率圖像。隨著SAR系統(tǒng)的發(fā)展,設(shè)計了多種新的工作模式以滿足不同觀測需求,如滑聚、圓跡、環(huán)掃等。環(huán)掃模式是指天線波束中心繞著一條軸進行旋轉(zhuǎn)掃描,可以在短時間內(nèi)獲得環(huán)狀目標區(qū)域的信息[1-6]。隨著環(huán)掃SAR分辨率的提高、測繪帶的增寬,對成像算法精度提出更高的要求。而高精度成像算法研究所需的模擬回波數(shù)據(jù)也海量增加,對計算效率提出了更高的要求。傳統(tǒng)的串行回波模擬方法效率低,因此有必要利用高性能計算技術(shù)加速回波模擬過程,為環(huán)掃SAR成像算法研究、系統(tǒng)設(shè)計提供有力支撐。
高性能計算在各種計算密集型科研問題領(lǐng)域得到廣泛應用,很多研究者也把SAR回波模擬和高性能計算進行了結(jié)合,比如利用OpenMP(Open Multiprocessing)的多核并行方法實現(xiàn)機載SAR回波仿真[7], 基于MPI的多CPU并行方法實現(xiàn)星載SAR回波仿真[8],基于網(wǎng)格計算的多計算機并行方法實現(xiàn)SAR回波模擬[9],以及基于GPU(Graphics Processing Unit,圖形處理器)的眾核并行回波仿真[10-18]等。但是,以上文獻的并行加速均未針對環(huán)掃SAR回波模擬,此外,雖然速度相比于傳統(tǒng)的回波模擬串行方法有了很大的提升,但是與成像處理的時間差距依然很大。因此有必要在前期研究基礎(chǔ)上,結(jié)合環(huán)掃成像幾何、回波生成的特點,進行環(huán)掃SAR回波的多GPU快速模擬研究,為成像算法研究提供支持。
高分辨率、寬測繪帶條件下的回波數(shù)據(jù)海量增加,給環(huán)掃SAR多GPU回波仿真帶來兩方面的問題。首先是冗余計算問題,在判斷波束腳印內(nèi)的有效目標回波時,需要計算整個場景的目標信息,但實際貢獻回波的目標點只有很小一部分,從而產(chǎn)生大量的冗余計算。其次是由于冗余計算帶來的冗余存儲問題,波束腳印計算中需要存儲整個場景的大小,雖然大顯存的GPU能夠解決這一問題,但硬件成本也會增加。因此,有必要對冗余計算及其引發(fā)的冗余存儲問題進行深度優(yōu)化,加快多GPU的環(huán)掃回波仿真效率。
針對環(huán)掃SAR回波模擬有待解決的問題,本文提出了一種基于冗余計算約簡的環(huán)掃SAR回波多GPU快速模擬方法。采用MPI進程控制不同的GPU卡,對原始數(shù)據(jù)進行分塊,使得每個進程在進行回波仿真時只需要開辟私有的存儲空間,對照射范圍外目標斜距歷史的冗余計算進行約簡,然后通過不同的GPU對相應塊數(shù)據(jù)并行地進行回波模擬計算,最后通過回波數(shù)據(jù)收集,得到最終的模擬回波數(shù)據(jù)。該方法能夠更好的應用于大場景環(huán)掃SAR回波模擬,相對傳統(tǒng)串行方法可以達到2個數(shù)量級以上的加速并有效地降低硬件需求,為工程應用提供了指導。
2.1 成像幾何模型
環(huán)掃SAR在運動過程中,天線在保持入射角不變的同時,繞地面垂線做環(huán)形掃描,從而形成近似環(huán)狀的掃描區(qū)域,其成像幾何如圖1所示,其中SAR平臺沿X軸正方向做直線運動,天線波束以固定的中心視角β0繞地面垂線做逆時針圓周掃描,B為波束中心點,Q(x1, y1, z1)為SAR載荷位置,βmin為波束起始視角,βmax為波束終止視角,θmin和θmax分別表示波束腳印方位角的最小值和最大值。假定SAR天線從X正半軸開始繞Z軸做圓周掃描,由于SAR平臺沿X軸正方向前進,經(jīng)過完整一周的掃描,在地面會產(chǎn)生一個不閉合的圓環(huán)掃描區(qū)域,如圖1所示。
圖1 環(huán)掃SAR成像幾何Fig.1 Circular scanning SAR imaging geometry
成像幾何主要用于計算目標和SAR之間的斜距、角度等幾何信息。其中角度信息用來進行波束腳印范圍判斷,斜距信息用來計算回波延遲、相位,下面以場景內(nèi)某點為例,介紹成像幾何的解算過程:
首先,點P的斜距Ri及水平投影的計算公式如下。
接著,點P的波束視角βi和方位向角θi求解如下。
然后,需要根據(jù)點P的角度信息進行波束腳印范圍判斷。波束腳印范圍計算包括距離向、方位向兩個方面的角度約束。距離向角度約束是指根據(jù)βmin和βmax對所有點波束視角進行判斷,可以在整個場景中篩選出一個環(huán)狀區(qū)域。在此基礎(chǔ)上,根據(jù)θmin和θmax進行方位向角度約束得到最終的波束腳印范圍內(nèi)的目標點。因此,如果點P在波束范圍內(nèi),則需滿足如下條件:
2.2 SAR回波模擬方法
回波模擬算法從處理域角度可以劃分為距離時域、距離頻域、2維頻域等3類,其中時域模擬算法由于能夠較好地考慮各種系統(tǒng)誤差和運動誤差,常應用于算法研究、系統(tǒng)設(shè)計過程。本節(jié)主要針對所采用的距離時域快速模擬方法[19]進行介紹。
SAR發(fā)射的chirp信號表達式如下:
式中Tp為脈沖寬度,fc為載波頻率,kr為線性調(diào)頻率,τ為距離向時間。
經(jīng)過相干接收,SAR回波信號表達式如下:
式中Ta是合成孔徑時間,t為方位向時間,λ是波長,r(t)是該點到相位中心的距離。
由式(8)可知,每個方位時刻的回波信號看作由一系列狄拉克函數(shù)和發(fā)射信號的卷積,并通過傅里葉變換的方法在頻域完成混疊的方位回波信號與距離向信號的卷積過程實現(xiàn)回波快速模擬,如式(9)所示。
式中tn表示方位向時間軸,S(ξ)為發(fā)射信號的頻譜,F(xiàn)表示傅里葉變換,F(xiàn)-1表示傅里葉逆變換,并有方位向積累信號sa(tn,τ)如下所示:
式中i表示目標散射點序號。
根據(jù)式(9),式(10),可以得到回波模擬步驟如圖2所示。首先,根據(jù)環(huán)掃SAR成像幾何解算,得到某一個方位時刻場景中目標點的斜距、視角、方位角信息;接著,進行波束腳印判斷,對于范圍內(nèi)的目標方位向回波進行計算,并疊加到對應的距離門中;然后,將疊加的方位向信號和距離向信號通過頻域乘法的方式完成卷積處理,得到一個方位時刻的回波數(shù)據(jù);最后,遍歷所有方位向時刻得到完整的回波數(shù)據(jù)。
圖2 SAR回波模擬仿真流程圖Fig.2 Flowchart of SAR raw data simulation
3.1 CUDA編程模型
CUDA (Compute Unified Device Architecture)是由顯卡廠商英偉達推出的一種通用的并行計算架構(gòu),能夠方便地將通用數(shù)值問題映射到GPU并行解決,因此GPU和傳統(tǒng)算法的結(jié)合成為一個熱點問題。
GPU與CPU在硬件架構(gòu)上有著很大的不同,主要體現(xiàn)在邏輯控制、數(shù)據(jù)計算和存儲體系方面。首先,由于芯片表面放置較少的邏輯控制單元,GPU的邏輯處理能力較差,因此在CPU+GPU異構(gòu)系統(tǒng)中的邏輯控制部分通常由CPU完成。其次,GPU芯片表面比CPU芯片表面放置了更多的計算單元,因此GPU的計算能力優(yōu)于后者。然后,GPU具有更加豐富的存儲體系,每個線程都有自己的寄存器和本地存儲器,多個線程構(gòu)成一個線程塊,每個線程塊中的線程有共享的存儲空間,多個線程塊構(gòu)成一個網(wǎng)格,網(wǎng)格中線程可以共享全局存儲器、常量存儲器和紋理存儲器中的數(shù)據(jù),GPU的存儲模型如圖3所示。
根據(jù)以上分析介紹,在環(huán)掃SAR多GPU回波仿真中,CPU主要用來完成輸入輸出、數(shù)據(jù)和參數(shù)分配、數(shù)據(jù)收集等任務(wù),GPU主要用來完成計算密集度大的回波計算部分。
圖3 GPU存儲器模型Fig.3 GPU memory hierarchy
3.2 MPI并行編程庫
CUDA用于完成單GPU卡的回波計算,對于多GPU卡的控制、任務(wù)調(diào)度,可以通過MPI完成。MPI全稱消息傳遞接口,是一個并行的編程庫,可以實現(xiàn)多機多核并行編程。在多GPU回波仿真中,任務(wù)的分發(fā)、收集都需要通過信息傳遞完成,而MPI是解決這一問題的最佳方法。MPI是基于消息傳遞機制的,可以靈活地進行仿真狀態(tài)信息傳遞、仿真數(shù)據(jù)傳輸、多GPU計算進程控制等任務(wù),便于進行不同粒度的并行,可以擴展到更多的GPU卡進行回波模擬工作,如圖4所示。
3.3 多GPU并行回波模擬方法
隨著分辨率提高、測繪帶寬變寬、觀測場景增大,需要進行模擬的回波數(shù)據(jù)量海量增加,雖然通過單GPU實現(xiàn)回波仿真已經(jīng)在速度上有了很大的提升,但是大場景回波模擬與成像處理之間還是有著很大的時間差,影響成像算法研究進程,因此有必要引入多GPU進行快速仿真。
根據(jù)stop-and-go模型,在SAR進行環(huán)掃時,各個方位向時刻的回波仿真過程是獨立的。此外,在信號相干積累過程中,各個目標點的信號散射也可以看作是相互獨立的。因此,可以從這兩個層面進行并行化設(shè)計,以每個方位時刻的回波仿真作為粗粒度并行單位,分發(fā)給各個GPU進行計算;在每個方位時刻內(nèi),以單個目標點回波模擬作為細粒度并行單位,分發(fā)給單個GPU卡中的各個線程進行計算,如圖2所示。
圖4 MPI消息傳遞簡圖Fig.4 MPI message-passing diagram
因此,可以對整個方位向仿真時間進行劃分,分配給每一塊GPU卡相應的仿真時間范圍,GPU卡收到計算任務(wù)之后開始進行計算,不同卡之間是并行執(zhí)行的,直到最后所有的計算任務(wù)都已經(jīng)完成,CPU負責將計算任務(wù)進行收集整理,得到最后的回波數(shù)據(jù),如圖5所示,具體的步驟如下:
(1) 讀入雷達參數(shù)、場景目標參數(shù)等仿真基本信息;
(2) 將存入內(nèi)存中的參數(shù)信息通過MPI主進程廣播到其他MPI進程中;
(3) 通過不同的進程控制不同的GPU,并將各自內(nèi)存空間中的參數(shù)信息和進程號傳送到GPU顯存中;
(4) 在GPU進行計算時,通過進程號、總進程數(shù)與總的方位向點數(shù)計算出該GPU卡在計算回波時的起始方位時刻和結(jié)束方位向時刻,也就是將整個方位向長度劃分成了若干個小的方位向范圍;
(5) 計算場景目標的斜距等成像幾何信息,進而計算在該方位時刻的回波;
(6) 遍歷該GPU所需遍歷的所有方位向時刻,得到仿真回波數(shù)據(jù)子塊;
(7) 計算完成后,將各自回波通過消息傳遞給主進程,CPU主進程進行回波的收集整理。
3.4 基于MPI的冗余計算約簡
圖5 多GPU的SAR回波模擬仿真流程Fig.5 Flowchart of multi-GPUs based SAR raw data simulation
分析上述回波仿真過程,可以看出波束腳印判斷步驟需要計算場景內(nèi)所有目標點的成像幾何信息,但是波束腳印內(nèi)的目標點只是其中一部分,對于波束腳印外目標點的成像幾何計算是冗余的,這樣就產(chǎn)生了兩個問題:
(1) 一個合成孔徑范圍相對于整個場景較小,但在進行波束腳印范圍判斷時卻要計算場景中所有點的斜距、角度等成像幾何信息,這樣就產(chǎn)生了很大的冗余計算。
(2) 如果需要計算場景中所有點的成像幾何信息,那么就需要將所有點的信息拷貝到GPU顯存中,但實際上需要的只有該GPU計算任務(wù)中對應照射區(qū)域內(nèi)的點信息,這樣就產(chǎn)生了顯存的浪費。
綜上可知,傳統(tǒng)回波并行模擬方法中在成像幾何計算部分出現(xiàn)計算冗余和存儲冗余,因此可以根據(jù)以上分析對這兩個問題提出解決措施,即通過MPI進行分塊的方法約簡計算量和減少顯存的使用量。為了減少在分塊時產(chǎn)生的計算量,分塊的處理原則是盡量取內(nèi)存中連續(xù)的數(shù)據(jù),減少不連續(xù)數(shù)據(jù)的存取。所以對于環(huán)掃SAR這種特殊的掃描方式,可以采取4塊劃分。如圖6,沿X軸和Y軸將環(huán)狀區(qū)域劃分為4塊。
但進行分塊劃分之后,又出現(xiàn)了新的問題,假如在某個方位時刻進行回波仿真時,合成孔徑超出了該塊,使得在場景塊邊緣的點并沒有掃到,如圖6。藍色邊線區(qū)域為場景塊,黃色區(qū)域為已經(jīng)經(jīng)過的區(qū)域,在該方位時刻,由于雷達在掃描時已經(jīng)到了場景的邊緣,所以有一部分場景目標信息沒有掃描到,如圖6的1區(qū)域中斜線部分,所以在回波計算時會產(chǎn)生能量積累不完全的情況。
圖6 雷達掃描分塊邊緣平面圖Fig.6 Block edge diagram of radar scanning
雷達在沿方位向前進時,掃描到的區(qū)域是連續(xù)的,所以在該場景邊緣,最多有半個合成孔徑距離沒有掃描到,在進行目標場景分塊時,需要將圖中斜線區(qū)域的場景目標信息加進來,這樣就避免了在某個方位向時刻出現(xiàn)掃描場景不完全的情況,如圖7所示。圖中黃色部分為需要回波仿真的場景,淡藍色區(qū)域為1個合成孔徑距離,也就是左右或者上下兩塊各多占大于半個合成孔徑的距離。對仿真場景的分塊處理需要4個MPI進程獲取自己的場景塊信息,因為在仿真開始前,主進程已經(jīng)將場景信息通過廣播發(fā)送給了各個進程,所以每個進程中有各自獨立的場景信息。場景的大小可用如下公式計算:
其中S為場景塊的面積,height和width為原場景的高和寬,MPI_NUM為啟動的MPI進程數(shù),d為合成孔徑長度。
圖7 MPI分塊示意圖Fig.7 MPI partitioning diagram
在未進行MPI分塊時,GPU顯存中需要存儲整個的場景信息,在計算斜距和波束腳印范圍時,GPU需要對計算整個場景數(shù)據(jù)進行計算。假設(shè)單位面積內(nèi)目標點在進行斜距和波束腳印范圍計算時所需要的運算量為Cpt,每個方位時刻的回波運算量為echo_Cpt,而目標點在場景中都是均勻分布的,所以Cpt跟場景的面積成正比。MPI分塊前后的每個方位向時刻的回波總運算量Cpt_total和Cpt_total_pieces如式(12)和式(13),MPI分塊前后的回波總運算量的比值Ni如式(14)。
從式(12)和式(13)可以看出總的回波運算量近似的與場景塊的面積成正比,而d相對于整個場景的height和width而言是很小的,所以在計算Ni時忽略了d的影響。假設(shè)啟動了4個MPI進程,并且在實驗過程中場景為6000×6000時,計算整個場景的斜距及波束腳印范圍的運算量約為計算1個方位向時刻的回波運算量的2倍,那么上式中Ni的值約等于2。在相同波束寬度的前提下,如果場景小于6000×6000,則Ni<2,如果場景大于6000×6000,則Ni>2,并且隨著場景的增大,Ni會變大,也就是MPI分塊方法的優(yōu)勢會隨著場景的增大而更加顯著。
通過圖7的分塊方法每個進程可以從場景中獲取與自己進程號相關(guān)的場景塊,例如主進程將獲取1號場景塊,然后將場景塊信息發(fā)送到GPU端進行各自的回波仿真處理。最終當所有的場景塊都仿真完成,也就是所有的方位向時刻點都仿真完成的時候,除主進程外的其他進程會向主進程發(fā)送回波結(jié)果,由主進程進行整合,完成整個回波過程。
從圖7中可以看出,在計算斜距等信息時每個進程只需要對本進程對應的場景塊進行處理,而不需要對全部的場景進行計算,減少了將近3/4的斜距等信息的計算量,增加的是MPI進程在進行分塊時的計算量,由于分塊時盡量取連續(xù)內(nèi)存中的數(shù)據(jù),所以在分塊時帶來的計算量相對是非常小的。而且由于每個進程只需要獲取本場景塊的信息,使用的顯存空間也大大減少了,原來需要將整個場景信息都傳送到顯存中,而現(xiàn)在只需要傳送稍大于1/4原場景的信息量,對顯卡的顯存要求也會降低,從而降低系統(tǒng)構(gòu)建經(jīng)濟成本。
4.1 實驗條件
為了驗證本文方法的有效性,需要設(shè)計大場景回波模擬實驗進行比較分析?;夭ǚ抡鎱?shù)如表1所示,并采用美國MSTAR數(shù)據(jù)[20]作為場景散射系數(shù)圖進行模擬計算。本次試驗的硬件環(huán)境如下,CPU型號是Intel(R) Xeon(R) CPU E5-2630 v2, 2.6 GHz, GPU共4塊, 型號為Nvidia Tesla C2070(顯存6 G),使用的CUDA版本為CUDA 4.0,MPI版本為MPICH 2.0。
4.2 加速效果分析
以CPU串行計算作為基準算例,在此基礎(chǔ)上進行多GPU、基于MPI分塊的多GPU并行回波模擬實驗,對比并行仿真的加速效果。
為了驗證多GPU并行方法和基于冗余計算約簡的多G P U并行方法的優(yōu)勢,分別針對4000×4000, 5000×5000, 6000×6000以及7000×7000等4個場景進行環(huán)掃SAR回波仿真,結(jié)果如表2、表3所示。從計算結(jié)果可以看出來,經(jīng)過4塊GPU卡的并行加速,運算時間大大減少,相對CPU的加速比可達160倍左右,但是仿真時間仍需要17 min;在此基礎(chǔ)上,進行冗余計算約簡,仿真時間縮短,加速比可以提升至352倍。可見在多GPU并行仿真基礎(chǔ)上,進行冗余計算約簡,能夠有效地提高環(huán)掃SAR回波仿真效率。
表2 不同場景下3種方法的計算時間對比Tab.2 Simulation time comparison of three algorithms in different scenes
表3 不同場景下多GPU和MPI分塊的多GPU方法的加速比Tab.3 Speedup comparison of the multi-GPUs based method and the proposed method
為了分析MPI分塊方法在速度上的優(yōu)勢,測試了MPI分塊時間以及分塊后的多GPU計算總時間及加速情況,如表4所示。從計算結(jié)果可以看出,利用MPI在CPU端進行并行分塊的冗余計算約簡,可以在多GPU并行仿真基礎(chǔ)上,提高2.2倍。該方法雖然相對多GPU方法具有一定的復雜度,但是時間消耗較少。通過較少的時間消耗,減少大量的冗余數(shù)值計算,從而提高整體并行計算效率,是一種并行計算的優(yōu)化思路。圖8給出了MPI分塊約簡冗余計算的加速效果對比,從圖中的柱狀信息可以看出,用MPI分塊的方法進行回波模擬仿真相比于未分塊的多GPU來說,仿真的速度快了近2倍。此外,從折線信息可以看出,多GPU的仿真時間的增長率要大于MPI+多GPU的增長率,也就可以預測,隨著仿真場景的增大,MPI分塊方法的優(yōu)勢會越來越明顯。
表4 不同場景下冗余計算約簡的計算時間及加速比Tab.4 Performance analysis of the proposed method in time and speedup
圖8 多GPU和MPI+GPU的仿真總時間對比圖Fig.8 Total simulation time comparison of the multi-GPUs based method and the proposed method
此外,實驗還分析了場景大小為7000×7000的情況下,整個環(huán)掃SAR回波仿真過程中,輸入/輸出時間、CPU串行程序時間、MPI分塊時間和GPU并行回波模擬時間,如圖9所示。可以看出,針對回波模擬這種計算密集型的數(shù)值計算,即使經(jīng)過優(yōu)化的多GPU并行加速,核心回波計算部分仍然占據(jù)了95%的執(zhí)行時間,可見針對大場景、乃至長條帶場景的回波仿真,可以擴大GPU并行的數(shù)量,通過更多的并行計算資源,來加快環(huán)掃SAR回波仿真,并逐步減少與成像處理之間的時間差距。
圖9 7000×7000場景大小的運行時間比例圖Fig.9 The running time scale map of the proposed method in 7000×7000 simulation area
最后,為了驗證MPI分塊的多GPU并行回波仿真的正確性,采用CS成像算法對多GPU, MPI+多GPU仿真的回波數(shù)據(jù)進行成像驗證,兩者的回波數(shù)據(jù)、成像結(jié)果完全一致,可以看出這種基于數(shù)據(jù)分塊的冗余計算約簡方法對成像精度沒有影響,成像結(jié)果如圖10所示。
圖10 本文方法仿真回波的成像結(jié)果Fig.10 The imaging result of the simulated raw data by the proposed method
此外,還需要進一步比較MPI+多GPU仿真方法和CPU仿真方法的計算精度。論文[16-18]和本文采用相同回波仿真算法,其結(jié)合點目標指標對GPU和CPU的回波仿真精度進行分析,結(jié)論是兩者計算結(jié)果差別很小,在成像精度允許的范圍內(nèi)。因此,這里主要從回波數(shù)據(jù)、面目標指標角度對兩者的仿真精度進行比較分析,如表5所示。從回波數(shù)據(jù)來看,兩種方法的差別較小,表現(xiàn)在均值誤差為1e-7,方差誤差為2.6e-5,以CPU結(jié)果為參考值計算出來的均方根誤差(RMSE)為1e-5;從成像結(jié)果來看,輻射分辨率誤差僅為1e-4,均值、方差誤差較小,在成像精度允許的范圍內(nèi)??傊?,基于MPI分塊的多GPU回波仿真方法,雖然在做浮點數(shù)運算、FFT運算時與CPU相比存在微小差別,但是都在誤差允許范圍內(nèi),能夠滿足回波仿真精度的需要。
表5 CPU方法和MPI分塊的多GPU方法的仿真精度對比Tab.5 Accuracy analysis of the proposed methods
4.3 冗余存儲優(yōu)化分析
在進行回波模擬時間對比的同時,也對硬件成本做了對比分析。經(jīng)過冗余計算約簡,每塊GPU卡存儲的數(shù)據(jù)量減少,大場景回波模擬對于顯存的需求降低了,因此在計算能力相當?shù)那疤嵯?,可以選用顯存較小的GPU計算卡。
以Nvidia的Tesla C2070和C2050為例進行分析,前者硬件成本是后者的1.5倍左右,其配置如表6所示。從表中可以看出兩種處理器的差別只有顯存大小不同,當計算場景大小為30000×30000的回波時,在沒有分塊之前需要的顯存空間是3.35G,所以如果從上面兩種GPU中選擇時,只能選擇C2070;而如果運用分塊的方法,在GPU進行運算時所需要的顯存空間僅為0.84 G,所以可以選擇C2050顯卡。以本文實驗所采用4塊GPU為例,進行冗余存儲約簡后的硬件成本相比之前節(jié)省了大約50%。
表6 相關(guān)硬件配置對比表Tab.6 Hardware configuration comparison
本文實現(xiàn)了基于冗余計算約簡的環(huán)掃SAR多GPU快速模擬仿真算法,通過MPI進行分塊處理,約簡了波束范圍外目標的成像幾何計算,減少仿真計算量的同時節(jié)省大量存儲空間。實驗結(jié)果表明,基于冗余計算約簡的多GPU環(huán)掃SAR回波仿真方法可以滿足精度要求,在時間上相比于多GPU并行模擬提升2倍以上,硬件成本也有了明顯降低。基于本文算法,采用4塊GPU卡的環(huán)掃SAR回波數(shù)據(jù)模擬相對CPU串行仿真的速度提升可達350倍,極大縮短成像算法的研究歷程。此外,通過實驗發(fā)現(xiàn),CPU在GPU計算過程中一直處于空閑狀態(tài),造成計算資源浪費,因此在下一步研究中,會嘗試通過多CPU結(jié)合多GPU的異構(gòu)計算方式,充分利用計算機的計算資源,進一步提升回波模擬速率,為成像算法研究奠定基礎(chǔ)。
[1] 李天池, 周蔭清, 蔡世學, 等.機載環(huán)掃成像雷達數(shù)據(jù)處理方法研究[J].系統(tǒng)工程與電子技術(shù), 2002, 24(7): 1-3.Li Tianchi, Zhou Yinqing, Cai Shixue, et al..Study on the data processing methods for airborne circular scanning imaging radar[J].Systems Engineering and Electronics,2002, 24(7): 1-3.
[2] 李靜, 黃培康, 潘旭東, 等.雷達下視環(huán)掃成像分辨率研究[J].系統(tǒng)工程與電子技術(shù), 2009, 31(2): 315-318.Li Jing, Huang Peikang, Pan Xudong, et al..Study on resolution for circular scanning imaging radar[J].Systems Engineering and Electronics, 2009, 31(2): 315-318.
[3] 李勇, 朱岱寅, 朱兆達.環(huán)視 SAR 成像處理中的幾何失真校正算法[J].南京航空航天大學學報, 2009, 41(2): 232-237.Li Yong, Zhu Daiyin, and Zhu Zhaoda.Geometricdistortion correction algorithm for circular-scanning SAR imaging[J].Journal of Nanjing University of Aeronautics & Astronautics, 2009, 41(2): 232-237.
[4] 毛新華, 朱岱寅, 李勇, 等.環(huán)視 SAR 幾何失真校正誤差分析及補償技術(shù)研究[J].電子與信息學報, 2007, 30(11): 2706-2709.doi:10.3724/SP.J.1146.2007.00679.Mao Xinhua, Zhu Daiyin, Li Yong, et al..Study on error analysis of geometric distortion correction and compensation techniques for circular-scan SAR[J].Journal of Electronics & Information Technology, 2007, 30(11): 2706-2709.doi:10.3724/SP.J.1146.2007.00679.
[5] 趙亮, 毛新華, 吳迪.基于回波信號的環(huán)視 SAR 成像運動參數(shù)估計[J].數(shù)據(jù)采集與處理, 2014, 29(4): 590-596.Zhao Liang, Mao Xinhua, and Wu Di.Motion parameter estimate of circular-scanning SAR imaging based on echo signal[J].Journal of Data Acquisition and Processing, 2014,29(4): 590-596.
[6] 孫兵, 周蔭清, 李天池, 等.環(huán)掃 SAR 的快速聚焦成像算法[J].北京航空航天大學學報, 2007, 33(7): 803-806.Sun Bing, Zhou Yinqing, Li Tianchi, et al..Fast focused imaging algorithm for circular scanning SAR[J].Journal of Beijing University of Aeronautics and Astronautics, 2007,33(7): 803-806.
[7] 蘇宇, 齊向陽.基于OpenMP的星載SAR回波信號并行仿真[J].中國科學院研究生院學報, 2008, 25(1): 129-135.Su Yu and Qi Xiangyang.OpenMP based space-borne SAR raw signal parallel simulation[J].Journal of the Graduate School of the Chinese Academy of Sciences, 2008, 25(1): 129-135.
[8] 王曦爽, 黃立勝, 王貞松.分布式星載SAR回波仿真的并行化計算研究[J].系統(tǒng)仿真學報, 2006, 18(8): 2097-2100.Wang Xishuang, Huang Lisheng, and Wang Zhensong.Research on parallel arithmetic of distribute spaceborne SAR ground target simulation[J].Journal of System Simulation, 2006, 18(8): 2097-2100.
[9] 張帆, 林殷, 洪文.基于網(wǎng)格計算的SAR回波分布式仿真[J].系統(tǒng)仿真學報, 2008, 20(12): 3165-3167.ZhangFan,Lin Yin,andH ong Wen.SARe chodistributed simulation based on grid computing[J].Journalof System Simulation, 2008, 20(12): 3165-3167.
[10]Yu L, Xie X, and Xiao L.GPU-accelerated circular SAR echo data simulation of large scenes[C].XXXIth URSI General Assembly and Scientific Symposium, Beijing,China, 2014: 1-4.
[11]Chapman W, Ranka S, Sahni S, et al..Parallel processing techniques for the processing of synthetic aperture radar data on GPUs[C].IEEE International Symposium on Signal Processing and Information Technology, 2011: 573-580.
[12]Zhu H, Xu H, and Feng L.Application of GPU for missile-borne SAR raw signal simulation[C].International Conference on Artificial Intelligence, Management Science & Electronic Commerce, Zhengzhou, China, 2011: 2816-2820.
[13]ShengH,Z hou M, Wang K,e ta l..SAR echosimulation from numerous scattering cells based on GPU[C].IET International Rad ar Con ference,2 013 : 1-5.
[14]秦潔, 張志敏.基于圖形處理單元架構(gòu)的合成孔徑雷達回波仿真實現(xiàn)與優(yōu)化[J].科學技術(shù)與工程, 2014, 14(13): 85-89.Qin Jie and Zhang Zhimin.Implementation and optimization of SAR echo simulation based on GPU[J].Science Technology and Engineering, 2014, 14(13): 85-89.
[15]Wang B, Zhang F, and Xiang M.SAR raw signal simulation based on GPU parallel computation[C].IEEE Geoscience and Remote Sensing Symposium, Cape Town,South Africa, 2009: 617-620.
[16]Zhang F, Wang B, and Xiang M.Accelerating InSAR raw data simulation on GPU using CUDA[C].IEEE Geoscience and Remote Sensing Symposium, Honolulu,Hawaii, USA, 2010: 2932-2935.
[17]Zhang F, Li Z, Wang B, et al..Hybrid general-purpose computation on GPU (GPGPU) and computer graphics synthetic aperture radar simulation for complex scenes[J].International Journal of Physical Sciences, 2012, 7(8): 1224-1234.
[18]Zhang F, Hu C, Li W, et al..Accelerating time-domain SAR raw data simulation for large areas using multi-GPUs[J].IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing, 2014, 7(9): 3956-3966.
[19]黃立勝, 王貞松, 鄭天垚.基于FFT的快速SAR分布目標回波模擬算法[J].遙感學報, 2004, 8(2): 128-136.Huang Lisheng, Wang Zhensong, and Zheng Tianyao.A fast algorithm based on FFT used in simulation of SAR return wave signal[J].Journal of Remote Sensing, 2004,8(2): 128-136.
[20]Moving and Stationary Target Acquisition and Recognition (MSTAR) Public Dataset[OL].https://www.sdms.afrl.af.mil/datasets/mstar/.
胡 辰(1991-),男,山東人,2013年獲得北京化工大學通信工程專業(yè)學士學位,同年保送至本校計算機技術(shù)專業(yè)攻讀碩士學位。研究方向為SAR信號處理、高性能計算技術(shù)。
E-mail:huchen_buct@163.com
張 帆(1981-),男,2008年畢業(yè)于中科院電子所信號與信息處理專業(yè),獲得工學博士學位,同年在中科院電子所從事博士后研究,現(xiàn)為北京化工大學副教授,碩士生導師。主要研究方向為SAR系統(tǒng)模擬、高性能計算、科學可視化等。
E-mail :zhangf@mail.buct.edu.cn
李國君(1991-),女,山西人,2013年獲得北京化工大學電子信息工程專業(yè)學士學位,同年保送至本校計算機科學與技術(shù)專業(yè)攻讀碩士學位。研究方向為SAR成像處理、高性能計算技術(shù)。
E-mail: 13269198197@163.com
李 偉(1985-),男,2012年畢業(yè)于美國密西西比州立大學電氣與計算機工程專業(yè),獲得工學博士學位,同年至美國加州大學戴維斯分校從事博士后研究,現(xiàn)為北京化工大學教授,博士生導師。主要研究方向為模式識別、高光譜圖像分析與應用、數(shù)據(jù)壓縮等。
E-mail :liw@mail.buct.edu.cn
崔忠馬(1978-),男,北京遙感設(shè)備研究所研究員,研究方向為雷達系統(tǒng)設(shè)計。
Computation Reduction Oriented Circular Scanning SAR Raw Data Simulation on Multi-GPUs
Hu Chen①Zhang Fan①Li Guojun①Li Wei①Cui Zhongma②
①(College of Information Science and Technology, Beijing University of Chemical Technology,Beijing 100029, China)
②(Beijing Remote Sensing Equipment Research Institute, Beijing 100854, China)
As a special working mode, the circular scanning Synthetic Aperture Radar (SAR) is widely used in the earth observation.With the increase of resolution and swath width, the simulation data has a massive increase, which boosts the new requirements of efficiency.Through analyzing the redundancy in the raw data simulation based on Graphics Processing Unit (GPU), a fast simulation method considering reduction of redundant computation is realized by the multi-GPUs and Message Passing Interface (MPI).The results show that the efficiency of 4-GPUs increases 2 times through the redundant reduction, and the hardware cost decreases by 50%, thus the overall speedup achieves 350 times than the traditional CPU simulation.
Circular scanning SAR; Raw data simulation; GPU parallel; Computing optimization
TN95
A
2095-283X(2016)04-0434-10
10.12000/JR15078
2015-06-18;改回日期:2015-09-14;網(wǎng)絡(luò)出版:2015-10-22
張帆 zhangf@mail.buct.edu.cn
國家自然科學基金(61501018, 61302164),中央高?;究蒲袠I(yè)務(wù)費專項資金(YS1404),北京高等學校青年英才計劃(YETP0500)
Foundation Items: The National Natural Science Foundation of China (61501018, 61302164), The Fundamental Research Funds for the Central Universities (YS1404), The Beijing HigherEducation Young Elite Teacher Project(YETP0500)