麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

生物信息學高性能計算作業調度及系統管理套件的制作方法

文檔序號:11774205閱讀:459來源:國知局

本發明涉及生物信息領域,具體涉及一種生物信息學高性能計算作業調度及系統管理套件。



背景技術:

在傳統的高性能計算集群系統(例如toruqe+maui或sge)使用中,由于生物信息學和其他學科對比絕大多數應用軟件為開源且種類繁多、結構混亂,所以用戶在計算過程中會經常出現計算節點負載過高發生死機導致應用軟件無法正常運行的現象。而且由于作為科研人員的用戶大多數將精力放在本專業項目上并不具備很強的計算機專業知識,使得用戶在使用傳統作業調度系統時需要花費太多時間學習該系統如何使用。



技術實現要素:

針對現有技術存在的不足和缺陷,本發明提供一種生物信息學高性能計算作業調度及系統管理套件。

本發明實施例提出一種生物信息學高性能計算作業調度及系統管理套件,包括:

用戶作業調度策略模塊、高性能計算系統管理模塊、普通用戶操作模塊和web頁面用戶管理平臺模塊;其中,

所述用戶作業調度策略模塊,用于通過按照預先制定的策略對用戶提交到高性能集群系統的作業進行分析,確定出滿足作業運算需要的計算節點,從所述計算節點中確定出核數占用量最低的計算節點,并通知所述高性能集群系統將作業分配到該核數占用量最低的計算節點;

所述高性能計算系統管理模塊,用于對分布式計算系統進行集中管理;

所述普通用戶操作模塊,用于實現普通用戶對作業的提交;

所述web頁面用戶管理平臺模塊,用于通過web頁面實現用戶對高性能集群系統的操作。

優選地,所述用戶作業調度策略模塊,具體包括根據計算節點核數和內存分配作業功能、根據計算節點負載高低自動上下線功能、用戶優先級設置功能,限制用戶計算資源使用周期功能、作業資源限制功能;其中,

所述根據計算節點核數和內存分配作業功能:對用戶提交到高性能集群系統的作業隊列中的作業進行分析,確定滿足作業運算條件且核數占用量最低的計算節點,通知所述高性能集群系統將作業分配到該節點,并在沒有計算節點滿足作業運算條件時將作業放回所述作業隊列繼續排隊;

所述根據計算節點負載高低自動上下線功能:每隔預設的周期探測每個計算節點linux系統的平均負載,在所述平均負載大于預設的數值時,將對應的計算節點自動下線,以使該計算節點不再接收用戶作業,并在預設的時間段后,若判斷獲知該計算節點linux系統的平均負載不大于所述數值,將該計算節點自動上線,以使該計算節點繼續接收用戶作業;

所述用戶優先級設置功能:將高性能集群系統中用戶進行優先級劃分,其中,所述根據計算節點核數和內存分配作業功能中對用戶作業進行分析時會根據對應用戶的優先級優先對優先級高的用戶作業進行分析,且如果用戶的優先級相同,則將按先進先出的策略對優先級相同的用戶的作業進行分析;

所述限制用戶計算資源使用周期功能:禁止超過使用周期的受限用戶提交新作業到受限隊列,允許超過使用周期前已經運行的作業繼續執行直到結束;

所述作業資源限制功能:限制用戶能夠提交到高性能集群隊列中每個作業的資源最大值以及最大運算時間。

優選地,所述高性能計算系統管理模塊,具體用于:

通過用戶管理命令對普通用戶進行創建、修改、刪除并同步到所有計算節點,以及通過批處理命令對部分或者所有計算節點進行統一操作。

優選地,所述普通用戶操作模塊,具體包括:

提交作業功能、用戶作業監控功能、高性能集群資源剩余量查看功能以及用戶修改提交任務功能;其中,

所述提交作業功能:通過申請作業運行需要的計算資源,將作業提交到高性能集群系統;

所述用戶作業監控功能:對用戶作業的運行進行監控,并提供對用戶作業實際情況以及單個作業詳細運行情況的查看;

所述高性能集群資源剩余量查看功能:對高性能集群系統的資源使用進行監控,并提供對高性能集群系統整體資源狀態的評估;

所述用戶修改提交任務功能:修改排隊作業的資源占用量、在運行或排隊作業的最大運算時間以及更換排隊作業的隊列。

優選地,所述提交作業功能中用戶通過linux命令行方式或web方式提交作業。

優選地,所述web頁面用戶管理平臺模塊,具體包括:

用戶注冊功能、編輯提交腳本功能、作業監控功能和數據上傳功能;其中,

所述用戶注冊功能:實現高性能集群系統用戶的賬戶開設;

所述編輯提交腳本功能:用戶通過編輯提交腳本生成作業模板,將所述作業模板提交到高性能集群系統,并通過所述用戶作業調度策略模塊提供的策略分析所述作業模板給出最優計算節點反饋給高性能集群系統;

所述作業監控功能:對用戶通過頁面提交的作業進行監控;

所述數據上傳功能:將應用數據上傳到高性能集群系統存儲空間。

本發明實施例提供的生物信息學高性能計算作業調度及系統管理套件,通過用戶作業調度策略模塊,按照預先制定的策略對用戶提交到高性能集群系統的作業進行分析,抽取滿足作業運算需要且核數占用量最低的計算節點通知高性能集群系統將作業分配到該計算節點;通過高性能計算系統管理模塊對分布式計算系統進行集中管理;通過普通用戶操作模塊實現普通用戶對作業的提交;通過web頁面用戶管理平臺模塊借助于web頁面實現用戶對高性能集群系統的操作,整個方案能夠將用戶作業合理地分配給計算節點運行,通過上述多個模塊,能夠提高高性能集群系統的穩定性,降低計算節點負載過高發生死機導致應用軟件無法正常運行現象的出現,且通過web頁面可以方便用戶進行操作。

附圖說明

圖1為本發明生物信息學高性能計算作業調度及系統管理套件一實施例的結構示意圖。

具體實施方式

為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例?;诒景l明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。

參看圖1,本實施例公開一種生物信息學高性能計算作業調度及系統管理套件,包括:

用戶作業調度策略模塊(hschedd-dispatcherkit)、高性能計算系統管理模塊(hscheddsystemkit)、普通用戶操作模塊(hschedduserkit)和web頁面用戶管理平臺模塊(hschedd-webkit);其中,

所述用戶作業調度策略模塊,用于通過按照預先制定的策略對用戶提交到高性能集群系統的作業進行分析,確定出滿足作業運算需要的計算節點,從所述計算節點中確定出核數占用量最低的計算節點,并通知所述高性能集群系統將作業分配到該核數占用量最低的計算節點;

所述高性能計算系統管理模塊,用于對分布式計算系統進行集中管理;

所述普通用戶操作模塊,用于實現普通用戶對作業的提交;

所述web頁面用戶管理平臺模塊,用于通過web頁面實現用戶對高性能集群系統的操作。

本發明實施例提供的生物信息學高性能計算作業調度及系統管理套件,通過用戶作業調度策略模塊,按照預先制定的策略對用戶提交到高性能集群系統的作業進行分析,抽取滿足作業運算需要且核數占用量最低的計算節點通知高性能集群系統將作業分配到該計算節點;通過高性能計算系統管理模塊對分布式計算系統進行集中管理;通過普通用戶操作模塊實現普通用戶對作業的提交;通過web頁面用戶管理平臺模塊借助于web頁面實現用戶對高性能集群系統的操作,整個方案能夠將用戶作業合理地分配給計算節點運行,通過上述多個模塊,能夠提高高性能集群系統的穩定性,降低計算節點負載過高發生死機導致應用軟件無法正常運行現象的出現,且通過web頁面可以方便用戶進行操作。

下面對本發明生物信息學高性能計算作業調度及系統管理套件進行詳細說明。

生物信息學高性能計算作業調度及系統管理套件(hschedd)采用了分布式軟件體系結構,并根據實際系統管理及用戶業務需求設計了4個功能模塊:用戶作業調度策略模塊、高性能計算系統管理模塊、普通用戶操作模塊和web頁面用戶管理平臺模塊。

i.用戶作業調度策略模塊(hschedd-dispatcherkit):實現了用戶作業與高性能集群系統的無縫連接。根據hschedd-dispatcherkit制定的策略告知高性能集群系統如何運行用戶提交的作業。在策略的應用中根據用戶任務的要求設計了5個功能要點,即根據計算節點核數和內存分配作業功能、根據計算節點負載高低自動上下線功能、用戶優先級設置功能、限制用戶計算資源使用周期功能和作業資源限制功能。

1)根據計算節點核數和內存分配作業功能:用戶提交到高性能集群系統的作業會根據hschedd-dispatcherkit的算法對用戶作業進行分析,抽取滿足作業運算條件且核數占用量最低的的計算節點通知高性能集群系統將作業分配到該節點。如整個系統沒有任何節點滿足用戶作業條件的計算資源(所有計算節點資源已被占用)用戶作業將繼續排隊。

2)根據計算節點負載高低自動上下線功能:hschedd-dispatcherkit會每隔預設的周期(比如5分鐘)探測每個計算節點系統的平均負載,如果平均負載大于調度策略設置閾值,將對應的計算節點自動下線,如果預設的時間段(比如12小時)后計算節點平均負載低于閾值將會自動上線繼續接收用戶新任務。

3)用戶優先級設置功能:具備用戶優先級功能,管理員只需將需要提高或降低優先級的用戶添加到配置文件priority.conf,高性能集群系統中用戶劃分優先級,包括0-5一共6個等級,數字越大優先級越高,會優先被hschedd-dispatcherkit識別,默認級別為0。如果優先級相同將按先進先出的策略對作業進行分析。

4)限制用戶計算資源使用周期功能:hschedd-dispatcherkit具備限制一個或多個高性能集群系統作業隊列的使用周期的功能。超過使用周期的受限用戶將不能提交新作業到受限隊列但超過使用周期前已經運行的作業將繼續執行直到結束。若使用該功能,管理員只需在配置文件limit_que_user.conf中添加需要限制的用戶,隊列名,到期時間。

5)作業資源限制功能:限制用戶能夠提交到高性能集群隊列中每個作業的資源占用最大值(內存和核數)以及最大運算時間。需要說明的是,每個作業的最大運算時間必須預估防止程序出現死循環長期運行下去浪費計算資源。不同的高性能集群隊列資源限制可以不同。

ii.高性能計算系統管理模塊(hscheddsystemkit):主要用于分布式計算系統(基于linux操作系統)的集中管理。本部分主要采用了perlsocket編程,通過該部分提供的用戶管理命令,管理員可以實現對普通用戶的創建、修改和刪除,并同步到所有計算節點。通過提供的批處理命令,管理員可以對部分或者所有計算節點進行統一操作。任何單臺服務器執行的linux命令均可以通過批處理命令對設定的計算節點統一操作。

iii.普通用戶操作模塊(hschedduserkit):通過提交作業功能可以實現普通用戶通過申請作業需要的計算資源,將作業提交到高性能集群系統并通過hschedd-dispatcherkit調度策略告知高性能集群系統將作業分配到哪個計算節點。通過高性能集群資源剩余量查詢功能用戶可以了解當前系統可用的計算節點剩余內存量和核數,不可用節點數及整體系統資源利用率。通過用戶作業監控功能可以查看當前用戶運行所有作業資源占用情況(內存、核數、運算時間和節點狀態等)及運行當前用戶作業的節點是否為正常狀態及單個作業實際運行詳細信息和運行當前作業的計算節點的負載,網絡的流量情況等。用戶修改提交任務功能使用戶可以修改自己排隊作業的內存,核數及運算隊列和作業的申請計算時間。

需要說明的是,提交作業功能具體包括如下提交方式:

(1)linux命令行方式提交作業

普通用戶通過hschedd提供的使用指南和高性能集群系統配置的隊列限制編輯自己的提交腳本。腳本抬頭信息包括作業隊列名稱,單任務占用的核數,內存,作業允許運行的最大時間。當用戶編輯的提交腳本超過隊列限制的每個任務占用最大核數和最大內存數時用戶作業將不能提交到隊列并反饋錯誤。當運行任務超過最大允許時間將強制退出。用戶也可以通過命令行參數(不需要編輯提交腳本)根據說明提交單節點運行作業。當用戶通過命令行提交作業以后會將腳本提交到高性能系統,并通過hschedd提供的調度策略分析用戶腳本給出最優計算節點反饋給高性能系統。

(2)web方式提交作業及數據上傳

hschedd的web頁面通過perlcgi編程語言開發,考慮到整個高性能集群系統安全性,web頁面并不提供在線注冊方式,需通過管理員后臺申請用戶。用戶可以通過頁面填寫包括作業提交方式,作業隊列名稱,任務使用的核數,內存,作業允許運行的最大時間及應用程序等信息生成提交模板。用戶也可通過uploaddat選項上傳數據到高性能集群系統存儲空間。當用戶通過頁面提交作業以后會將任務模板傳遞到高性能集群系統,并通過hschedd提供的作業調度策略分析用戶腳本給出最優計算節點反饋給高性能系統。同時在頁面反饋作業id,如果報錯會返回錯誤信息。

當作業提交到高性能系統以后用戶可以通過hschedduserkit工具中的作業監控工具了解自己作業實際情況,主要包括作業id,用戶名,隊列名,作業名,作業可允許運行的最大時間,作業當前狀態,已經運行時間,作業占用核數,運行作業的節點狀態。并可通過該工具的菜單選項了解單個作業詳細運行情況(作業后臺運行狀態,消耗機時,應用程序資源占用等內容)。

為了方便用戶了解當前集群實際資源使用情況,用戶可以通過hschedduserkit工具中的資源剩余量查詢工具詳細了解每個隊列中計算節點可用的核數及內存數,整個集群的核數占用百分比,內存占用百分比,已經發生故障的節點名。通過了解系統資源整體情況便于有針對性編輯自己的作業提交腳本。

當作業提交到高性能系統以后,用戶可以通過hschedduserkit工具中的作業修改工具修改排隊任務的資源占用量(內存或核數),在運行或排隊任務的最大運算時間,更換排隊任務的隊列等。

iv.web頁面用戶管理平臺模塊(hschedd-webkit):為了方便用戶對高性能集群系統的操作提供了web頁面。web頁面主要包括如下功能:

用戶注冊:高性能集群用戶如需使用頁面操作需通過管理員審核開設賬戶;

編輯提交腳本:通過web界面作業提交模塊用戶可以根據自己作業占用資源的情況(內存和核數)通過編輯提交腳本生成模板(填寫隊列、內存、核數、計算時間和應用程序的參數)將作業提交到高性能集群系統經hschedd-dispatcherkit調度策略告知作業分配到哪個計算節點;

作業監控:用戶監控自己通過頁面提交的作業;

數據上傳:用戶可將應用數據上傳到高性能計算系統存儲空間。

本發明具有如下有益效果:

(1)hschedd分布式軟件系統,方便部署

hschedd整個系統主要采用perl編程語言進行開發設計,其中部分模塊用到了perlsocket及perlcgi方面的編程技術。該軟件主要基于linux(centos,redhat)操作系統的高性能集群,具有簡單易懂的部署方式。管理員只需將計算節點的核數,總內存數,每個任務可占用最大核數,每個任務可占用最大內存數,及隊列,用戶優先級,隊列使用周期等信息添加到conf目錄下面的配置文件即可(每個配置文件里均有對應的說明信息)。作業監控及用戶同步方面用戶需要將hschedd開發的守護進程拷貝到所有參與計算的節點。提供了用戶作業編輯、提交、監控、修改(命令行或頁面)及系統資源查看,作業調度策略,高性能計算系統管理等幾大模塊。

(2)用戶應用程序操作,簡單易懂

hschedd提供了4種命令行提交方式或web頁面、作業監控、資源剩余量查詢工具及作業修改工具等方便用戶使用的工具。hschedd的作業提交部分采用了應用程序資源預估方式。數據分析人員在提交作業之前必須申請應用軟件占用資源(計算節點核數和內存)并通過作業監控工具可以查看當前用戶運行所有作業資源占用情況及運行當前用戶作業的節點是否為正常狀態及單個作業實際運行詳細信息和運行當前任務的計算節點的負載,網絡的流量情況。資源剩余量查詢工具能夠提供高性能集群資源剩余量查詢。用戶可以針對高性能集群系統資源剩余情況評估自己應用程序是否有計算節點符合要求。作業修改工具可以幫助用戶直接修改排隊的任務或在運行任務的申請計算時間,而不必重新提交,從而簡化用戶操作。hschedd提供了較為簡單易懂的用戶操作過程,降低操作難度。和傳統作業調度系統相比用戶不必花費太多時間學習本系統如何使用。

(3)用戶作業調度策略高效,穩定

hschedd的戶作業調度策略模塊(hschedd-dispatcherkit)為本系統負責作業調度的主程序。hschedd-dispatcher目前運行在500節點高性能集群(生物信息計算平臺)時具有高效性,穩定性。在整個高性能集群系統中hschedd-dispatcherkit作為用戶作業到高性能集群系統的中間件,很好的協調了整個系統的工作。

(4)高性能計算系統管理統一,簡單,快捷

系統管理員可以通過hschedd的高性能計算系統管理模塊(hscheddsystemkit)對整個集群系統統一操作。管理員通過該模塊在管理節點對整個高性能集群系統集中管理。

雖然結合附圖描述了本發明的實施方式,但是本領域技術人員可以在不脫離本發明的精神和范圍的情況下做出各種修改和變型,這樣的修改和變型均落入由所附權利要求所限定的范圍之內。

當前第1頁1 2 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 施甸县| 吕梁市| 海兴县| 闽侯县| 丹江口市| 临城县| 西充县| 天台县| 灯塔市| 江北区| 韩城市| 襄城县| 若尔盖县| 晋中市| 建湖县| 凌云县| 临夏市| 商河县| 乐东| 绥化市| 内乡县| 宣汉县| 榕江县| 瑞丽市| 宁强县| 西青区| 曲沃县| 贵德县| 碌曲县| 柞水县| 中方县| 弋阳县| 澄江县| 赣州市| 黄石市| 仁寿县| 泽库县| 哈密市| 宾川县| 靖江市| 大石桥市|