JPH0877029A - Processing request execution order control system based upon load rate - Google Patents

Processing request execution order control system based upon load rate

Info

Publication number
JPH0877029A
JPH0877029A JP21559794A JP21559794A JPH0877029A JP H0877029 A JPH0877029 A JP H0877029A JP 21559794 A JP21559794 A JP 21559794A JP 21559794 A JP21559794 A JP 21559794A JP H0877029 A JPH0877029 A JP H0877029A
Authority
JP
Japan
Prior art keywords
processor
processing request
processing
calculation
server
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.)
Pending
Application number
JP21559794A
Other languages
Japanese (ja)
Inventor
Hiroshi Ishijima
博史 石島
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP21559794A priority Critical patent/JPH0877029A/en
Publication of JPH0877029A publication Critical patent/JPH0877029A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

PURPOSE: To enable a computer system, consisting of plural computing processors and a server processor to efficiently execute an application program that makes the processors perform processing while synchronizing with one another. CONSTITUTION: A job assigning processor J assigns jobs to the computing processors A-E so that the number of jobs is made uniform. a process on a computing processor sends a processing request message to the server processor S. The server processor S, after receiving the processing request, determines the execution priority level of the processing request in consideration of the load state of the computing processor as the transmission source of the processing request and the scheduling priority level of the process having sent the processing request, executes the processing request according to a determined procedure, and sends a response back to the computing processor. Consequently, the degrees of advance of processings are adjusted among the processors and the program which advances the processings while associating the processors can efficiently be executed.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、複数のプロセッサが連
携して処理を行う計算機システムにおいて、プロセッサ
間で生じる処理要求の実行順序制御方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an execution order control system for processing requests generated between processors in a computer system in which a plurality of processors cooperate with each other to perform processing.

【0002】[0002]

【従来の技術】従来、プロセッサを複数結合し、計算中
心の処理を行う計算プロセッサと、計算プロセッサに共
通な機能を提供するサーバプロセッサから構成される計
算機システムにおいては、計算プロセッサのプロセスか
らの処理要求をサーバプロセッサで実行する際に、計算
プロセッサの負荷情報が処理要求の実行順序に反映され
ていなかった。
2. Description of the Related Art Conventionally, in a computer system which is composed of a plurality of processors and performs a calculation-centric processing and a server processor which provides a common function to the calculation processors, the processing from the processing of the calculation processor When executing a request on the server processor, the load information of the calculation processor was not reflected in the execution order of the processing request.

【0003】複数のプロセスが複数のプロセッサに跨
り、プロセス間で同期を取って処理を遂行する形態のア
プリケーションは、複数のプロセスに処理を振り分ける
役割を果たすプロセス(マスタプロセス)と、マスタプ
ロセスからの処理を請け負うプロセス(ワーカープロセ
ス)から構成される。マスタプロセスが複数のワーカー
プロセスに処理を依頼した場合、全てのワーカープロセ
スが処理を完了してマスタプロセスに応答を送るまでマ
スタプロセスの処理は待ち続ける。このため、プロセッ
サ毎に負荷の高低がばらついている複数の計算プロセッ
サにワーカープロセスが分散されている場合、マスタプ
ロセスの待ち時間は、負荷の一番高いプロセッサ上のワ
ーカープロセスからの応答時間となり、非効率な待ち時
間が生じる。
An application having a form in which a plurality of processes are spread over a plurality of processors and the processes are synchronized with each other to execute the process is divided into a process (master process) which plays a role of distributing the process to the plurality of processes and a master process. It is composed of processes (worker processes) that undertake processing. When the master process requests processing from a plurality of worker processes, the processing of the master process continues to wait until all worker processes have completed processing and send a response to the master process. For this reason, when worker processes are distributed among multiple calculation processors whose load level varies from processor to processor, the waiting time of the master process is the response time from the worker process on the processor with the highest load, Inefficient latency occurs.

【0004】また、マスタプロセスが全ワーカープロセ
スにI/O処理を含む処理要求を依頼する場合、全ワー
カープロセスは同時にI/Oサーバプロセッサへ処理要
求を送信し、サーバプロセッサからの応答を待つことに
なる。ここで、従来方式では、サーバプロセッサでの処
理要求の実行順序は計算プロセッサの負荷情報を考慮し
ないため、サーバプロセッサから計算プロセッサへの応
答時間は計算プロセッサの負荷の高低に関わらず均一で
あった。
When the master process requests a processing request including I / O processing to all worker processes, all worker processes simultaneously send processing requests to the I / O server processor and wait for a response from the server processor. become. Here, in the conventional method, since the execution order of processing requests in the server processor does not consider the load information of the calculation processor, the response time from the server processor to the calculation processor is uniform regardless of the load of the calculation processor. .

【0005】このため、従来方式では、マスタプロセス
のワーカープロセスからの応答待ち時間は、負荷の最も
高い計算プロセッサ上のワーカープロセスの応答時間に
依存してしまい、前述の非効率な待ち時間を解消する有
効な手段が存在しなかった。
Therefore, in the conventional method, the response waiting time from the worker process of the master process depends on the response time of the worker process on the computational processor with the highest load, and the aforementioned inefficient waiting time is eliminated. There was no effective way to do it.

【0006】[0006]

【発明が解決しようとする課題】プロセッサ間の負荷の
差を減少させる方法として、ユーザから投入されたジョ
ブをジョブ数が均等になるように各計算プロセッサに配
分することが考えられるが、各ジョブの実行時間や特性
がジョブ毎に異なり、プロセスの生成・消滅により計算
プロセッサ上のプロセス数が動的に変化することも考え
られるため、動的な負荷の変化を吸収することは困難で
ある。そこで、サーバプロセッサで計算プロセッサから
の処理要求を実行する際に、負荷の高い計算プロセッサ
上で実行されている高優先度のプロセスからの処理要求
の実行順序を優先し、負荷の高い計算プロセッサへの応
答時間を短くし、負荷の高いプロセッサ上で実行されて
いるプロセスの処理遂行を効率化することを考えた。
As a method of reducing the difference in load between processors, it is conceivable to distribute the jobs submitted by the user to the respective calculation processors so that the number of jobs becomes even. It is difficult to absorb the dynamic change in the load because the execution time and characteristics of the process may differ for each job, and the number of processes on the calculation processor may change dynamically due to the creation and disappearance of processes. Therefore, when executing a processing request from a computational processor on the server processor, priority is given to the order of execution of processing requests from high-priority processes executing on the computational processor with a high load, We considered to shorten the response time of and to improve the efficiency of the process execution of the process executed on the processor with heavy load.

【0007】このことにより、マスタプロセスが複数の
ワーカープロセスにI/O処理を含む処理要求を依頼
し、複数のワーカープロセスがI/Oサーバプロセッサ
に同時にI/O処理要求を依頼した場合、サーバプロセ
ッサからワーカープロセスへの応答は、負荷の最も高い
計算プロセッサ上のワーカープロセスへ優先して行われ
る。このため、最も負荷の高い計算プロセッサ上のワー
カープロセスからマスタプロセスへの応答時間は従来方
式に比べて短くなる。このため、ワーカープロセスから
マスタプロセスへの応答時間が均一化され、マスタプロ
セスが全ワーカープロセスの応答を待つ時間が従来方式
に比べ短くなり、非効率な待ち時間が改善されることに
なる。
As a result, when the master process requests a plurality of worker processes for processing requests including I / O processing, and a plurality of worker processes simultaneously requests I / O processing requests to the I / O server processors, the server The response from the processor to the worker process is given priority to the worker process on the computational processor with the highest load. Therefore, the response time from the worker process on the computational processor, which has the highest load, to the master process is shorter than that of the conventional method. Therefore, the response time from the worker process to the master process is made uniform, the time the master process waits for the responses of all the worker processes becomes shorter than in the conventional method, and the inefficient waiting time is improved.

【0008】本発明の1つの目的は、負荷の高い計算プ
ロセッサ上で実行されているプロセスに対して、サーバ
プロセッサの応答時間を短くすることにより、そのプロ
セスの処理遂行時間を相対的に短くさせることである。
One object of the present invention is to shorten the response time of a server processor for a process executed on a heavy-load computing processor, thereby making the process execution time of the process relatively short. That is.

【0009】本発明の他の目的は、計算プロセッサ上の
各プロセスの処理遂行時間を相対的に均衡化することに
より、プロセス間で同期を取って処理を遂行する形態の
アプリケーションプログラムを効率的に実行することで
ある。
Another object of the present invention is to efficiently balance an execution time of each process on a calculation processor so that an application program in a form in which the processes are executed in synchronization with each other can be efficiently performed. Is to do.

【0010】本発明の更に他の目的は、各計算プロセッ
サの負荷状況を把握する手段として、各計算プロセッサ
がサーバプロセッサへ処理要求を送信する際に負荷状況
も一緒に送信することにより負荷状況を監視するための
オーバーヘッドを減少させることである。
Still another object of the present invention is to detect the load status of each calculation processor by transmitting the load status together when each calculation processor sends a processing request to the server processor. It is to reduce the overhead for monitoring.

【0011】[0011]

【課題を解決するための手段】本発明では、前述した目
的を達成するために、計算プロセッサの負荷を計算する
ための手段と、それを計算プロセッサ上で与えられたプ
ロセスのスケジューリング優先度とともにサーバプロセ
ッサへの処理要求メッセージに挿入する手段とを提供
し、サーバプロセッサにおいては、処理要求メッセージ
に含まれる情報からその処理要求を送信した計算プロセ
ッサの相対的な負荷を計算するための手段と、そこで求
めた負荷情報とプロセスのスケジューリング優先度によ
り、処理要求の実行順序と処理要求を実行するサーバプ
ロセスのスケジューリング優先度を制御する手段を提供
する。
According to the present invention, in order to achieve the above-mentioned object, a means for calculating a load of a calculation processor, a server for processing the load, together with a scheduling priority of a given process on the calculation processor are provided. Means for inserting into the processing request message to the processor, and means for calculating the relative load of the calculation processor that has transmitted the processing request from the information included in the processing request message in the server processor, and A means is provided for controlling the execution order of processing requests and the scheduling priority of a server process that executes processing requests based on the obtained load information and the scheduling priority of the process.

【0012】[0012]

【作用】ワーカープロセスからサーバプロセッサへの処
理要求の実行順序と、その処理要求を実行するサーバプ
ロセスのスケジューリング優先度を制御することがで
き、計算プロセッサの負荷とアプリケーシヨンが設定し
たプロセスのスケジューリング優先度に応じてサーバプ
ロセッサから計算プロセッサへの応答時間を制御するこ
とができる。このことにより、プロセッサ間で同期を取
って処理を遂行する形態のアプリケーションプログラム
を効率的に実行できる。
It is possible to control the execution order of processing requests from the worker process to the server processor and the scheduling priority of the server process that executes the processing requests. The load of the calculation processor and the scheduling priority of the process set by the application can be controlled. The response time from the server processor to the calculation processor can be controlled accordingly. As a result, it is possible to efficiently execute an application program in which processing is performed in synchronization with each other among the processors.

【0013】[0013]

【実施例】図1は本発明のシステム構成図である。A〜
Eは計算プロセッサである。
DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 is a system configuration diagram of the present invention. A ~
E is a calculation processor.

【0014】計算プロセッサではユーザから投入された
ジョブをプロセスとして実行する。Jはジョブ割当プロ
セッサである。ジョブ割当プロセッサは各計算プロセッ
サに割り当てられているジョブの数を把握する手段を備
え、各計算プロセッサのジョブ数が均等になるようにジ
ョブを割り当てる。Sはサーバプロセッサである。サー
バプロセッサでは、計算プロセッサからの処理要求を実
行する。IはI/O処理装置である。ここでは、サーバ
プロセッサの一例としてI/Oサーバプロセッサを示し
ている。Nは各プロセッサを接続する高速ネットワーク
である。
The calculation processor executes a job submitted by a user as a process. J is a job allocation processor. The job allocation processor has means for grasping the number of jobs allocated to each calculation processor, and allocates jobs so that the number of jobs of each calculation processor becomes equal. S is a server processor. The server processor executes the processing request from the calculation processor. I is an I / O processing device. Here, an I / O server processor is shown as an example of the server processor. N is a high-speed network connecting each processor.

【0015】図2は、図1で示した計算機システム上で
動作するアプリケーションプログラムの動作例を示して
いる。ジョブ割当プロセッサに投入されたジョブはジョ
ブJ1,J2として示されている。ジョブJ1,J2は
計算プロセッサに割り当てられるのを待っている状態で
あり、すでに割り当てられたジョブは、計算プロセッサ
上でプロセスとして実行されている。また、計算プロセ
ッサB,C,Dでは、マスタプロセスA1に属さない他
のプロセスB2,C1,D1が実行されていることを示
している。マスタプロセスA1はワーカープロセスB
1,E1にI/O処理を含む処理要求を送信し、ワーカ
ープロセスはI/O処理要求をサーバプロセッサSに送
信する。サーバプロセッサSでは、計算プロセッサから
の処理要求を処理するためにS1,S2,S3,S4の
4つのサーバプロセスを用意して処理要求を実行する例
を示している。また、それら4つのサーバプロセスで処
理しきれない数の処理要求がある場合、それらの処理要
求は処理要求キューS5にキューイングされる。サーバ
プロセッサでの処理が終了した処理要求は、応答として
送信元のワーカープロセスに返信される。ワーカープロ
セスはサーバプロセッサからの応答を処理した後、マス
タプロセスA1にその処理結果を返信する。マスタプロ
セスA1からワーカープロセスB1,E1への処理要求
をA1B1,A1E1として示し、ワーカープロセスB
1,E1からサーバプロセッサSへの処理要求をB1
S,E1Sで示す。また、サーバプロセッサSからワー
カープロセスB1,E1への応答をSB1,SE1とし
て示し、ワーカープロセスB1,E1からマスタプロセ
スA1への応答をB1A1,E1A1として示す。本方
式では、例えば、計算プロセッサBの負荷が計算プロセ
ッサEの負荷よりも高く、計算プロセッサBとEからほ
ぼ同時に処理要求がサーバプロセッサSに送信された場
合、サーバプロセッサでは処理要求B1Sを優先して実
行する。このことにより、負荷の最も高い計算プロセッ
サ上のワーカープロセスからマスタプロセスへの応答時
間は短縮され、その結果として、マスタプロセスの非効
率な待ち時間は改善される。
FIG. 2 shows an operation example of an application program operating on the computer system shown in FIG. The jobs submitted to the job allocation processor are shown as jobs J1 and J2. The jobs J1 and J2 are in a state of waiting to be assigned to the calculation processor, and the already assigned job is executed as a process on the calculation processor. The calculation processors B, C, D indicate that other processes B2, C1, D1 not belonging to the master process A1 are being executed. Master process A1 is worker process B
1, a processing request including an I / O processing is sent to E1, and the worker process sends an I / O processing request to the server processor S. In the server processor S, an example is shown in which four server processes S1, S2, S3, S4 are prepared to process the processing request from the calculation processor and the processing request is executed. When there are a number of processing requests that cannot be processed by these four server processes, those processing requests are queued in the processing request queue S5. The processing request that has been processed by the server processor is returned to the worker process of the transmission source as a response. After processing the response from the server processor, the worker process returns the processing result to the master process A1. The processing request from the master process A1 to the worker processes B1 and E1 is shown as A1B1 and A1E1.
1, the processing request from E1 to the server processor S is B1
Denote by S, E1S. The response from the server processor S to the worker processes B1 and E1 is shown as SB1 and SE1, and the response from the worker processes B1 and E1 to the master process A1 is shown as B1A1 and E1A1. In this method, for example, when the load of the calculation processor B is higher than the load of the calculation processor E and the processing requests from the calculation processors B and E are transmitted to the server processor S at almost the same time, the server processor gives priority to the processing request B1S. To execute. This reduces the response time from the worker process on the busiest computational processor to the master process and, as a result, improves the inefficient latency of the master process.

【0016】また、サーバプロセッサの負荷が低いと
き、または、処理要求の数が少ないときは、サーバプロ
セッサからワーカープロセスへの平均的な応答時間が短
いため処理要求の実行順序を入れ換えた際のワーカープ
ロセスへ与える効果が少ない。しかし、サーバプロセッ
サの負荷が高いとき、または、処理要求の数が多いとき
は、一番最初に実行される処理要求と一番最後に実行さ
れる処理要求とでは、その処理要求を送信したワーカー
プロセスへの応答時間が大きく変わるため、処理要求の
実行順序を入れ換えた際のワーカープロセスへ与える効
果が大きく、本方式を用いて適切な順序で処理要求を実
行した際にマスタプロセスに与える効果が大きくなる。
Further, when the load on the server processor is low, or when the number of processing requests is small, the average response time from the server processor to the worker process is short, so the worker when switching the execution order of the processing requests Has little effect on the process. However, when the load on the server processor is high or the number of processing requests is large, the processing request executed first and the processing request executed last are the worker who sent the processing request. Since the response time to the process changes significantly, the effect on the worker process when the execution order of the processing requests is changed is large, and the effect on the master process when the processing requests are executed in an appropriate order using this method. growing.

【0017】図3は計算プロセッサ上のプロセスがサー
バプロセッサへの処理要求を実行した際の処理要求メッ
セージの作成手順である。計算プロセッサの負荷率は、
走行可能プロセス数とCPU稼働率から求めるものとす
る。走行可能プロセス数とは、1つのプロセッサを共用
しているプロセスの数であり、子の値が大きいと1プロ
セスが単位時間あたりに利用できるCPU使用時間が少
なくなり、プロセッサの負荷が高い状態を表す。一方、
CPU稼働率は、単位時間あたりにCPUが稼働してい
る割合を示している。実際のシステムで負荷率を求める
場合の計算式の一例として、図3にある負荷率の計算式
を示す。次に、処理要求メッセージを作成するまでの手
順について説明する。プロセスが処理要求命令を発行し
た場合、システムは、そのプロセスのプロセス構造体に
記述されているスケジューリング優先度を求める。次
に、CPU稼働率と走行可能プロセス数を求め、得られ
た走行可能プロセス数とCPU稼働率を用いてプロセッ
サの負荷を計算する。次に、図4に示す処理要求メッセ
ージを作成し、プロセスのスケジューリング優先度とプ
ロセッサの負荷をメッセージに代入し、メッセージをサ
ーバプロセッサに送信する。
FIG. 3 is a procedure for creating a processing request message when a process on the calculation processor executes a processing request to the server processor. The load factor of the calculation processor is
It is calculated from the number of runnable processes and the CPU operating rate. The number of runnable processes is the number of processes that share one processor. If the child value is large, the CPU usage time that can be used by one process per unit time will decrease, and the processor load will be high. Represent on the other hand,
The CPU operating rate indicates the rate at which the CPU is operating per unit time. The load factor calculation formula shown in FIG. 3 is shown as an example of the calculation formula for obtaining the load factor in an actual system. Next, a procedure for creating the processing request message will be described. When a process issues a processing request instruction, the system determines the scheduling priority described in the process structure of the process. Next, the CPU operating rate and the number of runnable processes are obtained, and the processor load is calculated using the obtained number of runnable processes and the CPU operating rate. Next, the processing request message shown in FIG. 4 is created, the scheduling priority of the process and the load of the processor are substituted into the message, and the message is sent to the server processor.

【0018】図5はサーバプロセッサにおける処理要求
の実行順序の決定手順を示している。処理要求の優先度
(実行順序)は、サーバプロセッサでどの処理要求から
実行するかを決定するために求めるものである。処理要
求の優先度は、処理要求を送信したワーカープロセスの
スケジューリング優先度とそのプロセスを実行している
計算プロセッサの相対的な負荷率から求めるものとす
る。計算プロセッサの相対的な負荷率とは、(計算プロ
セッサの負荷率/処理要求を送信した全計算プロセッサ
の負荷率の平均)によって求めるものとする。実際のシ
ステムで処理要求の優先度を求めるための計算式の一例
として図5にある処理要求優先度の計算式を示す。次
に、処理要求の実行順序を決定するための手順について
説明する。はじめに、処理要求メッセージを受信し、処
理要求の送信元アドレス、処理要求を送信したプロセス
のスケジューリング優先度、計算プロセッサの負荷率を
図6に示す実行順序管理テーブルに記録する。次に、実
行順序管理テーブルのプロセススケジューリング優先度
とプロセッサ負荷を参照し、図5に示す処理要求優先度
の計算式より処理要求優先度を求め、実行順序管理テー
ブルに記録する。図6に示す処理要求送信元アドレスと
は、処理要求が全システム上で一元的に識別できるアド
レスを示し、プロセススケジューリング優先度は、処理
要求を送信したワーカープロセスのスケジューリング優
先度であり、サーバプロセッサ上で処理要求を実行する
サーバプロセスのスケジューリング優先度を決定するた
めに用いる。また、プロセッサ負荷とは処理要求を送信
した計算プロセッサの負荷率、処理要求優先度とは、図
5に示す処理要求優先度の計算式より求めた優先度を示
している。次に、実行順序管理テーブルの処理要求優先
度に基づいて、処理要求を一時的に保持するための処理
要求キューの該当箇所に処理要求を挿入する。処理要求
キューは図7に示すように、多段階待ち行列となってい
る。図7の各段階が処理要求優先度を示し、図6の実行
順序管理テーブルにある処理要求優先度に対応してい
る。実行順序は、上位の優先度の段階にキューされてい
る処理要求から順に実行される。従来のUNIXのプロ
セスのスケジューリングに用いられているように、一定
の時間が経過した後に、下位の優先度の処理要求を上位
の段階に移動し、処理要求がある時間が経過した後には
必ず実行されることを保証するものとする。
FIG. 5 shows a procedure for determining the execution order of processing requests in the server processor. The processing request priority (execution order) is obtained by the server processor in order to determine which processing request is executed first. The priority of the processing request is obtained from the scheduling priority of the worker process that has transmitted the processing request and the relative load factor of the computing processor executing the process. The relative load factor of the calculation processor is calculated by (load factor of the calculation processor / average of load factors of all calculation processors that have transmitted the processing request). The calculation formula of the processing request priority shown in FIG. 5 is shown as an example of the calculation formula for obtaining the priority of the processing request in the actual system. Next, a procedure for determining the execution order of processing requests will be described. First, the processing request message is received, and the source address of the processing request, the scheduling priority of the process that sent the processing request, and the load factor of the calculation processor are recorded in the execution order management table shown in FIG. Next, referring to the process scheduling priority and the processor load in the execution order management table, the processing request priority is obtained from the calculation formula of the processing request priority shown in FIG. 5, and recorded in the execution order management table. The processing request transmission source address shown in FIG. 6 indicates an address by which the processing request can be centrally identified on the entire system, and the process scheduling priority is the scheduling priority of the worker process that has transmitted the processing request. Used to determine the scheduling priority of the server process that executes the processing request above. Further, the processor load indicates the load factor of the calculation processor that has transmitted the processing request, and the processing request priority indicates the priority obtained from the calculation formula of the processing request priority shown in FIG. Next, based on the processing request priority of the execution order management table, the processing request is inserted into the relevant part of the processing request queue for temporarily holding the processing request. The processing request queue is a multistage queue as shown in FIG. Each stage of FIG. 7 shows the processing request priority, and corresponds to the processing request priority in the execution order management table of FIG. The execution order is such that the processing requests queued in the higher priority stage are executed in order. As used in conventional UNIX process scheduling, a processing request of a lower priority is moved to a higher level after a certain time has passed, and it is always executed after a certain time has passed. Be guaranteed.

【0019】図8は処理要求の実行手順を示している。
サーバプロセッサ上の4つのサーバプロセスのうち待機
状態にあるサーバプロセスが処理要求キューで最上位に
キューされている処理要求を取りだし、サーバプロセス
の優先度を図6の実行順序管理テーブルのプロセススケ
ジューリング優先度に変更して処理要求を実行する。実
行終了後は、送信先アドレス、送信元アドレス、処理結
果から構成される応答メッセージを作成し、送信元の計
算プロセッサに送信する。
FIG. 8 shows an execution procedure of the processing request.
Of the four server processes on the server processor, the server process in the standby state takes out the processing request queued at the highest level in the processing request queue, and the priority of the server process is given to the process scheduling priority in the execution order management table of FIG. Change processing every time and execute processing request. After the execution is completed, a response message composed of the destination address, the source address, and the processing result is created and transmitted to the source calculation processor.

【0020】[0020]

【発明の効果】本発明によれば、サーバプロセッサの応
答時間を送信元の計算プロセッサの状況に応じて制御で
きるため、従来方式のように、計算プロセッサの状況を
無視して処理要求を実行する場合に比べ、計算プロセッ
サ間で負荷が変動した場合や、サーバプロセッサの負荷
が高くなった場合に、複数プロセッサを連携させて実行
する形態のアプリケーションプログラムを効率的に実行
することができる。
As described above, according to the present invention, the response time of the server processor can be controlled according to the state of the transmission source calculation processor, so that the processing request is executed while ignoring the state of the calculation processor as in the conventional method. Compared with the case, when the load varies between the calculation processors or when the load on the server processor increases, it is possible to efficiently execute the application program in the form of executing a plurality of processors in cooperation with each other.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明のシステム構成図である。FIG. 1 is a system configuration diagram of the present invention.

【図2】本発明のシステム上で動作するアプリケーショ
ンプログラムの動作例である。
FIG. 2 is an operation example of an application program operating on the system of the present invention.

【図3】処理要求メッセージの作成手順を示す図であ
る。
FIG. 3 is a diagram showing a procedure for creating a processing request message.

【図4】処理要求メッセージの構成図である。FIG. 4 is a configuration diagram of a processing request message.

【図5】処理要求の実行順序の決定手順を示す図であ
る。
FIG. 5 is a diagram showing a procedure for determining an execution order of processing requests.

【図6】実行順序管理テーブルの構成図である。FIG. 6 is a configuration diagram of an execution order management table.

【図7】処理要求キューを示す図である。FIG. 7 is a diagram showing a processing request queue.

【図8】処理要求の実行手順を示す図である。FIG. 8 is a diagram showing an execution procedure of a processing request.

【符号の説明】[Explanation of symbols]

A,B,C,D,E…計算プロセッサ、 J…ジョブ割り当てプロセッサ、 S…サーバプロセッサ、 I…ディスク装置、 N…高速ネットワーク、 A1…マスタプロセス、 B1,E1…ワーカープロセス、 B2,C1,D1…マスタプロセスA1に属さないプロ
セス、 J1,J2…ユーザジョブ、 S5…処理要求キュー、 S1,S2,S3,S4…サーバプロセス、 A1B1,A1E1…マスタプロセスからワーカープロ
セスへの処理要求、 B1A1,E1A1…ワーカープロセスからマスタプロ
セスへの応答、 B1S,E1S…ワーカープロセスからサーバプロセッ
サへの処理要求、 SB1,SE1…サーバプロセッサからワーカープロセ
ッサへの応答、 71,72,73…高優先度処理要求、 74,75…低優先度処理要求。
A, B, C, D, E ... Computational processor, J ... Job allocation processor, S ... Server processor, I ... Disk device, N ... High-speed network, A1 ... Master process, B1, E1 ... Worker process, B2, C1, D1 ... Process not belonging to master process A1, J1, J2 ... User job, S5 ... Processing request queue, S1, S2, S3, S4 ... Server process, A1B1, A1E1 ... Processing request from master process to worker process, B1A1, E1A1 ... Response from worker process to master process, B1S, E1S ... Processing request from worker process to server processor, SB1, SE1 ... Response from server processor to worker processor, 71, 72, 73 ... High priority processing request, 74, 75 ... Low priority processing request.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】メモリとCPUからなるプロセッサを複数
結合した計算機システムにおいて、 CPU依存の計算処理を主体に行う計算プロセッサと、
I/O処理、ネットワーク処理等の各プロセッサに共通
の機能を提供し、かつ、計算プロセッサからの処理要求
を実行するサーバプロセッサと、ユーザから投入された
ジョブを計算プロセッサに均等に割り当てるジョブ割当
プロセッサから構成され、 計算プロセッサ上では、自プロセッサの負荷状況を検知
する手段を有し、計算プロセッサ上のプロセスがサーバ
プロセッサへ処理要求を通知する際に、そのプロセスの
スケジューリング優先度と検知したプロセッサの負荷状
況を通知する手段を有し、 処理要求をサーバプロセッサにおいて実行する際に、処
理要求を送信したプロセスのスケジューリング優先度と
プロセッサの負荷の状況に基づいて実行順序と実行の優
先度を制御することを特徴とする処理要求実行順序制御
方式。
1. A computer system in which a plurality of processors each comprising a memory and a CPU are coupled together, and a computer processor which mainly performs CPU-dependent calculation processing,
A server processor that provides common functions to each processor such as I / O processing and network processing, and that executes processing requests from the calculation processor, and a job allocation processor that evenly allocates jobs submitted by users to the calculation processors. The calculation processor has means for detecting the load status of its own processor, and when a process on the calculation processor notifies the server processor of a processing request, the scheduling priority of that process and the processor When the server processor executes a processing request, it has a means to notify the load status, and controls the execution order and execution priority based on the scheduling priority of the process that sent the processing request and the load status of the processor. A process request execution order control method characterized by the following.
JP21559794A 1994-09-09 1994-09-09 Processing request execution order control system based upon load rate Pending JPH0877029A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21559794A JPH0877029A (en) 1994-09-09 1994-09-09 Processing request execution order control system based upon load rate

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21559794A JPH0877029A (en) 1994-09-09 1994-09-09 Processing request execution order control system based upon load rate

Publications (1)

Publication Number Publication Date
JPH0877029A true JPH0877029A (en) 1996-03-22

Family

ID=16675072

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21559794A Pending JPH0877029A (en) 1994-09-09 1994-09-09 Processing request execution order control system based upon load rate

Country Status (1)

Country Link
JP (1) JPH0877029A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000284980A (en) * 1999-01-28 2000-10-13 Mitsubishi Electric Inf Technol Center America Inc Multi-task system and message transmission scheduling method in the system
US6760820B2 (en) * 1999-06-14 2004-07-06 Maxtor Corporation Method of arbitrating requests for access to a single buffer memory in a disk drive
US7293092B2 (en) 2002-07-23 2007-11-06 Hitachi, Ltd. Computing system and control method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000284980A (en) * 1999-01-28 2000-10-13 Mitsubishi Electric Inf Technol Center America Inc Multi-task system and message transmission scheduling method in the system
US6760820B2 (en) * 1999-06-14 2004-07-06 Maxtor Corporation Method of arbitrating requests for access to a single buffer memory in a disk drive
US7293092B2 (en) 2002-07-23 2007-11-06 Hitachi, Ltd. Computing system and control method

Similar Documents

Publication Publication Date Title
Hui et al. Improved strategies for dynamic load balancing
JP3678414B2 (en) Multiprocessor system
JP3882931B2 (en) Management of dispatch function in virtual machine environment
US7784053B2 (en) Management of virtual machines to utilize shared resources
US8793695B2 (en) Information processing device and information processing method
US7689996B2 (en) Method to distribute programs using remote Java objects
US6519660B1 (en) Method, system and program products for determining I/O configuration entropy
KR101651871B1 (en) Job Allocation Method on Multi-core System and Apparatus thereof
WO2016078178A1 (en) Virtual cpu scheduling method
JPH09167141A (en) Load distribution control method
CN109564528B (en) System and method for computing resource allocation in distributed computing
TW200404253A (en) Thread dispatch mechanism and method for multiprocessor computer systems
JP4912927B2 (en) Task allocation apparatus and task allocation method
CN114721818A (en) Kubernetes cluster-based GPU time-sharing method and system
JPH0628323A (en) Process execution control method
CN109189581B (en) Job scheduling method and device
JPH0877029A (en) Processing request execution order control system based upon load rate
US7086059B2 (en) Throttling queue
JPH08305671A (en) Job scheduling system
Sekaran et al. SIQ algorithm for efficient load balancing in cloud
JPH0991257A (en) Cpu management system
JPH07234847A (en) Scheduling method for job
JPH03262074A (en) Dynamic equalizing system of load in loose coupled parallel computers
JPH0612395A (en) Task allocating method in multiprocessor system
JPH11195007A (en) Distributed processing system/method