Ansys的計(jì)算任務(wù)的實(shí)現(xiàn)方法和裝置制造方法
【專利摘要】本發(fā)明公開了一種ANSYS的計(jì)算任務(wù)的實(shí)現(xiàn)方法和裝置,其中,該實(shí)現(xiàn)方法包括:獲取用戶輸入的計(jì)算指令;對(duì)計(jì)算指令進(jìn)行解析,確定計(jì)算的類型以及計(jì)算參數(shù);將計(jì)算參數(shù)代入到預(yù)先配置的與計(jì)算類型對(duì)應(yīng)的計(jì)算命令語句中,并執(zhí)行該計(jì)算命令語句。借助于本發(fā)明的技術(shù)方案,能夠使ANSYS的計(jì)算任務(wù)的實(shí)現(xiàn)過程無需通過命令行,只通過基于圖形界面的簡單的操作,就能完成計(jì)算任務(wù),大大降低操作難度,提高執(zhí)行效率,降低出錯(cuò)概率,并且,通過對(duì)用戶輸入的資源請(qǐng)求指令的解析與計(jì)算資源調(diào)度語句的執(zhí)行,能夠合理分配和利用計(jì)算資源,提高了計(jì)算資源利用率,此外,通過對(duì)用戶輸入信息的合法性判斷,能夠很好地保證ANSYS計(jì)算程序的安全穩(wěn)定運(yùn)行。
【專利說明】ANSYS的計(jì)算任務(wù)的實(shí)現(xiàn)方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及科學(xué)計(jì)算領(lǐng)域,并且特別地,涉及一種ANSYS的計(jì)算任務(wù)的實(shí)現(xiàn)方法和裝置。
【背景技術(shù)】
[0002]ANSYS軟件是融結(jié)構(gòu)、流體、電場、磁場、聲場分析于一體的大型通用有限元分析軟件,軟件分析計(jì)算模塊包括結(jié)構(gòu)分析(可進(jìn)行線性分析、非線性分析和高度非線性分析)、流體動(dòng)力學(xué)分析、電磁場分析、聲場分析、壓電分析以及多物理場的耦合分析,該軟件提供了100種以上的單元類型,用來模擬工程中的各種結(jié)構(gòu)和材料,此外,還允許用戶根據(jù)自己的需要對(duì)軟件進(jìn)行擴(kuò)充,包括用戶自定義單元屬性、自定義材料本構(gòu)(結(jié)構(gòu)本構(gòu)、熱本構(gòu)、流體本構(gòu))、用戶自定義流場邊界條件、用戶自定義結(jié)構(gòu)斷裂準(zhǔn)則和裂紋擴(kuò)展規(guī)律等。
[0003]在傳統(tǒng)的高性能計(jì)算集群環(huán)境中,用戶要運(yùn)行基于ANSYS軟件的計(jì)算程序通常有兩種方式:一是在作業(yè)調(diào)度的使用環(huán)境中,需要使用遠(yuǎn)程字符終端在命令行環(huán)境下執(zhí)行一系列操作,一般有以下幾個(gè)流程:
[0004]準(zhǔn)備好ANSYS計(jì)算程序的可執(zhí)行文件、輸入文件、數(shù)據(jù)文件等,這些文件通常需要放置在集群的全局共享存儲(chǔ)中,用戶一般使用FTP、SFTP等工具向集群上傳這些文件,在大多數(shù)情況下,用戶還需要用文本編輯工具對(duì)輸入文件等進(jìn)行編輯修改。
[0005]確定運(yùn)行該ANSYS計(jì)算程序需要的進(jìn)程數(shù),以及在哪些節(jié)點(diǎn)上運(yùn)行,將這些信息通過命令行參數(shù)的方式傳遞給ANSYS的進(jìn)程啟動(dòng)器,通過ANSYS的進(jìn)程啟動(dòng)器啟動(dòng)運(yùn)行該ANSYS計(jì)算程序。
[0006]程序運(yùn)行完成后,查看計(jì)算結(jié)果,或使用FTP、SFTP等工具下載結(jié)果文件到用戶本地終端。
[0007]以上是直接運(yùn)行ANSYS計(jì)算程序的主要流程,實(shí)際情況下,用戶在高性能計(jì)算集群上提交并行計(jì)算任務(wù),需要統(tǒng)一使用作業(yè)調(diào)度軟件提供的接口,用戶通常還需要再編寫一個(gè)作業(yè)調(diào)度腳本,在腳本中申請(qǐng)計(jì)算資源,通過這個(gè)腳本提交并行計(jì)算任務(wù),由作業(yè)調(diào)度軟件來處理任務(wù)排隊(duì)、分配資源、發(fā)起并行程序。
[0008]另一種方式是使用ANSYS計(jì)算程序的圖形化操作界面,一般有以下幾個(gè)流程:
[0009]用戶一般使用FTP、SFTP等工具向集群上傳ANSYS計(jì)算程序的數(shù)據(jù)文件。
[0010]啟動(dòng)ANSYS計(jì)算程序的圖形化操作界面,選擇計(jì)算所需要的數(shù)據(jù)文件,設(shè)置計(jì)算數(shù)據(jù)文件所需的計(jì)算參數(shù)以及需要的進(jìn)程數(shù)、節(jié)點(diǎn)數(shù)等,鼠標(biāo)點(diǎn)擊運(yùn)算按鈕開始運(yùn)算。
[0011]程序運(yùn)行完成后,查看計(jì)算結(jié)果,或使用FTP、SFTP等工具下載結(jié)果文件到用戶本地終端。
[0012]以上是啟動(dòng)圖形化操作界面運(yùn)行ANSYS計(jì)算程序的主要流程,作業(yè)調(diào)度軟件無法對(duì)其進(jìn)行計(jì)算任務(wù)處理排隊(duì)、分配資源等操作。
[0013]上面介紹了在傳統(tǒng)的高性能計(jì)算集群環(huán)境中,用戶運(yùn)行基于ANSYS計(jì)算程序的兩種操作基本流程,第一種流程通常需要在遠(yuǎn)程字符終端下,通過命令行的方式來實(shí)現(xiàn),對(duì)于非骨灰級(jí)的廣大普通用戶來說,操作難度大,執(zhí)行效率低,出錯(cuò)概率大;第二種流程雖然在操作難度上有所降低,人機(jī)交互上體驗(yàn)較好,但是無法使用高性能計(jì)算集群作業(yè)調(diào)度軟件處理任務(wù)排隊(duì)、分配資源、發(fā)起并行程序,是整個(gè)高性能計(jì)算資源無法有序、高效和合理的使用,甚至造成計(jì)算資源的浪費(fèi)與分配不均。
[0014]以上兩種執(zhí)行方式的弊端主要表現(xiàn)在:
[0015]使用難度非常大。想要順利提交一個(gè)ANSYS并行計(jì)算任務(wù),用戶往往需要非常熟悉很多與其專業(yè)背景無關(guān)的很多知識(shí)和工具,比如Linux操作系統(tǒng)基本操作、Shell腳本語言、常用的文本編輯和字符處理工具、MPI環(huán)境的調(diào)用、作業(yè)調(diào)度軟件的使用等等,這些知識(shí)或工具的學(xué)習(xí)曲線非常陡,熟練掌握常常需要花費(fèi)若干年的時(shí)間,這樣的使用代價(jià)對(duì)廣大普通用戶來說是非常巨大的。
[0016]執(zhí)行效率低。想要順利提交一個(gè)ANSYS并行計(jì)算任務(wù),需要執(zhí)行多個(gè)流程,需要使用一些專業(yè)工具,需要在命令行環(huán)境執(zhí)行復(fù)雜繁瑣的操作,從而導(dǎo)致并行計(jì)算任務(wù)的提交費(fèi)時(shí)費(fèi)力,執(zhí)行效率低下。
[0017]出錯(cuò)概率大。對(duì)于大部分普通用戶來說,在命令行環(huán)境執(zhí)行復(fù)雜繁瑣的操作,出現(xiàn)人為操作失誤的概率很大,特別是對(duì)于操作流程不熟悉的用戶,在執(zhí)行的各個(gè)環(huán)節(jié)均容易遇到問題。
[0018]對(duì)于高性能計(jì)算集群的管理員來說,對(duì)普通用戶開放命令行終端,也存在安全性的風(fēng)險(xiǎn),用戶的誤操作可能會(huì)影響系統(tǒng)的穩(wěn)定運(yùn)行,黑客也有可能趁虛而入。
[0019]使用ANSYS計(jì)算程序的圖形化操作界面的方法,不能使應(yīng)用程序與作業(yè)調(diào)度有機(jī)地結(jié)合起來,使得作業(yè)調(diào)度軟件無法來處理任務(wù)排隊(duì)、分配資源、發(fā)起ANSYS并行程序,在使用圖形化操作界面時(shí),只能手工為用戶提供高性能計(jì)算集群中固定的計(jì)算節(jié)點(diǎn)完成計(jì)算,即無法根據(jù)計(jì)算量的大小動(dòng)態(tài)調(diào)節(jié)計(jì)算資源,也同時(shí)造成了計(jì)算節(jié)點(diǎn)再空閑時(shí)的無法再次使用的計(jì)算資源浪費(fèi)。
[0020]在現(xiàn)有技術(shù)中,雖然存在一些商業(yè)計(jì)算軟件提供自己的并行計(jì)算任務(wù)通過圖形化提交界面進(jìn)行指令提交,但都是針對(duì)個(gè)別軟件,沒有普適性,并且,還需要專門的客戶端軟件配合完成,與作業(yè)調(diào)度軟件的結(jié)合無法實(shí)現(xiàn)或存在不同程度的問題。
[0021]針對(duì)相關(guān)技術(shù)中用戶運(yùn)行ANSYS計(jì)算程序時(shí)需要在遠(yuǎn)程字符終端下通過命令行的方式來實(shí)現(xiàn),操作難度大,執(zhí)行效率低,出錯(cuò)概率大的問題,目前尚未提出有效的解決方案。
【發(fā)明內(nèi)容】
[0022]針對(duì)相關(guān)技術(shù)中用戶運(yùn)行ANSYS計(jì)算程序時(shí)需要在遠(yuǎn)程字符終端下通過命令行的方式來實(shí)現(xiàn),操作難度大,執(zhí)行效率低,出錯(cuò)概率大的問題,本發(fā)明提出一種ANSYS的計(jì)算任務(wù)的實(shí)現(xiàn)方法和裝置,能夠使用戶無需通過命令行的方式,只通過簡單的操作輸入計(jì)算指令,就能實(shí)現(xiàn)整個(gè)運(yùn)算過程。
[0023]本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:
[0024]根據(jù)本發(fā)明的一個(gè)方面,提供了一種ANSYS的計(jì)算任務(wù)的實(shí)現(xiàn)方法,該實(shí)現(xiàn)方法包括:
[0025]獲取用戶輸入的計(jì)算指令;[0026]對(duì)計(jì)算指令進(jìn)行解析,確定計(jì)算的類型以及計(jì)算指令中包含的計(jì)算參數(shù);
[0027]將計(jì)算參數(shù)代入到預(yù)先配置的與計(jì)算類型對(duì)應(yīng)的計(jì)算命令語句中,并執(zhí)行該計(jì)算命令語句。
[0028]此外,在執(zhí)行代入計(jì)算參數(shù)的語句之前,該實(shí)現(xiàn)方法進(jìn)一步包括:
[0029]判斷用戶輸入的計(jì)算指令是否合法,并在判斷的結(jié)果為否的情況下,禁止執(zhí)行計(jì)算命令語句并進(jìn)行提示;
[0030]其中,判斷用戶輸入的計(jì)算指令是否合法的條件包括以下至少之一:
[0031 ] 計(jì)算指令的格式、計(jì)算指令中計(jì)算參數(shù)的范圍。
[0032]此外,在執(zhí)行代入計(jì)算參數(shù)的語句之前,該實(shí)現(xiàn)方法進(jìn)一步包括:
[0033]獲取用戶輸入的資源請(qǐng)求指令,對(duì)資源請(qǐng)求指令進(jìn)行解析,得到資源參數(shù),其中,資源參數(shù)用于表示用戶所請(qǐng)求的資源量;
[0034]將資源參數(shù)代入到預(yù)先配置的計(jì)算資源調(diào)度語句,并執(zhí)行該計(jì)算資源調(diào)度語句。
[0035]此外,在執(zhí)行計(jì)算資源調(diào)度語句之前,該實(shí)現(xiàn)方法進(jìn)一步包括:
[0036]判斷用戶輸入的資源請(qǐng)求指令是否合法,并在判斷結(jié)果為否的情況下,禁止執(zhí)行計(jì)算資源調(diào)度語句并進(jìn)行提示;
[0037]其中,判斷用戶輸入的資源請(qǐng)求指令是否合法的條件包括以下至少之一:
[0038]計(jì)算資源請(qǐng)求指令的格式、用戶所請(qǐng)求的資源量。
[0039]其中,計(jì)算資源包括以下至少之一:
[0040]計(jì)算節(jié)點(diǎn)、CPU核數(shù)、計(jì)算時(shí)長、計(jì)算結(jié)果的存儲(chǔ)路徑。
[0041]此外,獲取用戶輸入的計(jì)算指令包括:
[0042]通過預(yù)先提供圖形界面,獲取用戶在圖形界面中的參數(shù)輸入框內(nèi)輸入的計(jì)算參數(shù)、和/或根據(jù)用戶在圖形界面中的路徑輸入框內(nèi)輸入的存儲(chǔ)路徑獲取包含計(jì)算參數(shù)的文件并確定該文件中的輸入?yún)?shù)。
[0043]其中,圖形界面包括web界面。
[0044]根據(jù)本發(fā)明的另一方面,提供了一種ANSYS的計(jì)算任務(wù)的實(shí)現(xiàn)裝置,該實(shí)現(xiàn)裝置包括:
[0045]第一獲取模塊,用于獲取用戶輸入的計(jì)算指令;
[0046]解析模塊,用于對(duì)計(jì)算指令進(jìn)行解析,確定計(jì)算的類型以及計(jì)算指令中包含的計(jì)算參數(shù);
[0047]第一執(zhí)行模塊,用于將計(jì)算參數(shù)代入到預(yù)先配置的與計(jì)算類型對(duì)應(yīng)的計(jì)算命令語句中,并執(zhí)行該計(jì)算命令語句。
[0048]此外,該實(shí)現(xiàn)裝置進(jìn)一步包括:
[0049]判斷模塊,用于在執(zhí)行代入計(jì)算參數(shù)的語句之前,判斷用戶輸入的計(jì)算指令是否合法,并在判斷的結(jié)果為否的情況下,禁止執(zhí)行計(jì)算命令語句并進(jìn)行提示;
[0050]其中,判斷用戶輸入的計(jì)算指令是否合法的條件包括以下至少之一:
[0051 ] 計(jì)算指令的格式、計(jì)算指令中計(jì)算參數(shù)的范圍。
[0052]此外,該實(shí)現(xiàn)裝置進(jìn)一步包括:
[0053]第二獲取模塊,用于在執(zhí)行代入計(jì)算參數(shù)的語句之前,獲取用戶輸入的資源請(qǐng)求指令,對(duì)資源請(qǐng)求指令進(jìn)行解析,得到資源參數(shù),其中,資源參數(shù)用于表示用戶所請(qǐng)求的資源量;
[0054]第二執(zhí)行模塊,用于將資源參數(shù)代入到預(yù)先配置的計(jì)算資源調(diào)度語句,并執(zhí)行該計(jì)算資源調(diào)度語句。
[0055]本發(fā)明通過從用戶輸入的計(jì)算指令中解析得到的計(jì)算參數(shù)和計(jì)算類型,并將計(jì)算參數(shù)代入到預(yù)先配置好的與該計(jì)算類型相對(duì)應(yīng)的計(jì)算命令語句,并執(zhí)行該計(jì)算命令語句,能夠使用戶只需輸入簡單的計(jì)算指令,無需進(jìn)行復(fù)雜的命令行操作,就能完成計(jì)算,降低了用戶使用ANSYS計(jì)算程序的難度,提高了執(zhí)行效率,降低了出錯(cuò)概率。
【專利附圖】
【附圖說明】
[0056]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0057]圖1是根據(jù)本發(fā)明實(shí)施例的ANSYS的計(jì)算任務(wù)的實(shí)現(xiàn)方法流程圖;
[0058]圖2是根據(jù)本發(fā)明實(shí)施例的ANSYS的計(jì)算任務(wù)的實(shí)現(xiàn)裝置框圖。
【具體實(shí)施方式】
[0059]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0060]根據(jù)本發(fā)明的實(shí)施例,提供了一種ANSYS的計(jì)算任務(wù)的實(shí)現(xiàn)方法。
[0061 ] 如圖1所示,該實(shí)現(xiàn)方法包括:
[0062]步驟S101,獲取用戶輸入的計(jì)算指令;
[0063]步驟S103,對(duì)計(jì)算指令進(jìn)行解析,確定計(jì)算的類型以及計(jì)算指令中包含的計(jì)算參數(shù);
[0064]步驟S105,將計(jì)算參數(shù)代入到預(yù)先配置的與計(jì)算類型對(duì)應(yīng)的計(jì)算命令語句中,并執(zhí)行該計(jì)算命令語句。
[0065]此外,在執(zhí)行代入計(jì)算參數(shù)的語句之前,該實(shí)現(xiàn)方法進(jìn)一步包括:
[0066]判斷用戶輸入的計(jì)算指令是否合法,并在判斷的結(jié)果為否的情況下,禁止執(zhí)行計(jì)算命令語句并進(jìn)行提示;
[0067]其中,判斷用戶輸入的計(jì)算指令是否合法的條件包括以下至少之一:
[0068]計(jì)算指令的格式、計(jì)算指令中計(jì)算參數(shù)的范圍。
[0069]此外,在執(zhí)行代入計(jì)算參數(shù)的語句之前,該實(shí)現(xiàn)方法進(jìn)一步包括:
[0070]獲取用戶輸入的資源請(qǐng)求指令,對(duì)資源請(qǐng)求指令進(jìn)行解析,得到資源參數(shù),其中,資源參數(shù)用于表示用戶所請(qǐng)求的資源量;
[0071]將資源參數(shù)代入到預(yù)先配置的計(jì)算資源調(diào)度語句,并執(zhí)行該計(jì)算資源調(diào)度語句。
[0072]此外,在執(zhí)行計(jì)算資源調(diào)度語句之前,該實(shí)現(xiàn)方法進(jìn)一步包括:
[0073]判斷用戶輸入的資源請(qǐng)求指令是否合法,并在判斷結(jié)果為否的情況下,禁止執(zhí)行計(jì)算資源調(diào)度語句并進(jìn)行提示;
[0074]其中,判斷用戶輸入的資源請(qǐng)求指令是否合法的條件包括以下至少之一:
[0075]計(jì)算資源請(qǐng)求指令的格式、用戶所請(qǐng)求的資源量。
[0076]其中,計(jì)算資源包括以下至少之一:
[0077]計(jì)算節(jié)點(diǎn)、CPU核數(shù)、計(jì)算時(shí)長、計(jì)算結(jié)果的存儲(chǔ)路徑。
[0078]此外,獲取用戶輸入的計(jì)算指令包括:
[0079]通過預(yù)先提供圖形界面,獲取用戶在圖形界面中的參數(shù)輸入框內(nèi)輸入的計(jì)算參數(shù)、和/或根據(jù)用戶在圖形界面中的路徑輸入框內(nèi)輸入的存儲(chǔ)路徑獲取包含計(jì)算參數(shù)的文件并確定該文件中的輸入?yún)?shù)。
[0080]其中,圖形界面包括web界面。
[0081]根據(jù)本發(fā)明的實(shí)施例,還提供了一種ANSYS的計(jì)算任務(wù)的實(shí)現(xiàn)裝置。
[0082]如圖2所示,該實(shí)現(xiàn)裝置包括:
[0083]第一獲取模塊21,用于獲取用戶輸入的計(jì)算指令;
[0084]解析模塊22,用于對(duì)計(jì)算指令進(jìn)行解析,確定計(jì)算的類型以及計(jì)算指令中包含的計(jì)算參數(shù);
[0085]第一執(zhí)行模塊23,用于將計(jì)算參數(shù)代入到預(yù)先配置的與計(jì)算類型對(duì)應(yīng)的計(jì)算命令語句中,并執(zhí)行該計(jì)算命令語句。
[0086]此外,該實(shí)現(xiàn)裝置進(jìn)一步包括:
[0087]判斷模塊(未示出),用于在執(zhí)行代入計(jì)算參數(shù)的語句之前,判斷用戶輸入的計(jì)算指令是否合法,并在判斷的結(jié)果為否的情況下,禁止執(zhí)行計(jì)算命令語句并進(jìn)行提示;
[0088]其中,判斷用戶輸入的計(jì)算指令是否合法的條件包括以下至少之一:
[0089]計(jì)算指令的格式、計(jì)算指令中計(jì)算參數(shù)的范圍。
[0090]此外,該實(shí)現(xiàn)裝置進(jìn)一步包括:
[0091]第二獲取模塊(未示出),用于在執(zhí)行代入計(jì)算參數(shù)的語句之前,獲取用戶輸入的資源請(qǐng)求指令,對(duì)資源請(qǐng)求指令進(jìn)行解析,得到資源參數(shù),其中,資源參數(shù)用于表示用戶所請(qǐng)求的資源量;
[0092]第二執(zhí)行模塊(未示出),用于將資源參數(shù)代入到預(yù)先配置的計(jì)算資源調(diào)度語句,并執(zhí)行該計(jì)算資源調(diào)度語句。
[0093]例如,在一個(gè)實(shí)施例中,根據(jù)本發(fā)明的技術(shù)方案,針對(duì)ANSYS計(jì)算程序進(jìn)行了 web封裝,并編寫了相應(yīng)軟件界面實(shí)現(xiàn)具體功能。
[0094]通過封裝,將ANSYS計(jì)算程序的任務(wù)提交流程隱藏在底層,提供給用戶一個(gè)簡單直觀的web界面,用戶只需要web界面上執(zhí)行簡單的操作,例如:輸入計(jì)算所需參數(shù),選擇計(jì)算類型,輸入計(jì)算所需要的資源,選擇計(jì)算結(jié)果的存儲(chǔ)路徑,等等,本發(fā)明的實(shí)施例所提供的ANSYS計(jì)算任務(wù)的實(shí)現(xiàn)方法和裝置,可以獲取上述用戶輸入的計(jì)算參數(shù)和計(jì)算類型,并將獲取得到的計(jì)算參數(shù)代入到預(yù)先配置的與該計(jì)算類型相對(duì)應(yīng)的計(jì)算命令語句,執(zhí)行該計(jì)算命令語句并返回計(jì)算結(jié)果,而且,用戶可以根據(jù)自己申請(qǐng)的計(jì)算結(jié)果的存儲(chǔ)路徑查看計(jì)
晳奸里
[0095]并且,根據(jù)本發(fā)明的實(shí)施例所提供的ANSYS計(jì)算任務(wù)的實(shí)現(xiàn)方法和裝置,還可以對(duì)用戶輸入的計(jì)算指令進(jìn)行合法性判斷,如果用戶輸入的計(jì)算指令格式不能被預(yù)先配置好的計(jì)算命令語句識(shí)別,則拒絕執(zhí)行該語句,并發(fā)出提示消息,從而避免了用戶錯(cuò)誤操作或者對(duì)軟件的惡意攻擊。
[0096]此外,在用戶申請(qǐng)計(jì)算資源的過程中,只需要將欲申請(qǐng)的計(jì)算資源的數(shù)量、和/或資源類型在相應(yīng)的文本框中輸入,或者在相應(yīng)的下拉菜單中進(jìn)行選擇,本發(fā)明實(shí)施例中提供的ANSYS計(jì)算任務(wù)的實(shí)現(xiàn)方法可以獲取用戶輸入的資源請(qǐng)求內(nèi)容,將服務(wù)器中的資源進(jìn)行調(diào)度,提供給用戶,例如,通過遠(yuǎn)程控制軟件VNC (Virtual Network Computing)管理功能,能夠在作業(yè)調(diào)度系統(tǒng)中實(shí)現(xiàn)圖形交互式操作,在作業(yè)系統(tǒng)自動(dòng)分配的頭計(jì)算節(jié)點(diǎn)上遠(yuǎn)程打開CAE等軟件的圖形界面,在圖形界面設(shè)置完計(jì)算題目后,點(diǎn)擊計(jì)算按鈕可直接將作業(yè)投遞到作業(yè)調(diào)度所分配的計(jì)算節(jié)點(diǎn)上。同時(shí),如果用戶所申請(qǐng)的計(jì)算資源數(shù)量超出了服務(wù)器目前能夠提供的資源總量,則拒絕用戶的申請(qǐng),并發(fā)出提示消息。
[0097]通過上述實(shí)施例提供的web封裝方法,用戶只需要在web界面上執(zhí)行簡單的操作就能實(shí)現(xiàn)數(shù)據(jù)文件準(zhǔn)備、計(jì)算資源申請(qǐng)、計(jì)算任務(wù)提交、計(jì)算結(jié)果查看等整套流程,無需通過命令行的方式,大大降低用戶的使用門檻,提高使用效率,減小出錯(cuò)概率。
[0098]在本實(shí)施例中,針對(duì)ANSYS計(jì)算程序進(jìn)行web封裝,為用戶帶來全新的使用方式,效果主要體現(xiàn)在:
[0099]大大降低使用難度。用戶不再需要熟練掌握Linux操作系統(tǒng)基本操作、Shell腳本語言、常用的文本編輯和字符處理工具、MPI環(huán)境的調(diào)用、作業(yè)調(diào)度軟件等與其專業(yè)背景無關(guān)的知識(shí)和工具,就能輕松完成ANSYS并行計(jì)算任務(wù)的準(zhǔn)備、執(zhí)行等工作,大大降低了使用門檻。
[0100]大大提高使用效率。繁瑣復(fù)雜的命令行操作全部隱藏在底層,在底層自動(dòng)批量執(zhí)行,可以節(jié)省大量的人為操作時(shí)間,提高使用效率。
[0101]提高任務(wù)提交的成功率。根據(jù)實(shí)施例所提供的web封裝方法,會(huì)對(duì)用戶在web界面提交的參數(shù)和數(shù)據(jù)進(jìn)行不同緯度的合法性檢查,比如,檢查用戶申請(qǐng)的計(jì)算資源是否超過其權(quán)限,用戶輸入的參數(shù)是否合法,用戶的輸入文件格式是否正確等,如果判斷出錯(cuò)誤,會(huì)在Web界面給出相應(yīng)提示,通過這些合法性檢查可以大大提高并行任務(wù)提交的成功率。
[0102]輕松實(shí)現(xiàn)復(fù)雜功能。ANSYS并行程序運(yùn)行時(shí)的一些復(fù)雜或高級(jí)功能,比如計(jì)算網(wǎng)絡(luò)的選擇,啟動(dòng)CPU進(jìn)程綁定等,如果通過命令行方式需要指定復(fù)雜的參數(shù),操作繁瑣,使用難度較大,經(jīng)過Web封裝后,用戶只需要通過界面上的一些選項(xiàng)框就能實(shí)現(xiàn)這些功能。
[0103]提高高性能計(jì)算集群的使用安全性。將普通用戶的任務(wù)提交操作封裝在web界面后,用戶執(zhí)行的都是封閉式的操作,很大程度上避免了影響系統(tǒng)穩(wěn)定或安全的用戶非法操作。
[0104]軟件圖形化界面與作業(yè)調(diào)度無縫結(jié)合。實(shí)現(xiàn)了在作業(yè)調(diào)度系統(tǒng)中實(shí)現(xiàn)圖形交互式操作,在作業(yè)系統(tǒng)自動(dòng)分配的頭計(jì)算節(jié)點(diǎn)上遠(yuǎn)程打開CAE等軟件的圖形界面,在圖形界面設(shè)置完計(jì)算題目后,點(diǎn)擊計(jì)算按鈕可直接將作業(yè)投遞到作業(yè)調(diào)度所分配的計(jì)算節(jié)點(diǎn)上。
[0105]綜上所述,借助于本發(fā)明的上述技術(shù)方案,通過獲取用戶在圖形界面中的參數(shù)輸入框內(nèi)輸入的計(jì)算指令、和/或資源申請(qǐng)指令,并將從指令中解析得到的參數(shù)信息代入到相應(yīng)的命令語句,并執(zhí)行該命令語句,能夠使ANSYS的計(jì)算任務(wù)的實(shí)現(xiàn)過程無需通過命令行,大大降低操作難度,提高執(zhí)行效率,降低出錯(cuò)概率,并且,通過對(duì)用戶輸入的資源請(qǐng)求指令的解析與計(jì)算資源調(diào)度語句的執(zhí)行,能夠合理分配和利用計(jì)算資源,提高了計(jì)算資源利用率,此外,通過對(duì)用戶輸入信息的合法性判斷,能夠很好地保證ANSYS計(jì)算程序的安全穩(wěn)定運(yùn)行。
[0106]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種有限元分析軟件ANSYS的計(jì)算任務(wù)的實(shí)現(xiàn)方法,其特征在于,包括: 獲取用戶輸入的計(jì)算指令; 對(duì)所述計(jì)算指令進(jìn)行解析,確定計(jì)算的類型以及所述計(jì)算指令中包含的計(jì)算參數(shù);將所述計(jì)算參數(shù)代入到預(yù)先配置的與所述計(jì)算類型對(duì)應(yīng)的計(jì)算命令語句中,并執(zhí)行該計(jì)算命令語句。
2.根據(jù)權(quán)利要求1所述的實(shí)現(xiàn)方法,其特征在于,在執(zhí)行代入計(jì)算參數(shù)的語句之前,所述實(shí)現(xiàn)方法進(jìn)一步包括: 判斷所述用戶輸入的計(jì)算指令是否合法,并在所述判斷的結(jié)果為否的情況下,禁止執(zhí)行計(jì)算命令語句并進(jìn)行提示; 其中,判斷所述用戶輸入的計(jì)算指令是否合法的條件包括以下至少之一: 所述計(jì)算指令的格式、所述計(jì)算指令中計(jì)算參數(shù)的范圍。
3.根據(jù)權(quán)利要求1所述的實(shí)現(xiàn)方法,其特征在于,執(zhí)行代入計(jì)算參數(shù)的語句之前,所述實(shí)現(xiàn)方法進(jìn)一步包括: 獲取用戶輸入的資源請(qǐng)求指令,對(duì)所述資源請(qǐng)求指令進(jìn)行解析,得到資源參數(shù),其中,所述資源參數(shù)用于表示用戶所請(qǐng)求的資源量; 將所述資源參數(shù)代入到 預(yù)先配置的計(jì)算資源調(diào)度語句,并執(zhí)行該計(jì)算資源調(diào)度語句。
4.根據(jù)權(quán)利要求3所述的實(shí)現(xiàn)方法,其特征在于,在執(zhí)行計(jì)算資源調(diào)度語句之前,所述實(shí)現(xiàn)方法進(jìn)一步包括: 判斷所述用戶輸入的資源請(qǐng)求指令是否合法,并在所述判斷結(jié)果為否的情況下,禁止執(zhí)行計(jì)算資源調(diào)度語句并進(jìn)行提示; 其中,判斷所述用戶輸入的資源請(qǐng)求指令是否合法的條件包括以下至少之一: 所述計(jì)算資源請(qǐng)求指令的格式、用戶所請(qǐng)求的資源量。
5.根據(jù)權(quán)利要求3所述的實(shí)現(xiàn)方法,其特征在于,所述計(jì)算資源包括以下至少之一: 計(jì)算節(jié)點(diǎn)、CPU核數(shù)、計(jì)算時(shí)長、計(jì)算結(jié)果的存儲(chǔ)路徑。
6.根據(jù)權(quán)利要求1至5中任意一項(xiàng)所述的實(shí)現(xiàn)方法,其特征在于,獲取用戶輸入的計(jì)算指令包括: 通過預(yù)先提供圖形界面,獲取用戶在所述圖形界面中的參數(shù)輸入框內(nèi)輸入的計(jì)算參數(shù)、和/或根據(jù)用戶在所述圖形界面中的路徑輸入框內(nèi)輸入的存儲(chǔ)路徑獲取包含計(jì)算參數(shù)的文件并確定該文件中的輸入?yún)?shù)。
7.根據(jù)權(quán)利要求1至5中任意一項(xiàng)所述的實(shí)現(xiàn)方法,其特征在于,所述圖形界面包括web界面。
8.一種有限元分析軟件ANSYS的計(jì)算任務(wù)的實(shí)現(xiàn)裝置,其特征在于,包括: 第一獲取模塊,用于獲取用戶輸入的計(jì)算指令; 解析模塊,用于對(duì)所述計(jì)算指令進(jìn)行解析,確定計(jì)算的類型以及所述計(jì)算指令中包含的計(jì)算參數(shù); 第一執(zhí)行模塊,用于將所述計(jì)算參數(shù)代入到預(yù)先配置的與所述計(jì)算類型對(duì)應(yīng)的計(jì)算命令語句中,并執(zhí)行該計(jì)算命令語句。
9.根據(jù)權(quán)利要求8所述的實(shí)現(xiàn)裝置,其特征在于,進(jìn)一步包括: 判斷模塊,用于在執(zhí)行代入計(jì)算參數(shù)的語句之前,判斷所述用戶輸入的計(jì)算指令是否合法,并在所述判斷的結(jié)果為否的情況下,禁止執(zhí)行計(jì)算命令語句并進(jìn)行提示; 其中,判斷所述用戶輸入的計(jì)算指令是否合法的條件包括以下至少之一: 所述計(jì)算指令的格式、所述計(jì)算指令中計(jì)算參數(shù)的范圍。
10.根據(jù)權(quán)利要求8所述的實(shí)現(xiàn)裝置,其特征在于,進(jìn)一步包括: 第二獲取模塊,用于在執(zhí)行代入計(jì)算參數(shù)的語句之前,獲取用戶輸入的資源請(qǐng)求指令,對(duì)所述資源請(qǐng)求指令進(jìn)行解析,得到資源參數(shù),其中,所述資源參數(shù)用于表示用戶所請(qǐng)求的資源量; 第二執(zhí)行模塊,用于將所述資源參數(shù)代入到預(yù)先配置的計(jì)算資源調(diào)度語句,并執(zhí)行該計(jì)算資源調(diào)度語句。
【文檔編號(hào)】G06F17/50GK103544357SQ201310528731
【公開日】2014年1月29日 申請(qǐng)日期:2013年10月30日 優(yōu)先權(quán)日:2013年10月30日
【發(fā)明者】楊亮, 馬少杰, 曹振南, 李斌, 曹征, 何滄平, 姜金良, 苗春葆, 田相桂, 易成, 沈杰, 侯雪峰, 趙明坤, 胡耀國, 范娟 申請(qǐng)人:曙光信息產(chǎn)業(yè)(北京)有限公司