JP2005209077A - Job scheduling method, computer system, and job scheduling program - Google Patents

Job scheduling method, computer system, and job scheduling program Download PDF

Info

Publication number
JP2005209077A
JP2005209077A JP2004016945A JP2004016945A JP2005209077A JP 2005209077 A JP2005209077 A JP 2005209077A JP 2004016945 A JP2004016945 A JP 2004016945A JP 2004016945 A JP2004016945 A JP 2004016945A JP 2005209077 A JP2005209077 A JP 2005209077A
Authority
JP
Japan
Prior art keywords
job
name
jobs
queue
executed
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
JP2004016945A
Other languages
Japanese (ja)
Other versions
JP3931883B2 (en
Inventor
Tsutomu Saito
勉 齋藤
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
Original Assignee
NEC Corp
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 filed Critical NEC Corp
Priority to JP2004016945A priority Critical patent/JP3931883B2/en
Publication of JP2005209077A publication Critical patent/JP2005209077A/en
Application granted granted Critical
Publication of JP3931883B2 publication Critical patent/JP3931883B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an easy and effective scheduling method which suppresses use of resources of a system in emulation or the like without burdening a user in a job execution system capable of executing a plurality of jobs in parallel. <P>SOLUTION: When a job scheduling means selects a job to be next executed, from a job queue holding jobs waiting for execution, the number of jobs being executed at present is examined by a job execution means with respect to each job name, and a job of a job name having no jobs being executed at present or the smallest number of jobs being executed at present is selected. Thus job names of simultaneously executed jobs are distributed as much as possible. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、計算機システムにおいてジョブの実行順序を制御するジョブスケジューリング方法に関し、特に、複数のジョブを並列に実行する手段を備えた計算機システムにおけるジョブの実行スケジューリング方法に関する。   The present invention relates to a job scheduling method for controlling the job execution order in a computer system, and more particularly to a job execution scheduling method in a computer system provided with means for executing a plurality of jobs in parallel.

ジョブを並列に実行可能なシステムでは、中央処理装置(CPU)や入出力チャネルなどの共有資源が実行上の制限となり、また、ジョブによってそれぞれどの資源をどれだけ使用するのかが異なるため、資源を効率よく利用するためにジョブのスケジューリングが必要である。従来のジョブスケジューリング方法では、ユーザが資源利用の予測情報をシステムに入力したり、あらかじめ実行するジョブの解析やエミュレーションを行って資源利用の予測を行い、利用資源量に応じてジョブをスケジューリングするなどの方法がとられていた(例えば、特許文献1参照。)。   In a system that can execute jobs in parallel, shared resources such as the central processing unit (CPU) and I / O channels are limited in execution, and the resources that are used differ depending on which resources are used. Job scheduling is necessary for efficient use. In the conventional job scheduling method, the user inputs resource usage prediction information into the system, analyzes the job to be executed in advance and performs emulation, predicts resource usage, and schedules jobs according to the amount of resources used, etc. (See, for example, Patent Document 1).

特開平9−311795号公報(段落0009−0015)JP-A-9-311795 (paragraphs 0009-0015)

しかし、ユーザが資源利用の予測情報をシステムに入力する方法では、ユーザに資源利用の予測という負担がかかり、さらにその予測は目安的なものに過ぎず正確性に欠けるという課題がある。また、ジョブの解析やエミュレーションを行って資源利用の予測を行う方法では、その作業自体に時間や資源が必要となるという問題がある。   However, in the method in which the user inputs the resource use prediction information to the system, there is a problem that the user is burdened with the resource use prediction, and the prediction is only a guideline and lacks accuracy. Further, the method of predicting resource usage by performing job analysis or emulation has a problem that time and resources are required for the work itself.

そこで、本発明は、ユーザによる入力を必要とせず、かつシステムの資源の使用を抑えて簡便にジョブのスケジューリングを行うことができるジョブスケジューリング方法、計算機システムおよびジョブスケジューリングプログラムを提供することを目的とする。   SUMMARY OF THE INVENTION An object of the present invention is to provide a job scheduling method, a computer system, and a job scheduling program that do not require input by a user and that can perform job scheduling simply while suppressing the use of system resources. To do.

本発明によるジョブスケジューリング方法は、複数のジョブを並列に実行可能な計算機システムにおいて、実行中のジョブのジョブ名称によりスケジューリングすることを特徴とする。   The job scheduling method according to the present invention is characterized in that in a computer system capable of executing a plurality of jobs in parallel, scheduling is performed according to the job name of the job being executed.

スケジューリング方法は、例えば新たなジョブを実行可能になったときに、実行中のジョブにおける同一ジョブ名称を持つジョブの数が少ないものの名称と一致する名称を持つジョブを優先して実行させる。   In the scheduling method, for example, when a new job can be executed, a job having a name that matches the name of a job that has the same job name with a small number of jobs is preferentially executed.

スケジューリング方法は、ジョブの名称に応じて実行中および待機中のジョブ数が設定されたテーブルを用いるように構成されていてもよい。   The scheduling method may be configured to use a table in which the number of jobs being executed and waiting is set according to job names.

本発明による計算機システムは、複数のジョブを並列に実行するジョブ実行手段と、待機中のジョブを保持するジョブキューと、実行中のジョブのジョブ名称によりスケジューリングして、ジョブキューに保持されているジョブをジョブ実行手段に渡すジョブスケジューリング手段とを備えたことを特徴とする。   The computer system according to the present invention schedules job execution means for executing a plurality of jobs in parallel, a job queue for holding a waiting job, and a job name of the job being executed, and is held in the job queue. Job scheduling means for passing a job to job execution means is provided.

ジョブ実行手段が新たなジョブを実行可能になったときに、ジョブスケジューリング手段が、ジョブ実行手段が実行中のジョブにおける同一ジョブ名称を持つジョブの数が少ないものの名称と一致する名称を持つジョブを、ジョブキューから取り出してジョブ実行手段に渡すように構成されていてもよい。   When the job execution unit becomes able to execute a new job, the job scheduling unit selects a job having a name that matches the name of the job that is being executed by the job execution unit with a small number of jobs having the same job name. Alternatively, it may be configured to take out from the job queue and pass it to the job execution means.

ジョブスケジューリング手段が、ジョブの名称に応じてジョブ実行手段で実行中およびジョブキューで待機中のジョブ数が設定されるテーブルを有し、ジョブ実行手段が新たなジョブを実行可能になったときに、テーブルにおける実行中のジョブ数が最も少ないものに対応するジョブの名称を持つジョブをジョブ実行手段に渡すように構成されていてもよい。その場合、ジョブキューは、ジョブの名称に応じて区分されている。   When the job scheduling means has a table in which the number of jobs being executed by the job execution means and waiting in the job queue is set according to the job name, and the job execution means becomes capable of executing a new job The job having the name of the job corresponding to the job having the smallest number of jobs in execution in the table may be passed to the job execution means. In that case, the job queue is divided according to the name of the job.

ジョブスケジューリング手段が、ジョブのキューイング要求があった場合、そのジョブのジョブ名称がテーブルに存在しないときには、そのジョブ名称に応じた欄(ジョブの名称、実行中のジョブ数および待機中のジョブ数が設定される欄)を作成し、ジョブ実行手段からジョブの終了が通知されたときに、そのジョブのジョブ名称に応じた欄の実行中のジョブ数を1減算し減算後のジョブ数が0になるとその欄を削除するように構成されていることが好ましい。   If the job scheduling means receives a job queuing request and the job name of the job does not exist in the table, the fields corresponding to the job name (job name, number of jobs being executed, number of jobs waiting) When the end of the job is notified from the job execution means, the number of jobs being executed in the column corresponding to the job name of the job is decremented by 1, and the number of jobs after subtraction is 0. In such a case, it is preferable that the column is deleted.

本発明によるジョブスケジューリングプログラムは、複数のジョブを並列に実行するジョブ実行手段と、待機中のジョブを保持するジョブキューとを備えたコンピュータに、ジョブ実行手段が新たなジョブを実行可能になったときに、ジョブ実行手段が実行中のジョブにおける同一ジョブ名称を持つジョブの数が少ないものの名称と一致する名称を持つジョブを、ジョブキューから取り出してジョブ実行手段に渡す処理を実行させることを特徴とする。   According to the job scheduling program of the present invention, a job execution unit can execute a new job on a computer including a job execution unit that executes a plurality of jobs in parallel and a job queue that holds a waiting job. Sometimes, a job having a name that matches the name of a job with a small number of jobs having the same job name among jobs being executed by the job execution unit is extracted from the job queue and passed to the job execution unit. And

本発明によれば、効率的な資源利用を図るジョブスケジューリングを、ユーザの負担がなくかつ少ないシステム資源の消費で行える効果がある。   According to the present invention, there is an effect that job scheduling for efficient use of resources can be performed without consuming the user's burden and using less system resources.

実施の形態1.
次に、本発明の実施の形態を図面を参照して説明する。図1を参照すると、本発明の第1の実施の形態のジョブスケジューリング方法を実施する計算機システムは、実行すべきジョブ(待機中のジョブ)を保持するジョブキュー102と、ジョブキュー102に存在するジョブから次に実行すべきジョブを選択するジョブスケジューリング手段101と、ジョブを実行するジョブ実行手段103と、ジョブ実行の際に使用される入出力資源105と、計算能力資源(以下、計算資源という。)106と、メモリ資源107とを含む。また、ジョブ実行手段103は、実際にジョブを実行する複数のジョブ実行ユニット(Thread)104を含む。ジョブキュー102には、ユーザや実行中のジョブから、実行すべきジョブが入れられていく。
Embodiment 1 FIG.
Next, embodiments of the present invention will be described with reference to the drawings. Referring to FIG. 1, a computer system that executes the job scheduling method according to the first embodiment of this invention exists in a job queue 102 that holds jobs to be executed (waiting jobs) and the job queue 102. A job scheduling unit 101 for selecting a job to be executed next from a job, a job execution unit 103 for executing a job, an input / output resource 105 used for job execution, and a computing resource (hereinafter referred to as a computing resource). .) 106 and a memory resource 107. The job execution unit 103 includes a plurality of job execution units (Threads) 104 that actually execute jobs. Jobs to be executed are entered into the job queue 102 from the user or the job being executed.

入出力資源105は、具体的には計算機システムにおける入出力チャネルである。計算資源106は、具体的には、計算機システムにおける中央処理装置(CPU)であったり、特定種類の演算に特化した構造のハードウェアやソフトウェアである。メモリ資源107は、具体的には、計算機システムにおける磁気ディスク等である。また、ジョブ実行手段103は、例えば、ジョブの実行管理(起動、一時停止、終了などの管理)を行うジョブ管理プログラムである。それぞれのジョブは、ジョブ実行ユニット104で管理される。ジョブスケジューリング手段101は、具体的には、ジョブスケジューリングプログラムである。そして、ジョブキュー102は、RAM等の記憶装置に形成される。なお、ジョブキュー102には、ジョブ(プログラム)そのものが保持されるのではなく、ジョブを特定可能な情報のみが保持されるようにしてもよい。   The input / output resource 105 is specifically an input / output channel in the computer system. Specifically, the calculation resource 106 is a central processing unit (CPU) in a computer system, or hardware or software having a structure specialized for a specific type of operation. Specifically, the memory resource 107 is a magnetic disk or the like in the computer system. The job execution unit 103 is, for example, a job management program that performs job execution management (management such as activation, suspension, and termination). Each job is managed by the job execution unit 104. Specifically, the job scheduling unit 101 is a job scheduling program. The job queue 102 is formed in a storage device such as a RAM. Note that the job queue 102 does not hold the job (program) itself, but may hold only information that can identify the job.

ジョブスケジューリング手段101は、ジョブキュー102にジョブが存在する場合に、ジョブ実行手段103において新規ジョブを実行することのできるジョブ実行ユニット104の空きがあれば、以下に説明するような定められたスケジューリング方法に従ってジョブキュー102からジョブを選択してジョブ実行手段103に渡す。ジョブ実行手段103は、ジョブスケジューリング手段101より渡された新規ジョブを空いているジョブ実行ユニット104に実行させる。   If there is a job in the job queue 102 and the job execution unit 103 has a vacant job execution unit 104 capable of executing a new job, the job scheduling unit 101 determines a predetermined scheduling as described below. According to the method, a job is selected from the job queue 102 and transferred to the job execution means 103. The job execution unit 103 causes the empty job execution unit 104 to execute the new job transferred from the job scheduling unit 101.

図2に示すように、実行されるジョブには、実行に必要な手順を示す手順情報の他に、ジョブ実行時のパラメータなどを示す属性情報、ジョブ名称、およびジョブを所有しているユーザ名などのジョブ自体の属性を示すメタ情報が付加されている。メタ情報は、ジョブIDとジョブ名称とを含む。ジョブIDとは、個々のジョブを一意に識別するための識別子である。ジョブ名称とは手順情報を識別するための識別子である。一般的な計算機システムにおいて、手順情報は、プログラムの各ステップ(ジョブステップ、アクティビティ)に相当する。属性情報は、プログラムに与えられるパラメータや環境情報に相当する。メタ情報のジョブIDはプロセスIDに相当し、ジョブ名称はプログラムの名称に相当する。   As shown in FIG. 2, the job to be executed includes, in addition to procedure information indicating a procedure necessary for execution, attribute information indicating a parameter at the time of job execution, a job name, and a user name owning the job Meta information indicating the attributes of the job itself is added. The meta information includes a job ID and a job name. The job ID is an identifier for uniquely identifying each job. The job name is an identifier for identifying procedure information. In a general computer system, procedure information corresponds to each step (job step, activity) of a program. The attribute information corresponds to parameters or environment information given to the program. The job ID in the meta information corresponds to a process ID, and the job name corresponds to a program name.

次に、図1、図2および図3を参照して本実施の形態の動作について説明する。図3は、ジョブスケジューリング手段101がジョブキュー102にある実行待ちジョブをジョブ実行手段103に渡すスケジューリング方法を示すフローチャートである。ジョブスケジューリング手段101は、ジョブ実行手段103においてジョブ実行ユニット104の空きを検知すると、ジョブキュー103に実行待ちジョブがあるかどうかを確認する。   Next, the operation of the present embodiment will be described with reference to FIG. 1, FIG. 2, and FIG. FIG. 3 is a flowchart illustrating a scheduling method in which the job scheduling unit 101 passes a job waiting for execution in the job queue 102 to the job execution unit 103. When the job execution unit 103 detects that the job execution unit 104 is empty, the job scheduling unit 101 checks whether there is a job waiting for execution in the job queue 103.

この例では、ジョブキュー102に5個のジョブが存在し、そのジョブ名称が先頭のジョブから順に「ファイル読み込み」、「ファイル読み込み」、「内容比較」、「内容比較」、「整合性検査」であるとする。また、ジョブ実行手段103にジョブ実行ユニット104が5個あり、そのうち4個がジョブを実行中で、その実行中のジョブのジョブ名称がそれぞれ、「ファイル読み込み」、「ファイル読み込み」、「内容比較」、「整合性検査」であるとする。   In this example, there are five jobs in the job queue 102, and the job names are “read file”, “read file”, “content comparison”, “content comparison”, “consistency check” in order from the first job. Suppose that The job execution unit 103 has five job execution units 104, four of which are executing jobs, and the job names of the jobs being executed are “file read”, “file read”, and “content comparison”, respectively. ”And“ Consistency Check ”.

実行待ちジョブがある場合には、ジョブスケジューリング手段101は、図3に示す手順によってジョブ実行手段103に渡すジョブの選択を行う。まず、カウンタNを0に設定する(ステップS101)。   When there is a job waiting for execution, the job scheduling unit 101 selects a job to be passed to the job execution unit 103 according to the procedure shown in FIG. First, the counter N is set to 0 (step S101).

次に、ジョブキュー102内のジョブのジョブ名称のうち、ジョブ実行手段103内で実行中のジョブにそのジョブ名称がN個あるかどうかを検査する(ステップS102)。最初はN=0であるから、N個あるかどうかは、存在しないかどうかを意味する。すなわち、存在しないジョブ名称があるかどうか検査される。この例では、ジョブキュー102には、ジョブ実行手段103で実行中のいずれかのジョブのジョブ名称に一致しないジョブ名称のジョブは存在しないので、ステップS102の判定結果は偽(「N」)となり、ステップS103に進む。   Next, it is checked whether there are N job names in the job execution unit 103 among the job names of the jobs in the job queue 102 (step S102). Since N = 0 at the beginning, the presence of N means that it does not exist. That is, it is checked whether there is a job name that does not exist. In this example, there is no job with a job name that does not match the job name of any job being executed by the job execution unit 103 in the job queue 102, so the determination result in step S102 is false ("N"). The process proceeds to step S103.

ステップS103では、Nに1を加算してステップS102に戻る。この段階では、Nを1としてステップS102に戻る。ステップS102では、上記のように、ジョブキュー102内のジョブのジョブ名称のうち、ジョブ実行手段103内で実行中のジョブにそのジョブ名称がN個(この段階では1個)存在するジョブ名称があるかどうかを検査する。この例では、「内容比較」および「整合性検査」がジョブ実行手段103にそれぞれ1個存在するジョブのジョブ名称であるので、ステップS102の判定結果は真(「Y」)となりステップS104に進む。   In step S103, 1 is added to N, and the process returns to step S102. At this stage, N is set to 1 and the process returns to step S102. In step S102, as described above, among job names of jobs in the job queue 102, there are job names that have N job names (one at this stage) among jobs being executed in the job execution unit 103. Check for the presence. In this example, since “content comparison” and “consistency check” are job names of jobs that exist in the job execution unit 103, the determination result in step S102 is true (“Y”), and the process proceeds to step S104. .

ステップS104において、ジョブキュー102に存在するジョブ名称であって、ジョブ実行手段103にN個存在するジョブ名称のリスト(リストAとする。)を作成する。この状態では「内容比較」および「整合性検査」がリストAの内容となる。   In step S104, a list of job names that exist in the job queue 102 and that exist in the job execution unit 103 (referred to as list A) is created. In this state, “content comparison” and “consistency check” are the contents of list A.

次いで、ジョブキュー102の先頭から、ステップS104で作成したリストAに含まれているジョブ名称のジョブを探していき、見つかったらそのジョブをジョブキュー102より取り出してジョブ実行手段103に渡す。この例では、ジョブキュー102において先頭から3番目の「内容比較」のジョブ名称を持つジョブがジョブ実行手段103に渡され、実行されることになる。   Next, the job of the job name included in the list A created in step S104 is searched from the head of the job queue 102. If found, the job is taken out from the job queue 102 and transferred to the job execution means 103. In this example, the job having the third “content comparison” job name from the top in the job queue 102 is transferred to the job execution means 103 and executed.

ここでは、ジョブキュー102に存在するジョブのジョブ名称と一致するジョブ名称を持つジョブが、ジョブ実行手段103において1個存在する場合を例示した。ジョブキュー102に存在するジョブのジョブ名称と一致するジョブ名称を持つジョブが、ジョブ実行手段103にない場合、すなわち、N=0でステップS102の判定結果が「Y」の場合には、1回目の判定で、ステップS102からS104に移行する。例えば、ジョブ実行手段103において実行されているジョブの名称が「B」、「C」、「D」、「E」であって、ジョブキュー102に存在するジョブのジョブ名称が、順に、「F」、「G」、「I」の場合である。その場合には、ステップS105で、ジョブ名称「F」のジョブがジョブ実行手段103に新たに投入される。   Here, the case where one job having a job name that matches the job name of the job existing in the job queue 102 exists in the job execution unit 103 is illustrated. If the job execution unit 103 does not have a job having a job name that matches the job name of the job existing in the job queue 102, that is, if N = 0 and the determination result in step S102 is “Y”, the first time With this determination, the process proceeds from step S102 to S104. For example, the names of jobs being executed in the job execution unit 103 are “B”, “C”, “D”, “E”, and the job names of the jobs existing in the job queue 102 are “F” in order. ”,“ G ”, and“ I ”. In this case, a job with the job name “F” is newly submitted to the job execution unit 103 in step S105.

また、例えば、ジョブ実行手段103において実行されているジョブの名称が「B」、「B」、「C」、「C」であって、ジョブキュー102に存在するジョブのジョブ名称が、順に、「B」、「C」である場合には、ジョブキュー102に存在するジョブのジョブ名称と一致するジョブ名称を持つジョブが、ジョブ実行手段103において2個存在する。よって、そのような場合には、N=2でステップS102の判定結果が「Y」になるので、3回目に実行されるステップS102の判定で、ステップS102からS104に移行する。その場合には、ステップS105で、ジョブ名称「B」のジョブがジョブ実行手段103に新たに投入される。この例を第1の例とする。   Further, for example, the names of the jobs executed in the job execution unit 103 are “B”, “B”, “C”, “C”, and the job names of the jobs existing in the job queue 102 are in order. In the case of “B” and “C”, there are two jobs in the job execution unit 103 having a job name that matches the job name of the job existing in the job queue 102. Therefore, in such a case, since N = 2 and the determination result in step S102 is “Y”, the determination in step S102 executed for the third time shifts from step S102 to S104. In this case, a job with the job name “B” is newly submitted to the job execution unit 103 in step S105. This example is the first example.

さらに、例えば、ジョブ実行手段103において実行されているジョブの名称が「B」、「B」、「B」、「C」であって、ジョブキュー102に存在するジョブのジョブ名称が、順に、「B」、「C」である場合には、ジョブキュー102に存在するジョブのジョブ名称と一致するジョブ名称(この例では「C」)を持つジョブが、ジョブ実行手段103において1個存在する。よって、そのような場合には、N=1でステップS102の判定結果が「Y」になるので、2回目に実行されるステップS102の判定で、ステップS102からS104に移行する。その場合には、ステップS105で、ジョブ名称「C」のジョブがジョブ実行手段103に新たに投入される。この例を第2の例とする。   Further, for example, the names of jobs executed in the job execution unit 103 are “B”, “B”, “B”, “C”, and the job names of the jobs existing in the job queue 102 are sequentially In the case of “B” and “C”, there is one job in the job execution unit 103 having a job name (“C” in this example) that matches the job name of the job existing in the job queue 102. . Therefore, in such a case, since N = 1 and the determination result in step S102 is “Y”, the determination in step S102 executed for the second time shifts from step S102 to S104. In this case, a job with the job name “C” is newly input to the job execution unit 103 in step S105. This example is a second example.

以上のような処理によって、ジョブ実行手段103において実行されているジョブのジョブ名称とはできるだけ異なるジョブ名称を持つジョブが、ジョブ実行手段103に新たに投入される。より具体的には、ジョブキュー102に存在するジョブのジョブ名称と一致するジョブ名称を持つジョブがジョブ実行手段103にない場合には当然にジョブキュー102に存在するいずれかのジョブ(上記の例では、ジョブキュー102の先頭に存在するジョブ)がジョブ実行手段103に投入されるのであるが、ジョブキュー102に存在するジョブのジョブ名称と一致するジョブ名称を持つジョブがジョブ実行手段103に存在する場合には、ジョブ実行手段103に存在するジョブのうち、同一ジョブ名称を持つジョブの数(「1」が最小)が少ないものの名称(第1の例では「B」、第2の例では「C」)と一致する名称を持つジョブが、ジョブ実行手段103に新たに投入される。   Through the processing described above, a job having a job name that is as different as possible from the job name of the job being executed by the job execution unit 103 is newly submitted to the job execution unit 103. More specifically, if the job execution unit 103 does not have a job having a job name that matches the job name of a job that exists in the job queue 102, any job that exists in the job queue 102 (the above example) In this case, the job at the head of the job queue 102) is input to the job execution unit 103, but a job having a job name that matches the job name of the job existing in the job queue 102 exists in the job execution unit 103. If the number of jobs having the same job name (“1” is the smallest) among the jobs existing in the job execution unit 103 is small, “B” in the first example, “B” in the second example, A job having a name that matches “C”) is newly submitted to the job execution means 103.

実施の形態2.
次に、本発明の第2の実施の形態について図面を参照して説明する。図4を参照すると、本発明の第2の実施の形態のジョブスケジューリング方法を実施する計算機システムは、実行すべきジョブを保持する複数のジョブキューn(n:自然数)を含むジョブキュー402と、ジョブキュー402に存在するジョブから次に実行すべきジョブを選択するジョブスケジューリング手段401と、ジョブを実行するジョブ実行手段103と、ジョブ実行の際に使用される入出力資源105と、計算資源106と、メモリ資源107とを含む。
Embodiment 2. FIG.
Next, a second embodiment of the present invention will be described with reference to the drawings. Referring to FIG. 4, a computer system that implements the job scheduling method according to the second embodiment of the present invention includes a job queue 402 including a plurality of job queues n (n: natural number) holding jobs to be executed, A job scheduling unit 401 for selecting a job to be executed next from jobs existing in the job queue 402, a job execution unit 103 for executing a job, an input / output resource 105 used for job execution, and a computing resource 106 And a memory resource 107.

ジョブスケジューリング手段201内には、図5に示されるようなジョブ情報テーブル408が存在する。図5に示す例では、ジョブ情報テーブル408には、実行ジョブ数、キュージョブ数およびジョブキュー番号が、ジョブ名称に対応して設定されている。実行ジョブ数は、ジョブ実行手段103において実行されているジョブの数を示す。キュージョブ数は、ジョブキュー402に存在するジョブの数を示す。ジョブキュー番号は、ジョブキュー402におけるジョブキューnの順番を示す。   A job information table 408 as shown in FIG. In the example shown in FIG. 5, the job information table 408 is set with the number of execution jobs, the number of queue jobs, and the job queue number corresponding to the job name. The number of execution jobs indicates the number of jobs being executed by the job execution unit 103. The queue job number indicates the number of jobs existing in the job queue 402. The job queue number indicates the order of the job queue n in the job queue 402.

ジョブ実行手段103は、実際にジョブを実行する複数のジョブ実行ユニット104を含む。ジョブスケジューリング手段401は、動的にジョブキューnを生成したり消滅させる。ジョブキューnには、実行すべきジョブが入れられていく。ジョブスケジューリング手段201は、システムによりジョブ実行の要求があった場合、すなわち、例えばユーザや実行中のジョブからジョブ実行の要求があった場合に、定められた方法によりジョブ情報テーブル408を更新しジョブをジョブキューnに入れる。以上に説明したように、ジョブキュー402には、ジョブ名称に対応したジョブキューn(n:自然数)が存在しうる。そして、生成された各ジョブキューnには1つ以上のジョブが保持される。   The job execution means 103 includes a plurality of job execution units 104 that actually execute jobs. The job scheduling unit 401 dynamically creates or deletes the job queue n. Jobs to be executed are put in the job queue n. The job scheduling unit 201 updates the job information table 408 by a predetermined method when a job execution request is issued by the system, that is, when a job execution request is issued from a user or a job being executed, for example. Is placed in the job queue n. As described above, the job queue 402 may include a job queue n (n: natural number) corresponding to the job name. Each generated job queue n holds one or more jobs.

また、ジョブスケジューリング手段401は、ジョブキュー402にジョブが存在する場合、ジョブ実行手段103において新規ジョブを実行することのできるジョブ実行ユニット104の空きがあれば、定められたスケジューリング方法に従ってジョブ情報テーブル408を更新する。さらに、ジョブキュー402からジョブを選択してジョブ実行手段103に渡す。ジョブ実行手段103は、ジョブスケジューリング手段401から渡された新規ジョブを空いているジョブ実行ユニット104に実行させる。また、ジョブの実行が終わった場合には、定められた方法でジョブスケジューリング手段401にジョブの終了を通知する。   The job scheduling unit 401 also has a job information table according to a predetermined scheduling method if there is a job execution unit 104 that can execute a new job in the job execution unit 103 when there is a job in the job queue 402. 408 is updated. Further, a job is selected from the job queue 402 and transferred to the job execution unit 103. The job execution means 103 causes the empty job execution unit 104 to execute the new job passed from the job scheduling means 401. Further, when the execution of the job is finished, the job scheduling unit 401 is notified of the end of the job by a predetermined method.

なお、実行されるジョブには、第1の実施形態におけるジョブと同様に、実行に必要な手順を示す手順情報の他に、ジョブ実行時のパラメータなどを示す属性情報、ジョブ名称、およびジョブを所有しているユーザ名などのジョブ自体の属性を示すメタ情報が付加されている。   Note that the job to be executed includes attribute information indicating job execution parameters, a job name, and a job in addition to the procedure information indicating the procedure necessary for execution, as in the job in the first embodiment. Meta information indicating the attributes of the job itself such as the user name owned is added.

次に、図4〜図8を参照して本実施の形態の動作について説明する。まず、システムによりジョブをキューに入れる要求があった場合のジョブスケジューリング手段401の動作を説明する。図6は、ジョブスケジューリング手段401が要求のあったジョブをジョブキュー402に入れる方法を示すフローチャートである。ジョブスケジューリング手段401は、システムによりジョブのキューイング要求があった場合、ジョブ情報テーブル408を参照する。そして、ジョブ名称欄における名称Nがジョブキュー402に入れようとしているジョブのジョブ名称と一致している行が、ジョブ情報テーブル408に存在するかどうかを確認する(ステップS201)。例えば、ジョブキュー402に入れようとしているジョブのジョブ名称が「ファイル読み込み」(N=「ファイル読み込み」)であった場合、ジョブスケジュール手段401は、ジョブ情報テーブル408の行でジョブ名称欄の値が「ファイル読み込み」であるような行が存在するかどうかを確認する。   Next, the operation of the present embodiment will be described with reference to FIGS. First, the operation of the job scheduling unit 401 when there is a request to queue a job by the system will be described. FIG. 6 is a flowchart showing how the job scheduling unit 401 puts the requested job into the job queue 402. The job scheduling unit 401 refers to the job information table 408 when there is a job queuing request from the system. Then, it is confirmed whether or not there is a line in the job information table 408 where the name N in the job name column matches the job name of the job to be entered in the job queue 402 (step S201). For example, when the job name of the job to be put in the job queue 402 is “file read” (N = “file read”), the job schedule unit 401 sets the value of the job name column in the row of the job information table 408. Check if there is a line that has "read file".

ジョブ名称欄の値が「ファイル読み込み」であるような行が存在する場合には、ジョブスケジューリング手段401は、ステップS202で、この行のジョブキュー番号を取得する。ジョブ情報テーブル408が図5に示すような状態であった場合には、ジョブキュー番号(Jとする。)は3である。また、この行のジョブキュー数を1増やす。図5に示す例では、ジョブキュー数は2から3に変更される。そして、ジョブスケジューリング手段401は、ステップS205で、ジョブキュー402におけるジョブキューJ(この例ではジョブキュー3)にジョブを入れる。   If there is a line whose value in the job name column is “read file”, the job scheduling unit 401 acquires the job queue number of this line in step S202. When the job information table 408 is in the state as shown in FIG. 5, the job queue number (J) is 3. In addition, the number of job queues in this row is increased by one. In the example shown in FIG. 5, the number of job queues is changed from 2 to 3. In step S205, the job scheduling unit 401 puts the job into the job queue J (job queue 3 in this example) in the job queue 402.

ステップS201において、ジョブ名称欄における名称がジョブキュー402に入れようとしているジョブのジョブ名称と一致している行が、ジョブ情報テーブル408に存在しなかった場合には、ジョブスケジューリング手段401は、新たにジョブキューnを作成し、一意なジョブキュー番号を付加する(ステップS203)。ここで、新たに生成されたジョブキューnのジョブキュー番号を3(J=3、またn=3)とする。   In step S201, if the job information table 408 does not include a line in the job name column that matches the job name of the job to be entered in the job queue 402, the job scheduling unit 401 sets a new name. A job queue n is created and a unique job queue number is added (step S203). Here, it is assumed that the job queue number of the newly generated job queue n is 3 (J = 3 and n = 3).

次いで、ジョブスケジューリング手段401は、ステップS204で、ジョブ情報テーブル408に新たな行を追加する。新規に追加される行の各欄の値は、ジョブ名称欄がキューに入れようとしているジョブ名称、ジョブ実行数欄が0、キュージョブ数欄が1、ジョブキュー番号欄がステップS203で新規に作成したジョブキューnに対応するジョブキュー番号である。この例では、ジョブ名称欄は「ファイル読み込み」、ジョブキュー番号欄は3になる。そして、ジョブスケジューリング手段401は、ステップS205で、ステップS203で新規に作成したジョブキューnに、キューに入れようとしていたジョブを入れる。ここでは、ジョブキュー402におけるジョブキュー番号3のジョブキューすなわちジョブキュー3にジョブを入れる。   Next, the job scheduling unit 401 adds a new row to the job information table 408 in step S204. The value of each column in the newly added row is the job name that the job name column is to be queued, the job execution number column is 0, the queue job number column is 1, and the job queue number column is new in step S203. This is the job queue number corresponding to the created job queue n. In this example, the job name field is “file read” and the job queue number field is 3. In step S205, the job scheduling unit 401 puts the job to be queued into the job queue n newly created in step S203. Here, the job is placed in the job queue of job queue number 3 in job queue 402, that is, job queue 3.

次に、ジョブ実行手段103においてジョブ実行ユニット104に空きができ、新規にジョブを実行する際のジョブスケジューリング手段401の動作を説明する。図7は、ジョブスケジューリング手段401が新規ジョブをジョブ実行手段103に渡す方法のフローチャートである。   Next, the operation of the job scheduling unit 401 when the job execution unit 103 has a free space in the job execution unit 104 and newly executes a job will be described. FIG. 7 is a flowchart of a method by which the job scheduling unit 401 passes a new job to the job execution unit 103.

ジョブスケジューリング手段401は、新規ジョブをジョブ実行手段103に渡す際に、ジョブ情報テーブル408の行のうち、ジョブ実行数が一番少ない行を一つ選択する(ステップS301)。選択された行を行Pとする。例えば、ジョブ情報テーブル408が図5に示すように形成されている場合には、「整合性検査」か「内容比較」のどちらかの行を選択する。このように、ジョブ実行数が一番少ない行が複数あった場合には、あらかじめ定められた決定方法によって、どの行を選択するか決定する。この決定方法には、キュージョブ数を用いる方法、ジョブキュー番号を用いる方法などが考えられる。ここでは、ジョブキュー番号を用いる方法を採用して、ジョブキュー番号が小さい「内容比較」を選んだとする。   When the job scheduling unit 401 passes a new job to the job execution unit 103, the job scheduling unit 401 selects one of the rows of the job information table 408 having the smallest number of job executions (step S301). Let the selected row be row P. For example, when the job information table 408 is formed as shown in FIG. 5, either “Consistency Check” or “Content Comparison” is selected. As described above, when there are a plurality of lines with the smallest number of job executions, it is determined which line is selected by a predetermined determination method. As this determination method, a method using the number of queue jobs, a method using a job queue number, and the like can be considered. Here, it is assumed that a method using a job queue number is adopted and “content comparison” having a small job queue number is selected.

次に、ジョブスケジューリング手段401は、ステップS301で選んだ行Pのジョブキュー番号(Kとする。)を取得する(ステップS302)。この例では、その値は1である。さらに、同行のキュージョブ数を1減らし、代わりに実行ジョブ数を1増やす。この例では、キュージョブ数は1になり、実行ジョブ数は2になる。そして、ジョブスケジューリング手段401は、ステップS302で取得したジョブキュー番号Kのジョブキューからジョブを一つ取り出し、ジョブ実行手段103に渡す(ステップS303)。   Next, the job scheduling unit 401 acquires the job queue number (K) of the row P selected in step S301 (step S302). In this example, the value is 1. Further, the number of queue jobs in the bank is reduced by 1, and the number of execution jobs is increased by 1 instead. In this example, the number of queue jobs is 1, and the number of execution jobs is 2. Then, the job scheduling unit 401 takes out one job from the job queue with the job queue number K acquired in step S302, and passes it to the job execution unit 103 (step S303).

次に、ジョブ実行手段103がジョブを終了した場合のジョブスケジューリング手段401の動作を説明する。図8は、ジョブスケジューリング手段401がジョブ実行手段103からジョブの終了を通知された場合の動作を示すフローチャートである。   Next, the operation of the job scheduling unit 401 when the job execution unit 103 ends the job will be described. FIG. 8 is a flowchart showing an operation when the job scheduling unit 401 is notified of job completion from the job execution unit 103.

ジョブスケジューリング手段401は、ジョブ実行手段103からジョブの終了を通知された場合に、終了したジョブのジョブ名称Mをジョブ実行手段103から取得する(ステップS401)。終了したジョブのジョブ名称の通知はジョブ終了の通知とともになされてもよい。ここでは、例えば「整合性検査」というジョブ名称のジョブが終了したとする(M=「整合性検査」)。   When the job execution unit 103 is notified of the end of the job, the job scheduling unit 401 acquires the job name M of the completed job from the job execution unit 103 (step S401). The notification of the job name of the completed job may be made together with the notification of job completion. Here, for example, it is assumed that the job having the job name “Consistency Check” is completed (M = “Consistency Check”).

次に、ジョブスケジューリング手段401は、ジョブ情報テーブル408から、ジョブ名称欄の値がステップS401で取得したジョブ名称Mと一致する行を取得する(ステップS402)。取得された行を行Sとする。ジョブ情報テーブル408が図5に示すように形成されていた場合には、ジョブ名称「整合性検査」に対応する最初の行を取得する。次いで、ジョブスケジューリング手段401は、ステップS402で取得したジョブ情報テーブル408の行のジョブ実行数欄の値を1減らす(ステップS403)。ジョブ情報テーブ408が図5に示すように形成されていた場合には、先頭の行のジョブ実行欄の値を1から0にする。   Next, the job scheduling unit 401 acquires, from the job information table 408, a line in which the value in the job name column matches the job name M acquired in step S401 (step S402). Let the acquired row be row S. If the job information table 408 is formed as shown in FIG. 5, the first line corresponding to the job name “Consistency Check” is acquired. Next, the job scheduling unit 401 decrements the value in the job execution number column in the row of the job information table 408 acquired in step S402 by 1 (step S403). If the job information table 408 is formed as shown in FIG. 5, the value in the job execution column in the first line is changed from 1 to 0.

さらに、ジョブスケジューリング手段401は、ステップS402で取得したジョブ情報テーブル408の行Sの、ジョブ実行欄の値とキュージョブ数欄の値がともに0であるかどうかを検査する(ステップS404)。ステップS404の検査結果が真(「Y」)である場合には、ジョブスケジューリング手段401は、ステップS402で取得したジョブ情報テーブル408の行Sをジョブ情報テーブルから削除して処理を終了する。ステップS404の検査結果が偽(「N」)である場合には、ジョブスケジューリング手段401は何もせず処理を終了する。   Further, the job scheduling unit 401 checks whether both the value in the job execution column and the queue job number column in the row S of the job information table 408 acquired in step S402 are 0 (step S404). If the inspection result in step S404 is true (“Y”), the job scheduling unit 401 deletes the row S of the job information table 408 acquired in step S402 from the job information table and ends the process. If the inspection result in step S404 is false (“N”), the job scheduling unit 401 does nothing and ends the process.

以上のように、本実施の形態でも、ステップS301において、ジョブ名称で区分されているジョブ情報テーブル408の行のうち、ジョブ実行数が一番少ない行を一つ選択し、選択した行に対応するジョブをジョブ実行手段103に渡すので、ジョブ実行手段103において実行されているジョブのジョブ名称とはできるだけ異なるジョブ名称を持つジョブが、ジョブ実行手段103に新たに投入される。   As described above, also in the present embodiment, in step S301, one of the rows of the job information table 408 divided by job name is selected with the smallest number of job executions and corresponds to the selected row. Since the job to be executed is transferred to the job execution unit 103, a job having a job name different from the job name of the job being executed in the job execution unit 103 is newly input to the job execution unit 103.

上記の各実施の形態では、効率的な資源利用を図るジョブスケジューリングを、ユーザの負担がなくかつ少ないシステム資源の消費で行える。効率的な資源利用が図れる理由は、一般に、ジョブ名称が同じジョブでは、ジョブの動作自体は同じで、異なるのはジョブに与えられるパラメータであり、資源利用の性質が似る傾向にあることによる。また、各ジョブが、大きなジョブの一部をなしているような場合には、各ジョブは入出力部分、計算部分など機能毎に特化していることが多く、ジョブ名称が異なれば資源利用の性質が異なる傾向にあることよる。すなわち、実行するジョブ名称を分散させることで、ジョブの資源利用性質が分散し、資源が効率的に利用される。   In each of the above embodiments, job scheduling for efficient resource use can be performed without user burden and with low system resource consumption. The reason why efficient resource use can be achieved is that, in general, jobs with the same job name have the same job operation, and the difference is a parameter given to the job, and the nature of resource use tends to be similar. In addition, when each job is part of a large job, each job is specialized for each function, such as input / output part and calculation part. This is because the properties tend to be different. In other words, by distributing the names of jobs to be executed, the resource usage characteristics of jobs are distributed, and resources are used efficiently.

また、ユーザの負担がない理由は、ジョブの資源予測をユーザが入力しなくてよいからである。   Also, the reason that there is no burden on the user is that the user does not have to input job resource prediction.

そして、システム資源の消費が少ない理由は、上記の各実施の形態の方式が事前のエミュレーションを必要としないので、スケジューリング自体に必要なシステム資源を少なくすることができるためである。さらに、上記の各実施の形態のスケジューリング方法で使用するジョブ名称は、一般的なシステムではジョブに必ず付加されている情報であり、これを利用するためにユーザやシステムには負担が増加しないためである。   The reason for the low consumption of system resources is that the system according to each of the above embodiments does not require prior emulation, so that the system resources necessary for scheduling itself can be reduced. Furthermore, the job name used in the scheduling method of each of the above embodiments is information that is always added to the job in a general system, and the burden on the user and system does not increase to use this information. It is.

本発明は、複数のジョブを並列に実行可能な計算機システムに効果的に適用できる。   The present invention can be effectively applied to a computer system capable of executing a plurality of jobs in parallel.

本発明の第1の実施の形態の構成を示すブロック図である。It is a block diagram which shows the structure of the 1st Embodiment of this invention. 本発明の実施の形態におけるジョブの構成を示す説明図である。It is explanatory drawing which shows the structure of the job in embodiment of this invention. 本発明の第1の実施の形態の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the 1st Embodiment of this invention. 本発明の第2の実施の形態の構成を示すブロック図である。It is a block diagram which shows the structure of the 2nd Embodiment of this invention. 本発明の第2の実施の形態におけるジョブ情報テーブルの構成例を示す説明図である。It is explanatory drawing which shows the structural example of the job information table in the 2nd Embodiment of this invention. 本発明の第2の実施の形態の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the 2nd Embodiment of this invention. 本発明の第2の実施の形態の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the 2nd Embodiment of this invention. 本発明の第2の実施の形態の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the 2nd Embodiment of this invention.

符号の説明Explanation of symbols

101 ジョブスケジューリング手段
102 ジョブキュー
103 ジョブ実行手段
104 ジョブ実行ユニット
105 入出力資源
106 計算能力資源(計算資源)
107 メモリ資源
401 ジョブスケジューリング手段
402 ジョブキュー
408 ジョブ情報テーブル
101 Job Scheduling Means 102 Job Queue 103 Job Execution Means 104 Job Execution Unit 105 Input / Output Resource 106 Computing Capacity Resource (Computation Resource)
107 Memory Resource 401 Job Scheduling Means 402 Job Queue 408 Job Information Table

Claims (9)

複数のジョブを並列に実行可能な計算機システムにおけるジョブのスケジューリングを行うジョブスケジューリング方法において、
実行中のジョブのジョブ名称によりスケジューリングすることを特徴とするジョブスケジューリング方法。
In a job scheduling method for scheduling a job in a computer system capable of executing a plurality of jobs in parallel,
A job scheduling method comprising scheduling according to a job name of a job being executed.
新たなジョブを実行可能になったときに、実行中のジョブにおける同一ジョブ名称を持つジョブの数が少ないものの名称と一致する名称を持つジョブを実行させる
請求項1記載のジョブスケジューリング方法。
The job scheduling method according to claim 1, wherein when a new job becomes executable, a job having a name that matches a name of a job being executed that has a small number of jobs having the same job name is executed.
ジョブの名称に応じて実行中および待機中のジョブ数が設定されたテーブルを用いる
請求項2記載のジョブスケジューリング方法。
The job scheduling method according to claim 2, wherein a table in which the number of jobs being executed and waiting is set according to a job name is used.
複数のジョブを並列に実行可能な計算機システムにおいて、
複数のジョブを並列に実行するジョブ実行手段と、
待機中のジョブを保持するジョブキューと、
実行中のジョブのジョブ名称によりスケジューリングして、前記ジョブキューに保持されているジョブを前記ジョブ実行手段に渡すジョブスケジューリング手段とを備えた
ことを特徴とする計算機システム。
In a computer system that can execute multiple jobs in parallel,
Job execution means for executing a plurality of jobs in parallel;
A job queue that holds waiting jobs, and
A computer system comprising: job scheduling means for performing scheduling based on a job name of a job being executed, and transferring the job held in the job queue to the job execution means.
ジョブスケジューリング手段は、ジョブ実行手段が新たなジョブを実行可能になったときに、ジョブ実行手段が実行中のジョブにおける同一ジョブ名称を持つジョブの数が少ないものの名称と一致する名称を持つジョブを、ジョブキューから取り出して前記ジョブ実行手段に渡す
請求項4記載の計算機システム。
When the job execution unit becomes capable of executing a new job, the job scheduling unit selects a job having a name that matches the name of the job that is being executed by the job execution unit with a small number of jobs having the same job name. The computer system according to claim 4, wherein the computer system is taken out from the job queue and passed to the job execution means.
ジョブスケジューリング手段は、
ジョブの名称に応じてジョブ実行手段で実行中およびジョブキューで待機中のジョブ数が設定されるテーブルを有し、
ジョブ実行手段が新たなジョブを実行可能になったときに、前記テーブルにおける実行中のジョブ数が最も少ないものに対応するジョブの名称を持つジョブを、前記ジョブ実行手段に渡す
請求項5記載の計算機システム。
Job scheduling means
According to the name of the job, it has a table in which the number of jobs being executed in the job execution means and waiting in the job queue is set,
The job having the name of the job corresponding to the job having the smallest number of jobs in execution in the table is passed to the job execution unit when the job execution unit becomes capable of executing a new job. Computer system.
ジョブキューは、ジョブの名称に応じて区分されている
請求項6記載の計算機システム。
The computer system according to claim 6, wherein the job queue is classified according to a job name.
ジョブスケジューリング手段は、ジョブのキューイング要求があった場合、そのジョブのジョブ名称がテーブルに存在しないときには、そのジョブ名称に応じた欄を作成し、ジョブ実行手段からジョブの終了が通知されたときに、そのジョブのジョブ名称に応じた欄の実行中のジョブ数を1減算し、減算後のジョブ数が0になるとその欄を削除する
請求項7記載の計算機システム。
When a job queuing request is made and the job name of the job does not exist in the table, the job scheduling means creates a column corresponding to the job name, and the job execution means notifies the end of the job 8. The computer system according to claim 7, wherein the number of jobs being executed in the column corresponding to the job name of the job is decremented by 1, and the column is deleted when the number of jobs after subtraction becomes 0.
複数のジョブを並列に実行するジョブ実行手段と、待機中のジョブを保持するジョブキューとを備えたコンピュータに、
前記ジョブ実行手段が新たなジョブを実行可能になったときに、前記ジョブ実行手段が実行中のジョブにおける同一ジョブ名称を持つジョブの数が少ないものの名称と一致する名称を持つジョブを、前記ジョブキューから取り出して前記ジョブ実行手段に渡す処理を実行させるためのジョブスケジューリングプログラム。
A computer having job execution means for executing a plurality of jobs in parallel and a job queue for holding waiting jobs,
When the job execution means becomes capable of executing a new job, a job having a name that matches the name of a job having the same job name with a small number of jobs being executed by the job execution means is designated as the job A job scheduling program for executing processing to be taken out from a queue and delivered to the job execution means.
JP2004016945A 2004-01-26 2004-01-26 Job scheduling method, computer system, and job scheduling program Expired - Fee Related JP3931883B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004016945A JP3931883B2 (en) 2004-01-26 2004-01-26 Job scheduling method, computer system, and job scheduling program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004016945A JP3931883B2 (en) 2004-01-26 2004-01-26 Job scheduling method, computer system, and job scheduling program

Publications (2)

Publication Number Publication Date
JP2005209077A true JP2005209077A (en) 2005-08-04
JP3931883B2 JP3931883B2 (en) 2007-06-20

Family

ID=34901937

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004016945A Expired - Fee Related JP3931883B2 (en) 2004-01-26 2004-01-26 Job scheduling method, computer system, and job scheduling program

Country Status (1)

Country Link
JP (1) JP3931883B2 (en)

Also Published As

Publication number Publication date
JP3931883B2 (en) 2007-06-20

Similar Documents

Publication Publication Date Title
JP5650952B2 (en) Multi-core / thread workgroup calculation scheduler
US10089142B2 (en) Dynamic task prioritization for in-memory databases
JP5245722B2 (en) Scheduler, processor system, program generation device, and program generation program
CN113535367B (en) Task scheduling method and related device
JP6581727B2 (en) Processing data using dynamic partitioning
US20070024898A1 (en) System and method for executing job step, and computer product
JP2012511204A (en) How to reorganize tasks to optimize resources
JPWO2017131187A1 (en) Accelerator control device, accelerator control method and program
KR101640848B1 (en) Job Allocation Method on Multi-core System and Apparatus thereof
JP5552449B2 (en) Data analysis and machine learning processing apparatus, method and program
JPWO2014068950A1 (en) Data processing system, data processing method and program
CN111708639A (en) Task scheduling system and method, storage medium and electronic device
US9038081B2 (en) Computing job management based on priority and quota
JP2008226023A (en) Job allocating device and job allocating method
EP2840513B1 (en) Dynamic task prioritization for in-memory databases
JP4723465B2 (en) Job allocation program and job allocation method
US20200004510A1 (en) Actor model programming
JP3931883B2 (en) Job scheduling method, computer system, and job scheduling program
JP5045576B2 (en) Multiprocessor system and program execution method
JP6349837B2 (en) Scheduler apparatus, scheduling method therefor, arithmetic processing system, and computer program
JP2015095096A (en) Mapreduce job execution system and mapreduce job execution method
CN113225269A (en) Container-based workflow scheduling method, device and system and storage medium
US9304829B2 (en) Determining and ranking distributions of operations across execution environments
JP2010186347A (en) System, method and program for scheduling job
JP2007052673A (en) Job management system, job management method and job management program

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20051118

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20051118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061024

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061215

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070305

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100323

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110323

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110323

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120323

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120323

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130323

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130323

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140323

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees