亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種對稱正定線性方程組的求解方法與系統(tǒng)的制作方法

文檔序號:9506151閱讀:774來源:國知局
一種對稱正定線性方程組的求解方法與系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及算法求解領(lǐng)域,特別是涉及一種對稱正定線性方程組的求解方法與系 統(tǒng)。
【背景技術(shù)】
[0002] 眾所周知,數(shù)學(xué)物理模型的求解是眾多工程生產(chǎn)與科研領(lǐng)域必不可少的工作之 一。隨著計算機的發(fā)展,有限差分(FD)、有限元(FEM)、邊界元(BEM)、無網(wǎng)格方法(Meshless Method)等一系列的數(shù)值計算方法相繼誕生。特別是有限元方法,到目前為止理論體系已經(jīng) 比較完善,并已在機械制造、材料加工、航空航天、汽車、土木建筑、國防軍工、船舶、鐵道、石 化、能源、科學(xué)研究等各個領(lǐng)域中廣泛應(yīng)用,成為工程設(shè)計中的重要工具。這些數(shù)值計算方 法具有一個相同之處:將實際問題導(dǎo)出的數(shù)學(xué)物理模型通過特定的方式離散成一個線性代 數(shù)方程組。除此之外,結(jié)構(gòu)分析、網(wǎng)絡(luò)分析、天地測量、數(shù)據(jù)及最優(yōu)化問題等都常遇到線性方 程組的求解問題。運用有限元方法離散得到的線性方程組往往是對稱正定的或經(jīng)過簡單的 處理編程對稱正定問題。因此,可以毫不夸張的講很多的科學(xué)與工程問題都要歸結(jié)為一個 對稱正定線性方程組的求解問題。然而,隨著問題規(guī)模的增大,線性方程組的求解成為工程 生產(chǎn)和科研中的一大瓶頸。對于大規(guī)模乃至超大規(guī)模的線性方程組,求解變得十分困難。

【發(fā)明內(nèi)容】

[0003] 有鑒于此,本發(fā)明的主要目的在于提供一種對稱正定線性方程組的求解方法與系 統(tǒng),可以高效地進行線性方程組的求解。
[0004] 為實現(xiàn)上述目的,本發(fā)明提供了一種對稱正定線性方程組的求解方法,包括:
[0005] 利用MPI方式進行求目標(biāo)線性方程組的任務(wù)劃分;
[0006] 執(zhí)行MPI多進程任務(wù),利用OpenMP的方式根據(jù)預(yù)設(shè)法則進行多線程求解計算;
[0007] 其中,利用MPI方式進行求目標(biāo)線性方程組的任務(wù)劃分包括:
[0008] 確定目標(biāo)線性方程組,確定所述目標(biāo)線性方程組的稀疏矩陣與矢量,根據(jù)節(jié)點數(shù) 量與節(jié)點內(nèi)CPU的數(shù)量開啟進程,將所述稀疏矩陣與所述矢量根據(jù)開啟的進程數(shù)進行分 塊,將分塊后的稀疏矩陣數(shù)據(jù)塊與矢量數(shù)據(jù)塊分別分配給對應(yīng)的進程,得到每個進程對應(yīng) 的計算任務(wù)。
[0009] 優(yōu)選地,執(zhí)行MPI多進程任務(wù)包括:
[0010] 步驟A :主進程讀取數(shù)據(jù)并將所述讀取的數(shù)據(jù)廣播給其他進程,其他進程執(zhí)行對 應(yīng)的計算任務(wù)并將結(jié)果反饋至主進程;
[0011] 步驟B :循環(huán)步驟A直至完成求目標(biāo)線性方程組的計算。
[0012] 優(yōu)選地,利用OpenMP的方式進行多線程計算包括:
[0013] 根據(jù)所述CPU的數(shù)量與每個CPU的核心數(shù)量確定開啟的線程數(shù)量,并開啟多線程 進行并行計算。
[0014] 優(yōu)選地,利用MPI方式進行求目標(biāo)線性方程組的任務(wù)劃分前還包括:
[0015] 配置每個節(jié)點的內(nèi)存大小、內(nèi)存類型與CPU數(shù)量均一致,配置每個CPU的核心數(shù)目 與主頻率均一致。
[0016] 優(yōu)選地,所述預(yù)設(shè)法則為共輒梯度法。
[0017] 本發(fā)明還提供了一種對稱正定線性方程組的求解系統(tǒng),包括:
[0018] 任務(wù)劃分模塊,用于利用MPI方式進行求目標(biāo)線性方程組的任務(wù)劃分;
[0019] MPI并行模塊,執(zhí)行MPI多進程任務(wù),利用OpenMP的方式根據(jù)預(yù)設(shè)法則進行多線程 求解計算;
[0020] 所述任務(wù)劃分模塊包括:
[0021] 確定子模塊,用于確定目標(biāo)線性方程組,確定所述目標(biāo)線性方程組的稀疏矩陣與 矢量;
[0022] 進程開啟子模塊,用于根據(jù)節(jié)點數(shù)量與節(jié)點內(nèi)CPU的數(shù)量開啟進程;
[0023] 分塊子模塊,用于將所述稀疏矩陣與所述矢量根據(jù)開啟的進程數(shù)進行分塊;
[0024] 任務(wù)分配子模塊,用于將分塊后的稀疏矩陣數(shù)據(jù)塊與矢量數(shù)據(jù)塊分別分配給對應(yīng) 的進程,得到每個進程對應(yīng)的計算任務(wù)。
[0025] 優(yōu)選地,所述MPI并行模塊包括:
[0026] 進程執(zhí)行子模塊,用于令主進程讀取數(shù)據(jù)并將所述讀取的數(shù)據(jù)廣播給其他進程, 其他進程執(zhí)行對應(yīng)的計算任務(wù)并將結(jié)果反饋至主進程;
[0027] 循環(huán)子模塊,用于循環(huán)所述進程執(zhí)行子模塊的步驟直至完成求目標(biāo)線性方程組的 計算。
[0028] 優(yōu)選地,所述的系統(tǒng)還包括:
[0029] 配置模塊,用于配置每個節(jié)點的內(nèi)存大小、內(nèi)存類型與CPU數(shù)量均一致,配置每個 CPU的核心數(shù)目與主頻率均一致。
[0030] 應(yīng)用本發(fā)明提供的一種對稱正定線性方程組的求解方法與系統(tǒng),利用MPI方式進 行求目標(biāo)線性方程組的任務(wù)劃分,確定目標(biāo)線性方程組,確定所述目標(biāo)線性方程組的稀疏 矩陣與矢量,根據(jù)節(jié)點數(shù)量與節(jié)點內(nèi)CPU的數(shù)量開啟進程,將所述稀疏矩陣與所述矢量根 據(jù)開啟的進程數(shù)進行分塊,將分塊后的稀疏矩陣數(shù)據(jù)塊與矢量數(shù)據(jù)塊分別分配給對應(yīng)的進 程,得到每個進程對應(yīng)的計算任務(wù),然后執(zhí)行MPI多進程任務(wù),利用OpenMP的方式進行多 線程求解計算,利用MPI負(fù)責(zé)設(shè)備間數(shù)據(jù)、任務(wù)劃分以及消息傳遞,OpenMP負(fù)責(zé)算法內(nèi)核的 并行加速,節(jié)點之間利用MPI實現(xiàn)并行計算,節(jié)點之內(nèi)利用OpenMP實現(xiàn)并行計算,MPI與 OpenMP聯(lián)合,可實現(xiàn)線性方程的快速求解,求解效率高。
【附圖說明】
[0031] 為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù) 提供的附圖獲得其他的附圖。
[0032] 圖1為本發(fā)明一種對稱正定線性方程組的求解方法實施例一的流程圖;
[0033] 圖2為本發(fā)明一種對稱正定線性方程組的求解方法實施例一共輒梯度算法的流 程圖;
[0034] 圖3為本發(fā)明對稱正定線性方程組的求解方法實施例一的詳細(xì)流程圖;
[0035] 圖4為本發(fā)明一種對稱正定線性方程組的求解方法實施例一的原理示意圖;
[0036] 圖5為本發(fā)明一種對稱正定線性方程組的求解方法實施例一的又一原理示意圖;
[0037] 圖6為本發(fā)明一種對稱正定線性方程組的求解方法實施例一的硬件平臺搭建示 意圖;
[0038] 圖7為本發(fā)明一種對稱正定線性方程組的求解方法實施例二的結(jié)構(gòu)示意圖;
[0039] 圖8為本發(fā)明一種對稱正定線性方程組的求解方法實施例二的詳細(xì)結(jié)構(gòu)示意圖;
[0040] 圖9為本發(fā)明一種對稱正定線性方程組的求解方法實施例三的結(jié)構(gòu)示意圖。
【具體實施方式】
[0041] 下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完 整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;?本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他 實施例,都屬于本發(fā)明保護的范圍。
[0042] 本發(fā)明提供了一種對稱正定線性方程組的求解方法,圖1示出了本發(fā)明對稱正定 線性方程組的求解方法實施例一的流程圖,包括:
[0043] 步驟SlOl :利用MPI方式進行求目標(biāo)線性方程組的任務(wù)劃分;
[0044] MPI (Message Passing Interface)消息傳遞接口編程模型是1994年5月份發(fā)布 并由眾多并行計算機廠商、軟件開發(fā)組織及并行應(yīng)用單位共同維護一種消息傳遞接口,是 目前國際上最流行的并行編程環(huán)境之一,尤其是分布式存儲的可縮放并行計算機和工作站 網(wǎng)絡(luò)以及機群的一種編程范例。MPI主要由Fortran+MPI或C+MPI組成,有上百個函數(shù)調(diào)用 接口,可直接調(diào)用。MPI具有很多優(yōu)點:具有可移植性和易用性;有完備的異步通信功能;有 正式和詳細(xì)的精確定義。MPI已在PC機、MS Windows上及所有主要的UNIX/Linux工作站、 主流并行機上得到實現(xiàn),在以低級消息傳遞程序為基礎(chǔ)的較高級和抽象程序所構(gòu)成的分布 式存儲環(huán)境中,MPI標(biāo)準(zhǔn)化所帶來的效益明顯。
[0045] 步驟S102 :執(zhí)行MPI多進程任務(wù),利用OpenMP的方式根據(jù)預(yù)設(shè)法則進行多線程求 解計算;
[0046] OpenMP為共享內(nèi)存的多線程并行編程模型,上述預(yù)設(shè)算
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1