JP2019144902A - Information processing apparatus, job status display method, and job status display program - Google Patents

Information processing apparatus, job status display method, and job status display program Download PDF

Info

Publication number
JP2019144902A
JP2019144902A JP2018029165A JP2018029165A JP2019144902A JP 2019144902 A JP2019144902 A JP 2019144902A JP 2018029165 A JP2018029165 A JP 2018029165A JP 2018029165 A JP2018029165 A JP 2018029165A JP 2019144902 A JP2019144902 A JP 2019144902A
Authority
JP
Japan
Prior art keywords
job
job status
user terminal
display request
information
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
JP2018029165A
Other languages
Japanese (ja)
Other versions
JP6988556B2 (en
Inventor
章孝 岩田
Akitaka Iwata
章孝 岩田
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 JP2018029165A priority Critical patent/JP6988556B2/en
Publication of JP2019144902A publication Critical patent/JP2019144902A/en
Application granted granted Critical
Publication of JP6988556B2 publication Critical patent/JP6988556B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

To provide an information processing apparatus that suppresses an increase in time until information on a job status is displayed.SOLUTION: The information processing apparatus connected to a plurality of nodes includes a response load prediction unit 21, a request queue unit 22, and an output unit 23 in a job scheduler 11. When a display request for job status information indicating a job status is received from a user terminal, a calculation unit 21A calculates a predicted value indicating a predicted time for responding to the display request based on the number of jobs submitted from the user terminal or the number of job using nodes of nodes which a job being executed among the submitted jobs is using. A classification unit 21B classifies the display request into any of a plurality of groups according to the predicted value calculated by the calculation unit. The output unit collects job status information corresponding to the display request for each group and outputs it to the user terminal.SELECTED DRAWING: Figure 2

Description

本発明は、情報処理装置、ジョブ状態表示方法およびジョブ状態表示プログラムに関する。   The present invention relates to an information processing apparatus, a job status display method, and a job status display program.

並列計算機システムにおいて、複数の計算ノードが並列して計算を行なう。複数の計算ノードはジョブ管理ノードに接続され、ジョブ管理ノードは、複数のユーザ端末に接続される。ジョブ管理ノードは、ジョブを管理するジョブスケジューラを有し、該ジョブスケジューラは、ユーザ端末からジョブが投入されると、計算ノードにジョブを送信する制御を行う。   In a parallel computer system, a plurality of calculation nodes perform calculations in parallel. A plurality of calculation nodes are connected to a job management node, and the job management node is connected to a plurality of user terminals. The job management node has a job scheduler for managing jobs, and the job scheduler performs control to transmit a job to a calculation node when a job is input from a user terminal.

並列計算機システムでは、多数のジョブが投入されることがあり、新たなジョブがジョブ管理ノードに投入された際に、新たなジョブを実行する計算ノードの数が不足することがある。この場合、ジョブスケジューラは、投入されたジョブを実行待ちジョブとして、ジョブ管理ノード内で管理する。   In a parallel computer system, a large number of jobs may be submitted, and when a new job is submitted to the job management node, the number of computation nodes that execute the new job may be insufficient. In this case, the job scheduler manages the submitted job as an execution waiting job in the job management node.

関連する技術として、端末利用者からの表示要求に対してシステム全体のジョブ実行情報から利用者に関連する情報のみを抽出収集し、且つその情報を端末に表示可能な形式に編集し、端末に常時表示する技術が提案されている(例えば、特許文献1を参照)。   As a related technology, in response to a display request from a terminal user, only information related to the user is extracted and collected from job execution information of the entire system, and the information is edited into a format that can be displayed on the terminal. A technique for always displaying has been proposed (see, for example, Patent Document 1).

また、複数の計算機をネットワーク接続した負荷分散バッチシステムにおいて、計算機間の通信回数を減らし、ジョブ実行の進行状況を把握する技術が提案されている(例えば、特許文献2を参照)。   In a load balancing batch system in which a plurality of computers are connected to a network, a technique for reducing the number of communication between computers and grasping the progress of job execution has been proposed (see, for example, Patent Document 2).

特開昭63−268045号公報JP-A 63-268045 特開平10−49504号公報JP 10-49504 A

ユーザ端末を操作するユーザは、ユーザ端末から投入されたジョブの状態を確認するための操作をユーザ端末に対して行うことがある。ユーザ端末は、該操作を受け付けると、ジョブの状態を取得するためのリクエストを、ジョブ管理ノードに送信する。   A user who operates the user terminal may perform an operation on the user terminal for confirming the state of a job input from the user terminal. When the user terminal accepts the operation, the user terminal transmits a request for acquiring the job status to the job management node.

ジョブ管理ノードは、上記リクエストを受信すると、ジョブの状態に関する情報を収集する。この際、ジョブの数や、ジョブが計算ノードで実行中であるか否か等によって、ジョブの状態に関する情報を収集する時間(以下、収集時間)が長くなる場合があり、収集時間が短い場合もある。   When the job management node receives the request, the job management node collects information regarding the job status. At this time, depending on the number of jobs and whether or not the job is being executed on the computation node, the time for collecting information on the job status (hereinafter referred to as the collection time) may be long, and the collection time is short There is also.

ジョブ管理ノードが、複数のユーザ端末から上記リクエストを受信した順番で、ジョブの状態に関する情報を収集する処理を行なうと、収集時間が長いリクエストが先に処理されることにより、収集時間が短いリクエストが待たされることがある。この場合、短時間で、ユーザ端末にジョブの状態に関する情報を表示できる場合であっても、待ち時間が生じることにより、ジョブの状態の関する情報を表示するまでの時間が長くなる。   When the job management node performs processing to collect information on job status in the order in which the above requests are received from a plurality of user terminals, a request with a short collection time is processed by processing a request with a long collection time first. May be awaited. In this case, even when the information regarding the job status can be displayed on the user terminal in a short time, the time until the information regarding the job status is displayed becomes longer due to the waiting time.

1つの側面として、本発明は、ジョブの状態に関する情報が表示されるまでの時間が長くなることを抑制することを目的とする。   As one aspect, an object of the present invention is to suppress an increase in time until information related to a job state is displayed.

1つの態様では、複数のノードに接続された情報処理装置は、ユーザ端末から、ジョブの状態を示すジョブ状態情報の表示要求を受信した場合、前記ユーザ端末から投入されたジョブの数、または投入ジョブのうち、実行中のジョブが使用しているノードのジョブ使用ノード数に基づいて、前記表示要求に応答する予測時間を示す予測値を算出する算出部と、前記予測値に応じて、前記表示要求を複数のグループの何れかに分類する分類部と、前記グループごとに、前記表示要求に応じたジョブ状態情報を収集し、前記ユーザ端末に出力する出力部と、を含む。   In one aspect, when an information processing apparatus connected to a plurality of nodes receives a display request for job status information indicating a job status from a user terminal, the number of jobs submitted from the user terminal or the submission Among the jobs, a calculation unit that calculates a predicted value indicating a predicted time to respond to the display request based on the number of job use nodes of a node that is being used by a job that is being executed, and according to the predicted value, A classification unit that classifies the display request into any of a plurality of groups; and an output unit that collects job status information corresponding to the display request for each group and outputs the job state information to the user terminal.

1つの側面によれば、ジョブの状態に関する情報が表示されるまでの時間が長くなることを抑制することができる。   According to one aspect, it is possible to suppress an increase in the time until information related to the job status is displayed.

並列計算機システムの一例を示す図である。It is a figure which shows an example of a parallel computer system. ジョブスケジューラの一例を示す図である。It is a figure which shows an example of a job scheduler. 予測制御情報の一例を示す図である。It is a figure which shows an example of prediction control information. ジョブ関連情報の一例を示す図である。It is a figure which shows an example of job related information. ジョブ状態一覧情報の一例を示す図である。It is a figure which shows an example of job status list information. 表示情報の一例を示す図である。It is a figure which shows an example of display information. 応答負荷予測部の処理の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of a process of a response load estimation part. リクエストキュー部の処理の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of a process of a request queue part. スレッド管理部の処理の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of a process of a thread management part. スレッドの処理の流れの一例を示すフローチャート(その1)である。It is a flowchart (the 1) which shows an example of the flow of a process of a thread | sled. スレッドの処理の流れの一例を示すフローチャート(その2)である。It is a flowchart (the 2) which shows an example of the flow of a process of a thread | sled. ジョブ管理ノードのハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware constitutions of a job management node.

<並列計算機システムの一例>
以下、図面を参照して、実施形態について説明する。図1は、並列計算機システム1の一例を示す図である。並列計算機システム1において、ジョブ管理ノード2に、複数のユーザ端末3(3A、3B、・・・3E)および複数の計算ノード4(4−1、4−2、・・・、4−N)が接続されている。
<An example of a parallel computer system>
Hereinafter, embodiments will be described with reference to the drawings. FIG. 1 is a diagram illustrating an example of a parallel computer system 1. In the parallel computer system 1, the job management node 2 includes a plurality of user terminals 3 (3A, 3B,... 3E) and a plurality of calculation nodes 4 (4-1, 4-2,..., 4-N). Is connected.

ジョブ管理ノード2は、各ユーザ端末3から受信したジョブを管理するノードである。以下、ジョブ管理ノード2が受信したジョブを、投入されたジョブまたは投入ジョブと称することがある。ジョブ管理ノード2は、情報処理装置の一例である。   The job management node 2 is a node that manages jobs received from the user terminals 3. Hereinafter, the job received by the job management node 2 may be referred to as a submitted job or a submitted job. The job management node 2 is an example of an information processing apparatus.

ユーザ端末3は、所定の端末であり、ユーザにより操作される端末である。実施形態では、ユーザ端末3は、ジョブを投入するためのコマンド(ジョブ投入コマンド)およびジョブの状態の表示を要求するためのコマンド(ジョブ状態表示要求コマンド)を、ジョブ管理ノード2に送信する。ユーザ端末3の台数は、任意の台数であってよい。   The user terminal 3 is a predetermined terminal and is a terminal operated by the user. In the embodiment, the user terminal 3 transmits to the job management node 2 a command for submitting a job (job submission command) and a command for requesting display of the job status (job status display request command). The number of user terminals 3 may be an arbitrary number.

各計算ノード4は、ジョブに応じた処理を行なう。各計算ノード4は、ジョブの状態を管理する機能を有している。図1の例では、N(Nは2以上の整数)台の計算ノード4が、ジョブ管理ノード2に接続される。Nは、任意の数であってよい。各計算ノード4は、並列して計算を行なう。計算ノード4の台数が多くなるに応じて、並列計算機システムの並列度が高くなる。   Each computation node 4 performs processing according to the job. Each computation node 4 has a function of managing the job status. In the example of FIG. 1, N (N is an integer of 2 or more) calculation nodes 4 are connected to the job management node 2. N may be any number. Each calculation node 4 performs calculations in parallel. As the number of computing nodes 4 increases, the degree of parallelism of the parallel computer system increases.

ジョブ管理ノード2は、ジョブスケジューラ11と記憶部12と通信部13とを含む。ジョブスケジューラ11は、ユーザ端末3から投入されたジョブを管理する。   The job management node 2 includes a job scheduler 11, a storage unit 12, and a communication unit 13. The job scheduler 11 manages jobs submitted from the user terminal 3.

ジョブスケジューラ11は、ユーザ端末3からジョブ管理ノード2にジョブが投入されると、各計算ノード4のうち、ジョブの実行が可能な計算ノード4を検索する。該計算ノード4は、空き計算ノードとも称される。   When a job is input from the user terminal 3 to the job management node 2, the job scheduler 11 searches the calculation nodes 4 that can execute the job among the calculation nodes 4. The calculation node 4 is also referred to as an empty calculation node.

多数のジョブがジョブ管理ノード2に投入されると、各計算ノード4の多くが使用される。また、1つのジョブが、多くの計算ノード4を使用する場合もある。従って、多くの計算ノード4が使用されている際に、新たなジョブが投入されると、該新たなジョブを実行する計算ノード4の数が不足することがある。   When a large number of jobs are submitted to the job management node 2, many of the calculation nodes 4 are used. One job may use many calculation nodes 4. Accordingly, when a large number of calculation nodes 4 are used and a new job is input, the number of calculation nodes 4 that execute the new job may be insufficient.

上記の場合、ジョブスケジューラ11は、記憶部12に新たなジョブを記憶し、該新たなジョブを待機ジョブとして管理する。記憶部12は、各種の情報を記憶する。例えば、記憶部12は、待機ジョブを記憶する。   In the above case, the job scheduler 11 stores a new job in the storage unit 12 and manages the new job as a standby job. The storage unit 12 stores various types of information. For example, the storage unit 12 stores a standby job.

通信部13は、各ユーザ端末3および各計算ノード4と通信を行う。実施形態では、ジョブ管理ノード2と各ユーザ端末3とを接続するネットワークと、ジョブ管理ノード2と各計算ノード4とを接続するネットワークとは、異なるネットワークであるものとして説明する。   The communication unit 13 communicates with each user terminal 3 and each calculation node 4. In the embodiment, a description will be given assuming that the network connecting the job management node 2 and each user terminal 3 and the network connecting the job management node 2 and each calculation node 4 are different networks.

<ジョブスケジューラの一例>
図2を参照して、ジョブスケジューラ11の一例について説明する。ジョブスケジューラ11は、応答負荷予測部21とリクエストキュー部22と出力部23とを含む。上述したように、ジョブ管理ノード2は、ジョブ状態表示要求コマンドを受信する。該ジョブ状態表示要求コマンドは、ジョブの状態の表示を要求するリクエスト(以下、ジョブ状態表示リクエストと称する)でもある。ジョブ状態表示リクエストは、表示要求の一例である。
<Example of job scheduler>
An example of the job scheduler 11 will be described with reference to FIG. The job scheduler 11 includes a response load prediction unit 21, a request queue unit 22, and an output unit 23. As described above, the job management node 2 receives the job status display request command. The job status display request command is also a request for requesting display of the job status (hereinafter referred to as a job status display request). The job status display request is an example of a display request.

応答負荷予測部21は、算出部21Aと分類部21Bとを含む。算出部21Aは、記憶部12に記憶された予測制御情報を参照して、ジョブ状態表示リクエストに応答する予測時間を示す予測値を算出する。   The response load prediction unit 21 includes a calculation unit 21A and a classification unit 21B. The calculating unit 21A refers to the prediction control information stored in the storage unit 12, and calculates a predicted value indicating the predicted time for responding to the job status display request.

上記予測時間は、ユーザ端末3が、ジョブ状態表示リクエスト(またはジョブ状態表示要求コマンド)をジョブ管理ノード2に送信してから、該ユーザ端末3が投入したジョブの状態を示す情報を表示するまでの予測時間を示す。   The estimated time is from when the user terminal 3 transmits a job status display request (or job status display request command) to the job management node 2 until information indicating the status of the job submitted by the user terminal 3 is displayed. Shows the estimated time.

算出部21Aは、ジョブ状態表示リクエストに対応するユーザ端末3が投入したジョブ数と、投入されたジョブの実行に使用されるノード数とのうち何れか一方または両方に基づいて、予測値を算出する。   The calculation unit 21A calculates a predicted value based on one or both of the number of jobs input by the user terminal 3 corresponding to the job status display request and the number of nodes used for execution of the input job. To do.

算出部21Aは、以下の式(1)により、予測値を算出する。
「予測値=投入ジョブ数×第1の係数+実行中ノード数×第2の係数」(式1)
投入ジョブ数は、上記ユーザ端末3がジョブ管理ノード2に投入したジョブの数であり、実行中ノード数は、投入ジョブのうち、実行中のジョブが使用しているノードの数である。実行中ノード数は、ジョブ使用ノード数の一例である。
The calculation unit 21A calculates a predicted value using the following equation (1).
“Predicted value = number of submitted jobs × first coefficient + number of executing nodes × second coefficient” (Formula 1)
The number of submitted jobs is the number of jobs submitted to the job management node 2 by the user terminal 3, and the number of executing nodes is the number of nodes used by the running job among the submitted jobs. The number of executing nodes is an example of the number of job using nodes.

図3(A)を参照して、第1の係数および第2の係数について説明する。第1の係数は、1つのジョブについてのジョブ状態情報を生成する場合に与えられる重みである。第2の係数は、ジョブ管理ノード2が、1台の計算ノード4からジョブ状態情報を受信する場合に与えられる重みである。   With reference to FIG. 3A, the first coefficient and the second coefficient will be described. The first coefficient is a weight given when job status information for one job is generated. The second coefficient is a weight given when the job management node 2 receives job status information from one computing node 4.

図3(A)の例に示されるように、第1の計数の値は「1」であり、第2の係数の値は「5」である。従って、算出部21Aは、投入ジョブ数よりも実行中ノード数に高い重み付けをして、予測値を算出する。   As shown in the example of FIG. 3A, the value of the first count is “1”, and the value of the second coefficient is “5”. Accordingly, the calculating unit 21A calculates a predicted value by weighting the number of executing nodes higher than the number of submitted jobs.

ジョブ管理ノード2が、計算ノード4からジョブ状態情報を受信する場合、ジョブ管理ノード2が、計算ノード4に、ネットワークを介して、ジョブ状態情報の参照依頼を送信する。   When the job management node 2 receives the job status information from the calculation node 4, the job management node 2 transmits a job status information reference request to the calculation node 4 via the network.

計算ノード4は、参照依頼を受信すると、該計算ノード4が処理を行なっているジョブの状態を示すジョブ状態情報を、ネットワークを介して、ジョブ管理ノード2に送信する。従って、ジョブ管理ノード2が、計算ノード4から実行中ノード数を取得するために、通信時間が発生する。   When the calculation node 4 receives the reference request, the calculation node 4 transmits job status information indicating the status of the job being processed by the calculation node 4 to the job management node 2 via the network. Therefore, a communication time occurs in order for the job management node 2 to acquire the number of executing nodes from the calculation node 4.

投入ジョブ数は、記憶部12の投入ジョブ情報24に記録されており、応答負荷予測部21が、投入ジョブ数を得るために、通信は発生しない。従って、投入ジョブ数を得るための時間より、実行中ノード数を得るための時間の方が長くなる。   The number of submitted jobs is recorded in the submitted job information 24 of the storage unit 12, and no communication occurs because the response load predicting unit 21 obtains the number of submitted jobs. Therefore, the time for obtaining the number of executing nodes is longer than the time for obtaining the number of submitted jobs.

そこで、第2の係数の値は、第1の係数の値よりも高く設定される。第1の係数の値および第2の係数の値は、任意の値であってもよい。例えば、第1の係数の値を基準として、ジョブ管理ノード2と計算ノード4との間のネットワークの状況に応じて、第2の係数の値が設定されてもよい。   Therefore, the value of the second coefficient is set higher than the value of the first coefficient. The value of the first coefficient and the value of the second coefficient may be arbitrary values. For example, the value of the second coefficient may be set according to the state of the network between the job management node 2 and the calculation node 4 on the basis of the value of the first coefficient.

上述した(式1)において、第1の係数はゼロであってもよい。この場合、予測値は、以下の(式2)により算出される。
「予測値=実行中ノード数×第2の係数」(式2)
例えば、投入ジョブ数が少なく、且つ1つのジョブが多くの計算ノード4を使用する場合、投入ジョブ数に比して、実行中ノード数が多くなる。この場合、投入ジョブ数よりも、実行中ノード数の方が、予測値に支配的な影響を与えるため、投入ジョブ数は、予測値の算出から除外されてもよい。
In (Equation 1) described above, the first coefficient may be zero. In this case, the predicted value is calculated by the following (Formula 2).
"Predicted value = number of running nodes x second coefficient" (Formula 2)
For example, when the number of submitted jobs is small and a single job uses a large number of calculation nodes 4, the number of executing nodes is larger than the number of submitted jobs. In this case, since the number of running nodes has a more dominant influence on the predicted value than the number of submitted jobs, the number of submitted jobs may be excluded from the calculation of the predicted value.

一方、投入ジョブ数が多い場合、投入ジョブ数が予測値に与える影響が大きくなる。従って、算出部21Aが、上述した(式1)のように、投入ジョブ数と実行中ノード数との両者に基づいて、予測値を算出することで、予測値の算出精度が向上する。なお、実行中ノード数がゼロまたはゼロに近い場合、予測値は、投入ジョブ数に基づいて、算出されてもよい。   On the other hand, when the number of submitted jobs is large, the influence of the number of submitted jobs on the predicted value becomes large. Therefore, the calculation unit 21A calculates the predicted value based on both the number of input jobs and the number of nodes being executed as in (Equation 1) described above, thereby improving the calculation accuracy of the predicted value. When the number of nodes being executed is zero or close to zero, the predicted value may be calculated based on the number of submitted jobs.

分類部21Bは、算出部21Aが算出した予測値に応じて、ジョブ状態表示リクエストを、レベルごとのグループに分類する。図2の例では、分類部21Bは、ジョブ状態表示リクエストを、3つのグループに分類する。   The classification unit 21B classifies job status display requests into groups for each level according to the predicted value calculated by the calculation unit 21A. In the example of FIG. 2, the classification unit 21B classifies job status display requests into three groups.

図3(B)の例の場合、分類部21Bは、算出部21Aが算出した予測値が「999以下」である場合、ジョブ状態表示リクエストを、レベル1のグループに分類する。算出部21Aが算出した予測値が「1000以上、且つ9999未満」である場合、分類部21Bは、ジョブ状態表示リクエストを、レベル2のグループに分類する。   In the case of the example of FIG. 3B, the classification unit 21B classifies the job status display request into a level 1 group when the predicted value calculated by the calculation unit 21A is “999 or less”. When the predicted value calculated by the calculation unit 21A is “1000 or more and less than 9999”, the classification unit 21B classifies the job status display request into a level 2 group.

算出部21Aが算出した予測値が「10000以上」である場合、分類部21Bは、ジョブ状態表示リクエストを、レベル3のグループに分類する。グループの数は任意の数であってよく、予測値範囲は任意の範囲に設定されてよい。   When the predicted value calculated by the calculation unit 21A is “10000 or more”, the classification unit 21B classifies the job status display request into a level 3 group. The number of groups may be an arbitrary number, and the predicted value range may be set to an arbitrary range.

上述したように、ジョブ状態表示リクエストは、ユーザ端末3から送信されたリクエストである。従って、1つのジョブ状態表示リクエストは、ユーザ端末3と対応付けられている。   As described above, the job status display request is a request transmitted from the user terminal 3. Therefore, one job status display request is associated with the user terminal 3.

算出部21Aが算出した予測値が小さいほど、ユーザ端末3にジョブ状態が表示されるまでの時間が短くなると予測される。一方、算出部21Aが算出した予測値が大きいほど、ユーザ端末3にジョブ状態が表示されるまでの時間が長くなると予測される。   It is predicted that the time until the job status is displayed on the user terminal 3 is shortened as the predicted value calculated by the calculation unit 21A is smaller. On the other hand, it is predicted that the time until the job status is displayed on the user terminal 3 becomes longer as the predicted value calculated by the calculation unit 21A is larger.

実施形態のジョブスケジューラ11の出力部23において、算出部21Aが算出した予測値に応じて、複数のグループが、それぞれ並列に、ジョブ状態表示リクエストについての処理を行なう。これにより、予測値が小さいジョブ状態表示リクエストと予測値が大きいジョブ状態表示リクエストとが並列に処理される。   In the output unit 23 of the job scheduler 11 according to the embodiment, a plurality of groups perform processing on the job status display request in parallel according to the predicted value calculated by the calculation unit 21A. Thereby, a job status display request with a small predicted value and a job status display request with a large predicted value are processed in parallel.

予測値が小さいジョブ状態表示リクエストは、ユーザ端末3に、投入ジョブの状態を表示させる時間が短いリクエストである。予測値が小さいジョブ状態表示リクエストと予測値が大きいジョブ状態表示リクエストとが並列に処理されることで、予測値が小さいジョブ状態表示リクエストが待たされることがなくなる。これにより、ジョブの状態に関する情報が表示されるまでの時間が長くなることを抑制することができる。   The job status display request with a small predicted value is a request with a short time for causing the user terminal 3 to display the status of the submitted job. A job state display request with a small predicted value and a job state display request with a large predicted value are processed in parallel, so that a job state display request with a small predicted value is not waited. Accordingly, it is possible to suppress an increase in the time until the information related to the job status is displayed.

図2を参照して、リクエストキュー部22について説明する。リクエストキュー部22は、複数のキューを含み、各キューは、上記のグループに対応する。図2の例では、リクエストキュー部22は、レベル1のキューとレベル2のキューとレベル3のキューとを含む。分類部21Bは、分類したジョブ状態表示リクエストを、対応するレベルのキューに登録する。以下、上記のキューをレベルキューと称することがある。   The request queue unit 22 will be described with reference to FIG. The request queue unit 22 includes a plurality of queues, and each queue corresponds to the above group. In the example of FIG. 2, the request queue unit 22 includes a level 1 queue, a level 2 queue, and a level 3 queue. The classification unit 21B registers the classified job status display request in the corresponding level queue. Hereinafter, the above queue may be referred to as a level queue.

出力部23は、レベルごとにスレッドを含む。また、出力部23は、スレッド管理部23Aを含む。スレッドは、ジョブ状態表示リクエストに関する処理を行なう。出力部23の各レベルには、複数のスレッドが含まれていてもよい。   The output unit 23 includes a thread for each level. The output unit 23 includes a thread management unit 23A. The thread performs processing related to the job status display request. Each level of the output unit 23 may include a plurality of threads.

1つのレベルに複数のスレッドが含まれる場合、複数のスレッドにより、ジョブ状態表示リクエストに関する処理を並列に行うことができる。例えば、出力部23は、レベルごとに、レベルプールを有し、各レベルプールに1または複数のスレッドが含まれる。   When a plurality of threads are included in one level, processing related to a job status display request can be performed in parallel by the plurality of threads. For example, the output unit 23 has a level pool for each level, and each level pool includes one or a plurality of threads.

リクエストキュー部22は、各レベルの何れかのキューに、ジョブ状態表示リクエストが登録されると、何れのレベルのキューにジョブ状態表示リクエストが登録されているかを示す情報を、出力部23のスレッド管理部23Aに通知する。   When a job status display request is registered in any one of the queues of each level, the request queue unit 22 displays information indicating which level of the job status display request is registered in the thread of the output unit 23. The management unit 23A is notified.

スレッド管理部23Aは、リクエストキュー部22からの通知に基づいて、対応するレベルのスレッドに、キューにジョブ状態表示リクエストが登録されたことを通知する。該通知に基づいて、スレッドは、ジョブ状態表示リクエストに関する処理を行なう。   Based on the notification from the request queue unit 22, the thread management unit 23A notifies the corresponding level thread that the job status display request has been registered in the queue. Based on the notification, the thread performs processing related to the job status display request.

<各種情報の一例>
図4は、ジョブ関連情報の一例を示す。ジョブ関連情報は、記憶部12に記憶される。図4(A)は、投入ジョブ情報の一例を示す。投入ジョブ情報は、ユーザと投入ジョブ数と実行中ジョブ数と実行中ジョブID(Identification)との項目を含む。
<Examples of various information>
FIG. 4 shows an example of job related information. The job related information is stored in the storage unit 12. FIG. 4A shows an example of the input job information. The submitted job information includes items of a user, the number of submitted jobs, the number of running jobs, and a running job ID (Identification).

ユーザは、ジョブを投入したユーザ端末3を識別する情報である。実施形態では、ジョブ状態表示リクエストに、ユーザ端末3を識別する情報が含まれているものとする。該情報に基づいて、ユーザ端末3を識別する情報が特定される。   The user is information for identifying the user terminal 3 that has submitted the job. In the embodiment, it is assumed that information for identifying the user terminal 3 is included in the job status display request. Based on this information, information for identifying the user terminal 3 is specified.

投入ジョブ数は、ユーザ端末3ごとの、投入ジョブの数を示す。実行中ジョブ数は、投入ジョブのうち、計算ノード4が実行中のジョブの数を示す。実行中ジョブIDは、計算ノード4が実行中のジョブのIDを示す。   The number of submitted jobs indicates the number of submitted jobs for each user terminal 3. The number of jobs being executed indicates the number of jobs being executed by the calculation node 4 among the input jobs. The job ID being executed indicates the ID of the job being executed by the calculation node 4.

図4(B)は、実行中計算ノード情報の一例を示す。実行中計算ノード情報は、記憶部12に記憶される。実行中計算ノード情報は、実行中ジョブIDと実行中計算ノード数との項目を含む。   FIG. 4B shows an example of the computation node information being executed. The running computation node information is stored in the storage unit 12. The running computation node information includes items of a running job ID and the number of running computing nodes.

実行中ジョブIDは、投入ジョブ情報の実行中ジョブIDに対応する。実行中計算ノード数は、実行中ジョブIDで特定されるジョブが使用している計算ノード4の数を示す。   The executing job ID corresponds to the executing job ID of the input job information. The number of calculation nodes being executed indicates the number of calculation nodes 4 used by the job specified by the job ID being executed.

図4(C)は、応答予測レベル情報の一例を示す。応答予測レベルは、上述した予測値に基づいて分類されたレベルである。応答予測レベル情報は、ユーザと予測値と応答予測レベルとの項目を含む。   FIG. 4C shows an example of response prediction level information. The response prediction level is a level classified based on the above-described prediction value. The response prediction level information includes items of a user, a prediction value, and a response prediction level.

ユーザは、投入ジョブ情報のユーザに対応する。予測値は、ユーザ端末3に対応して、算出部21Aが算出した予測値を示す。レベルは、ユーザ端末3に対応して、分類部21Bが分類したレベルを示す。   The user corresponds to the user of the input job information. The predicted value indicates the predicted value calculated by the calculation unit 21 </ b> A corresponding to the user terminal 3. The level indicates a level classified by the classification unit 21B corresponding to the user terminal 3.

例えば、図2において、ジョブスケジューラ11に、ジョブ状態表示リクエストが入力されたとする。該ジョブ状態表示リクエストに対応するユーザ端末3は、ユーザ端末3Aであり、該ユーザ端末3Aに対応するユーザは、ユーザAであるとする。   For example, assume that a job status display request is input to the job scheduler 11 in FIG. Assume that the user terminal 3 corresponding to the job status display request is the user terminal 3A, and the user corresponding to the user terminal 3A is the user A.

算出部21Aは、投入ジョブ情報および実行中計算ノード数情報を参照し、上述した(式1)を用いて、予測値を算出する。図4に示されるように、ユーザAの投入ジョブ数は「10」であり、実行中ジョブIDは、「1」、「7」および「8」である。   The calculating unit 21A refers to the input job information and the number of currently executing calculation nodes, and calculates the predicted value using (Equation 1) described above. As shown in FIG. 4, the number of input jobs for user A is “10”, and the job IDs being executed are “1”, “7”, and “8”.

実行中ジョブID「1」に対応する実行中計算ノード数は「200」であり、実行中ジョブID「7」に対応する実行中計算ノード数は「1100」であり、実行中ジョブID「8」に対応する実行中計算ノード数は「500」である。従って、ユーザの実行中ノード数は「1800=200+1100+500」である。   The number of computation nodes being executed corresponding to the job ID “1” being executed is “200”, the number of computation nodes being executed corresponding to the job ID “7” being executed is “1100”, and the job ID “8” being executed. The number of running computation nodes corresponding to “500” is “500”. Therefore, the number of nodes being executed by the user is “1800 = 200 + 1100 + 500”.

第1の係数は「1」であり、第2の係数は「5」であることから、ユーザAについての予測値は、(式1)から、「9010=10×1+1800×5」として、算出部21Aにより算出される。分類部12Bは、記憶部12に記憶されたレベル情報を参照して、上記予測値がレベル2に該当することを認識する。   Since the first coefficient is “1” and the second coefficient is “5”, the predicted value for user A is calculated as “9010 = 10 × 1 + 1800 × 5” from (Equation 1). Calculated by the unit 21A. The classification unit 12B refers to the level information stored in the storage unit 12 and recognizes that the predicted value corresponds to level 2.

従って、分類部21Bは、上記のユーザ端末3Aのジョブ状態表示リクエストを、リクエストキュー部22のレベル2のキューに登録する。   Therefore, the classification unit 21B registers the job status display request of the user terminal 3A in the level 2 queue of the request queue unit 22.

また、ジョブスケジューラ11に、ユーザ端末3D(対応するユーザはユーザD)のジョブ状態表示リクエストが入力されたとする。ユーザDの投入ジョブ数は「5」であり、実行ジョブID「5」に対応する実行中計算ノード数は「100」である。よって、算出部21Aは、ユーザDについての予測値を「505=5×1+100×5」として算出する。   Further, it is assumed that the job status display request of the user terminal 3D (the corresponding user is the user D) is input to the job scheduler 11. The number of input jobs of user D is “5”, and the number of currently executing computation nodes corresponding to the execution job ID “5” is “100”. Therefore, the calculation unit 21A calculates the predicted value for the user D as “505 = 5 × 1 + 100 × 5”.

分類部12Bは、記憶部12に記憶されたレベル情報を参照して、上記予測値がレベル1に該当することを認識する。従って、分類部21Bは、上記のユーザ端末3Dのジョブ状態表示リクエストを、リクエストキュー部22のレベル1のキューに登録する。   The classification unit 12B refers to the level information stored in the storage unit 12 and recognizes that the predicted value corresponds to level 1. Therefore, the classification unit 21B registers the job status display request of the user terminal 3D in the level 1 queue of the request queue unit 22.

各スレッドは、ユーザ端末3からのジョブ状態表示リクエストに基づいて、該ユーザ端末3により投入されたジョブ状態情報を収集する。収集されたジョブ状態情報は、表示情報として、ユーザ端末3に送信される。   Each thread collects job status information input by the user terminal 3 based on a job status display request from the user terminal 3. The collected job status information is transmitted to the user terminal 3 as display information.

レベル2のスレッドは、ユーザ端末3Aのジョブ状態表示リクエストに基づいて、各計算ノード4に、ジョブ状態情報の参照依頼を送信する制御を行う。該制御により、通信部13は、各計算ノード4に参照依頼を送信する。各計算ノード4は、参照依頼に応じて、ジョブ状態情報を、ジョブ管理ノード2に送信する。これにより、レベル2のスレッドは、ユーザ端末3Aのジョブ状態情報を、各計算ノード4から取得する。   The level 2 thread performs control to transmit a job status information reference request to each computation node 4 based on the job status display request of the user terminal 3A. With this control, the communication unit 13 transmits a reference request to each computation node 4. Each computing node 4 transmits job status information to the job management node 2 in response to the reference request. As a result, the level 2 thread acquires the job status information of the user terminal 3 </ b> A from each computation node 4.

図4(A)に示されるように、ユーザAに対応する投入ジョブ数は「10」であり、実行中ジョブ数は「3」である。よって、7つのジョブが記憶部12で待機中である。レベル2のスレッドは、記憶部12に記憶されているジョブから、ジョブ状態情報を取得する。   As shown in FIG. 4A, the number of input jobs corresponding to the user A is “10”, and the number of jobs being executed is “3”. Therefore, seven jobs are waiting in the storage unit 12. The level 2 thread acquires job status information from the job stored in the storage unit 12.

以上により、レベル2のスレッドは、ユーザ端末3Aのジョブ状態情報を収集する。レベル2のスレッドは、各計算ノード4から受信したジョブ状態情報と記憶部12から取得したジョブ状態情報とを含む情報を生成する。該情報が、上述した表示情報である。   As described above, the level 2 thread collects the job status information of the user terminal 3A. The level 2 thread generates information including the job status information received from each computation node 4 and the job status information acquired from the storage unit 12. This information is the display information described above.

レベル2のスレッドは、ジョブ状態表示リクエストを送信したユーザ端末3Aに、上記の表示情報を出力する。ユーザ端末3Aは、ディスプレイ等の表示装置に、表示情報を表示する。   The level 2 thread outputs the display information to the user terminal 3A that has transmitted the job status display request. The user terminal 3A displays display information on a display device such as a display.

レベル1のスレッドは、ユーザ端末3Dのジョブ状態表示リクエストに基づいて、各計算ノード4から、ユーザ端末3Dのジョブ状態情報を取得する。   The level 1 thread acquires the job status information of the user terminal 3D from each computation node 4 based on the job status display request of the user terminal 3D.

ユーザDに対応する投入ジョブ数は「5」であり、実行中ジョブ数は「1」である。よって、4つのジョブが記憶部12で待機中である。レベル1のスレッドは、記憶部12に記憶されているジョブから、ジョブ状態情報を取得する。   The number of input jobs corresponding to the user D is “5”, and the number of running jobs is “1”. Therefore, four jobs are waiting in the storage unit 12. The level 1 thread acquires job status information from the job stored in the storage unit 12.

以上により、レベル1のスレッドは、ユーザ端末3Dのジョブ状態情報を収集する。レベル1のスレッドは、上述した表示情報を生成し、ジョブ状態表示リクエストを送信したユーザ端末3Dに、上記の表示情報を出力する。ユーザ端末3Dは、ディスプレイ等の表示装置に、表示情報を表示する。   As described above, the level 1 thread collects the job status information of the user terminal 3D. The level 1 thread generates the display information described above and outputs the display information to the user terminal 3D that has transmitted the job status display request. The user terminal 3D displays display information on a display device such as a display.

レベル2のスレッドは、レベル1のスレッドよりも、予測値が高いジョブ状態情報の処理を行なうため、レベル2のスレッドの処理は、レベル1のスレッドの処理よりも時間が長くなる。   Since the level 2 thread processes job state information having a higher predicted value than the level 1 thread, the processing of the level 2 thread takes longer than the processing of the level 1 thread.

しかし、レベル1のスレッドとレベル2のスレッドとは並列に動作するため、レベル1のスレッドの処理は、レベル2のスレッドの処理とは独立して実行される。従って、ユーザ端末3Dによるジョブ状態表示リクエストに基づく表示処理は、ユーザ端末3Aによるジョブ状態表示リクエストに基づく表示処理を待たなくてもよい。   However, since the level 1 thread and the level 2 thread operate in parallel, the processing of the level 1 thread is executed independently of the processing of the level 2 thread. Therefore, the display process based on the job status display request by the user terminal 3D may not wait for the display process based on the job status display request by the user terminal 3A.

よって、ユーザ端末3Dのディスプレイに、ジョブ状態情報を含む表示情報が表示されるまでの時間が長くなることが抑制される。   Therefore, it is suppressed that the time until the display information including the job status information is displayed on the display of the user terminal 3D is increased.

図5は、ジョブ管理ノード2に投入された各ジョブについてのジョブ状態一覧情報の一例を示す。ジョブ状態一覧情報は、「JOB_ID」、「STATUS」、「USER」、「NODE」、「START_TIME」、「CPU_TIME」、「MEM_SIZE」および「I/O_SIZE」の項目を含む。ジョブ状態一覧情報は、記憶部12に記憶される。   FIG. 5 shows an example of job status list information for each job submitted to the job management node 2. The job status list information includes items of “JOB_ID”, “STATUS”, “USER”, “NODE”, “START_TIME”, “CPU_TIME”, “MEM_SIZE”, and “I / O_SIZE”. The job status list information is stored in the storage unit 12.

「JOB_ID」は、上述したIDを示す。「STATUS」は、ジョブが計算ノード4で実行中であれば「RUN」を示し、待機中であれば「QUE」を示す。「USER」は、上述したユーザ名を示す。   “JOB_ID” indicates the ID described above. “STATUS” indicates “RUN” if the job is being executed on the calculation node 4, and “QUE” if the job is waiting. “USER” indicates the user name described above.

「NODE」は、上述した実行中計算ノード数を示す。「START_TIME」は、計算ノード4でジョブが実行された時刻を示す。該「START_TIME」は、さらに日付の情報を含んでもよい。「CPU_TIME」は、ジョブを実行している計算ノード4のCPU(Central Processing Unit)の使用時間を示す。   “NODE” indicates the number of computation nodes being executed as described above. “START_TIME” indicates the time when the job is executed in the calculation node 4. The “START_TIME” may further include date information. “CPU_TIME” indicates the usage time of the CPU (Central Processing Unit) of the computation node 4 executing the job.

「MEM_SIZE」は、ジョブを実行している計算ノード4のメモリの使用量を示す。「I/O_SIZE」は、ジョブを実行している計算ノード4のInput/Output(I/O)のサイズを示す。ジョブ状態一覧情報のうち「JOB_ID」以外の各項目は、「JOB_ID」ごとの情報である。   “MEM_SIZE” indicates the amount of memory used by the computation node 4 executing the job. “I / O_SIZE” indicates the size of Input / Output (I / O) of the computation node 4 executing the job. Each item other than “JOB_ID” in the job status list information is information for each “JOB_ID”.

図5の例に示されるように、「STATUS」が「QUE」であるジョブについては、「NODE」、「START_TIME」、「CPU_TIME」、「MEM_SIZE」および「I/O_SIZE」の項目に情報が記録されていない。   As shown in the example of FIG. 5, for jobs whose “STATUS” is “QUE”, information is recorded in the items of “NODE”, “START_TIME”, “CPU_TIME”, “MEM_SIZE” and “I / O_SIZE”. It has not been.

「STATUS」が「QUE」であるジョブは、待機中のジョブであり、該ジョブについてのジョブ状態情報は、計算ノード4から取得されていない。このため、「STATUS」が「QUE」であるジョブに対応する上記の各項目には、情報が記録されていない。   A job whose “STATUS” is “QUE” is a waiting job, and job status information about the job is not acquired from the calculation node 4. For this reason, no information is recorded in the above items corresponding to jobs whose “STATUS” is “QUE”.

図6は、ユーザ端末3Aのディスプレイに表示される表示情報の一例を示す。レベル2のスレッドは、図5のジョブ状態一覧情報のうち、「USER」が「A」である情報を、表示情報として、ユーザ端末3Aに送信する制御を行う。該制御により、通信部13は、表示情報をユーザ端末3Aに送信する。ユーザ端末3Aのディスプレイは、受信した表示情報を表示する。   FIG. 6 shows an example of display information displayed on the display of the user terminal 3A. The thread of level 2 performs control to transmit information having “USER” “A” in the job status list information of FIG. 5 to the user terminal 3A as display information. By this control, the communication unit 13 transmits display information to the user terminal 3A. The display of the user terminal 3A displays the received display information.

表示情報は、「STATUS」、「USER」、「NODE」、「START_TIME」、「CPU_TIME」、「MEM_SIZE」および「I/O_SIZE」以外の情報を含んでいてもよいし、各情報のうち何れかの情報を含まなくてもよい。また、表示情報は、上記の各項目以外の情報であってもよい。   Display information may include information other than “STATUS”, “USER”, “NODE”, “START_TIME”, “CPU_TIME”, “MEM_SIZE”, and “I / O_SIZE”, or any one of these information The information may not be included. The display information may be information other than the above items.

<実施形態の処理の流れの一例>
以下、応答負荷予測部21の処理とリクエストキュー部22の処理と出力部23の処理とについて説明する。応答負荷予測部21とリクエストキュー部22と出力部23とは、独立して動作する。従って、応答負荷予測部21の処理とリクエストキュー部22の処理と出力部23の処理とは、並列に行なわれる。
<Example of process flow of embodiment>
Hereinafter, processing of the response load prediction unit 21, processing of the request queue unit 22, and processing of the output unit 23 will be described. The response load prediction unit 21, the request queue unit 22, and the output unit 23 operate independently. Therefore, the processing of the response load prediction unit 21, the processing of the request queue unit 22, and the processing of the output unit 23 are performed in parallel.

図7は、応答負荷予測部21の処理の一例を示すフローチャートである。応答負荷予測部21は、ジョブ状態表示リクエストが入力されたかを判定する(ステップS1)。ステップS1でNOの場合、処理は、次のステップに進まない。   FIG. 7 is a flowchart illustrating an example of processing of the response load prediction unit 21. The response load prediction unit 21 determines whether a job status display request has been input (step S1). If NO in step S1, the process does not proceed to the next step.

ステップS1でYESの場合、応答負荷予測部21は、入力されたジョブ状態表示リクエストが示すユーザ端末3を特定する(ステップS2)。応答負荷予測部21は、記憶部12に記憶されている投入ジョブ情報および実行中計算ノード情報から、特定されたユーザ端末3(ユーザ)に対応するジョブ数、実行中ジョブIDおよび各ジョブの状態を取得する(ステップS3)。   If YES in step S1, the response load prediction unit 21 specifies the user terminal 3 indicated by the input job status display request (step S2). The response load prediction unit 21 determines the number of jobs corresponding to the specified user terminal 3 (user), the job ID being executed, and the status of each job from the input job information and the calculation node information being executed stored in the storage unit 12. Is acquired (step S3).

算出部21Aは、実行中ジョブIDに対応する実行中計算ノード数に基づいて、ユーザ端末3に対応する実行中計算ノード数を算出する(ステップS4)。そして、算出部21Aは、上述した(式1)を用いて、特定されたユーザ端末3に対応する予測値を算出する(ステップS5)。   The calculating unit 21A calculates the number of executing calculation nodes corresponding to the user terminal 3 based on the number of executing calculation nodes corresponding to the executing job ID (step S4). Then, the calculation unit 21A calculates a predicted value corresponding to the identified user terminal 3 using (Equation 1) described above (step S5).

分類部21Bは、記憶部12に記憶されているレベル情報を参照して、ステップS4で算出された予測値に対応するレベルに、入力されたジョブ状態表示リクエストを分類する(ステップS6)。   The classification unit 21B refers to the level information stored in the storage unit 12 and classifies the input job status display request to a level corresponding to the predicted value calculated in step S4 (step S6).

応答負荷予測部21は、分類されたジョブ状態表示リクエストを、リクエストキュー部22のうち、分類されたレベルに対応するキューに、ジョブ状態表示リクエストを登録する(ステップS7)。ステップS7の後、処理は、ステップS1に移行する。   The response load prediction unit 21 registers the job status display request in the queue corresponding to the classified level in the request queue unit 22 (step S7). After step S7, the process proceeds to step S1.

上述したように、複数のユーザ端末3が、ジョブ管理ノード2に、ジョブ状態表示リクエストを送信する。例えば、ジョブ管理ノード2が、ユーザ端末3A、ユーザ端末3B、ユーザ端末3C、ユーザ端末3D、ユーザ端末3Eの順番に、ジョブ状態表示リクエストを受信したとする。   As described above, the plurality of user terminals 3 transmit a job status display request to the job management node 2. For example, it is assumed that the job management node 2 receives job status display requests in the order of the user terminal 3A, the user terminal 3B, the user terminal 3C, the user terminal 3D, and the user terminal 3E.

上述したステップS1〜S7の処理が行われることにより、図4に示されるように、ユーザ端末3Aのジョブ状態表示リクエストは、予測値に応じて、レベル2に分類される。ユーザ端末3Bのジョブ状態表示リクエストは、予測値に応じて、レベル2に分類される。   By performing the processing of steps S1 to S7 described above, as shown in FIG. 4, the job status display request of the user terminal 3A is classified into level 2 according to the predicted value. The job status display request of the user terminal 3B is classified into level 2 according to the predicted value.

ユーザ端末3Cのジョブ状態表示リクエストは、予測値に応じて、レベル3に分類される。ユーザ端末3Dのジョブ状態表示リクエストは、予測値に応じて、レベル1に分類される。ユーザ端末3Eのジョブ状態表示リクエストは、予測値に応じて、レベル3に分類される。   The job status display request of the user terminal 3C is classified into level 3 according to the predicted value. The job status display request of the user terminal 3D is classified into level 1 according to the predicted value. The job status display request of the user terminal 3E is classified into level 3 according to the predicted value.

応答負荷予測部21は、分類部21Bがジョブ状態表示リクエストを分類すると、分類されたジョブ状態表示リクエストを、リクエストキュー部22のうち、対応するレベルキューに、順次、登録する。   When the classification unit 21B classifies the job status display request, the response load prediction unit 21 sequentially registers the classified job status display request in the corresponding level queue in the request queue unit 22.

上述の場合、レベル1のレベルキューには、ユーザ端末3Dのジョブ状態表示リクエストが登録される。レベル2のレベルキューには、先頭に、ユーザ端末3Aのジョブ状態表示リクエストが登録され、次に、ユーザ端末3Bのジョブ状態表示リクエストが登録される。レベル3のレベルキューには、先頭に、ユーザ端末3Cのジョブ状態表示リクエストが登録され、次に、ユーザ端末3Eのジョブ状態表示リクエストが登録される。   In the above case, the job status display request of the user terminal 3D is registered in the level 1 level queue. In the level 2 level queue, the job status display request of the user terminal 3A is registered first, and then the job status display request of the user terminal 3B is registered. In the level 3 level queue, the job status display request of the user terminal 3C is registered first, and then the job status display request of the user terminal 3E is registered.

レベル2のスレッドが、ユーザ端末3Aのジョブ状態表示リクエストの処理を行っている間、ユーザ端末3Bのジョブ状態表示リクエストの処理は待たされる。また、レベル3のスレッドが、ユーザ端末3Cのジョブ状態表示リクエストの処理を行っている間、ユーザ端末3Eのジョブ状態表示リクエストの処理は待たされる。   While the level 2 thread is processing the job status display request of the user terminal 3A, the processing of the job status display request of the user terminal 3B is awaited. Further, while the level 3 thread is processing the job status display request of the user terminal 3C, the processing of the job status display request of the user terminal 3E is awaited.

この点、ジョブ状態表示リクエストのレベルに対応するスレッドが実行中であったとしても、応答負荷予測部21は、ジョブ状態表示リクエストを入力した順に、リクエストキュー部22のレベルキューに登録すればよい。このため、応答負荷予測部21の処理が待たされることなく、入力順にジョブ状態表示リクエストを処理することが可能になる。   In this regard, even if a thread corresponding to the level of the job status display request is being executed, the response load prediction unit 21 may register the job status display request in the level queue of the request queue unit 22 in the order of input. . For this reason, it is possible to process the job status display requests in the order of input without waiting for the processing of the response load prediction unit 21.

図8は、リクエストキュー部22の処理の流れの一例を示すフローチャートである。リクエストキュー部22は、何れかのリクエストキューにジョブ状態表示リクエストが登録されたかを判定する(ステップS11)。   FIG. 8 is a flowchart illustrating an example of the processing flow of the request queue unit 22. The request queue unit 22 determines whether the job status display request is registered in any request queue (step S11).

ステップS11でNOの場合、処理は、次のステップに進まない。ステップS11でYESの場合、リクエストキュー部22は、ジョブ状態表示リクエストが登録されたリクエストキューのレベルを示す情報を出力部23に通知する(ステップS12)。   If NO in step S11, the process does not proceed to the next step. If YES in step S11, the request queue unit 22 notifies the output unit 23 of information indicating the level of the request queue in which the job status display request is registered (step S12).

図9は、出力部23のスレッド管理部23Aの処理の流れの一例を示すフローチャートである。スレッド管理部23Aは、リクエストキュー部22から、ジョブ状態表示リクエストが登録されたリクエストキューのレベルを示す情報が通知されたかを判定する(ステップS21)。   FIG. 9 is a flowchart illustrating an example of a process flow of the thread management unit 23A of the output unit 23. The thread management unit 23A determines whether information indicating the level of the request queue in which the job status display request is registered is notified from the request queue unit 22 (step S21).

ステップS21でNOの場合、処理は、次のステップに進まない。ステップS21でYESの場合、スレッド管理部23Aは、通知されたリクエストキューのレベルに応じたスレッドに、ジョブ状態表示リクエストをリクエストキューから取り出しする通知を行う(ステップS22)。   If NO in step S21, the process does not proceed to the next step. If YES in step S21, the thread management unit 23A notifies the thread corresponding to the notified level of the request queue to take out the job status display request from the request queue (step S22).

図10および図11は、出力部23の各スレッドの処理の流れの一例を示すフローチャートである。各スレッドは、スレッド管理部23Aから、通知を受けたかを判定する(ステップS31)。   10 and 11 are flowcharts illustrating an example of the processing flow of each thread of the output unit 23. Each thread determines whether a notification has been received from the thread management unit 23A (step S31).

ステップS31でNOの場合、処理は、次のステップに進まない。ステップS31でYESの場合、スレッドは、リクエストキュー部22のうち、該スレッドに対応するレベルキューにジョブ状態表示リクエストがあるかを判定する(ステップS32)。   If NO in step S31, the process does not proceed to the next step. If YES in step S31, the thread determines whether there is a job status display request in the level queue corresponding to the thread in the request queue unit 22 (step S32).

例えば、1つのレベルプールに複数のスレッドが含まれる場合、あるスレッドが、レベルキューからジョブ状態表示リクエストを取り出すと、他のスレッドが、レベルキューから取り出すジョブ状態表示リクエストがないことがある。この場合、ステップS32の判定はNOとなる。   For example, when a plurality of threads are included in one level pool, when a certain thread retrieves a job status display request from the level queue, there may be no job status display request that another thread retrieves from the level queue. In this case, the determination in step S32 is NO.

ステップS32でNOの場合、処理は、ステップS31に移行する。ステップS32でYESの場合、スレッドは、該スレッドに対応するレベルキューから、ジョブ状態表示リクエストを取り出す(ステップS33)。   If NO in step S32, the process proceeds to step S31. If YES in step S32, the thread extracts a job status display request from the level queue corresponding to the thread (step S33).

スレッドは、記憶部12に記憶された投入ジョブ情報を参照して、ジョブ状態表示リクエストに対応するユーザの実行中ジョブ数がゼロであるかに基づいて、実行中ジョブの表示が必要かを判定する(ステップS34)。   The thread refers to the submitted job information stored in the storage unit 12 and determines whether it is necessary to display the running job based on whether the number of running jobs of the user corresponding to the job status display request is zero. (Step S34).

ステップS34でNOの場合、ジョブ状態表示リクエストに対応する全てのジョブは、計算ノード4で実行されていない。この場合、ジョブ状態表示リクエストに対応する全てのジョブは、記憶部12に記憶されているため、スレッドは、記憶部12に記憶されているジョブに基づいて、ジョブ状態情報を生成する(ステップS35)。   If NO in step S34, all the jobs corresponding to the job status display request are not executed in the calculation node 4. In this case, since all the jobs corresponding to the job status display request are stored in the storage unit 12, the thread generates job status information based on the jobs stored in the storage unit 12 (step S35). ).

スレッドが、生成したジョブ状態情報を含む表示情報を、ユーザ端末3に送信する制御を行うことで、通信部13は、表示情報を、ジョブ状態表示リクエストを送信したユーザ端末3に送信する(ステップS36)。   The thread controls the display information including the generated job status information to be transmitted to the user terminal 3, so that the communication unit 13 transmits the display information to the user terminal 3 that has transmitted the job status display request (Step S1). S36).

ステップS34でYESの場合、処理は、「A」に移行する。「A」以降の処理について、図11を参照して説明する。スレッドは、ジョブ実行中の各計算ノード4にジョブ状態の参照依頼を送信する制御を行う。該制御により、各計算ノード4にジョブ状態の参照依頼が送信される(ステップS37)。   If YES in step S34, the process proceeds to “A”. The processing after “A” will be described with reference to FIG. The thread controls to send a job status reference request to each computation node 4 that is executing the job. With this control, a job status reference request is transmitted to each computation node 4 (step S37).

各計算ノードは、参照依頼に応じて、実行中のジョブのジョブ状態情報を、ジョブ管理ノード2に送信する。スレッドは、受信したジョブ状態情報を記憶部12に記憶する(ステップS38)。   Each computing node transmits job status information of the job being executed to the job management node 2 in response to the reference request. The thread stores the received job status information in the storage unit 12 (step S38).

スレッドは、参照依頼を送信した全ての計算ノード4からジョブ状態情報を受信したかを判定する(ステップS39)。ステップS39でNOの場合、処理は、ステップS38に移行する。   The thread determines whether job status information has been received from all the computation nodes 4 that have transmitted the reference requests (step S39). If NO in step S39, the process proceeds to step S38.

ステップS39でYESの場合、スレッドは、受信したジョブ状態情報および記憶部12に記憶されているジョブに基づいて、表示情報を生成する(ステップS40)。そして、処理は、「B」から、図10のステップS36に移行する。   If YES in step S39, the thread generates display information based on the received job status information and the job stored in the storage unit 12 (step S40). Then, the process proceeds from “B” to step S36 in FIG.

ステップS36の後、処理は、ステップS32に移行する。例えば、レベル2のスレッドが、ユーザ端末3Aに対応するジョブ状態表示リクエストを処理している間に、レベル2のレベルキューに、ユーザ端末3Bに対応するジョブ状態表示リクエストが登録されたとする。   After step S36, the process proceeds to step S32. For example, it is assumed that the job status display request corresponding to the user terminal 3B is registered in the level 2 level queue while the level 2 thread is processing the job status display request corresponding to the user terminal 3A.

上記の場合、スレッド管理部23Aが、レベル2のスレッドに通知を行なう。この際、該レベル2のスレッドは、ユーザ端末3Aに対応するジョブ状態表示リクエストを処理しているため、上記通知は無視される。   In the above case, the thread management unit 23A notifies the level 2 thread. At this time, since the level 2 thread is processing a job status display request corresponding to the user terminal 3A, the notification is ignored.

ステップS36の処理が終了後に、ステップS31に戻ると、上記通知が無視されたことにより、レベル2のスレッドは、ユーザ端末3Bに対応するジョブ状態表示リクエストを処理することができなくなる。   When the process returns to step S31 after the process of step S36 is completed, the notification is ignored and the level 2 thread cannot process the job status display request corresponding to the user terminal 3B.

このため、ステップS36の処理が終了した後、処理は、ステップS31ではなく、ステップS32に移行する。これにより、レベル2のスレッドは、ユーザ端末3Aに対応するジョブ状態表示リクエストを処理した後に、ユーザ端末3Bに対応するジョブ状態表示リクエストを処理することができる。   For this reason, after the process of step S36 is complete | finished, a process transfers not to step S31 but to step S32. Thereby, the thread of level 2 can process the job status display request corresponding to the user terminal 3B after processing the job status display request corresponding to the user terminal 3A.

<ジョブ管理ノードのハードウェア構成の一例>
次に、図12の例を参照して、ジョブ管理ノード2のハードウェア構成の一例を説明する。図12の例に示すように、バス100に対して、プロセッサ111とRandom Access Memory(RAM)112とRead Only Memory(ROM)113とが接続される。また、該バス100に対して、補助記憶装置114と媒体接続部115と通信インタフェース116とが接続される。
<Example of hardware configuration of job management node>
Next, an example of the hardware configuration of the job management node 2 will be described with reference to the example of FIG. As shown in the example of FIG. 12, a processor 111, a random access memory (RAM) 112, and a read only memory (ROM) 113 are connected to the bus 100. An auxiliary storage device 114, a medium connection unit 115, and a communication interface 116 are connected to the bus 100.

プロセッサ111はRAM112に展開されたプログラムを実行する。実行されるプログラムとしては、実施形態における処理を行うジョブ状態表示プログラムが適用されてもよい。   The processor 111 executes a program expanded in the RAM 112. As a program to be executed, a job status display program for performing processing in the embodiment may be applied.

ROM113はRAM112に展開されるジョブ状態表示プログラムを記憶する不揮発性の記憶装置である。補助記憶装置114は、種々の情報を記憶する記憶装置であり、例えばハードディスクドライブや半導体メモリ等が適用されてもよい。媒体接続部115は、可搬型記録媒体115Mと接続可能に設けられている。   The ROM 113 is a nonvolatile storage device that stores a job status display program developed in the RAM 112. The auxiliary storage device 114 is a storage device that stores various information, and for example, a hard disk drive, a semiconductor memory, or the like may be applied. The medium connection unit 115 is provided so as to be connectable to the portable recording medium 115M.

可搬型記録媒体115Mとしては、可搬型のメモリ(例えば、光学ディスクや半導体メモリ等)が適用されてもよい。この可搬型記録媒体115Mに実施形態の処理を行うジョブ状態表示プログラムが記録されていてもよい。   As the portable recording medium 115M, a portable memory (for example, an optical disk or a semiconductor memory) may be applied. A job status display program for performing the processing of the embodiment may be recorded on the portable recording medium 115M.

上述したジョブスケジューラ11は、与えられたジョブ状態表示プログラムをプロセッサ111が実行することにより実現されてもよい。記憶部12は、RAM112や補助記憶装置114等により実現されてもよい。通信部13は、通信インタフェース116により実現されてもよい。   The job scheduler 11 described above may be realized by the processor 111 executing a given job status display program. The storage unit 12 may be realized by the RAM 112, the auxiliary storage device 114, or the like. The communication unit 13 may be realized by the communication interface 116.

RAM112、ROM113、補助記憶装置114および可搬型記録媒体115Mは、何れもコンピュータ読み取り可能な有形の記憶媒体の一例である。これらの有形な記憶媒体は、信号搬送波のような一時的な媒体ではない。   The RAM 112, the ROM 113, the auxiliary storage device 114, and the portable recording medium 115M are all examples of a tangible storage medium that can be read by a computer. These tangible storage media are not temporary media such as signal carriers.

<その他>
本実施形態は、以上に述べた実施の形態に限定されるものではなく、本実施形態の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。以上の実施形態に関し、以下の付記を開示する。
<Others>
The present embodiment is not limited to the above-described embodiment, and various configurations or embodiments can be taken without departing from the gist of the present embodiment. Regarding the above embodiment, the following supplementary notes are disclosed.

1 並列計算機システム
2 ジョブ管理ノード
3 ユーザ端末
4 計算ノード
11 ジョブスケジューラ
12 記憶部
13 通信部
21 応答負荷予測部
21A 算出部
21B 分類部
22 リクエストキュー部
23 出力部
23A スレッド管理部
111 プロセッサ
112 RAM
113 ROM
DESCRIPTION OF SYMBOLS 1 Parallel computer system 2 Job management node 3 User terminal 4 Calculation node 11 Job scheduler 12 Storage part 13 Communication part 21 Response load prediction part 21A Calculation part 21B Classification part 22 Request queue part 23 Output part 23A Thread management part 111 Processor 112 RAM
113 ROM

Claims (6)

複数のノードに接続された情報処理装置であって、
ユーザ端末から、ジョブの状態を示すジョブ状態情報の表示要求を受信した場合、前記ユーザ端末から投入されたジョブの投入ジョブ数、または投入ジョブのうち、実行中のジョブが使用しているノードのジョブ使用ノード数に基づいて、前記表示要求に応答する予測時間を示す予測値を算出する算出部と、
前記予測値に応じて、前記表示要求を複数のグループの何れかに分類する分類部と、
前記グループごとに、前記表示要求に応じたジョブ状態情報を収集し、前記ユーザ端末に出力する出力部と、
を備えることを特徴とする情報処理装置。
An information processing apparatus connected to a plurality of nodes,
When a request to display job status information indicating the job status is received from the user terminal, the number of jobs submitted from the user terminal or the node used by the job being executed out of the submitted jobs A calculation unit that calculates a predicted value indicating a predicted time of responding to the display request based on the number of job use nodes;
A classification unit that classifies the display request into any of a plurality of groups according to the predicted value;
For each group, an output unit that collects job status information according to the display request and outputs the collected job status information to the user terminal;
An information processing apparatus comprising:
前記算出部は、前記投入ジョブ数と、前記ジョブ使用ノード数との両方に基づいて、前記予測値を算出する、
ことを特徴とする請求項1記載の情報処理装置。
The calculation unit calculates the predicted value based on both the number of submitted jobs and the number of job use nodes.
The information processing apparatus according to claim 1.
前記算出部は、前記投入ジョブ数よりも、前記ジョブ使用ノード数に高い重み付けをして、前記予測値を算出する、
ことを特徴とする請求項2記載の情報処理装置。
The calculation unit calculates the predicted value by weighting the number of job use nodes higher than the number of input jobs.
The information processing apparatus according to claim 2.
前記複数のグループのそれぞれに対応するキューをさらに備え、
前記分類部は、前記キューのうち、分類した前記表示要求に対応するグループのキューに、前記表示要求を登録し、
前記出力部は、前記グループごとに、対応するキューから前記表示要求を取得する、
ことを特徴とする請求項1乃至3のうち何れか1項に記載の情報処理装置。
A queue corresponding to each of the plurality of groups;
The classification unit registers the display request in a queue of a group corresponding to the classified display request among the queues,
The output unit acquires the display request from a corresponding queue for each group.
The information processing apparatus according to claim 1, wherein the information processing apparatus is an information processing apparatus.
複数のノードに接続された情報処理装置により実行されるジョブ状態表示方法であって、
ユーザ端末から、ジョブの状態を示すジョブ状態情報の表示要求を受信した場合、前記ユーザ端末から投入されたジョブの投入ジョブ数、または投入ジョブのうち、実行中のジョブが使用しているノードのジョブ使用ノード数に基づいて、前記表示要求に応答する予測時間を示す予測値を算出し、
前記予測値に応じて、前記表示要求を複数のグループの何れかに分類し、
前記グループごとに、前記表示要求に応じたジョブ状態情報を収集し、前記ユーザ端末に出力する、
ことを特徴とするジョブ状態表示方法。
A job status display method executed by an information processing apparatus connected to a plurality of nodes,
When a request to display job status information indicating the job status is received from the user terminal, the number of jobs submitted from the user terminal or the node used by the job being executed out of the submitted jobs Based on the number of job use nodes, a predicted value indicating an estimated time to respond to the display request is calculated,
Depending on the predicted value, classify the display request into any of a plurality of groups,
For each group, collect job status information corresponding to the display request and output to the user terminal,
A job status display method characterized by the above.
複数のノードに接続された情報処理装置に、
ユーザ端末から、ジョブの状態を示すジョブ状態情報の表示要求を受信した場合、前記ユーザ端末から投入されたジョブの投入ジョブ数、または投入ジョブのうち、実行中のジョブが使用しているノードのジョブ使用ノード数に基づいて、前記表示要求に応答する予測時間を示す予測値を算出し、
前記予測値に応じて、前記表示要求を複数のグループの何れかに分類し、
前記グループごとに、前記表示要求に応じたジョブ状態情報を収集し、前記ユーザ端末に出力する、
処理を実行させるためのジョブ状態表示プログラム。
To information processing devices connected to multiple nodes,
When a request to display job status information indicating the job status is received from the user terminal, the number of jobs submitted from the user terminal or the node used by the job being executed out of the submitted jobs Based on the number of job use nodes, a predicted value indicating an estimated time to respond to the display request is calculated,
Depending on the predicted value, classify the display request into any of a plurality of groups,
For each group, collect job status information corresponding to the display request and output to the user terminal,
A job status display program for executing processing.
JP2018029165A 2018-02-21 2018-02-21 Information processing device, job status display method and job status display program Active JP6988556B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018029165A JP6988556B2 (en) 2018-02-21 2018-02-21 Information processing device, job status display method and job status display program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018029165A JP6988556B2 (en) 2018-02-21 2018-02-21 Information processing device, job status display method and job status display program

Publications (2)

Publication Number Publication Date
JP2019144902A true JP2019144902A (en) 2019-08-29
JP6988556B2 JP6988556B2 (en) 2022-01-05

Family

ID=67772391

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018029165A Active JP6988556B2 (en) 2018-02-21 2018-02-21 Information processing device, job status display method and job status display program

Country Status (1)

Country Link
JP (1) JP6988556B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117251663A (en) * 2023-09-20 2023-12-19 青岛哈尔滨工程大学创新发展中心 Helicopter landing stable state discrimination method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05113963A (en) * 1991-10-23 1993-05-07 Nec Corp Job state display system
JP2000081986A (en) * 1998-09-07 2000-03-21 Hitachi Information Systems Ltd Method for managing job in client-server type operation processing system and recording medium storing program for the method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05113963A (en) * 1991-10-23 1993-05-07 Nec Corp Job state display system
JP2000081986A (en) * 1998-09-07 2000-03-21 Hitachi Information Systems Ltd Method for managing job in client-server type operation processing system and recording medium storing program for the method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117251663A (en) * 2023-09-20 2023-12-19 青岛哈尔滨工程大学创新发展中心 Helicopter landing stable state discrimination method
CN117251663B (en) * 2023-09-20 2024-02-13 青岛哈尔滨工程大学创新发展中心 Helicopter landing stable state discrimination method

Also Published As

Publication number Publication date
JP6988556B2 (en) 2022-01-05

Similar Documents

Publication Publication Date Title
US7979864B2 (en) Apparatus for setting used license of executing job into unused license state and allocating the set unused license to a to be executed job based on priority
JP4577384B2 (en) Management machine, management system, management program, and management method
JPWO2006100752A1 (en) Distributed processing management apparatus, distributed processing management method, distributed processing management program
CN1737765A (en) Methods and apparatus to dispatch interrupts in multi-processor systems
JP6972796B2 (en) Software service execution equipment, systems, and methods
KR101471749B1 (en) Virtual machine allcoation of cloud service for fuzzy logic driven virtual machine resource evaluation apparatus and method
JP6299759B2 (en) Prediction function creation device, prediction function creation method, and program
WO2015121925A1 (en) System managing method
JP6666555B2 (en) Information processing apparatus, job submission method, and job submission program
JP2013196389A (en) Information processing apparatus, information processing program and information processing method
Ding et al. Kubernetes-oriented microservice placement with dynamic resource allocation
JP2016081430A (en) Information processing system, control apparatus, and control method of information processing system
KR101212496B1 (en) Method of representing usage of monitoring resource, computing apparatus for performing the same and record medium recording program for implementing the method
WO2013005322A1 (en) Control terminal, and control method
JP6988556B2 (en) Information processing device, job status display method and job status display program
US10817401B1 (en) System and method for job-to-queue performance ranking and resource matching
JP5515117B2 (en) Data processing device
CN113568728A (en) Job scheduling method, device, equipment and medium
JP5045576B2 (en) Multiprocessor system and program execution method
US20210158248A1 (en) Computer system and resource management method
JP5056346B2 (en) Information processing apparatus, information processing system, virtual server movement processing control method, and program
JP2016099972A (en) Process migration method and cluster system
CN110147280B (en) Big data application scheduling method based on security and cost perception
US20230144238A1 (en) System and method for scheduling machine learning jobs
JP7012778B2 (en) Monitoring system, monitoring device and monitoring method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201110

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211028

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211115

R150 Certificate of patent or registration of utility model

Ref document number: 6988556

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150