亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        GPU在SPH方法模擬潰壩問題的應用研究

        2014-06-12 12:15:33楊志國黃興鄭興段文洋
        哈爾濱工程大學學報 2014年6期
        關鍵詞:潰壩收斂性線程

        楊志國,黃興,鄭興,段文洋

        (哈爾濱工程大學船舶工程學院,黑龍江哈爾濱150001)

        GPU在SPH方法模擬潰壩問題的應用研究

        楊志國,黃興,鄭興,段文洋

        (哈爾濱工程大學船舶工程學院,黑龍江哈爾濱150001)

        SPH方法是一種無網(wǎng)格的粒子方法,對于求解強非線性水動力學問題具有重要意義。隨著粒子數(shù)增加,該方法的計算效率成為限制其大規(guī)模工程應用的重大瓶頸??蓪⒋笠?guī)模并行計算引入SPH方法中,以得到良好的計算加速效果。采用將GPU運用于SPH方法并行計算的技術,借助CUDA硬件計算架構,研究SPH方法的并行計算通用性問題。以二維潰壩問題作為數(shù)值算例,對GPU計算結果的穩(wěn)定性和收斂性進行驗證,比較CPU與GPU的計算效率。通過計算,驗證了GPU在SPH方法并行計算應用中的可靠性、可行性以及高效性,為提高SPH方法的計算效率提供一種重要的參考途徑。

        GPU;并行計算;CUDA;SPH方法;潰壩;水動力學;數(shù)值計算;

        SPH方法是一種基于拉格朗日力學的無網(wǎng)格粒子法,該方法通過將連續(xù)的流場離散成一系列的流體粒子,而后用離散的流體粒子通過核近似的方式代替連續(xù)流場,并求解離散后的流場動力學方程。由于SPH方法的無網(wǎng)格特性以及帶有相應物理量的粒子的自由運動的特點,使得SPH方法在研究帶有強非線性自由表面的流場問題等領域中有著獨特的優(yōu)勢。SPH方法最早是在求解天體物理問題[1-2]時提出,后經(jīng)一系列研究發(fā)展,其研究領域得到不斷拓展,如應用于可壓縮非耗散流體問題[3]、彈性和斷裂問題[4]、弱可壓縮流體自由表面流動問題[5]、波浪破碎問題[6-7]。

        隨著計算機科學的不斷發(fā)展以及科學計算中對計算機的性能要求不斷提高,圖形處理器(graphics processing unit,GPU)作為新型的計算處理單元,以其強大的并行計算能力,滿足了諸多領域的計算需求,近年來得到迅猛的發(fā)展。其功能已由最初的圖形處理加速的簡單需求,轉變?yōu)樾滦偷拿嫦蛴嬎銠C通用計算平臺的通用計算圖形處理器(general purpose GPU,GPGPU)。目前,GPU在物理[8]、生物[9]、化學[10]等諸多科學領域已經(jīng)得到較為廣泛的應用。

        針對SPH方法計算過程中的效率問題,將GPU應用于SPH方法計算中,是提高計算實效的有效途徑。目前,SPH的GPU并行研究主要集中于流體實時模擬問題[11]、近海海浪仿真[12]等問題。

        由于GPU平臺下SPH方法并行計算結果可靠性問題研究目前尚不充分,本文首先介紹了基于GPU平臺的SPH并行計算方法,之后著重對GPU模擬二維潰壩問題數(shù)值結果的收斂性與穩(wěn)定性進行詳細研究,探討GPU并行架構在SPH方法求解潰壩問題中的可行性。之后,根據(jù)GPU硬件特性和數(shù)值求解結果,對CPU-GPU計算效率以及GPU內(nèi)線程數(shù)量對計算效率的影響進行重點分析,從而為GPU上實現(xiàn)SPH方法并行計算,驗證求解結果可靠性,提高SPH方法計算效率等問題提供一定參考。

        1 SPH方法

        式中:Ω為包含x的積分體積,f為三維坐標向量x的函數(shù);δ( x-x′,h )為δ函數(shù),性質(zhì)如下:

        在SPH方法中f x()函數(shù)的積分表達式定義為

        經(jīng)離散化后N-S方程質(zhì)量守恒,動量守恒的SPH表達式可寫為

        本文選取Monaghan[13]提出的三次樣條函數(shù)作為核函數(shù)。邊界粒子布置采用鏡像法[14],鏡像粒子滿足方向不可穿透,鏡像可滑移條件。此外,為確保數(shù)值結果的穩(wěn)定性,傳統(tǒng)的弱可壓縮SPH方法需考慮人工壓縮性、人工粘性[5]等問題,對于人工粘性問題,特別是對粘性系數(shù)選取問題,許多學者進行了深入研究[15]。

        2 CUDA架構

        GPU一般存在于計算機的顯卡中,擁有多處理器結構。隨著計算機科學的不斷發(fā)展,GPU已經(jīng)從原本的圖形處理器逐步轉變?yōu)檫m合處理具有較高計算密度和簡單邏輯分支任務的通用處理器。

        目前,市場上出售的GPU主要是NVIDIA和AMD/ATI兩家公司的產(chǎn)品。本文適用NVIDIA公司GTX660產(chǎn)品。

        2.1 CUDA及存儲模型

        統(tǒng)一計算設備架構(compute unified device architecture,CUDA)是NVIDIA公司于2007年6月推出的計算架構體系,它為GPU應用于數(shù)據(jù)并行計算提供了一套完備的硬件架構和軟件體系。CUDA編程模型中,分為主機(Host)與設備(Device)或者主機(Host)與協(xié)處理器(co-processor)[16]。主機是CPU在CUDA中的代號,而設備、協(xié)處理器則是GPU的代號,之所以將二者分開來,主要是為了便于在調(diào)用CPU或GPU時區(qū)分兩者功能。GPU上每個完整的處理核心稱為一個core。

        設備端內(nèi)存種類較多,以其在執(zhí)行過程中作用不同,可分為全局存儲器、常數(shù)存儲器、紋理存儲器、局部存儲器、共享寄存器和寄存器[16]。

        2.2 執(zhí)行方式及執(zhí)行單位

        CUDA執(zhí)行以主機端控制設備端,設備端返回給主機端的執(zhí)行結果的方式進行。當執(zhí)行任務時,先由主機端程序開辟任務所需的內(nèi)存或顯存,然后將主機端數(shù)據(jù)拷入顯存中,設備端接收到主機端的執(zhí)行指令后執(zhí)行相應的任務要求,執(zhí)行結束后,將執(zhí)行結果傳遞給主機端,主機端釋放開辟的內(nèi)存或顯存,執(zhí)行結束,執(zhí)行過程如圖1所示。

        圖1 GPU-CPU執(zhí)行模式Fig.1 GPU-CPU execution model

        CUDA線程是設備端運行的基本單位。線程是以Grid、Block、Thread為層次機構執(zhí)行的。每個Block由若干個Thread組成一維、二維或者三維形式,而每個Grid則由若干個Block組成一維、二維或者三維形式。在設備端執(zhí)行的過程中,線程作為最小執(zhí)行形式被分派到Block中,而Block又被分派到Grid中,控制器將Block發(fā)送到流多處理器中,進而將線程發(fā)送到流處理器中計算相應指令,執(zhí)行結束后完成設備端計算任務,返回主機端。

        2.3 SPH并行模式

        本文在SPH方法的每步迭代過程中,以單線程控制單個流場粒子,以多線程同時執(zhí)行的方式計算不同粒子的相應流場物理量。線程數(shù)量的多少取決于GPU硬件的配置,而并行效率則與線程數(shù)量和GPU計算能力有很大的關系。

        初始時刻,先將粒子信息考入顯存當中,在GPU上完成所有計算任務,之后將所得結果返回CPU,減少了由于CPU-GPU數(shù)據(jù)通訊花費的計算時間。每步計算過程中,采用鏈表查找法對所有粒子進行排序,采用改進歐拉迭代法,具體流程如圖2所示。

        圖2 SPH并行方式Fig.2 SPH parallel manner

        3 二維潰壩模擬

        本節(jié)以二維潰壩問題為研究對象,驗證GPU并行方法的可靠性與實用性問題。計算平臺為Intel i5-3570 CPU,8 G內(nèi)存,GTX660顯卡。

        3.1 潰壩模型

        潰壩模型如圖3所示。

        圖3 潰壩模型Fig.3 Dam breaking model

        水柱寬度B=0.2 m,高度H=0.4 m。矩形體寬度為1 m,光滑長度h=0.01 m,粒子總數(shù)為800,初始時刻粒子間距與光滑長度相等。ρ0=1 000 kg/ m3,采用弱可壓縮性假設,時間步長取0.1 ms。

        3.2 計算結果及分析

        圖4給出了T為0.1、0.4、0.7、0.9、1.05 s的SPH方法的GPU計算結果。計算結果較好地描述了從潰壩開始,潰壩前端觸壁、爬升、翻卷,二次入水等強非線性特征的典型模擬過程。

        圖4 不同時刻計算結果(800粒子)Fig.4 Calculation result at different time(800 particles)

        比較水柱前緣位置是驗證計算結果準確性的重要參考。取時間步長為0.1 ms,將計算結果與Martin[17]等的實驗結果、Lee[18]等的VOF方法、徐卜男[19]SPH方法的數(shù)值結果進行比較,如圖5所示。本文計算值與Lee、徐等數(shù)值模擬結果吻合較好,但與實驗值相比,數(shù)值結果普遍呈現(xiàn)出偏快的特點。

        圖5 水柱前緣位置比較Fig.5 Comparison of water column front edge position

        3.3 收斂性分析

        收斂性分析作為驗證數(shù)值結構的有效性與可靠性的重要手段,一直都作為研究論證的重點。本文采取相同粒子數(shù)量下不同時間步長以及相同時間步長下不同的粒子數(shù)量2種方式驗證收斂性。

        3.3.1 時間步長影響

        考察相同粒子數(shù)下不同時間步長的影響,本文以粒子數(shù)為800時為例,時間步長分別取為0.1、0.05、0.01、0.005 ms。

        圖6 不同時間步長比較Fig.6 Comparison of different time steps

        圖6 表明,水柱前緣隨著計算時間步長的改變,變化并不顯著,結果表明數(shù)值計算結果趨于穩(wěn)定,GPU并行計算取得良好的收斂性。

        3.3.2 粒子數(shù)目對潰壩問題的影響

        研究流場中粒子數(shù)量多少對數(shù)值結果的影響,是收斂性分析的重要工作之一。本小結保持計算域的大小不變,時間步長取為0.01 ms,光滑長度為0.01、0.005、0.004、0.002和0.001 m所對應的粒子數(shù)分別為N=20×40、N=40×80、N=50×100、N=100×200、N=200×400。

        圖7分別取T=0.3 s、T=0.6 s、T=1.0 s、T=1.1 s 4個時刻自由液面數(shù)值結果。結果表明,在潰壩開始的最初階段,粒子數(shù)的數(shù)值結果自由表面形狀吻合較好,至前緣爬升階段仍較為一致。出現(xiàn)翻卷時,自由表面開始顯現(xiàn)出差異,尤其是水舌前部重新入水以及出水后的形狀有些許差異。但這種差異隨著粒子數(shù)增加而減小,計算結果趨于穩(wěn)定。

        圖7 自由液面不同粒子數(shù)比較Fig.7 Free surface comparison of different particle number

        圖8 不同粒子數(shù)水柱前緣對比Fig.8 Front edge contrast of different particle number

        從圖8中可以看出,當粒子數(shù)增加時,水柱前緣位置呈先慢后快的趨勢,但差距不超過1%。

        3.4 計算時間

        文章通過將GPU計算耗時長度與CPU計算耗時進行對比,研究GPU的加速效率問題。GTX660顯卡擁有960 core,2G顯存,GPU主頻頻率為1 033 MHz,每個線程塊中理論上允許同時使用的最大線程數(shù)量為1 024。CPU采用i5 3570型號,主頻為3.4 GHz。本節(jié)取粒子數(shù)分別為800、3 200、5 000、20 000、80 000,時間步長取0.01 ms,計算150 000步。分析GPU線程對計算速度的影響以及比較CPU-GPU間計算效率問題。

        3.4.1 GPU線程影響

        本小節(jié)分別取單個Block內(nèi)線程數(shù)量為128、256、512、768,比較分析不同線程數(shù)量對計算效率的影響。圖9顯示了粒子數(shù)相同情況下,取不同線程所需的平均單步計算時間,從圖中可以看出,GPU的計算效率并不是隨著線程數(shù)量的增加而呈現(xiàn)出簡單的遞增關系,線程數(shù)量越多,計算時間未必越少,在本算例中單塊內(nèi)的線程數(shù)取256時,不同粒子數(shù)下計算時間均為最短,而當線程數(shù)增加或減小時,計算所需時間反而增加,且粒子數(shù)不同,增加的趨勢也不盡相同。

        圖9 線程時間比較Fig.9 Time comparison of thread spend

        3.4.2 CPU-GPU比較

        分析比較CPU與GPU計算時間的差異,是本文工作的重點之一。圖10顯示了2種不同計算核心的計算時間對比。

        當粒子數(shù)量為800時,CPU運算速度較GPU有14%的增速,其原因在于GPU的單線程計算能力不及CPU,在計算量相對較小的情況下,CPU在計算時間上顯現(xiàn)出一定的優(yōu)勢。但隨著粒子數(shù)的逐漸增加,GPU多線程優(yōu)勢開始發(fā)揮,從2.35倍的加速效果遞增至3.89倍,同時,隨著粒子數(shù)的增加,GPU并行計算加速效果更加明顯。

        圖10 CPU-GPU時間比較Fig.10 Time comparison of CPU and GPU

        4 結論

        本文以GPU為計算平臺,研究SPH方法潰壩問題并行計算的數(shù)值模擬方法,結果表明:

        1)GPU用于SPH方法并行計算研究的可靠性。本文以SPH方法理論和GPU計算結果為依據(jù),將數(shù)值結果與實驗值比較,通過取不同粒子數(shù)以及不同時間步長進行收斂性驗證,表明GPU并行計算求解水動力學問題的可靠性與適用性。

        2)GPU并行加速SPH方法的有效性。比較GPU與CPU計算時間,單步GPU的計算加速最高時達到CPU計算時間的3.89倍,隨著計算量的增加,加速效果逐漸凸顯,由此可見,GPU在研究SPH方法并行計算中存在很大的適用性。

        3)在SPH方法計算過程中,GPU線程數(shù)量對計算時間影響較大。通過相同粒子數(shù)下不同線程數(shù)量對計算時間比較可知,線程數(shù)量對計算速度而言有顯著影響,但并不成正比關系。使用GPU時,綜合考慮硬件特點以及研究問題的特殊性,結合合理的算法,是取得良好加速效果的重要保證。

        [1]GINGOLD R A,MONAGHAN J J.Smoothed particle hydrodynamics:theory and application to non-spherical stars mon[J].Monthly Notices of the Royal Astronomical Society,1977,181:375-389.

        [2]LUCY L B.A numerical approach to the testing of the fission hypothesis[J].Astronomical Journal,1977,82:1013-1024.

        [3]LIBERSKY L,PETSCHEK A G.Smooth particle hydrodynamics with strength of materials advances in free Lagrange methods[J].Lecture Notes in Physics,1991,395:248-257.

        [4]GINGOLD R A,MONAGHAN J J.Kernel estimates as a basis for general particle methods in hydrodynamics[J].Jour-nal of Computational Physics,1982,46:429-453.

        [5]MONAGHAN J J.Simulating free surface flows with SPH[J].Computational Physics,1994,110:399-406.

        [6]MONAGHAN J J.Energy distribution in a particle alpha model[J].Journal of Turbulence,2004,5:22.

        [7]鄭興,馬慶位,段文洋.K2_SPH方法及二維破碎波的模擬[J].計算物理,2012,29(3):317-325.ZHENG Xing,MA Qingwei,DUAN Wenyang.K2_SPH method and simulation of 2D breaking waves[J].Journal of Computational Physics,2012,29(3):317-325.

        [8]JIA X,PAGANETTI H S J,JIANG S B.GPU-based fast Monte Carlo does calculation for proton therapy[J].Physics in Medicine and Biology,2012,57(23):7783-7797.

        [9]JONES E A,Van ZEIJL R J M,ANDREN P E,et al.High speed data processing for imaging MS-based molecular histology using graphical processing units[J].Journal of the A-merican Society for Mass Spectrometry,2012,23(4):745-752.

        [10]CHENG Ling,BENKRID K.Design and implementation of a CUDA-Compatible GPU-based core for gapped BLAST algorithm[J].Procedia Computer Science,2010,1(1):495-504.

        [11]郭秋雷,唐逸之,劉詩秋,等.一個SPH流體實時模擬的全GPU實現(xiàn)框架[J].計算機應用與軟件,2011,28(11):69-72.GUO Qiulei,TANG Yizhi,LIU Shiqiu,et al.A full GPU implementation framework of SPH fluid real-time simulation[J].Computer Applications and Software,2011,28(11):69-72.

        [12]陳俊.近海海浪的仿真研究[D].武漢:武漢理工大學,2011:13-14.CHEN Jun.Research on simulation of waves in shallowwater[D].Wuhan:Wuhan University of Technology,2011:13-14.

        [13]FLUCK D A,QUINN D W.An analysis of 1-D smoothed particle hydrodynamics Kernels[J].Journal of Computational Physics,1996,126:699-709.

        [14]LIU G R,LIU M B.Smoothed particle hydrodynamics:a meshfree particle method[M].Singapore:World Scientific Publishing Co.Pte.Ltd,2003:138-141.

        [15]ZHENG Xing,DUAN Wenyang.Numerical simulation of dam breaking using smoothed particle hydrodynamics and viscosity behavior[J].Journal of Marine Science,2010,9:34-41.

        [16]張舒,褚艷利,趙開勇.GPU高性能運算之CUDA[M].北京:中國水利水電出版社,2009:14-16.

        [17]MARTIN J C,MOYCE W J.An experimental study of the collapse of liquid columns on a rigid horizontal plane[J].Philosophical Transactions of the Royal Society of London A,1952,244(882):312-324.

        [18]LEE B H,PARK J C,KIM M H,et al.Numerical simulation of impact loads using a particle method[J].Ocean Engineering,2010,37(2/3):164-173.

        [19]徐卜男.SPH方法模擬液艙晃蕩及量綱分析[D].大連:大連理工大學,2011:45-51.XU Pu′nan.SPH simulation and parametric analysis on sloshing tank[D].Dalian:Dalian University of Technology,2011:45-51.

        The application research of GPU in the SPH method to simulate the dam breaking problem

        YANG Zhiguo,HUANG Xing,ZHENG Xing,DUAN Wenyang
        (School of Shipbuilding Engineering,Harbin Engineering University,Harbin 150001,China)

        As a mesh-free particle method,the SPH method is very important for dealing with the hydrodynamic problems with strong nonlinear problems.However,following the increase of the particle number,the calculation efficiency becomes a bottleneck for applying the method to the engineering practice.Good acceleration performance can be attained by applying massively parallel computing into the SPH method.In order to study the general parallel purpose of the SPH method,the parallel technology through the use of GPU on the compute unified device architecture platform has been used.The convergence and the stability of the computing results generated by GPU have been verified and the computational efficiency of GPU and CPU has been compared according to the computing results by using a numerical example of the two-dimensional dam-breaking problem.The capability,feasibility and high efficiency of GPU computing have been proved by the results which provide important reference channels to increase the calculation efficiency of the SPH method.

        graphics processing unit(GPU);parallel computing;compute unified device architecture(CUDA);SPH method;dam breaking;hydrodynamic;numerical simulation

        10.3969/j.issn.1006-7043.201305062

        http://www.cnki.net/kcms/doi/10.3969/j.issn.1006-7043.201305062.html

        O352

        A

        1006-7043(2014)06-0661-06

        2013-05-23.網(wǎng)絡出版時間:2014-05-14 15:49:41.

        國家自然科學基金資助項目(51009034,51279041).

        楊志國(1964-),男,副研究員.

        楊志國,E-mail:yangzhiguo@hrbeu.edu.cn.

        猜你喜歡
        潰壩收斂性線程
        Lp-混合陣列的Lr收斂性
        END隨機變量序列Sung型加權和的矩完全收斂性
        淺談linux多線程協(xié)作
        徐家河尾礦庫潰壩分析
        潰壩涌浪及其對重力壩影響的數(shù)值模擬
        潰壩波對單橋墩作用水力特性研究
        基于改進控制方程的土石壩潰壩洪水演進數(shù)值模擬
        行為ND隨機變量陣列加權和的完全收斂性
        松弛型二級多分裂法的上松弛收斂性
        Linux線程實現(xiàn)技術研究
        97夜夜澡人人爽人人喊中国片| 三个黑人插一个女的视频| 国产精品人伦一区二区三| 无码aⅴ精品一区二区三区浪潮| 洗澡被公强奷30分钟视频| 国产成+人+综合+亚洲专| 美女草逼视频免费播放| 国产精品久久免费中文字幕| 亚洲七久久之综合七久久| 四虎影视国产在线观看精品| 啪啪视频免费看一区二区| 久久亚洲中文字幕精品熟| 国产一区内射最近更新| 91spa国产无码| 毛片av在线尤物一区二区| 穿着白丝啪啪的av网站| 亚洲av不卡一区二区三区| 亚洲国产精品线路久久| 在线日本高清日本免费| 国产亚洲一区二区三区综合片| 亚洲av福利无码无一区二区| 欧美成人久久久| 亚洲女同性恋在线播放专区| 国产乱码人妻一区二区三区| 欧美jizzhd精品欧美| 免费国产黄片视频在线观看| 亚洲综合一区二区三区在线观看| a级国产乱理伦片| 久久久精品久久日韩一区综合 | 中文字幕偷拍亚洲九色| 日本免费一二三区在线| 97在线观看视频| 国产一区二区激情对白在线| 日韩伦理av一区二区三区| 色又黄又爽18禁免费网站现观看 | 91av精品视频| 中文字幕这里都是精品| 青春草在线视频观看| 影视先锋av资源噜噜| 亚洲av永久青草无码精品| 人妻精品人妻一区二区三区四区|