JP2009277041A - 優先度制御プログラム、優先度制御装置、及び優先度制御方法 - Google Patents

優先度制御プログラム、優先度制御装置、及び優先度制御方法

Info

Publication number
JP2009277041A
JP2009277041A JP2008128110A JP2008128110A JP2009277041A JP 2009277041 A JP2009277041 A JP 2009277041A JP 2008128110 A JP2008128110 A JP 2008128110A JP 2008128110 A JP2008128110 A JP 2008128110A JP 2009277041 A JP2009277041 A JP 2009277041A
Authority
JP
Japan
Prior art keywords
job
priority
user
storage device
recorded
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008128110A
Other languages
English (en)
Other versions
JP5120061B2 (ja
Inventor
Yoshifumi Ujihashi
善史 宇治橋
Koichi Kumon
耕一 久門
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008128110A priority Critical patent/JP5120061B2/ja
Priority to US12/337,272 priority patent/US8832703B2/en
Publication of JP2009277041A publication Critical patent/JP2009277041A/ja
Application granted granted Critical
Publication of JP5120061B2 publication Critical patent/JP5120061B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

【課題】計算資源へのジョブの割り当て順に関するユーザごとの優先度を適切に制御することのできる優先度制御プログラム、優先度制御装置、及び優先度制御方法の提供を目的とする。
【解決手段】優先度制御プログラムは、コンピュータに、ジョブの計算資源への割り当てに応じ、ジョブごとに入力され記憶装置に記録されている前記計算資源の予測利用量に基づいて、計算資源に割り当てられたジョブに係るユーザのジョブの割り当て順に関する優先度を下降させる第一の手順と、記憶装置にユーザごとに記録された単位時間あたりの前記計算資源の利用可能量に応じた回復率に基づいて、時間の経過に応じて前記優先度を上昇させる第二の手順とを実行させることにより上記課題を解決する。
【選択図】図5

Description

本発明は、優先度制御プログラム、優先度制御装置、及び優先度制御方法に関し、特に計算資源へのジョブの割り当て順に関するユーザごとの優先度を制御する優先度制御プログラム、優先度制御装置、及び優先度制御方法に関する。
従来、科学技術関連等の高負荷のジョブ(例えば、完了までに数日を要する計算)は、計算センター等に配置された並列スーパコンピュータやコンピュータ・クラスタ等(以下、「計算資源」という。)を利用して行われている。一般的に、このような計算資源は複数のユーザ(例えば、数十人の研究者等)によって共用される。したがって、限られた計算資源を各ユーザに公平に割り当てるため、各ユーザによって投入されるジョブの実行のスケジューリングを適切に行う必要がある。
斯かるジョブの実行は、一般的に次のように行われる。
(1)ユーザがジョブスケジューラのジョブキューにジョブを投入する
(2)ジョブスケジューラがジョブキューのジョブを、各ジョブの優先度順に計算資源にディスパッチする。この処理はジョブがジョブキューに無くなるか、割り付け可能な計算資源が無くなるまで行われる。
(3)ユーザによる新規ジョブの投入やジョブの終了等により、ジョブキュー内のジョブのディスパッチが可能となるようなトリガが発生すると、(2)のスケジューリング処理を行う。
ここで、各ジョブの優先度は基本的にジョブの投入順序やジョブを所有するユーザの優先度に基づいてジョブ投入時に決定される。なお、ユーザの優先度(以下、「ユーザ優先度」という。)とは、ユーザ間の優先順位を規定する指標であり、ジョブの優先度とは異なる指標である。しかし、ジョブ投入時に決定されるジョブの優先度のみでディスパッチ順序が決定されると、ユーザ優先度の高いユーザや、或るユーザによって先に投入された大量のジョブによって計算資源が占有されてしまう現象が発生する。このような1ユーザによる計算資源の占有を防ぐために、一般的なジョブスケジューラはフェアシェア機能を備えている。一般的なフェアシェア機能では、ユーザが現在利用している計算資源の量や現在実行しているジョブの実行時間が長くなると、当該ユーザのユーザ優先度が低くされ、他のユーザのユーザ優先度が相対的に高くなるように調整される。
例えば、従来のフェアシェア方式の第一の例として、以下の式(1)を用いたものがある。なお、以下でいう優先度はユーザ優先度をいう。
Pd(t)=Ps/(1+F(t))・・・(1)
t:現在時刻
Pd(t):動的優先度
Ps:静的優先度
F(t):該当ユーザの、現在実行中ジョブが利用している計算資源の量とジョブ開始から現在までの時間が長くなるほど増加する関数。全ジョブが終了すると0になる。
なお、図1は、従来のフェアシェア方式の第一の例における動的優先度の遷移を簡易的に示す図である。
同図に示されるように、式(1)によれば、動的優先度Pd(t)は、ジョブの実行時間の経過に応じて(すなわち、計算資源の利用量の増加に応じて)低下する。したがって、計算資源の利用量とユーザ優先度との関係についてユーザ間における公平性を担保することができる。しかし、式(1)では、ジョブの終了直後に動的優先度Pd(t)が静的優先度Psに戻される。したがって、或るユーザのジョブが計算資源を連続的に占有してしまう可能性がある。また、ジョブ開始直後の動的優先度Pd(t)は高い水準にあるため或るユーザのジョブが一度に大量にディスパッチされる可能性もある。斯かる事態の発生を回避するため、式(1)に対して過去ジョブ実行時間項とコミット実行時間項とを追加した以下の式(2)が利用される。
Pd(t)=Ps/(1+F(t)+Ch×(Th(t)+Tr(t))+Cc×(Tc(t)−Tr(t)))・・・(2)
Ch:過去実行時間用の係数
Cc:コミット時間用の係数
Th(t):過去ジョブの実行時間の合計。但し、時間経過とともに減少するように各過去ジョブの実行時間に減衰係数をかけている。
Tr(t):現在実行されているジョブ実行時間の合計
Tc(t):現在実行されているジョブのコミット時間(予想実行時間)の合計
なお、図2は、従来のフェアシェア方式の第二の例における動的優先度の遷移を簡易的に示す図である。
式(2)において「Ch×(Th(t)+Tr(t))」は、過去ジョブ実行時間項に相当する。過去ジョブ実行時間項は、過去に大量に計算資源を利用したユーザがジョブ終了後に連続して計算資源を占有する現象を回避するためのものである。すなわち、過去ジョブ実行時間項により、過去に実行したジョブ(過去ジョブ)の実行時間に応じて動的優先度Pd(t)を低下させることができる。過去ジョブの実行時間には減衰係数が適用され、時間の経過に伴って過去ジョブの実行時間の寄与度が小さくされる。なお、図2において、ジョブ終了時以降の曲線が過去ジョブ実行時間項による効果を示す。すなわち、図1(式(1))の方式では、ジョブの実行直後に動的優先度Pd(t)は静的優先度Psに復帰していたが、図2(式(2))の方式では、ジョブの実行後、動的優先度Pd(t)は、緩やかに復帰する。したがって、大量に計算資源を利用したユーザの優先度をしばらく低く抑えて1ユーザによるジョブの連続実行を回避することができる。
また、式(2)において「Cc×(Tc(t)−Tr(t))」は、コミット実行時間項に相当する。コミット実行時間項は、1ユーザのジョブが一度に大量にディスパッチされるのを防ぐためのものである。すなわち、コミット実行時間項によれば、コミット時間(ユーザの自己申告によりジョブ投入時に指定されるジョブの予想実行時間))から実際の実行時間を引いた値(すなわち、予想残実行時間)が多いほど動的優先度Pd(t)を低下させることができる。したがって、図2に示されるように、ジョブの開始直後に動的優先度Pd(t)を低下させることができ、或るユーザのジョブが一度に大量にディスパッチされるのを回避することができる。
特開2006−48275号公報 特開平7−253893号公報 "Platform LSFFamily −Platform Computing"、 [online]、[平成20年4月24日検索]、<http://www.platform.com/Products/platform-lsf-family>
しかしながら、式(2)の方式は、各パラメータ(例えば、Ch、Cc、減衰係数)に適切な値が設定される必要があるところ、設定するパラメータの数が多いため「適切な値」の設定が困難であるという問題がある。すなわち、一般的なジョブスケジューラの運用環境では、或る期間において各ユーザに利用させたい計算資源量が決められている。したがって、フェアシェア機能よって、各ユーザに設定された計算資源量の分だけ各ユーザが計算資源を利用できるように動的優先度Pd(t)が調整されることが望ましい。具体的には、設定された計算資源量を超えてジョブを実行しているユーザの優動的優先度Pd(t)が、ジョブの実行量が少なく、設定された計算資源量までに余裕があるユーザに対して相対的に下がるようにしたい。そうすれば、後者のユーザに優先的に計算資源を利用させることができる。
しかし、式(2)の方式では、そのようにパラメータを調整することは非常に困難である。したがって、通常は各ユーザが利用した計算資源量の実績値を記録しておき、当該実績値が各ユーザに許可されている制限値を超えたらそのユーザによるジョブの実行を制限する機能をフェアシェア機能とは別に設けることになる。
本発明は、上記の点に鑑みてなされたものであって、計算資源へのジョブの割り当て順に関するユーザごとの優先度を適切に制御することのできる優先度制御プログラム、優先度制御装置、及び優先度制御方法の提供を目的とする。
そこで上記課題を解決するため、優先度制御プログラムは、コンピュータに、ジョブの計算資源への割り当てに応じ、ジョブごとに入力され記憶装置に記録されている前記計算資源の予測利用量に基づいて、計算資源に割り当てられたジョブに係るユーザのジョブの割り当て順に関する優先度を下降させる第一の手順と、記憶装置にユーザごとに記録された単位時間あたりの前記計算資源の利用可能量に応じた回復率に基づいて、時間の経過に応じて前記優先度を上昇させる第二の手順とを実行させる。
このような優先度制御プログラムでは、計算資源へのジョブの割り当て順に関するユーザごとの優先度を適切に制御することができる。
計算資源へのジョブの割り当て順に関するユーザごとの優先度を適切に制御することのできる優先度制御プログラム、優先度制御装置、及び優先度制御方法を提供をすることができる。
以下、図面に基づいて本発明の実施の形態を説明する。図3は、本発明の実施の形態における計算システム構成例を示す図である。同図において、ジョブスケジューリング装置10と一つ以上の計算資源20とはLAN(Local Area Network)等のネットワーク(有線又は無線の別は問わない。)を介して接続されている。
ジョブスケジューリング装置10は、ユーザからジョブの入力の受け付け、入力されたジョブの計算資源20への割り当て(ディスパッチ)順序の制御、及びジョブのディスパッチ等を行うコンピュータである。ジョブスケジューリング装置10は、ジョブ受付部11、優先度算出部12、ディスパッチ部13、及びジョブ終了通知受付部14等のソフトウェアを有する。各部の機能については処理手順の説明において明確にする。
計算資源20は、割り当てられたジョブを実行する計算資源であり、例えば、並列スーパコンピュータやコンピュータ・クラスタ等が相当する。すなわち、図中において例示されている計算資源20a、20b、及び20cは、必ずしも一台のコンピュータであるとは限らず、相互結合網で結合された複数のコンピュータによって構成されていてもよい。また、各計算資源20を一つ又は複数のCPUとして捉えてもよい。
図4は、本発明の実施の形態におけるジョブスケジューリング装置のハードウェア構成例を示す図である。図4のジョブスケジューリング装置10は、それぞれバスBで相互に接続されているドライブ装置100と、補助記憶装置102と、メモリ装置103と、CPU104と、インタフェース装置105と、表示装置106と、入力装置107と、タイマー108とを有するように構成される。
ジョブスケジューリング装置10での処理を実現するプログラムは、CD−ROM等の記録媒体101によって提供される。プログラムを記録した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従ってジョブスケジューリング装置10に係る機能を実現する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。表示装置106はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置107はキーボード及びマウス等で構成され、様々な操作指示を入力させるために用いられる。タイマー108は、時計である。
なお、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。
続いて、本実施の形態における優先度の制御方式の概要を説明する。図5は、本実施の形態における優先度の制御方式による優先度の遷移の例を示す図である。
本実施の形態において、各ユーザのジョブのディスパッチ順序(実行順序)を決定するためのユーザごとの優先度は動的に変化する。斯かる優先度を以下「動的優先度」という。一方、各ユーザには、ユーザの重要度に応じて予め静的な優先度(静的優先度)が設定されている。ユーザの重要度は、重要な又は緊急を要する研究を行っている研究者であるか、一時的な利用者であるか等、運用に応じて適宜定めればよい。静的優先度は、ユーザごとに定められた単位時間あたりの計算資源20の利用可能量(例えば、CPU数×時間)に基づいて定められる。重要なユーザ程、単位時間あたりの計算資源20の利用可能量は多く与えられる。したがって、重要なユーザ程、高い静的優先度が与えられる。なお、静的優先度と動的優先度とを区別しない場合、単に「優先度」という。本実施の形態では、優先度の最大値は「0」であるとする。但し、優先度は相対的な指標であるためその絶対値には特段の意味はない。
ジョブがディスパッチされ、計算資源20によってジョブの実行が開始されると(ジョブ開始時)、当該ジョブに係るユーザはペナルティを受けた状態となる。すなわち、図5に示されるように、ジョブの実行の開始に応じて当該ジョブに係るユーザの動的優先度は、当該ジョブによる計算資源20の予測利用量(例えば、CPU利用数×予測実行時間。以下、単に「予測利用量」という。)だけ低下する。ペナルティを受けている状態では、他のユーザより相対的に動的優先度が下がり、該当ユーザのジョブのディスパッチ順序が下がる。なお、予測利用量は、ジョブスケジューリング装置10へのジョブの入力時にユーザによって入力される。
ジョブの実行の開始によりペナルティを受けた後(動的優先度が下げられた後)、当該ジョブに係るユーザの動的優先度は、単位時間あたりの計算資源20の利用可能量に応じた回復率によって、時間の経過に応じて徐々に回復する。したがって、単位時間あたりに利用可能な計算資源20の量が多いユーザ程、ペナルティを早期に減少させることができる。図5では、ジョブ開始時からジョブ終了時の間において線形に動的優先度が増加(上昇)している。なお、動的優先度の最大値は静的優先度とされる。したがって、動的優先度が静的優先度に達した後は、それ以上動的優先度は上昇しない。
なお、オプションとして、ジョブが終了したときに、ジョブ開始時のペナルティとして減らされた予測利用量と、実際に利用した計算資源の利用量(実績利用量)との差分によって動的優先度を変化(上昇又は下降)させるようにしてもよい。図5においては、ジョブ終了時に(予測利用量−実績利用量)分だけ動的優先度が上昇している例が示されている。一般的なジョブスケジューラは予測時間を実績時間が越えた時点でジョブを強制終了するが、もし予測利用量<実績利用料すなわち(予測利用量−実績利用量)が負の値となることを許すジョブスケジューラの場合、(予測利用量−実績利用量)分だけ動的優先度は低下(下降)させることもありうる。斯かるオプションの適用により、予測利用量と実績利用量とのずれを埋め合わせることができ、より公平に動的優先度を制御することが可能となる。
以上のような本実施の形態における動的優先度の制御方式によれば、自らに設定された単位時間あたりの計算資源20の利用可能量を超えて計算資源20を利用したユーザのジョブのディスパッチ順序は下げられる(すなわち、単位時間経過後も静的優先度には復帰できない。)。したがって、各ユーザが許可された範囲内において公平に計算資源20を利用可能なようにフェアシェア機能を実現(動的優先度を調整)することが可能となる。
また、本実施の形態において、管理者等によって予め設定が必要とされるパラメータは、ユーザごとの単位時間あたりの計算資源20の利用可能量だけである。したがって、パラメータの設定作業は非常に簡便なものとなる。また、本実施の形態による方式では、利用制限(単位時間あたりの計算資源20の利用可能量)を超えたユーザは、いきなり計算資源20の利用が制限される(ジョブディスパッチ不可あるいはジョブ受付拒否される)ことはない。したがって、各ユーザにとっても好ましい状態が実現される。また、1ユーザによる計算資源20の連続占有や大量ジョブのディスパッチを回避することもできる。
以下、上記した方式を実現するためにジョブスケジューリング装置10が実行する処理手順等について具体的に説明する。
図6は、第一の実施の形態においてジョブ入力時にジョブスケジューリング装置によって実行される処理手順を説明するためのフローチャートである。
ステップS101において、ジョブ受付部11は、表示装置106や入力装置107等を介して、ジョブ、当該ジョブの実行を要求するユーザの識別子(ユーザID)、CPU利用数、及び当該ジョブの予測実行時間の入力を受け付ける。続いて、ジョブ受付部11は、当該ジョブのジョブ構造体をメモリ装置103内に生成し、生成されたジョブ構造体に当該ジョブのジョブID、CPU利用数、及び当該ジョブの予測実行時間等を記録する(S102)。ここで、ジョブ構造体とは、ジョブに属する情報を管理するためのデータ(構造体)であり、ジョブごとに生成される。
続いて、ジョブ受付部11は、ユーザIDに基づいて、生成されたジョブ構造体とユーザ構造体とを関連付ける(S103)。ユーザ構造体とは、ユーザに属する情報(ユーザ情報)を管理するためのデータ(構造体)であり、所定のタイミング(例えば、ジョブスケジューリング装置10の起動時等)で補助記憶装置102に永続化(保存)されているユーザ情報に基づいてユーザごとにメモリ装置103内に生成される。
図7は、ジョブ構造体とユーザ構造体とが関連付けられた状態を示す図である。同図では、ジョブ構造体501a、501b、及び501c、並びにユーザ構造体502a、502b、及び502cが示されている。
ジョブ構造体とユーザ構造体との関連付けにより、ジョブ構造体には関連先のユーザ構造体へのポインタ(位置情報又は識別情報)が登録される。図中では、ジョブ構造体501a及び501cは、ユーザ構造体502cに関連付けられている。ジョブ構造体501bは、ユーザ構造体502bに関連付けられている。なお、ジョブ構造体501a、501b、501cのそれぞれのジョブIDは、0、2、3である。
ユーザ構造体は、ユーザID、最終更新日時(tupdate)、最終更新日時の動的優先度(Pupdate)、回復率(R)、及び静的優先度(Pmax)等をメンバ変数として有する。ユーザIDは、上記におけるユーザIDと同義である。最終更新日時とは、後述するスケジューリング処理の最終実行日時(すなわち、動的優先度の最終更新日時)である。したがって、最終更新日時の動的優先度は、スケジューリング処理の最終実行時において算出された動的優先度である。回復率は、動的優先度の回復率であり、単位時間あたりの計算資源20の利用可能量に基づいて算出される。より詳しくは、回復率は、単位時間あたりに計算資源20の利用可能量分だけ動的優先度が回復する値(利用可能量を単位時間によって除した値)に設定される。静的優先度は、各ユーザの静的優先度であり、動的優先度の最大値として扱われる。
続いて、ジョブスケジューリング装置10は、ジョブ構造体及びユーザ構造体等を用いてジョブのスケジューリング(ジョブのディスパッチ順序の決定及びディスパッチ等)を行う(S104)。
ステップS104の詳細について説明する。図8は、第一の実施の形態におけるジョブのスケジューリング処理の処理手順を説明するためのフローチャートである。同図の処理は、ジョブの入力時のみならず所定のタイミングで繰り返し(例えば定期的に)実行される。
ステップS201において、優先度算出部12は、メモリ装置103上にロードされている全てのユーザ構造体に基づいて、全ユーザのそれぞれの現時点の動的優先度を算出する(S201)。なお、ここで全ユーザとは、計算システムのユーザとして予めスケジューリング装置10にユーザ情報が登録されているユーザをいい、現時点において入力されているジョブに係るユーザのみに限られない。
ここで、
now:現時点の動的優先度
update:最終更新日時の動的優先度
max:ユーザ毎の静的優先度
R:回復率
now:現在日時
update:最終更新日時
とすると、動的優先度Pnowは、以下の計算を行うことよって算出される。
tmp=Pupdate+R×(tnow−tupdate)としたとき、
now=Ptmp(Ptmp<Pmaxのとき)
now=Pmax(Ptmp>=Pmaxのとき)
すなわち、動的優先度Pnowは、基本的に最終更新日時の動的優先度Pupdateに対して時間の経過に応じた回復分(R×(tnow−tupdate))を加算した値となる。但し、最大値は、ユーザ毎の静的優先度Pmaxとされる。以上の計算を行うにあたり、tnow以外のパラメータは、各ユーザ構造体に格納されている値が用いられる。tnowは、タイマー108より取得される。
優先度算出部12は、また、動的優先度の算出に応じて各ユーザ構造体のメンバ変数の値を更新する。具体的には、最終更新日時に現在日時を代入し、最終更新日時の動的優先度に現時点の動的優先度を代入する。なお、S201における動的優先度の算出処理は、図5における、動的優先度の線形な回復を実現するための処理である。
続いて、ディスパッチ部13は、各ジョブ構造体が関連付いているユーザ構造体の最終更新日時の動的優先度の高い順に(降順に)、各ジョブ構造体をソートする(S202)。
図9は、ジョブ構造体のソート結果としてのデータ構造を示す図である。同図に示されるように、ジョブ構造体のソート結果は、ジョブリスト503に登録される。ジョブリスト503は、ジョブ構造体へのポインタの配列である。すなわち、ソートされた順番でジョブ構造体のポインタがジョブリスト503の各要素に登録される。同図では、最終更新日時の動的優先度の値が0.0であるユーザ構造体502cに関連付いているジョブ構造体501a及び501cのポインタが、ジョブリスト503の1番目、2番目に登録されている。続いて、最終更新日時の動的優先度の値が−25.3456であるユーザ構造体502bに関連付いているジョブ構造体501bのポインタが、ジョブリスト503の3番目に登録されている。
なお、図9におけるユーザ構造体の動的優先度等は、図7の値に対して更新されていないが、これは便宜的なものである。
続いて、ディスパッチ部13は、ジョブリスト503に登録されている順番で1つのジョブ構造体を参照し、当該ジョブ構造体に対応するジョブを取得する(S203)。なお、本実施の形態において、ジョブの実体については特に限定されない。計算のためのパラメータの集合であってもよいし、計算のロジック(プログラム)を含むデータであってもよい。少なくとも、ディスパッチ待ちのジョブはジョブIDに関連付けられてメモリ装置103又は補助記憶装置102に記録されている。したがって、ステップS203において、ディスパッチ部13は、参照したジョブ構造体のジョブIDに基づいてジョブを取り出す。
続いて、ディスパッチ部13は、取り出されたジョブ(カレントジョブ)を計算資源13に割り当てる(ディパッチする)ことが可能であるか否かを判定する(S204)。当該判定は、カレントジョブが必要とする分(CPU利用数)だけ計算資源20に空きが有るか否かに基づいて行われる。
計算資源20にカレントジョブが必要とする分の空きが有る場合(S204でYes)、優先度算出部12は、カレントジョブに係るユーザの動的優先度Pupdateを更新する(S205)。当該更新は、以下の計算によって行われる。
update←Pupdate−r×Testimate
estimate:予測実行時間
r:CPU利用数
ここで、(r×Testimate)は、予測利用量に相当する。すなわち、当該更新は、図5におけるジョブ開始時の動的優先度の低下を実現するためのものである。なお、計算のための動的優先度Pupdateの値は、カレントジョブのジョブ構造体が関連付いているユーザ構造体の値が用いられる。CPU利用数r及び予測実行時間Testimateの値は、カレントジョブのジョブ構造体に記録されている値が用いられる。また、カレントジョブのユーザのユーザ構造体の動的優先度は計算結果の動的優先度によって更新され、最終更新日時はカレントジョブの開始(ディスパッチ)日時によって更新される。
続いて、ディスパッチ部13は、カレントジョブを計算資源20にディスパッチする(S206)。これにより、ディスパッチ先の計算資源20によってカレントジョブが実行される。なお、カレントジョブのディスパッチに際し、ディパッチ部13は、ジョブの開始日時をカレントジョブのジョブ構造体に記録する。
一方、計算資源20にカレントジョブが必要とする分の空きが無い場合(S204でNo)、ディスパッチ部13は、ジョブリスト503に登録されている全てのジョブ構造体について処理を行ったか否かを判定する(S207)。未処理のジョブ構造体が有る場合(S207でNo)、未処理のジョブ構造体についてステップS203以降を実行する。全てのジョブ構造体ついて処理が完了した場合(S207でYes)、ディスパッチ部13は、当該スケジューリング処理を終了させる。
なお、ステップS204において、ディスパッチ不可と判定された場合、カレントジョブのディスパッチが可能となるまで(カレントジョブのCPU利用数分のCPUの空きが出来るまで)待機するようにしてもよい。
続いて、ジョブの実行が終了した際に実行される処理について説明する。図10は、第一の実施の形態におけるジョブの終了時にジョブスケジューリング装置によって実行される処理手順を説明するためのフローチャートである。
ジョブが終了すると、当該ジョブを実行していた計算資源20より終了したジョブ(終了ジョブ)のジョブIDが通知される。ステップS301において、ジョブスケジューリング装置10のジョブ終了通知受信部14は、当該通知を受信する。続いて、優先度算出部12は、終了ジョブに係るユーザの動的優先度Pupdateを更新する(S302)。当該更新は、以下の計算によって行われる。
update←Pupdate+r×(Testimate−Tactual
actual:実績実行時間
ここで、(r×Tactual)は、実績利用量に相当する。すなわち、当該更新は、図5におけるジョブ終了時の動的優先度の調整を実現するためのものである。なお、計算のための動的優先度Pupdateの値は、終了ジョブのジョブ構造体が関連付いているユーザ構造体の値が用いられる。CPU利用数r及び予測実行時間Testimateの値は、終了ジョブのジョブ構造体に記録されている値が用いられる。実績実行時間は、終了ジョブのジョブ構造体に記録されているジョブの開始日時と、ジョブの終了通知が受信された日時とに基づいて算出される。また、また、終了ジョブのユーザのユーザ構造体の動的優先度は計算結果の動的優先度によって更新され、最終更新日時はジョブの終了通知が受信された日時によって更新される。
以上の処理によって、図5において説明した本実施の形態における動的優先度の制御方式が実現される。
ところで、本実施の形態における動的優先度の制御方式が実現されている環境において、計算資源20に空き(CPUの空き)が多く存在する状況で、或るユーザ(以下、「ユーザA」という。)のジョブが大量に投入された場合について考える。この場合、他のユーザのジョブが存在しないために、たとえユーザAが多くのペナルティを受けた状態であってもユーザAのジョブが大量に実行されてしまう可能性がある。
その結果、ユーザAの動的優先度は、次に示されるように遷移する。図11は、ユーザAのジョブが大量に投入された場合の動的優先度の遷移の例を示す図である。
同図において、ユーザAの動的優先度は、a、b、c、d、e、fのタイミングで低下している。これは、それぞれのタイミングにおいてユーザAのジョブがディスパッチされたことによる。その結果、ユーザAの動的優先度は極端に低下し、しばらく回復できない状況となっている。したがって、他のユーザジョブが投入されたときに、他ユーザのジョブにディスパッチ順序が追い抜かれる状態が継続することが考えられる。
このような事態の発生を回避した例として、以下、第二の実施の形態を説明する。なお、第二の実施の形態において特に言及しない点については第一の実施の形態と同様でよい。
第二の実施の形態では、動的優先度の回復率を動的に(時間の経過に応じて)変化させる。具体的には、所定の期間T(例えば、1年)をN分割する(等分でなくてもよい。)。各ユーザは、期間Tにおける計算資源20の利用可能量(例えば、CPU数×時間)のうちの各分割期間の予定利用量を事前に申請する。各分割期間の予定利用量に応じて分割期間ごとに動的優先度の回復率が決定される。
例えば、1年をN分割し、それぞれの分割点をt、t、・・・、tとした場合において、tからt+1の分割期間での予定利用量をrとすると、t+1からtの分割期間の回復率Rは以下の式(3)で算出される。
=r/T・・・(3)
各分割期間の回復率を式(3)に基づいて決定することで、多量に計算資源20を利用する予定の分割期間はその利用量に比例して回復率が大きくすることができる。一方、計算資源20の予定利用量が少量の分割期間についてはその予定利用量に比例して回復率を小さくすることができる。
以上の仕組み(動的に回復率を変化させる仕組み)を実現する場合、分割期間ごとの回復率をユーザ情報の一部としてジョブスケジューリング装置10の補助記憶装置102にユーザごとに記録しておけばよい。また、分割期間ごとの回復率を管理可能とするためユーザ構造体の構成を例えば次のようにすればよい。
図12は、第二の実施の形態におけるデータ構造の例を示す図である。図12中、図9と同一部分には同一符号を付し、その説明は省略する。
第二の実施の形態におけるユーザ構造体には、ユーザごとの回復率テーブル(回復率テーブル504a、504b、504c)に対するポインタがメンバ変数として含まれている。各回復率テーブルには、対応するユーザの分割期間ごとの回復率が記録されている。
斯かるデータ構造に基づいて、優先度算出部12は、図8のステップS201において全ユーザの動的優先度を算出する際に、算出時が属する分割期間に対応した回復率を用いる。その結果、図11におけるユーザAの動的優先度は、例えば以下のように遷移する。
図13は、第二の実施の形態における動的優先度の遷移の例を示す図である。同図において、(A)は動的優先度の遷移を示す。(B)は各分割期間の予定利用量の遷移を示す。例えば、(B)に示されるように、tからtの分割期間において、ユーザAの予定利用量は他のユーザに比べて多い。したがって、(A)に示されるように、当該分割期間においてユーザAの動的優先度の回復率は相対的に高くなる。一方、t以降において、ユーザAの予定利用量は他のユーザに比べて少ない。したがって、該当する分割期間においてユーザAの動的優先度の回復率は相対的に低くなる。
上述したように、第二の実施の形態によれば、ユーザが申請した予定利用量の範囲内で計算資源20が利用されている限り、動的優先度は最大値付近から極端に低下することなくコンスタントに最大値付近の値を維持することができる。したがって、計算資源20の大量の利用によって動的優先度が急降下する現象を回避することができ、動的優先度を適切な水準に保つことができる。
なお、本実施の形態では、計算資源20の利用量を「CPU数×時間」によって測定する例について説明した。しかし、例えば、利用するCPU数について公平性を担保する必要が無い場合には、時間のみによって利用量を測定するようにしてもよい。利用するCPU数について公平性を担保する必要が無い場合としては、例えば、各ジョブが利用するCPUの個数が同じである場合が挙げられる。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
以上の説明に関し、更に以下の項を開示する。
(付記1)
コンピュータに、
ジョブの計算資源への割り当てに応じ、ジョブごとに入力され記憶装置に記録されている前記計算資源の予測利用量に基づいて、計算資源に割り当てられたジョブに係るユーザのジョブの割り当て順に関する優先度を下降させる第一の手順と、
記憶装置にユーザごとに記録された単位時間あたりの前記計算資源の利用可能量に応じた回復率に基づいて、時間の経過に応じて前記優先度を上昇させる第二の手順とを実行させるための優先度制御プログラム。
(付記2)
前記ジョブの終了に応じ、前記予測利用量と実際の前記計算資源の利用量との差分に基づいて前記優先度を変化させる第三の手順を有する付記1記載の優先度制御プログラム。
(付記3)
前記回復率は、期間ごとの前記計算資源の利用予定量に応じて期間ごとに記憶装置に記録されている付記1又は2記載の優先度制御プログラム。
(付記4)
前記回復率は、前記利用可能量を前記単位時間によって除した値に基づく請求項1乃至3いずれか一項記載の優先度制御プログラム。
(付記5)
前記第二の手順は、前記優先度が記憶装置にユーザごとに記録された前記優先度の最大値に達したときは前記優先度を上昇させない付記1乃至4いずれか一項記載の優先度制御プログラム。
(付記6)
ジョブの計算資源への割り当てに応じ、ジョブごとに入力され記憶装置に記録されている前記計算資源の予測利用量に基づいて、計算資源に割り当てられたジョブに係るユーザのジョブの割り当て順に関する優先度を下降させる第一の手段と、
記憶装置にユーザごとに記録された単位時間あたりの前記計算資源の利用可能量に応じた回復率に基づいて、時間の経過に応じて前記優先度を上昇させる第二の手段とを有する優先度制御装置。
(付記7)
前記ジョブの終了に応じ、前記予測利用量と実際の前記計算資源の利用量との差分に基づいて前記優先度を変化させる第三の手段を有する付記6記載の優先度制御装置。
(付記8)
前記回復率は、期間ごとの前記計算資源の利用予定量に応じて期間ごとに記憶装置に記録されている付記6又は7記載の優先度制御装置。
(付記9)
前記回復率は、前記利用可能量を前記単位時間によって除した値に基づく請求項6乃至8いずれか一項記載の優先度制御装置。
(付記10)
前記第二の手段は、前記優先度が記憶装置にユーザごとに記録された前記優先度の最大値に達したときは前記優先度を上昇させない付記6乃至9いずれか一項記載の優先度制御装置。
(付記11)
コンピュータが実行する優先度制御方法であって、
ジョブの計算資源への割り当てに応じ、ジョブごとに入力され記憶装置に記録されている前記計算資源の予測利用量に基づいて、計算資源に割り当てられたジョブに係るユーザのジョブの割り当て順に関する優先度を下降させる第一の手順と、
記憶装置にユーザごとに記録された単位時間あたりの前記計算資源の利用可能量に応じた回復率に基づいて、時間の経過に応じて前記優先度を上昇させる第二の手順とを有する優先度制御方法。
(付記12)
前記ジョブの終了に応じ、前記予測利用量と実際の前記計算資源の利用量との差分に基づいて前記優先度を変化させる第三の手順を有する付記11記載の優先度制御方法。
(付記13)
前記回復率は、期間ごとの前記計算資源の利用予定量に応じて期間ごとに記憶装置に記録されている付記11又は12記載の優先度制御方法。
(付記14)
前記回復率は、前記利用可能量を前記単位時間によって除した値に基づく請求項11乃至13いずれか一項記載の優先度制御方法。
(付記15)
前記第二の手順は、前記優先度が記憶装置にユーザごとに記録された前記優先度の最大値に達したときは前記優先度を上昇させない付記11乃至14いずれか一項記載の優先度制御方法。
従来のフェアシェア方式の第一の例における動的優先度の遷移を簡易的に示す図である。 従来のフェアシェア方式の第二の例における動的優先度の遷移を簡易的に示す図である。 本発明の実施の形態における計算システム構成例を示す図である。 本発明の実施の形態におけるジョブスケジューリング装置のハードウェア構成例を示す図である。 本実施の形態における優先度の算出方式による優先度の遷移の例を示す図である。 第一の実施の形態においてジョブ入力時にジョブスケジューリング装置によって実行される処理手順を説明するためのフローチャートである。 ジョブ構造体とユーザ構造体とが関連付けられた状態を示す図である。 第一の実施の形態におけるジョブのスケジューリング処理の処理手順を説明するためのフローチャートである。 ジョブ構造体のソート結果としてのデータ構造を示す図である。 第一の実施の形態におけるジョブの終了時にジョブスケジューリング装置によって実行される処理手順を説明するためのフローチャートである。 ユーザAのジョブが大量に投入された場合の動的優先度の遷移の例を示す図である。 第二の実施の形態におけるデータ構造の例を示す図である。 第二の実施の形態における動的優先度の遷移の例を示す図である。
符号の説明
10 ジョブスケジューリング装置
11 ジョブ受付部
12 優先度算出部
13 ディスパッチ部
14 ジョブ終了通知受付部
20、20a、20b、20c 計算資源
100 ドライブ装置
101 記録媒体
102 補助記憶装置
103 メモリ装置
104 CPU
105 インタフェース装置
106 表示装置
107 入力装置
108 タイマー
B バス

Claims (7)

  1. コンピュータに、
    ジョブの計算資源への割り当てに応じ、ジョブごとに入力され記憶装置に記録されている前記計算資源の予測利用量に基づいて、計算資源に割り当てられたジョブに係るユーザのジョブの割り当て順に関する優先度を下降させる第一の手順と、
    記憶装置にユーザごとに記録された単位時間あたりの前記計算資源の利用可能量に応じた回復率に基づいて、時間の経過に応じて前記優先度を上昇させる第二の手順とを実行させるための優先度制御プログラム。
  2. 前記ジョブの終了に応じ、前記予測利用量と実際の前記計算資源の利用量との差分に基づいて前記優先度を変化させる第三の手順を有する請求項1記載の優先度制御プログラム。
  3. 前記回復率は、期間ごとの前記計算資源の利用予定量に応じて期間ごとに記憶装置に記録されている請求項1又は2記載の優先度制御プログラム。
  4. 前記回復率は、前記利用可能量を前記単位時間によって除した値に基づく請求項1乃至3いずれか一項記載の優先度制御プログラム。
  5. 前記第二の手順は、前記優先度が記憶装置にユーザごとに記録された前記優先度の最大値に達したときは前記優先度を上昇させない請求項1乃至4いずれか一項記載の優先度制御プログラム。
  6. ジョブの計算資源への割り当てに応じ、ジョブごとに入力され記憶装置に記録されている前記計算資源の予測利用量に基づいて、計算資源に割り当てられたジョブに係るユーザのジョブの割り当て順に関する優先度を下降させる第一の手段と、
    記憶装置にユーザごとに記録された単位時間あたりの前記計算資源の利用可能量に応じた回復率に基づいて、時間の経過に応じて前記優先度を上昇させる第二の手段とを有する優先度制御装置。
  7. コンピュータが実行する優先度制御方法であって、
    ジョブの計算資源への割り当てに応じ、ジョブごとに入力され記憶装置に記録されている前記計算資源の予測利用量に基づいて、計算資源に割り当てられたジョブに係るユーザのジョブの割り当て順に関する優先度を下降させる第一の手順と、
    記憶装置にユーザごとに記録された単位時間あたりの前記計算資源の利用可能量に応じた回復率に基づいて、時間の経過に応じて前記優先度を上昇させる第二の手順とを有する優先度制御方法。
JP2008128110A 2008-05-15 2008-05-15 優先度制御プログラム、優先度制御装置、及び優先度制御方法 Active JP5120061B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008128110A JP5120061B2 (ja) 2008-05-15 2008-05-15 優先度制御プログラム、優先度制御装置、及び優先度制御方法
US12/337,272 US8832703B2 (en) 2008-05-15 2008-12-17 Dynamically changing job allocation priority based on a restoration rate for each user and time frame

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008128110A JP5120061B2 (ja) 2008-05-15 2008-05-15 優先度制御プログラム、優先度制御装置、及び優先度制御方法

Publications (2)

Publication Number Publication Date
JP2009277041A true JP2009277041A (ja) 2009-11-26
JP5120061B2 JP5120061B2 (ja) 2013-01-16

Family

ID=41317381

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008128110A Active JP5120061B2 (ja) 2008-05-15 2008-05-15 優先度制御プログラム、優先度制御装置、及び優先度制御方法

Country Status (2)

Country Link
US (1) US8832703B2 (ja)
JP (1) JP5120061B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011180894A (ja) * 2010-03-02 2011-09-15 Fujitsu Ltd ジョブスケジューリングプログラム、ジョブスケジューリング装置、及びジョブスケジューリング方法
JP2013522764A (ja) * 2010-03-16 2013-06-13 アルカテル−ルーセント システムリソースの再割当てを管理するための方法および装置
JP2015184791A (ja) * 2014-03-20 2015-10-22 富士通株式会社 情報処理装置、アクション切替方法、及びアクション切替プログラム
JP2016103258A (ja) * 2014-11-18 2016-06-02 富士通株式会社 並列演算装置、並列演算システム、およびジョブ制御プログラム
JP2016167121A (ja) * 2015-03-09 2016-09-15 富士通株式会社 並列演算装置、並列演算システム、およびジョブ制御プログラム
US9740530B2 (en) 2014-11-18 2017-08-22 Fujitsu Limited Decreasing the priority of a user based on an allocation ratio

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8549527B2 (en) * 2010-08-25 2013-10-01 International Business Machines Corporation Work plan prioritization for application development and maintenance using pooled resources in a factory
US8612597B2 (en) * 2010-12-07 2013-12-17 Microsoft Corporation Computing scheduling using resource lend and borrow
US9043799B1 (en) * 2010-12-30 2015-05-26 Iqnavigator, Inc. Managing access to a shared resource by tracking active requestor job requests
US8762998B2 (en) 2011-06-14 2014-06-24 International Business Machines Corporation Computing job management based on priority and quota
US9460290B2 (en) 2011-07-19 2016-10-04 Elwha Llc Conditional security response using taint vector monitoring
US9558034B2 (en) * 2011-07-19 2017-01-31 Elwha Llc Entitlement vector for managing resource allocation
US9443085B2 (en) 2011-07-19 2016-09-13 Elwha Llc Intrusion detection using taint accumulation
US9465657B2 (en) 2011-07-19 2016-10-11 Elwha Llc Entitlement vector for library usage in managing resource allocation and scheduling based on usage and priority
US9575903B2 (en) 2011-08-04 2017-02-21 Elwha Llc Security perimeter
US9798873B2 (en) 2011-08-04 2017-10-24 Elwha Llc Processor operable to ensure code integrity
US9471373B2 (en) 2011-09-24 2016-10-18 Elwha Llc Entitlement vector for library usage in managing resource allocation and scheduling based on usage and priority
US9055086B2 (en) * 2011-12-28 2015-06-09 Alcatel Lucent System and method for managing data transfer from a data center including bandwidth limits and a flex parameter indicating bandwidth variation between data transfer periods
US9515899B2 (en) 2012-12-19 2016-12-06 Veritas Technologies Llc Providing optimized quality of service to prioritized virtual machines and applications based on quality of shared resources
JP5738336B2 (ja) * 2013-02-21 2015-06-24 株式会社東芝 文書優先度決定装置及び文書優先度決定プログラム
US9436739B2 (en) * 2013-12-13 2016-09-06 Vmware, Inc. Dynamic priority-based query scheduling
US9465645B1 (en) * 2014-06-25 2016-10-11 Amazon Technologies, Inc. Managing backlogged tasks
US10366358B1 (en) 2014-12-19 2019-07-30 Amazon Technologies, Inc. Backlogged computing work exchange
US10296402B2 (en) * 2015-12-17 2019-05-21 Entit Software Llc Scheduling jobs
US10171472B2 (en) * 2016-03-02 2019-01-01 Microsoft Technology Licensing, Llc Role-specific service customization
US20180173560A1 (en) * 2016-12-21 2018-06-21 Apple Inc. Processing circuit hardware resource allocation system
US10541939B2 (en) * 2017-08-15 2020-01-21 Google Llc Systems and methods for provision of a guaranteed batch
CN107885589B (zh) * 2017-11-22 2021-02-12 贝壳找房(北京)科技有限公司 一种作业调度方法及装置
US10942767B2 (en) * 2018-02-27 2021-03-09 Microsoft Technology Licensing, Llc Deep neural network workload scheduling
WO2022109351A1 (en) 2020-11-20 2022-05-27 Okta, Inc. Server-based workflow management using priorities

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07253893A (ja) * 1994-03-15 1995-10-03 Toshiba Corp タスク優先度管理方式
JP2003084989A (ja) * 2001-09-12 2003-03-20 Nec Corp プライオリティ動的制御方式、プライオリティ動的制御方法およびプライオリティ動的制御用プログラム
JP2003091424A (ja) * 2001-09-18 2003-03-28 Matsushita Electric Ind Co Ltd 分散処理システムおよびジョブ分散処理方法
JP2005536791A (ja) * 2002-08-23 2005-12-02 ザイロン コーポレイション 動的多重レベルタスク管理方法及び装置
JP2006048275A (ja) * 2004-08-03 2006-02-16 Matsushita Electric Ind Co Ltd ジョブスケジュール管理装置、ジョブスケジュール管理方法及びそのプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6101460A (en) * 1998-03-23 2000-08-08 Mci Communications Corporation Method of forecasting resource needs
US20050114861A1 (en) * 2003-11-12 2005-05-26 Brian Mitchell Parallel execution scheduling method apparatus and system
US8261278B2 (en) * 2008-02-01 2012-09-04 Ca, Inc. Automatic baselining of resource consumption for transactions

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07253893A (ja) * 1994-03-15 1995-10-03 Toshiba Corp タスク優先度管理方式
JP2003084989A (ja) * 2001-09-12 2003-03-20 Nec Corp プライオリティ動的制御方式、プライオリティ動的制御方法およびプライオリティ動的制御用プログラム
JP2003091424A (ja) * 2001-09-18 2003-03-28 Matsushita Electric Ind Co Ltd 分散処理システムおよびジョブ分散処理方法
JP2005536791A (ja) * 2002-08-23 2005-12-02 ザイロン コーポレイション 動的多重レベルタスク管理方法及び装置
JP2006048275A (ja) * 2004-08-03 2006-02-16 Matsushita Electric Ind Co Ltd ジョブスケジュール管理装置、ジョブスケジュール管理方法及びそのプログラム

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011180894A (ja) * 2010-03-02 2011-09-15 Fujitsu Ltd ジョブスケジューリングプログラム、ジョブスケジューリング装置、及びジョブスケジューリング方法
US8539495B2 (en) 2010-03-02 2013-09-17 Fujitsu Limited Recording medium storing therein a dynamic job scheduling program, job scheduling apparatus, and job scheduling method
JP2013522764A (ja) * 2010-03-16 2013-06-13 アルカテル−ルーセント システムリソースの再割当てを管理するための方法および装置
JP2015184791A (ja) * 2014-03-20 2015-10-22 富士通株式会社 情報処理装置、アクション切替方法、及びアクション切替プログラム
JP2016103258A (ja) * 2014-11-18 2016-06-02 富士通株式会社 並列演算装置、並列演算システム、およびジョブ制御プログラム
US9740530B2 (en) 2014-11-18 2017-08-22 Fujitsu Limited Decreasing the priority of a user based on an allocation ratio
JP2016167121A (ja) * 2015-03-09 2016-09-15 富士通株式会社 並列演算装置、並列演算システム、およびジョブ制御プログラム
US10180858B2 (en) 2015-03-09 2019-01-15 Fujitsu Limited Parallel computing device, parallel computing system, and job control method

Also Published As

Publication number Publication date
US20090288090A1 (en) 2009-11-19
US8832703B2 (en) 2014-09-09
JP5120061B2 (ja) 2013-01-16

Similar Documents

Publication Publication Date Title
JP5120061B2 (ja) 優先度制御プログラム、優先度制御装置、及び優先度制御方法
Ding et al. Q-learning based dynamic task scheduling for energy-efficient cloud computing
Bansal et al. Speed scaling for weighted flow time
CN111400022A (zh) 一种资源调度方法、装置及电子设备
CN104298550B (zh) 一种面向Hadoop的动态调度方法
JPH07282013A (ja) 分散処理システム
JP2011180894A (ja) ジョブスケジューリングプログラム、ジョブスケジューリング装置、及びジョブスケジューリング方法
JP4555145B2 (ja) バッチスケジューリングプログラム、バッチスケジューリング方法およびバッチスケジューリング装置
KR101770736B1 (ko) 응용프로그램의 질의 스케쥴링을 이용한 시스템의 소모전력 절감 방법 및 그 방법을 이용하여 소모전력을 절감하는 휴대단말기
CN104598311A (zh) 一种面向Hadoop的实时作业公平调度的方法和装置
CN113032102A (zh) 资源重调度方法、装置、设备和介质
CN114356580B (zh) 基于共享资源访问的异构多核系统任务分配方法和装置
KR20090029811A (ko) 자원-기반 스케쥴러
CN108958919B (zh) 一种云计算中有期限约束的多dag任务调度费用公平性评估方法
CN102184124A (zh) 任务调度方法及系统
CN116089248B (zh) 一种写i/o突发分布预测方法、装置、设备及存储介质
JP2009129112A (ja) コンピュータ・システムおよびプロセスに対するデバイスの管理方法
CN104731662B (zh) 一种可变并行作业的资源分配方法
JP5444900B2 (ja) ジョブ実行管理システム、ジョブ実行管理方法、ジョブ実行管理プログラム
KR101639947B1 (ko) 하둡 선점 데드라인 제약 스케줄링 방법 및 그 방법을 수행하는 컴퓨터프로그램과, 그 프로그램이 기록된 매체
CN115269182A (zh) 资源调整方法、装置、服务器及存储介质
CN110764886B (zh) 一种支持多分区处理的批量作业协同调度方法及系统
JP4367167B2 (ja) リアルタイムシステム、QoS適応制御装置及びそれらに用いるQoS適応制御方法並びにそのプログラム
CN114327807A (zh) 用于分布式规则引擎的自适应任务调度方法、装置和电子设备
JP2001142723A (ja) 資源配分方法、計算機システム及び記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110118

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120306

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120417

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120925

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121008

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151102

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5120061

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150