當前位置:首頁 > 消費電子 > 消費電子
[導讀]本文探討了基于OpenMP的電磁場FDTD多核并行程序設計的方法,以期實現(xiàn)該方法在更復雜的算法中應用具有更理想的性能提升。針對一個一維電磁場FDTD算法問題,對其計算方法與過程做了簡單描述。

0 引言

隨著多核技術的不斷發(fā)展,并行方法已經(jīng)成為一種處理較大規(guī)模問題的手段,同時在許多領域取得了成功地應用。目前,并行算法的實現(xiàn)主要基于兩種標準:

MPI(Message Passing Interface)是一種基于消息傳遞并行編程模型的工業(yè)標準,主要用于分布存儲體系結(jié)構的現(xiàn)實,是已被證實了的理想的程序設計模型;OpenMP標準,主要用于共享存儲體系結(jié)構的并行編程,可實現(xiàn)在SMP 集群系統(tǒng)內(nèi)多處理器的多線程并行計算。

OpenMP是一個應用程序接口,通過規(guī)范一系列的編程制導、運行庫函數(shù)和環(huán)境變量來說明共享存儲體系結(jié)構的并行機制,通常由于其較低的開銷和相對較簡單的編程而受到人們廣泛的關注。

時域有限差分(FDTD)方法是模擬計算電磁場的一種基本算法。自1966年Yee首次提出以來,經(jīng)過半個多世紀的發(fā)展,這一方法得到迅速發(fā)展和廣泛應用。但是時域有限差分算法通常由于其串行方式使問題本身復雜化且運算較費時間而采用并行方式計算。因此,在PC機上研究并行FDTD算法問題,具有重要的理論與現(xiàn)實意義,可為大規(guī)模工程問題的并行化處理提供一定的方法借鑒與理論依據(jù)。本文以一維平面波在自由空間中的傳播為例,討論了采用OpenMP 技術對電磁場FDTD算法程序?qū)崿F(xiàn)并行化的方法,并將該并行方法在三維瞬態(tài)場電偶極子輻射FDTD程序中進行了驗證,也相當于對該并行方法進行了一定的推廣,并通過實驗證明了該并行計算的有效性。

1 電磁場理論簡介

FDTD方法由微分形式的麥克斯韋(Maxwell)旋度方程出發(fā)進行離散而得到的一組時域推進公式。一維情況下,設TEM波沿z 軸方向傳播,介質(zhì)參數(shù)和場量均與x,y 無關,即- /-x = 0, -/ -y = 0 ,于是Maxwell方程為:

 

 

一維情況E? 、H? 分量空間節(jié)點取樣如圖1所示。

 

 

在自由空間中,σ = σm = 0 ,介質(zhì)為無耗,故而可得場的FDTD迭代方程為:

 

 

為了滿足數(shù)值計算的Courant穩(wěn)定性條件,通常選取時間步長為 Δt 空間間隔為 δ ,FDTD截斷邊界條件采用一階近似Mur,設截斷邊界處為Ex 節(jié)點,如圖2所示,則在Ex 節(jié)點處離散,得:

 

 

式中: Ex (k - 1)為截斷邊界內(nèi)的節(jié)點;c 在真空中為光速c0,在介質(zhì)中則為截斷邊界處波的傳播速度。

 

 

激勵源采用高斯脈沖源,其表達式為Ei (t),其中τ 為常數(shù),決定了高斯脈沖的寬度。為了使入射波限制在空間有限區(qū)域,根據(jù)等效原理,在區(qū)域分界面上設置等效面電磁流,并設分界面外的場為零。所以,在總場-散射場區(qū)的分界面上(總場邊界)設置入射波電磁場的切向分量便可將入射波只引入到總場區(qū)。本實驗通過在一維FDTD 的總場邊界處引入高斯脈沖波,如圖3所示。

 

 

2 OpenMP 并行設計

2.1 OpenMP概述

OpenMP是基于共享存儲體系結(jié)構的工業(yè)標準,它不是一門獨立的語言,而是對基本語言的擴展,如C/C++,Fortran語言。其編程簡單,開銷小,規(guī)范并制定了一系列的編譯指導語句、運行庫函數(shù)和環(huán)境變量。對于傳統(tǒng)的串行代碼,采用OpenMP技術并行化時無需對原程序作大的改動,只需加入一些簡單的編譯指導語句即可。同時,OpenMP 提供了兩種粒度的并行方式:粗粒度并行和細粒度并行。OpenMP的細粒度并行是指利用OpenMP 只求解循環(huán)部分計算,又稱為循環(huán)級并行。由此可見,細粒度并行是一種最為簡單的并行方法。

2.2 OpenMP并行編程模型

OpenMP采用標準的并行模式--Fork/Join式并行執(zhí)行模式,如圖4所示,在編譯過程中使用編譯指導語句實現(xiàn)并行化。在程序開始執(zhí)行時,只有主線程的運行線程存在,在執(zhí)行的過程中,若遇到OpenMP 的指令要求并行執(zhí)行時,主線程會派生出子線程來執(zhí)行并行任務。在并行執(zhí)行的過程中,由主線程與派生出的子線程組成一個線程組來協(xié)同工作。在并行執(zhí)行結(jié)束后,派生出的子線程退出或掛起,不再工作,控制流程回到單獨的主線程中,直到下一個并行區(qū)或者程序執(zhí)行完畢。

 

 

2.3 FDTD算法的并行化

在用FDTD算法模擬計算電磁場的過程中,時間步長上的迭代過程是相關聯(lián)的、互相影響的,故而不能實現(xiàn)并行化。但是在一次迭代內(nèi)部,電場與磁場的計算僅需要前一時刻的計算結(jié)果,與其他區(qū)域的電場或者磁場分量無關,各個計算過程之間沒有影響、相互獨立,可以實現(xiàn)并行化。為此,本文采用OpenMP提供的細粒度并行的方式對該算法實現(xiàn)并行化,即OpenMP+細粒度并行。[!--empirenews.page--]

3 并行FDTD 性能分析

3.1 仿真算例設計

為驗證FDTD算法并行的性能,以電磁波在自由空間中傳播的一維FDTD 算法為例,采用OpenMP 提供的細粒度技術實現(xiàn)并行化。激勵源采用Gauss脈沖源,其帶寬為10 GHz,τ = 0.2 ns, t0 = 0.8 - τ = 0.16 ns,總場邊界為z0 = 500Δz 處,Δt = τ/ 80 = 0.002 5 ns, Δt = dz/ (2c),吸收邊界采用一階近似Mur,波傳播的空間區(qū)域為節(jié)點1~1 000.用統(tǒng)計的方法,分別測量了2 000~10 000 之間不同迭代次數(shù)的串并行時間。

3.2 并行性能測試

并行程序性能測試可由并行算法的加速比和并行效率來衡量,假設有n 個并行部件,則對加速比、效率的定義如下:

(1)加速比speedup=單一計算機運行整個程序所花費時間同一臺計算機使用n 個并行部件的執(zhí)行時間;

(2)效率efficiency= speedup n.

程序串并行的運行時間由OpenMP 庫函數(shù)提供的OMP_get_wtime()函數(shù)來測量。具體地,在測量串行程序運行時間時,注釋掉了程序中的并行編譯指導語句,并保持時間函數(shù)的位置不變。本文采用多次運行程序取穩(wěn)定值的方法,分別測量并記錄了不同迭代次數(shù)下的程序串并行運行時間。

3.3 測試環(huán)境

測試環(huán)境為Intel(R) Core(TM) 2 Duo CPUT5670@1.8 GHz,內(nèi)存為2 GB,操作系統(tǒng)為WinXP SP3,開發(fā)軟件為Intel Fortran 10.1.014 with vs 2005,測試結(jié)果如表1所示。

 

 

3.4 并行方法驗證

為了驗證本文所采用的OpenMP 并行算法的可行性,將該并行方法應用于三維瞬態(tài)場電偶極子輻射FDTD程序中。設整個計算域空間為真空,垂直點偶極子位于計算域中心,即Ez(0,0,0),F(xiàn)DTD計算空間步長為5 cm,時間步長為83.333 ps,計算域為55×55×55 個元胞,截斷邊界為Mur吸收邊界,輻射源為高斯脈沖,測量并記錄了300~10 000之間不同迭代次數(shù)的串并行時間,測量結(jié)果見表2.

 

 

4 結(jié)論

本文從分析OpenMP本身的特點及編程模型入手,結(jié)合一維FDTD算法實例,采用OpenMP+細粒度并行的方式實現(xiàn)了并行化,并證明了基于OpenMP 的并行FDTD 算法的有效性,而且并行FDTD 算法在所選測試實例的不同迭代次數(shù)上均獲得了超線性的加速比。充分利用了OpenMP共享存儲體系結(jié)構的特點,避免了消息傳遞帶來的開銷,取得了較其他并行FDTD算法更快加速比和更高的效率。更值得一提的是,將該并行方法應用在三維電磁場FDTD 程序中也取得了很好的加速比和效率,可以預見,該優(yōu)化方法在更復雜的算法中應用一定具有更理想的性能提升。但不足之處在于系統(tǒng)的可擴展性差,這是由于OpenMP 本身的特點所限制。

因此,今后的工作將放在對基于SMP 機群的MPI 與OpenMP混合編程模型的研究,從而克服系統(tǒng)擴展性差的缺點,進而提升系統(tǒng)的易用性和可移植性。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉