System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 免费一区二区无码视频在线播放,无码国产午夜福利片在线观看,国产AV天堂无码一区二区三区
  • 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    基于申威處理器的Code_Saturne移植方法及系統技術方案

    技術編號:40488119 閱讀:14 留言:0更新日期:2024-02-26 19:19
    本發明專利技術公開了一種基于申威處理器的Code_Saturne移植方法及系統,包括:對Code_Saturne進行改進,包括configure的改寫、獲取euid代碼的修改及依賴庫的動態連接;對改進后的Code_Saturne進行編譯,生成可執行文件;在申威處理器上運行生成的可執行文件。解決了申威處理器上常見的庫在configure有時檢測不到具體位置的問題,避免了編譯時找不到庫文件或鏈接時出現錯誤;解決了申威處理器和x86機器使用不同的動態鏈接器時導致在運行時無法找到依賴的庫的問題;還解決了軟件在申威處理器上無法正確獲取系統號以及即使獲取系統號也沒有對應的并行策略而導致運行時出現的問題和計算節點宕機的問題。

    【技術實現步驟摘要】

    本專利技術涉及計算機處理,特別是涉及一種基于申威處理器的code_saturne移植方法及系統。


    技術介紹

    1、本部分的陳述僅僅是提供了與本專利技術相關的
    技術介紹
    信息,不必然構成在先技術。

    2、申威處理器作為一款處理器,然而,許多常用的應用軟件往往不適用于申威處理器的高效運行,因此需要進行大量的移植優化工作。成功地進行移植是優化工作的第一步,只有當應用程序能夠成功編譯和運行時,才能開始下一步的優化工作。code_saturne是為工程師和科學家提供一個強大的工具來解決各種流體力學問題。code_saturne主要功能有流體流動模擬、傳熱分析、湍流模擬、多相流模擬、網格生成和后處理等功能模塊為一體。目前神威集群有解決流體力學問題的軟件,但都是都是單一的功能模塊或是單一問題類型,code_saturne這種綜合性的流體力學軟件暫時空缺,因此移植意義較大。

    3、對于code_saturne軟件來說,使用原有的編譯方式存在兩個問題。第一個問題是:無法成功編譯該軟件。第二個問題是:即使編譯通過,運行時也可能導致計算節點宕機。因此,需要找到一種適合在申威處理器上編譯code_saturne的方式。code_saturne主要是c語言編寫,采用configure是一個腳本工具,根據系統環境和用戶需求生成makefile。申威處理器的神威集群一般的架構是登錄節點是x86機器的常見機器,計算節點是申威處理器。因此需要交叉編譯,而在現有技術中,因為軟件并不適用申威處理器,所以在configure要明確給出架構名和必要的參數選項,生成完makefile后,執行make后也會出現報錯,如找不到特定的庫,不能動態連接等,在運行時也會由于獲取不到系統號導致卡住,甚至導致計算節點宕機嚴重問題。


    技術實現思路

    1、為了解決上述問題,本專利技術提出了一種基于申威處理器的code_saturne移植方法及系統,通過對code_saturne進行改進和編譯,得到可執行文件,使其能夠在申威處理器上運行。

    2、為了實現上述目的,本專利技術采用如下技術方案:

    3、第一方面,本專利技術提供一種基于申威處理器的code_saturne移植方法,包括:

    4、對code_saturne進行改進,包括configure的改寫、獲取euid代碼的修改及依賴庫的動態連接;

    5、對改進后的code_saturne進行編譯,生成可執行文件;

    6、在申威處理器上運行生成的可執行文件。

    7、進一步的技術方案,所述code_saturne中包括主文件夾、libgfortran.a文件、ld_library_path環境變量、cs_system_info.c文件和”.o”文件;所述編譯過程中生成libsaturne.a庫文件。

    8、進一步的技術方案,configure的改寫具體為:先在code_saturne主文件夾下創建存放外部庫的文件夾externallib,再將libgfortran.a文件拷貝進入externallib,然后將其加入ld_library_path環境變量中。

    9、進一步的技術方案,獲取euid代碼的修改具體為:將cs_system_info.c文件中409行的pwd_user賦值為空。

    10、進一步的技術方案,依賴庫的動態連接采用”先鏈接再拆開再鏈接”的方式,具體為:先鏈接是通過編譯正常生成libsaturne.a文件,再拆開是將libsaturne.a和libgfortran.a用swar命令拆開為各種”.o”文件,再鏈接是將拆開得到的”.o”文件使用swar鏈接成libsaturne.a文件。

    11、進一步的技術方案,configure的改寫前需要先書寫合適的configure選項。

    12、進一步的技術方案,所述code_saturne中還包括--disable-shared和--enable-static,用于編譯文件。

    13、第二方面,本專利技術提供一種基于申威處理器的code_saturne移植系統,包括:

    14、code_saturne改進模塊,被配置為:對code_saturne進行改進,包括configure的改寫、獲取euid代碼的修改及依賴庫的動態連接;

    15、編譯模塊,被配置為:對改進后的code_saturne進行編譯,生成可執行文件;

    16、運行模塊,被配置為:在申威處理器上運行生成的可執行文件。

    17、與現有技術相比,本專利技術的有益效果為:

    18、本專利技術解決了申威處理器上常見的庫在configure有時檢測不到具體位置的問題,避免了編譯時找不到庫文件或鏈接時出現錯誤;解決了申威處理器和x86機器使用不同的動態鏈接器時導致在運行時無法找到依賴的庫的問題;還解決了軟件在申威處理器上無法正確獲取系統號以及即使獲取系統號也沒有對應的并行策略而導致運行時出現的問題和計算節點宕機的問題。

    19、本專利技術成功地將code_saturne在申威處理器上進行了編譯和運行,填補了神威集群在綜合性流體力學問題軟件方面的空白。code_saturne是一款功能強大的流體力學仿真軟件,它提供了廣泛的模擬和分析功能,能夠模擬和研究各種復雜的流體流動現象。它的成功編譯和運行為國內使用國產集群的流體力學研究和工程實踐帶來了更多的選擇性,可用于航空航天、能源、環境、水利等領域。解決方案的實際操作并不復雜,為在申威處理器上進行安裝使用或進行程序優化提供了方便的安裝方案,從而大大減少了安裝時間。為使用和優化都提供了堅實的基礎。

    本文檔來自技高網...

    【技術保護點】

    1.一種基于申威處理器的Code_Saturne移植方法,其特征在于,包括:

    2.如權利要求1所述的基于申威處理器的Code_Saturne移植方法,其特征在于,所述Code_Saturne中包括主文件夾、libgfortran.a文件、LD_LIBRARY_PATH環境變量、cs_system_info.c文件和”.o”文件;所述編譯過程中生成libsaturne.a文件。

    3.如權利要求2所述的基于申威處理器的Code_Saturne移植方法,其特征在于,configure的改寫具體為:先在Code_Saturne主文件夾下創建存放外部庫的文件夾externallib,再將libgfortran.a文件拷貝進入externallib,然后將其加入LD_LIBRARY_PATH環境變量中。

    4.如權利要求2所述的基于申威處理器的Code_Saturne移植方法,其特征在于,獲取euid代碼的修改具體為:將cs_system_info.c文件中409行的pwd_user賦值為空。

    5.如權利要求2所述的基于申威處理器的Code_Saturne移植方法,其特征在于,依賴庫的動態連接采用”先鏈接再拆開再鏈接”的方式,具體為:先鏈接是通過編譯正常生成libsaturne.a文件,再拆開是將libsaturne.a和libgfortran.a用swar命令拆開為各種”.o”文件,再鏈接是將拆開得到的”.o”文件使用swar鏈接成libsaturne.a文件。

    6.如權利要求1所述的基于申威處理器的Code_Saturne移植方法,其特征在于,configure的改寫前需要先書寫合適的configure選項。

    7.如權利要求1所述的基于申威處理器的Code_Saturne移植方法,其特征在于,所述Code_Saturne中還包括--disable-shared和--enable-static,用于編譯文件。

    8.一種基于申威處理器的Code_Saturne移植系統,其特征在于,包括:

    9.一種計算機可讀存儲介質,其上存儲有程序,其特征在于,該程序被處理器執行時實現如權利要求1-7任一項所述的基于申威處理器的Code_Saturne移植方法中的步驟。

    10.一種電子設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的程序,其特征在于,所述處理器執行所述程序時實現如權利要求1-7任一項所述的基于申威處理器的Code_Saturne移植方法中的步驟。

    ...

    【技術特征摘要】

    1.一種基于申威處理器的code_saturne移植方法,其特征在于,包括:

    2.如權利要求1所述的基于申威處理器的code_saturne移植方法,其特征在于,所述code_saturne中包括主文件夾、libgfortran.a文件、ld_library_path環境變量、cs_system_info.c文件和”.o”文件;所述編譯過程中生成libsaturne.a文件。

    3.如權利要求2所述的基于申威處理器的code_saturne移植方法,其特征在于,configure的改寫具體為:先在code_saturne主文件夾下創建存放外部庫的文件夾externallib,再將libgfortran.a文件拷貝進入externallib,然后將其加入ld_library_path環境變量中。

    4.如權利要求2所述的基于申威處理器的code_saturne移植方法,其特征在于,獲取euid代碼的修改具體為:將cs_system_info.c文件中409行的pwd_user賦值為空。

    5.如權利要求2所述的基于申威處理器的code_saturne移植方法,其特征在于,依賴庫的動態連接采用”先鏈接再拆開再鏈接”的方式,具體為:先鏈接是通...

    【專利技術屬性】
    技術研發人員:陳彥言徐希豪劉輝
    申請(專利權)人:濟南超級計算中心有限公司
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 国产成人无码一区二区三区| 成人免费无码大片A毛片抽搐 | 久久成人无码国产免费播放| 久久无码无码久久综合综合| 无码午夜人妻一区二区不卡视频 | 无码av专区丝袜专区| 中文字幕无码久久人妻| 性饥渴少妇AV无码毛片| 国产在线拍偷自揄拍无码| 国产成人无码午夜视频在线观看 | 国产精品无码aⅴ嫩草| 小13箩利洗澡无码视频网站| 性无码专区一色吊丝中文字幕| 人妻系列无码专区无码中出| 国产品无码一区二区三区在线蜜桃| 亚洲欧洲免费无码| 欧洲Av无码放荡人妇网站| 亚洲啪啪AV无码片| 国产成人无码一二三区视频| 精品久久久久久久无码久中文字幕 | 无码精品黑人一区二区三区 | 人妻无码一区二区三区免费| 寂寞少妇做spa按摩无码| 色欲香天天综合网无码| 波多野结衣VA无码中文字幕电影 | av区无码字幕中文色| 国产成人无码综合亚洲日韩 | 亚洲AV中文无码乱人伦下载| 日韩专区无码人妻| 亚洲无码高清在线观看| 亚洲一级Av无码毛片久久精品 | 少妇性饥渴无码A区免费 | 亚洲国产精品无码久久青草| 免费无码午夜福利片| 亚洲不卡无码av中文字幕| 亚洲男人在线无码视频| 亚洲日产无码中文字幕| 国产aⅴ无码专区亚洲av| 无码人妻丰满熟妇区五十路百度| 无码人妻一区二区三区在线视频| 亚洲AV永久无码精品一百度影院|