JP5676297B2 - Job scheduling system, job scheduling method and program - Google Patents

Job scheduling system, job scheduling method and program Download PDF

Info

Publication number
JP5676297B2
JP5676297B2 JP2011031758A JP2011031758A JP5676297B2 JP 5676297 B2 JP5676297 B2 JP 5676297B2 JP 2011031758 A JP2011031758 A JP 2011031758A JP 2011031758 A JP2011031758 A JP 2011031758A JP 5676297 B2 JP5676297 B2 JP 5676297B2
Authority
JP
Japan
Prior art keywords
job
delay
assignment
scheduler map
area
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.)
Active
Application number
JP2011031758A
Other languages
Japanese (ja)
Other versions
JP2012173753A (en
Inventor
壮司 大坂
壮司 大坂
悠記 磯
悠記 磯
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.)
NEC Corp
NEC Solutions Innovators Ltd
Original Assignee
NEC Corp
NEC Solutions Innovators 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 NEC Corp, NEC Solutions Innovators Ltd filed Critical NEC Corp
Priority to JP2011031758A priority Critical patent/JP5676297B2/en
Publication of JP2012173753A publication Critical patent/JP2012173753A/en
Application granted granted Critical
Publication of JP5676297B2 publication Critical patent/JP5676297B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、ジョブスケジューリングシステムに関する。   The present invention relates to a job scheduling system.

複数の計算ノードで構成されるクラスタリングシステムにおいて、バックフィル型スケジューリングを用いるジョブスケジューラ(以下、「バックフィルスケジューラ」という)が利用されている。バックフィルスケジューラは、システムの計算リソースと時間を軸にした二次元マップ(以下、「スケジューラマップ」という)を使用して、ジョブの予定実行時刻を管理しながら、ジョブが要求するリソースを割り当てる(以下、「アサインする」という)スケジューラである。スケジューラマップによるジョブスケジューリングシステムは、HPC(High Performance Computing)分野を中心に利用されている。   In a clustering system composed of a plurality of computing nodes, a job scheduler using backfill type scheduling (hereinafter referred to as “backfill scheduler”) is used. The backfill scheduler uses a two-dimensional map (hereinafter referred to as a “scheduler map”) centered on the calculation resources and time of the system to allocate the resources required by the job while managing the scheduled execution time of the job ( Hereinafter, the scheduler is referred to as “assign”. A job scheduling system based on a scheduler map is used mainly in the field of HPC (High Performance Computing).

従来のスケジューラマップによるジョブスケジューリングシステムでは、システムの計算リソースの使用が少ない少規模ジョブに、システムの計算リソースを多用する大規模ジョブが追い越され続けることにより、長期間、大規模ジョブの実行が開始されない課題があった。図1は、従来のスケジューラマップによるジョブスケジューリングシステムの課題を説明するための図である。図1のスケジューラマップ101は、縦軸に計算ノード数、横軸に時間がとられている。スケジューラマップ101では、現在時刻からマップ終端までの時間の間に、処理が開始するジョブに対して、計算ノード1〜4で実行するジョブを予約することができる。図1の例では、アサイン待ちジョブ102として、ジョブ7〜10がある状態が示されている。この例では、システムの計算リソースの使用が少ない少規模ジョブ8、9に、システムの計算リソースを多用する大規模ジョブ7が追い越されることにより、長期間、大規模ジョブ7の実行が開始されない状態が示されている。   In a conventional job scheduling system using a scheduler map, a large-scale job that uses a large amount of the system's computational resources continues to be overtaken by a small-scale job that uses a small amount of the system's computational resources. There was a problem that was not done. FIG. 1 is a diagram for explaining a problem of a job scheduling system based on a conventional scheduler map. In the scheduler map 101 in FIG. 1, the vertical axis represents the number of calculation nodes, and the horizontal axis represents time. In the scheduler map 101, a job to be executed by the calculation nodes 1 to 4 can be reserved for a job whose processing starts during the time from the current time to the end of the map. In the example of FIG. 1, a state where there are jobs 7 to 10 as the assignment waiting job 102 is shown. In this example, execution of the large-scale job 7 is not started for a long time because the large-scale job 7 that heavily uses the computational resources of the system is overtaken by the small-scale jobs 8 and 9 that use less computational resources of the system. It is shown.

従来のスケジューラマップ101によるジョブスケジューリングシステムは、図1で説明した課題を解決するために、追い越し禁止機能が実装されている。図2は、従来のスケジューラマップ101によるジョブスケジューリングシステムの追い越し禁止機能を説明するための図である。追い越し禁止機能とは、一般に、一定時間アサインできなかったジョブが存在する場合には、後続のジョブを追い越し禁止にすることで該当ジョブのアサインを優先させる機能である。図2の例では、アサイン待ちジョブ102として、ジョブ7〜10がある状態が示されている。この例では、一定時間アサインできなかったジョブ7が存在するため、後続のジョブ8、9、10が、ジョブ7に対して追い越し禁止に設定されている。しかし、追い越し禁止機能を有効にすると、小規模ジョブがスケジューラマップ101にアサイン出来ず、計算ノードに空き領域が増え、システム稼働率が低下することがある。図2の例では、追い越し禁止機能を有効にしたため、計算ノード3の空き領域が増えている。   The conventional job scheduling system based on the scheduler map 101 is provided with an overtaking prohibition function in order to solve the problem described with reference to FIG. FIG. 2 is a diagram for explaining the overtaking prohibiting function of the job scheduling system according to the conventional scheduler map 101. In general, the overtaking prohibition function is a function that prioritizes assignment of a corresponding job by prohibiting overtaking of subsequent jobs when there is a job that cannot be assigned for a certain period of time. In the example of FIG. 2, a state where there are jobs 7 to 10 as the assignment waiting job 102 is shown. In this example, since there is a job 7 that could not be assigned for a certain time, the subsequent jobs 8, 9, 10 are prohibited from being overtaken with respect to the job 7. However, when the overtaking prohibition function is enabled, a small-scale job cannot be assigned to the scheduler map 101, and an empty area increases in the calculation node, which may lower the system operation rate. In the example of FIG. 2, since the overtaking prohibition function is enabled, the free area of the computation node 3 is increased.

これまでのHPC分野におけるクラスタリングシステムでは、規模(使用計算ノード数、CPU数)毎にクラス分けし、クラス毎に使用する計算リソースを分ける運用が主流であった。このような運用では、大規模ジョブと小規模ジョブでクラスが異なるため、リソースが競合することはなかった。しかし、近年は、クラスタリングシステムの全リソースを共有して管理する方法が主流となってきており、大規模ジョブと小規模ジョブでリソースの競合による問題が発生するようになってきた。そのため、大規模ジョブと小規模ジョブが混合していても、効率よくジョブをアサインすることにより、クラスタリングシステムの稼動率の低下を抑えるジョブスケジューリングシステムが求められている。   Conventional clustering systems in the HPC field have been mainly operated by classifying each size (number of calculation nodes used, number of CPUs) and dividing calculation resources used for each class. In such an operation, since the class is different between a large-scale job and a small-scale job, there is no resource contention. However, in recent years, a method of sharing and managing all resources of the clustering system has become mainstream, and problems due to resource competition have occurred between large-scale jobs and small-scale jobs. Therefore, there is a need for a job scheduling system that suppresses a reduction in the operating rate of the clustering system by efficiently assigning jobs even when large-scale jobs and small-scale jobs are mixed.

本発明の分野に関する文献公知発明としては、特開2001−22601号公報(特許文献1)がある。特開2001−22601号公報では、ジョブのスケジューリングに関する技術として、複数の実行待ちジョブのうち、先頭に実行要求が発行されたジョブに対して、優先的にスケジュールを行うジョブ実行制御方法及び並列計算機システムに関する技術が開示されている。   Japanese Patent Laid-Open No. 2001-22601 (Patent Document 1) is known as a document known invention in the field of the present invention. In Japanese Patent Laid-Open No. 2001-22601, as a technique related to job scheduling, a job execution control method and a parallel computer that preferentially schedule a job whose execution request is issued at the head of a plurality of jobs waiting to be executed Techniques related to the system are disclosed.

特開2001−22601号公報JP 2001-22601 A

本発明の目的は、大規模ジョブの実行開始を遅延させない範囲で、可能な限り小規模ジョブの実行を先行させることにより、システムの稼働率を向上させるジョブスケジューリングシステムを提供することにある。   An object of the present invention is to provide a job scheduling system that improves the operating rate of a system by preceding execution of a small-scale job as much as possible without delaying the start of execution of the large-scale job.

本発明のジョブスケジューリングシステムは、スケジューラマップを保存するスケジューラマップ保存部と、スケジューラマップにアサインするジョブを、バックフィル型スケジューリングにより選択するアサイン対象ジョブ選択部と、スケジューラマップの空き領域を検索する空き情報検索部と、遅延禁止ジョブを追い越しても、遅延禁止ジョブのジョブ実行開始時刻を遅延させない追越可能ジョブを判別する追越可能判別部と、追越可能ジョブの実行予定時刻を決定する実行予定時刻決定部と、追越可能ジョブの実行予定計算ノードを選択する実行予定計算ノード選択部とを備える。   A job scheduling system according to the present invention includes a scheduler map storage unit that stores a scheduler map, an assignment target job selection unit that selects a job to be assigned to the scheduler map by backfill scheduling, and a space for searching for an empty area of the scheduler map. Information search unit, passable discriminating unit that discriminates a passable job that does not delay the job execution start time of a delay-prohibited job even if it overtakes a delay-prohibited job, and execution that determines the scheduled execution time of the passable job A scheduled time determination unit; and an execution schedule calculation node selection unit that selects an execution schedule calculation node of the passable job.

本発明のジョブスケジューリング方法は、ジョブスケジューリングシステムにより実施されるジョブスケジューリング方法である。スケジューラマップ保存部が、スケジューラマップを保存するステップと、アサイン対象ジョブ選択部が、スケジューラマップにアサインするジョブを、バックフィル型スケジューリングにより選択するステップと、アサイン対象ジョブ選択部が、選択するステップにより選択したジョブが、遅延禁止ジョブである場合には、選択したジョブを特別アサイン領域に割り当てるステップと、空き情報検索部が、スケジューラマップの空き領域を検索するステップと、追越可能判別部が、遅延禁止ジョブを追い越しても、遅延禁止ジョブのジョブ実行開始時刻を遅延させない追越可能ジョブを判断するステップと、実行予定時刻決定部が、追越可能ジョブの実行予定時刻を決定するステップと、実行予定計算ノード選択部が、追越可能ジョブの実行予定計算ノードを選択するステップとを含む。   The job scheduling method of the present invention is a job scheduling method implemented by a job scheduling system. The scheduler map storing unit stores the scheduler map, the assignment target job selecting unit selects a job to be assigned to the scheduler map by backfill scheduling, and the assignment target job selecting unit selects the job If the selected job is a delay-prohibited job, a step of assigning the selected job to the special assignment area, a step of searching for a free area of the scheduler map, and a passable discriminating unit, A step of determining a passable job that does not delay the job execution start time of the delay-prohibited job even if it overtakes the delay-prohibited job, and a step of determining a scheduled execution time of the passable job, The scheduled execution node selection unit will execute the job that can be overtaken. And a step of selecting a schedule compute nodes.

本発明によれば、大規模ジョブの実行開始を遅延させない範囲で、可能な限り小規模ジョブの実行を先行させることにより、システムの稼働率を向上させるジョブスケジューリングシステムを提供することができる。   According to the present invention, it is possible to provide a job scheduling system that improves the operating rate of a system by preceding execution of a small-scale job as much as possible without delaying the start of execution of the large-scale job.

図1は、従来のスケジューラマップによるジョブスケジューリングシステムの課題を説明するための図である。FIG. 1 is a diagram for explaining a problem of a job scheduling system based on a conventional scheduler map. 図2は、従来のスケジューラマップによるジョブスケジューリングシステムの追い越し禁止機能を説明するための図である。FIG. 2 is a diagram for explaining an overtaking prohibiting function of a job scheduling system based on a conventional scheduler map. 図3は、本発明の第1実施形態におけるジョブスケジューリングシステム100のブロック図である。FIG. 3 is a block diagram of the job scheduling system 100 according to the first embodiment of the present invention. 図4は、本発明の第1実施形態におけるジョブスケジューリングシステム100のスケジューラマップ21を説明するための図である。FIG. 4 is a diagram for explaining the scheduler map 21 of the job scheduling system 100 according to the first embodiment of the present invention. 図5は、本発明の第1実施形態におけるジョブスケジューリングシステム100のハードウェア構成図である。FIG. 5 is a hardware configuration diagram of the job scheduling system 100 according to the first embodiment of the present invention. 図6は、本発明の第1実施形態におけるジョブスケジューリングシステム100のジョブスケジューリング方法のフローチャートである。FIG. 6 is a flowchart of the job scheduling method of the job scheduling system 100 according to the first embodiment of the present invention. 図7は、本発明の第2実施形態におけるジョブスケジューリングシステム100のブロック図である。FIG. 7 is a block diagram of the job scheduling system 100 according to the second embodiment of the present invention. 図8は、本発明の第2実施形態におけるジョブスケジューリングシステム100のジョブスケジューリング方法のフローチャートである。FIG. 8 is a flowchart of the job scheduling method of the job scheduling system 100 according to the second embodiment of the present invention. 図9は、本発明の第2実施形態におけるジョブスケジューリングシステム100のスケジューラマップ21を説明するための図である。FIG. 9 is a diagram for explaining the scheduler map 21 of the job scheduling system 100 according to the second embodiment of the present invention.

(第1実施形態)
添付図面を参照して、本発明の第1実施形態によるジョブスケジューリングシステム100を以下に説明する。
(First embodiment)
A job scheduling system 100 according to a first embodiment of the present invention will be described below with reference to the accompanying drawings.

[構成の説明]
はじめに、本実施形態におけるジョブスケジューリングシステム100の機能構成の説明を行う。図3は、本発明の第1実施形態におけるジョブスケジューリングシステム100のブロック図である。
[Description of configuration]
First, the functional configuration of the job scheduling system 100 in this embodiment will be described. FIG. 3 is a block diagram of the job scheduling system 100 according to the first embodiment of the present invention.

ジョブスケジューリングシステム100は、アサイン対象ジョブ選択部10、スケジューラマップ保存部20及びジョブアサイン部30を備える。   The job scheduling system 100 includes an assignment target job selection unit 10, a scheduler map storage unit 20, and a job assignment unit 30.

アサイン対象ジョブ選択部10は、遅延禁止ジョブ判別部11及び特別アサイン領域確保部12を備え、アサイン待ちジョブ22から、スケジューラマップ21にアサインするジョブを選択する。図4は、本発明の第1実施形態におけるジョブスケジューリングシステム100のスケジューラマップ21を説明するための図である。図4のスケジューラマップ21は、縦軸に計算ノード数、横軸に時間がとられている。スケジューラマップ21では、現在時刻からマップ終端までの時間の間に、処理が開始するジョブに対して、計算ノード1〜4で実行するジョブを予約することができる。図4のスケジューラマップ21は、特別アサイン領域23を備えている点が、図1及び図2のスケジューラマップ101とは異なる。特別アサイン領域23については後述する。遅延禁止ジョブ判別部11は、アサイン待ちジョブ22の対象ジョブが、ジョブ実行開始時刻の遅延が禁止されたジョブとなっているかを判別する。遅延禁止ジョブ判別部11は、対象ジョブのジョブ実行開始時刻の遅延が禁止されており、特別アサイン領域23が、まだスケジューラマップ21に確保されていない場合に、特別アサイン領域確保部12の処理を呼び出す。特別アサイン領域確保部12は、ジョブ実行開始時刻の遅延が禁止となったジョブをアサインするための特別アサイン領域23を、スケジューラマップ21に確保する。   The assignment target job selection unit 10 includes a delay prohibition job determination unit 11 and a special assignment area reservation unit 12, and selects a job to be assigned to the scheduler map 21 from the assignment waiting job 22. FIG. 4 is a diagram for explaining the scheduler map 21 of the job scheduling system 100 according to the first embodiment of the present invention. In the scheduler map 21 of FIG. 4, the number of calculation nodes is plotted on the vertical axis, and the time is plotted on the horizontal axis. In the scheduler map 21, a job to be executed by the calculation nodes 1 to 4 can be reserved for a job whose processing starts during the time from the current time to the end of the map. The scheduler map 21 shown in FIG. 4 is different from the scheduler map 101 shown in FIGS. 1 and 2 in that a special assign area 23 is provided. The special assignment area 23 will be described later. The delay prohibition job determination unit 11 determines whether the target job of the assignment waiting job 22 is a job in which the delay of the job execution start time is prohibited. The delay prohibition job determination unit 11 performs the processing of the special assignment area reservation unit 12 when the delay of the job execution start time of the target job is prohibited and the special assignment area 23 is not yet reserved in the scheduler map 21. call. The special assignment area securing unit 12 secures in the scheduler map 21 a special assignment area 23 for assigning a job whose delay in job execution start time is prohibited.

スケジューラマップ保存部20は、スケジューラマップ21の情報を保存する。スケジューラマップ21の情報には、ジョブが使用する計算リソース、ジョブの実行開始時刻及びジョブの実行所要時間等が含まれる。   The scheduler map storage unit 20 stores information on the scheduler map 21. The information of the scheduler map 21 includes a calculation resource used by the job, a job execution start time, a job execution required time, and the like.

ジョブアサイン部30は、空き領域情報検索部31、実行予定時刻決定部32、追越可能判別部33及び実行予定計算ノード選択部34を備え、スケジューラマップ21にジョブをアサインする。空き領域情報検索部31は、スケジューラマップ21の空き領域(アサイン可能なリソースの場所)を検索する。実行予定時刻決定部32は、アサイン待ちジョブ22のジョブの実行予定時刻を決定する。追越可能判別部33は、特別アサイン領域に割り当てられたジョブを追い越しても、特別アサイン領域に割り当てられたジョブのジョブ実行開始時刻を遅延させないジョブ(以下、「特別アサイン領域23にオーバーラップしないジョブ」という)を判断する。追越可能判別部33は、特別アサイン領域23にオーバーラップしないジョブについては、特別アサイン領域23に割り当てたジョブを追い越してアサインすることを許可する。実行予定計算ノード選択部34は、実行予定時刻が決定したジョブのアサイン領域を、スケジューラマップ21に確保する。   The job assigning unit 30 includes a free space information searching unit 31, a scheduled execution time determining unit 32, an overtaking possible determination unit 33, and a scheduled execution calculation node selecting unit 34, and assigns jobs to the scheduler map 21. The free area information search unit 31 searches for free areas (locations of resources that can be assigned) in the scheduler map 21. The scheduled execution time determination unit 32 determines the scheduled execution time of the assignment waiting job 22. The overtaking possible determination unit 33 does not delay the job execution start time of the job assigned to the special assignment area even if the job assigned to the special assignment area is overtaken (hereinafter, “does not overlap with the special assignment area 23”). Job)). The overtaking possibility determination unit 33 permits a job assigned to the special assignment area 23 to be overtaken for a job that does not overlap the special assignment area 23. The execution schedule calculation node selection unit 34 reserves in the scheduler map 21 the job assignment area for which the scheduled execution time has been determined.

次に、本実施形態におけるジョブスケジューリングシステム100のハードウェア構成の説明を行う。図5は、本発明の第1実施形態におけるジョブスケジューリングシステム100のハードウェア構成図である。   Next, the hardware configuration of the job scheduling system 100 in this embodiment will be described. FIG. 5 is a hardware configuration diagram of the job scheduling system 100 according to the first embodiment of the present invention.

本実施形態のジョブスケジューリングシステム100は、図5のようなクラスタリングシステム50において、計算ノード1〜4を管理する管理ノード5において実施される。なお、図5のクラスタリングシステム50の計算ノードの数は4つであるが、計算ノードの数は4つに限られない。管理ノード5におけるジョブスケジューリングシステム100は、メモリ8に展開されるジョブスケジューリングプログラム9が、CPU6により実行されることにより実現される。ジョブスケジューリングプログラム9は、HDD(Hard Disk Drive)等の補助記憶装置7に格納されている。   The job scheduling system 100 of this embodiment is implemented in the management node 5 that manages the computation nodes 1 to 4 in the clustering system 50 as shown in FIG. Although the number of calculation nodes in the clustering system 50 in FIG. 5 is four, the number of calculation nodes is not limited to four. The job scheduling system 100 in the management node 5 is realized by the CPU 6 executing a job scheduling program 9 developed in the memory 8. The job scheduling program 9 is stored in an auxiliary storage device 7 such as an HDD (Hard Disk Drive).

[動作方法の説明]
次に、本実施形態におけるジョブスケジューリングシステム100において、ジョブスケジューリング方法の説明を行う。図6は、本発明の第1実施形態におけるジョブスケジューリングシステム100のジョブスケジューリング方法のフローチャートである。
[Description of operation method]
Next, a job scheduling method in the job scheduling system 100 according to the present embodiment will be described. FIG. 6 is a flowchart of the job scheduling method of the job scheduling system 100 according to the first embodiment of the present invention.

(ステップS1)
アサイン対象ジョブ選択部10は、アサイン待ちジョブ22から、アサイン対象のジョブを選択する。
(Step S1)
The assignment target job selection unit 10 selects an assignment target job from the assignment waiting jobs 22.

(ステップS2)
遅延禁止ジョブ判別部11は、ステップS1で選択したジョブが、実行開始遅延禁止ジョブであるかどうかを判別する。遅延禁止ジョブ判別部11は、実行開始遅延禁止ジョブである場合には、ステップS3に進み、実行開始遅延禁止ジョブでない場合には、ステップS6に進む。
(Step S2)
The delay prohibition job determination unit 11 determines whether or not the job selected in step S1 is an execution start delay prohibition job. The delay prohibition job determination unit 11 proceeds to step S3 if it is an execution start delay prohibition job, and proceeds to step S6 if it is not an execution start delay prohibition job.

実行開始遅延禁止ジョブの判別方法の例としては、アサイン待ちジョブ22に長期間滞留するジョブを割り当てる方法が考えられる。図4の例では、ジョブ7のようにリソースを多用するジョブは、スケジューラマップ21に割り当てることができずに、アサイン待ちジョブ22として滞留することが多い。そのため、このようなジョブを、優先度が高いジョブであると考え、実行開始遅延禁止ジョブとする方法が考えられる。   As an example of a method for determining an execution start delay prohibition job, a method of assigning a job that stays for a long time to the assignment waiting job 22 can be considered. In the example of FIG. 4, a job that uses a lot of resources, such as job 7, cannot be assigned to the scheduler map 21 and often stays as an assignment waiting job 22. For this reason, such a job is considered to be a job with a high priority, and a method of making it an execution start delay prohibited job can be considered.

(ステップS3)
遅延禁止ジョブ判別部11は、特別アサイン領域23がスケジューラマップ21に確保されているか確認する。遅延禁止ジョブ判別部11は、特別アサイン領域23が確保されている場合には、ステップS5に進み、特別アサイン領域23が確保されていない場合には、ステップS4に進む。
(Step S3)
The delay prohibition job determination unit 11 checks whether the special assignment area 23 is secured in the scheduler map 21. The delay prohibition job determination unit 11 proceeds to step S5 when the special assignment area 23 is secured, and proceeds to step S4 when the special assignment area 23 is not secured.

(ステップS4)
特別アサイン領域確保部12は、特別アサイン領域23をスケジューラマップ21のマップ終端に確保する。特別アサイン領域23は、他のジョブによる追い越しによって、ジョブ開始時刻を遅延させないジョブのみをアサインできる領域であり、スケジューラマップ21の終端部に無条件に領域を確保する(既に割当済みの他のジョブと重なっても良い)。特別アサイン領域23は、時間の経過に連動してスケジューラマップ21上を移動することはなく、常にスケジューラマップ終端部に存在する(特別アサイン領域23上に重なっているジョブについては、時間の経過と共に現在時刻の方向に移動する)。特別アサイン領域23には、実行開始遅延禁止ジョブ以外のジョブをアサインすることは禁止されるため、時間が経過すると特別アサイン領域は必ず空き領域となり、追い越し禁止となったジョブをアサインすることができる。これによって、実行開始遅延禁止ジョブの実行開始時間が保証される。
(Step S4)
The special assignment area securing unit 12 secures the special assignment area 23 at the map end of the scheduler map 21. The special assignment area 23 is an area where only jobs that do not delay the job start time due to overtaking by other jobs can be assigned, and an area is unconditionally secured at the end of the scheduler map 21 (other jobs already assigned). May overlap). The special assignment area 23 does not move on the scheduler map 21 in conjunction with the passage of time, and is always present at the end of the scheduler map (for jobs overlapping on the special assignment area 23, the time passes. Move in the direction of the current time). Since it is prohibited to assign jobs other than the execution start delay prohibition job to the special assignment area 23, the special assignment area is always an empty area when time elapses, and a job for which overtaking is prohibited can be assigned. . This guarantees the execution start time of the execution start delay prohibited job.

(ステップS5)
特別アサイン領域確保部12は、実行開始遅延禁止ジョブとみなされたアサイン対象のジョブを特別アサイン領域23に割り当て、アサイン対象ジョブのスケジューリング処理を終了する。
(Step S5)
The special assignment area securing unit 12 assigns a job to be assigned, which is regarded as an execution start delay prohibited job, to the special assignment area 23, and ends the scheduling process for the assignment target job.

(ステップS6)
空き領域情報検索部31は、アサイン対象のジョブを割り当てることができるスケジューラマップ21の空き領域を検索する。
(Step S6)
The free area information search unit 31 searches for a free area in the scheduler map 21 to which a job to be assigned can be assigned.

(ステップS7)
追越可能判別部33は、アサイン対象のジョブが、実行開始遅延禁止ジョブの実行開始時刻を遅延させないかどうかを判別する。アサイン対象ジョブが、特別アサイン領域23にオーバーラップせずに(重ならずに)アサイン可能であれば、実行開始遅延禁止ジョブへの影響がないため、実行開始遅延禁止ジョブの追い越しが可能であると判別する。
(Step S7)
The overtaking possible determination unit 33 determines whether the assignment target job does not delay the execution start time of the execution start delay prohibited job. If the assignment target job can be assigned without overlapping (not overlapping) the special assignment area 23, the execution start delay prohibition job is not affected, so that the execution start delay prohibition job can be overtaken. Is determined.

(ステップS8)
実行予定時刻決定部32は、アサイン対象のジョブの実行予定時刻を決定する。
(Step S8)
The scheduled execution time determination unit 32 determines the scheduled execution time of the job to be assigned.

(ステップS9)
実行予定計算ノード選択部34は、スケジューラマップ21上に、アサイン対象のジョブに対するアサイン領域を確保し、アサイン対象のジョブが使用する計算ノードを決定する。
(Step S9)
The execution schedule calculation node selection unit 34 secures an assignment area for the job to be assigned on the scheduler map 21 and determines a calculation node to be used by the job to be assigned.

図4の例では、ジョブ9が、実行開始遅延禁止ジョブ7を追い越して、スケジューラマップ21上にアサインされ、時刻の経過により、特別アサイン領域23が空いた際に、実行開始遅延禁止ジョブ7が割り当てられる例が示されている。   In the example of FIG. 4, when the job 9 passes the execution start delay prohibition job 7 and is assigned on the scheduler map 21 and the special assignment area 23 becomes free as time elapses, the execution start delay prohibition job 7 is An example of assignment is shown.

本実施形態によれば、従来の追い越し禁止機能が有効にされたジョブスケジューリングシステムでは、追い越しが禁止される小規模ジョブ(図4の例ではジョブ9)がスケジューラマップ21上にアサインされる。そのため、スケジューラマップ21上の空き領域が減少し、クラスタリングシステム50の稼働率は向上する。   According to the present embodiment, in the conventional job scheduling system in which the overtaking prohibition function is enabled, a small-scale job (job 9 in the example of FIG. 4) for which overtaking is prohibited is assigned on the scheduler map 21. Therefore, the free area on the scheduler map 21 is reduced, and the operating rate of the clustering system 50 is improved.

また、特別アサイン領域23を確保後は、実行開始遅延禁止ジョブ以外のジョブは、特別アサイン領域23にアサインすることができないため、時間が経過すると、特別アサイン領域にオーバーラップされているジョブはなくなる。そのため、特別アサイン領域23は追い越し禁止となった大規模ジョブ(図4の例ではジョブ7)がアサインされることになる。これにより、実行開始遅延禁止となった大規模ジョブの実行開始時刻が保障される。   In addition, after securing the special assignment area 23, jobs other than execution start delay prohibition jobs cannot be assigned to the special assignment area 23. Therefore, when time elapses, no jobs are overlapped with the special assignment area. . Therefore, the special assignment area 23 is assigned with a large-scale job (job 7 in the example of FIG. 4) forbidden to be overtaken. This guarantees the execution start time of a large-scale job whose execution start delay is prohibited.

(第2実施形態)
添付図面を参照して、本発明の第2実施形態によるジョブスケジューリングシステム100を以下に説明する。
(Second Embodiment)
A job scheduling system 100 according to a second embodiment of the present invention will be described below with reference to the accompanying drawings.

[構成の説明]
はじめに、本実施形態におけるジョブスケジューリングシステム100の機能構成の説明を行う。図7は、本発明の第2実施形態におけるジョブスケジューリングシステム100のブロック図である。図7のブロック図は、図3のブロック図に対して、ジョブアサイン部30に、特別アサイン領域移動部35が追加されている以外は、図3と同様である。そのため、特別アサイン領域移動部35以外の説明については省略する。
[Description of configuration]
First, the functional configuration of the job scheduling system 100 in this embodiment will be described. FIG. 7 is a block diagram of the job scheduling system 100 according to the second embodiment of the present invention. The block diagram of FIG. 7 is the same as the block diagram of FIG. 3 except that a special assignment area moving unit 35 is added to the job assignment unit 30. Therefore, descriptions other than the special assignment area moving unit 35 are omitted.

特別アサイン領域移動手段35は、特別アサイン領域確保部12で確保した特別アサイン領域23を移動させる。本発明の第1実施形態では、特別アサイン領域23を固定していたが、第2実施形態では、特別アサイン領域23を移動可能としている点が、第1実施形態とは異なる。   The special assignment area moving means 35 moves the special assignment area 23 secured by the special assignment area securing unit 12. In the first embodiment of the present invention, the special assignment area 23 is fixed. However, the second embodiment is different from the first embodiment in that the special assignment area 23 can be moved.

[動作方法の説明]
次に、本実施形態におけるジョブスケジューリングシステム100において、ジョブスケジューリング方法の説明を行う。図8は、本発明の第2実施形態におけるジョブスケジューリングシステム100のジョブスケジューリング方法のフローチャートである。ステップS1〜ステップS7までの動作方法については、本発明の第1実施形態と同様であるため、ステップS8以降の動作方法について説明する。
[Description of operation method]
Next, a job scheduling method in the job scheduling system 100 according to the present embodiment will be described. FIG. 8 is a flowchart of the job scheduling method of the job scheduling system 100 according to the second embodiment of the present invention. Since the operation method from step S1 to step S7 is the same as that of the first embodiment of the present invention, the operation method after step S8 will be described.

(ステップS1)〜(ステップS7)
本発明の第1実施形態と同様の動作方法である。
(Step S1) to (Step S7)
The operation method is the same as that of the first embodiment of the present invention.

(ステップS8)
追越可能判別部33は、アサイン対象のジョブが、スケジューラマップ21の空き領域にアサイン可能かを判別する際に、特別アサイン領域移動部35の処理を呼び出す。特別アサイン領域移動部35は、後続ジョブを最もスケジューラマップ21の空き領域が少ない状態でアサインできるようにするため、スケジューラマップ21の終端に確保している特別アサイン領域23を移動(未来の時間へスライド)させる。図9は、本発明の第2実施形態におけるジョブスケジューリングシステム100のスケジューラマップ21を説明するための図である。図9の例では、ジョブ8を計算ノード3へアサインし、ジョブ9を計算ノード1へアサインしたときに、最もスケジューラマップ21の空き領域が少なくなる。そのため、特別アサイン領域移動部35は、特別アサイン領域23を、ジョブ9をアサインする予定領域の後方まで移動する。なお、特別アサイン領域23は追い越し禁止となった大規模ジョブの実行開始を優先するため、マップ終端の時刻から、一定時間内(以下、「limit」という)までしか移動できないようにする。特別アサイン領域23は、特別アサイン領域移動手段35によって移動されると、移動した位置からスケジューラマップ21の終端までの間は時間の経過と共に、現在時刻方向に移動する。特別アサイン領域23が、スケジューラマップ21の終端部に到達すると、特別アサイン領域23は移動を停止する。特別アサイン領域23の移動可能な幅であるlimitは、コンフィグパラメータとして設定することで、どこまで遅延してもよいかを、ジョブスケジューリングシステム100の運用で制御することが可能となる(パラメータlimitを0に設定すれば、第1実施形態と同様の動作となる)。
(Step S8)
The overtaking possible determination unit 33 calls the processing of the special assignment region moving unit 35 when determining whether a job to be assigned can be assigned to an empty region of the scheduler map 21. The special assignment area moving unit 35 moves the special assignment area 23 secured at the end of the scheduler map 21 (to a future time) so that the succeeding job can be assigned in a state where the free area of the scheduler map 21 is the smallest. Slide). FIG. 9 is a diagram for explaining the scheduler map 21 of the job scheduling system 100 according to the second embodiment of the present invention. In the example of FIG. 9, when the job 8 is assigned to the calculation node 3 and the job 9 is assigned to the calculation node 1, the scheduler map 21 has the smallest free space. Therefore, the special assignment area moving unit 35 moves the special assignment area 23 to the rear of the area where the job 9 is to be assigned. Since the special assignment area 23 gives priority to the start of execution of a large-scale job for which overtaking is prohibited, the special assignment area 23 can be moved only within a certain time (hereinafter referred to as “limit”) from the map end time. When the special assignment area 23 is moved by the special assignment area moving means 35, it moves in the current time direction as time elapses from the moved position to the end of the scheduler map 21. When the special assignment area 23 reaches the end of the scheduler map 21, the special assignment area 23 stops moving. The limit, which is the movable width of the special assignment area 23, is set as a configuration parameter, so that it is possible to control how far it can be delayed by operating the job scheduling system 100 (parameter limit is set to 0). Is set to the same operation as in the first embodiment).

(ステップS9)
実行予定時刻決定部32は、アサイン対象のジョブの実行予定時刻を決定する。
(Step S9)
The scheduled execution time determination unit 32 determines the scheduled execution time of the job to be assigned.

(ステップS10)
実行予定計算ノード選択部34は、スケジューラマップ21上に、アサイン対象のジョブに対するアサイン領域を確保し、アサイン対象のジョブが使用する計算ノードを決定する。
(Step S10)
The execution schedule calculation node selection unit 34 secures an assignment area for the job to be assigned on the scheduler map 21 and determines a calculation node to be used by the job to be assigned.

本実施形態によれば、特別アサイン領域23を可動式にすることにより、本発明の第1実施形態では、実行開始遅延禁止ジョブを同時に追い越すことができなかった複数の小規模ジョブ(図9の例ではジョブ8及びジョブ9)を、スケジューラマップ21上にアサインすることができる。そのため、スケジューラマップ21上の空き領域を第1実施形態よりも有効に利用することが可能になり、クラスタリングシステム50の稼働率が向上する。   According to this embodiment, by making the special assignment area 23 movable, in the first embodiment of the present invention, a plurality of small jobs (in FIG. In the example, job 8 and job 9) can be assigned on the scheduler map 21. Therefore, it becomes possible to use the free area on the scheduler map 21 more effectively than in the first embodiment, and the operating rate of the clustering system 50 is improved.

以上、本発明の実施の形態が添付の図面を参照することにより説明された。但し、本発明は、上述の実施の形態に限定されず、要旨を逸脱しない範囲で当業者により適宜変更され得る。   The embodiments of the present invention have been described above with reference to the accompanying drawings. However, the present invention is not limited to the above-described embodiments, and can be appropriately changed by those skilled in the art without departing from the scope of the invention.

1〜4 計算ノード
5 管理ノード
6 CPU(Central Processing Unit)
7 補助記憶装置
8 メモリ
9 ジョブスケジューリングプログラム
10 アサイン対象ジョブ選択部
11 遅延禁止ジョブ判別部
12 特別アサイン領域確保部
20 スケジューラマップ保存部
21 スケジューラマップ
22 アサイン待ちジョブ
30 ジョブアサイン部
31 空き領域情報検索部
32 実行予定時刻決定部
33 追越可能判別部
34 実行予定計算ノード選択部
35 特別アサイン領域移動部
50 クラスタリングシステム
100 ジョブスケジューリングシステム
101 従来技術のスケジューラマップ
102 アサイン待ちジョブ
1-4 computing node 5 management node 6 CPU (Central Processing Unit)
7 Auxiliary storage device 8 Memory 9 Job scheduling program 10 Assignment target job selection unit 11 Delay prohibition job determination unit 12 Special assignment area securing unit 20 Scheduler map storage unit 21 Scheduler map 22 Job waiting for assignment 30 Job assignment unit 31 Free area information search unit 32 scheduled execution time determination unit 33 overtaking possible determination unit 34 scheduled execution calculation node selection unit 35 special assignment area moving unit 50 clustering system 100 job scheduling system 101 prior art scheduler map 102 job waiting for assignment

Claims (5)

スケジューラマップを保存するスケジューラマップ保存部と、ここで、前記スケジューラマップは、ジョブ実行開始時刻の遅延が禁止される遅延禁止ジョブが割り当てられる特別アサイン領域を、前記スケジューラマップの終端に備え、
スケジューラマップにアサインするジョブを、バックフィル型スケジューリングにより選択するアサイン対象ジョブ選択部と、ここで、前記アサイン対象ジョブ選択部は、選択した前記ジョブが、前記遅延禁止ジョブである場合には、前記選択したジョブを前記特別アサイン領域に割り当て、
前記スケジューラマップの空き領域を検索する空き情報検索部と、
前記遅延禁止ジョブを追い越しても、前記遅延禁止ジョブの前記ジョブ実行開始時刻を遅延させない追越可能ジョブを判別する追越可能判別部と、
前記追越可能ジョブの実行予定時刻を決定する実行予定時刻決定部と、
前記追越可能ジョブの実行予定計算ノードを選択する実行予定計算ノード選択部と
を備え
前記特別アサイン領域の位置を、コンフィグパラメータで定めた一定時間を限度として、前記スケジューラマップ上で移動させることができる
ジョブスケジューリングシステム。
A scheduler map storage unit for storing a scheduler map, wherein the scheduler map includes a special assignment area to which a delay prohibition job in which a delay in job execution start time is prohibited is provided at the end of the scheduler map;
An assignment target job selection unit that selects a job to be assigned to the scheduler map by backfill type scheduling, and the assignment target job selection unit, when the selected job is the delay prohibition job, Assign the selected job to the special assignment area,
A free information search unit for searching for a free area of the scheduler map;
An overtaking possible determination unit that determines an overtaking possible job that does not delay the job execution start time of the delay prohibited job even after overtaking the delay prohibited job;
A scheduled execution time determination unit that determines a scheduled execution time of the overtaking job;
An execution schedule calculation node selection unit that selects an execution schedule calculation node of the passable job ;
A job scheduling system in which the position of the special assignment area can be moved on the scheduler map for a fixed time determined by a configuration parameter .
前記アサイン対象ジョブ選択部は、アサイン対象の前記ジョブのうちアサイン待ち時間が最も長いジョブを遅延禁止ジョブとし、アサイン対象の前記ジョブが、前記遅延禁止ジョブであるかどうかを判定する
請求項1に記載のジョブスケジューリングシステム。
The assignment target job selection unit, a delay prohibition job the longest job assignment waiting time of the job assignment target, the job assignment target in claim 1 to determine whether the delay prohibition job The described job scheduling system.
スケジューラマップ保存部が、スケジューラマップを保存するステップと、ここで、前記スケジューラマップは、ジョブ実行開始時刻の遅延が禁止される遅延禁止ジョブが割り当てられる特別アサイン領域を、前記スケジューラマップの終端に備え、
アサイン対象ジョブ選択部が、スケジューラマップにアサインするジョブを、バックフィル型スケジューリングにより選択するステップと、
前記アサイン対象ジョブ選択部が、前記選択するステップにより選択した前記ジョブが、前記遅延禁止ジョブである場合には、前記選択したジョブを前記特別アサイン領域に割り当てるステップと、
空き情報検索部が、前記スケジューラマップの空き領域を検索するステップと、
追越可能判別部が、前記遅延禁止ジョブを追い越しても、前記遅延禁止ジョブの前記ジョブ実行開始時刻を遅延させない追越可能ジョブを判別するステップと、
実行予定時刻決定部が、前記追越可能ジョブの実行予定時刻を決定するステップと、
実行予定計算ノード選択部が、前記追越可能ジョブの実行予定計算ノードを選択するステップと
追越可能ジョブを判定するステップの後、かつ、前記追越可能ジョブの実行予定時刻を決定するステップの前に、前記特別アサイン領域の位置を、コンフィグパラメータで定めた一定時間を限度として、前記スケジューラマップ上で移動させるステップ
を含むジョブスケジューリング方法。
A scheduler map storage unit storing the scheduler map, wherein the scheduler map includes a special assignment area to which a delay prohibition job in which a delay in job execution start time is prohibited is allocated at the end of the scheduler map; ,
The assignment target job selection unit selects a job to be assigned to the scheduler map by backfill scheduling, and
Assigning the selected job to the special assignment area when the job selected by the assigning job selection unit is the delay prohibition job;
A step of searching for a free area of the scheduler map, a free information search unit;
A step of determining a passable job that does not delay the job execution start time of the delay-prohibited job even if the passable determination unit passes the delay-prohibited job;
A scheduled execution time determining unit determining a scheduled execution time of the passable job;
An execution schedule calculation node selection unit selecting an execution schedule calculation node of the passable job ;
After the step of determining the overtakeable job and before the step of determining the scheduled execution time of the overtakeable job, the position of the special assignment area is limited to a certain time determined by a configuration parameter. A job scheduling method comprising: moving on a scheduler map .
前記選択したジョブを前記特別アサイン領域に割り当てるステップは、
アサイン対象の前記ジョブのうちアサイン待ち時間が最も長いジョブを遅延禁止ジョブとし、アサイン対象の前記ジョブが、前記遅延禁止ジョブであるかどうかを判定するステップ
を含む請求項に記載のジョブスケジューリング方法。
The step of assigning the selected job to the special assignment area includes:
A longest job delay prohibition job assignment waiting time of the job assignment target, the job assignment target, the job scheduling method of claim 3 including the step of determining whether the delay prohibition job .
請求項3または4に記載のジョブスケジューリング方法をコンピュータに実行させるためのプログラム。
A program for causing a computer to execute the job scheduling method according to claim 3 .
JP2011031758A 2011-02-17 2011-02-17 Job scheduling system, job scheduling method and program Active JP5676297B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011031758A JP5676297B2 (en) 2011-02-17 2011-02-17 Job scheduling system, job scheduling method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011031758A JP5676297B2 (en) 2011-02-17 2011-02-17 Job scheduling system, job scheduling method and program

Publications (2)

Publication Number Publication Date
JP2012173753A JP2012173753A (en) 2012-09-10
JP5676297B2 true JP5676297B2 (en) 2015-02-25

Family

ID=46976642

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011031758A Active JP5676297B2 (en) 2011-02-17 2011-02-17 Job scheduling system, job scheduling method and program

Country Status (1)

Country Link
JP (1) JP5676297B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6364880B2 (en) * 2014-03-31 2018-08-01 富士通株式会社 Parallel computer system, control program for job management apparatus, and control method for parallel computer system
JP6540107B2 (en) * 2015-03-09 2019-07-10 富士通株式会社 Parallel computing device, parallel computing system, and job control program
JP6439559B2 (en) 2015-04-08 2018-12-19 富士通株式会社 Computer system, computer, job execution time prediction method, and job execution time prediction program
JP6515708B2 (en) 2015-07-06 2019-05-22 富士通株式会社 Information processing apparatus, parallel computer system, job schedule setting program, and job schedule setting method
CN110298031B (en) * 2019-05-28 2023-07-18 北京百度网讯科技有限公司 Dictionary service system and model version consistency distribution method
JP7238616B2 (en) 2019-06-11 2023-03-14 富士通株式会社 Parallel processing device, job management program, and job management method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07141305A (en) * 1993-11-16 1995-06-02 Hitachi Ltd Control method for execution of parallel computer

Also Published As

Publication number Publication date
JP2012173753A (en) 2012-09-10

Similar Documents

Publication Publication Date Title
US10936359B2 (en) Task resource scheduling method and apparatus
JP5676297B2 (en) Job scheduling system, job scheduling method and program
US20150309842A1 (en) Core Resource Allocation Method and Apparatus, and Many-Core System
JP5040773B2 (en) Memory buffer allocation device and program
US20090019449A1 (en) Load balancing method and apparatus in symmetric multi-processor system
JP6364880B2 (en) Parallel computer system, control program for job management apparatus, and control method for parallel computer system
US8782649B2 (en) Real-time scheduling of task sets and determination of task sets based on verified weight, cache hit radio of the tasks and available processing cores
JP2011059777A (en) Task scheduling method and multi-core system
KR102585591B1 (en) Slo-aware artificial intelligence inference scheduler for heterogeneous processors in edge platforms
CN110990154B (en) Big data application optimization method, device and storage medium
JP5605131B2 (en) Job scheduling program, method, and apparatus
US9612867B2 (en) Apparatus and method for data partition and allocation in heterogeneous multi-processor environment
JP2017016541A (en) Information processing apparatus, parallel computing system, job schedule setting program, and job schedule setting method
JP2008242510A (en) System and method of allocating resource to job, and program
US20110219378A1 (en) Iterative data parallel opportunistic work stealing scheduler
US20170052891A1 (en) Multi-core processor system and method for managing a shared cache in the multi-core processor system
JP6666553B2 (en) Information processing apparatus, job management method, and job management program
KR102224844B1 (en) Method and apparatus for selecting a preemption technique
CN112346836A (en) Method and device for preempting shared computing resource, user equipment and storage medium
EP2905703A1 (en) Parallel computer system, control method of parallel computer system, and computer-readable storage medium
JP2005092780A (en) Real time processor system and control method
CN116450328A (en) Memory allocation method, memory allocation device, computer equipment and storage medium
JP6349837B2 (en) Scheduler apparatus, scheduling method therefor, arithmetic processing system, and computer program
CN107589985B (en) Two-stage job scheduling method and system for big data platform
JP2019045907A (en) Access control device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140115

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20140613

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140723

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140731

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140929

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: 20141202

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141225

R150 Certificate of patent or registration of utility model

Ref document number: 5676297

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150