JP2004038511A - Multi-processor system, load distribution control method for the same, and program for the same system - Google Patents
Multi-processor system, load distribution control method for the same, and program for the same system Download PDFInfo
- Publication number
- JP2004038511A JP2004038511A JP2002194044A JP2002194044A JP2004038511A JP 2004038511 A JP2004038511 A JP 2004038511A JP 2002194044 A JP2002194044 A JP 2002194044A JP 2002194044 A JP2002194044 A JP 2002194044A JP 2004038511 A JP2004038511 A JP 2004038511A
- Authority
- JP
- Japan
- Prior art keywords
- event
- exclusive control
- processors
- management device
- processor
- 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
Links
Images
Landscapes
- Multi Processors (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明はマルチプロセッサシステム及びそれに用いる負荷分散制御方法並びにそのプログラムに関し、特に各プロセッサがメモリ空間を共有しないマルチプロセッサシステムにおける負荷分散制御方法に関する。
【0002】
【従来の技術】
従来、この種のマルチプロセッサシステムでは、複数のプロセッサ各々がメモリ空間を共有しない設定となっており、そのシステムにおける負荷分散制御を行う際に、一般に、プロセッサ間での同期が困難である。
【0003】
上記のマルチプロセッサシステムでは、図6に示すように、負荷分散処理制御用マスタプロセッサ4が存在し、この負荷分散処理制御用マスタプロセッサ4が他のプロセッサ(#1〜#m)5−1〜5−mの負荷状況を管理している(以下、第1の従来技術とする)。
【0004】
負荷分散処理制御用マスタプロセッサ4による他のプロセッサ(#1〜#m)5−1〜5−mの負荷状況の管理は、各プロセッサ負荷情報41及び同期管理情報42を用いて行われている。
【0005】
また、他のマルチプロセッサシステムでは、図7に示すように、プロセッサ(#1〜#x)7−1〜7−x各々にA〜X系処理プログラム71−1〜71−xを配布しておくことで、プロセッサ(#1〜#x)7−1〜7−x各々において処理することができるイベント内容を固定している。
【0006】
この場合、このマルチプロセッサシステムでは、プロセッサ(#0)6からプロセッサ(#1〜#x)7−1〜7−x各々にA系イベント、B系イベント、C系イベント、・・・というように指示して動作している(以下、第2の従来技術とする)。
【0007】
【発明が解決しようとする課題】
上述した従来のマルチプロセッサシステムでは、第1の従来技術の場合、いかにイベントを効率的に分配するかを目的としているので、各プロセッサを効率的に使用することができない。
【0008】
また、第2の従来技術の場合には、各プロセッサにおいて処理することができるイベント内容を固定し、各プロセッサによって動作するプログラムが異なっているため、負荷分散を効率的に行うことが困難である。
【0009】
そこで、本発明の目的は上記の問題点を解消し、各プロセッサを効率的に使用することができ、負荷分散を効率的に行うことができるマルチプロセッサシステム及びそれに用いる負荷分散制御方法並びにそのプログラムを提供することにある。
【0010】
【課題を解決するための手段】
本発明によるマルチプロセッサシステムは、各々独自のメモリ空間を持つ複数のプロセッサからなるマルチプロセッサシステムであって、
処理内容と排他制御タグとからなるイベントを外部から受信してキューイングするイベントキューと、
前記プロセッサによって処理されるイベントの排他制御タグを管理する排他制御管理デバイスとを有し、
前記複数のプロセッサ各々が、前記イベントキューから前記イベントを取得する際に前記排他制御管理デバイスに問合せを行う手段と、当該イベント内の排他制御タグが前記排他制御管理デバイスに登録されていない時に前記イベントキューから前記イベントを取得する手段と、当該イベントの取得時にそれに対応する排他制御タグを前記排他制御管理デバイスに登録する手段とを備えている。
【0011】
本発明による負荷分散制御方法は、各々独自のメモリ空間を持つ複数のプロセッサからなるマルチプロセッサシステムの負荷分散制御方法であって、
処理内容と排他制御タグとからなるイベントを外部から受信してキューイングするイベントキューから前記イベントを取得する際に前記プロセッサによって処理されるイベントの排他制御タグを管理する排他制御管理デバイスに問合せを行うステップと、当該イベント内の排他制御タグが前記排他制御管理デバイスに登録されていない時に前記イベントキューから前記イベントを取得するステップと、当該イベントの取得時にそれに対応する排他制御タグを前記排他制御管理デバイスに登録するステップとを前記複数のプロセッサ各々に備えている。
【0012】
本発明による負荷分散制御方法のプログラムは、各々独自のメモリ空間を持つ複数のプロセッサからなるマルチプロセッサシステムの負荷分散制御方法のプログラムであって、前記複数のプロセッサ各々に、処理内容と排他制御タグとからなるイベントを外部から受信してキューイングするイベントキューから前記イベントを取得する際に前記プロセッサによって処理されるイベントの排他制御タグを管理する排他制御管理デバイスに問合せを行う処理と、当該イベント内の排他制御タグが前記排他制御管理デバイスに登録されていない時に前記イベントキューから前記イベントを取得する処理と、当該イベントの取得時にそれに対応する排他制御タグを前記排他制御管理デバイスに登録する処理とを実行させている。
【0013】
すなわち、本発明のマルチプロセッサシステムは、各々独自のメモリ空間を持つ複数のプロセッサと、イベントキューと、排他制御管理デバイスとをバスによって接続したマルチプロセッサシステムにおいて、負荷分散を制御するマスタプロセッサを必要とせず、処理内容と排他制御タグとからなるイベントを外部から受信してイベントキューにキューイングしている。
【0014】
イベント処理を行うプロセッサは自らイベントキューからイベントを取得し、イベントを取得する際に、排他制御管理デバイスに問合せを行い、イベント内の排他制御タグが排他制御管理デバイスに登録されていない時のみ、イベントキューからイベントを取得可能とし、イベントの取得時に排他制御タグを排他制御管理デバイスに登録することによって、各イベント取得処理における排他制御を行っている。
【0015】
これによって、本発明のマルチプロセッサシステムでは、マスタプロセッサの存在をなくすことが可能となり、全て同レベルのプロセッサとして機能することになるので、プロセッサが有効に利用可能となる。
【0016】
また、本発明のマルチプロセッサシステムでは、各プロセッサの処理内容が決まっておらず、全プロセッサが同様の処理を行えることによって、従来のように、ある処理を行うプロセッサのみに高い負荷がかかっていた場合においても、他のプロセッサも処理を行うことによって、負荷が分散され、プロセッサが有効に活用可能となる。
【0017】
したがって、本発明のマルチプロセッサシステムでは、処理可能なイベントが存在する際に、未動作のプロセッサが存在する状況がなくなり、プロセッサが効率よく使用可能になるとともに、同期管理の必要があるイベントにも効率よく対処可能となる。
【0018】
【発明の実施の形態】
次に、本発明の実施例について図面を参照して説明する。図1は本発明の一実施例によるマルチプロセッサシステムの構成を示すブロック図である。図1において、マルチプロセッサシステムは複数のプロセッサ(#0〜#n)3−1〜3−n各々をバス100によって排他制御管理デバイス1と、イベントキュー2とに接続して構成されている。
【0019】
排他制御管理デバイス1にはプロセッサ(#0〜#n)3−1〜3−n各々が処理中の排他制御タグ11−0〜11−nが登録される。プロセッサ(#0〜#n)3−1〜3−n各々では同じプログラム31−0〜31−nが動作する。
【0020】
外部から来るイベントは排他制御タグ21−0〜21−nと処理内容22−0〜22−nとから構成され、イベントキュー2に順次格納される。イベントキュー2では格納したイベントを先頭からだけではなく、途中からも取出し自在となっている。同期が必要なイベントには同じ排他制御タグが付けられ、イベントキュー2にキューイングされる。
【0021】
図2及び図3は本発明の一実施例によるマルチプロセッサシステムのプロセッサ (#0〜#n)3−1〜3−n各々のイベント取得動作を示すフローチャートである。これら図1〜図3を参照してプロセッサ(#0〜#n)3−1〜3−n各々のイベント取得動作について説明する。尚、図2及び図3に示す処理はプロセッサ(#0〜#n)3−1〜3−n各々がプログラム31−0〜31−nを実行することで実現される。
【0022】
プロセッサ(#0〜#n)3−1〜3−n各々はイベント取得可能状態になると、イベントキュー2に対してイベント取得を開始する。まず、プロセッサ(#0〜#n)3−1〜3−n各々はイベント取得権(イベントキュー2のアクセス権)を獲得しにいく。
【0023】
プロセッサ(#0〜#n)3−1〜3−n各々は他のプロセッサによってイベント取得権が確保されている場合、イベント取得権を獲得することができないので(図2ステップS1)、待ち状態となる(図2ステップS8)。
【0024】
プロセッサ(#0〜#n)3−1〜3−n各々はイベント取得権を確保することができた場合(図2ステップS1)、イベント取得状態通知受信をマスクし(図2ステップS2)、イベントキュー2の先頭からイベント取得を開始する(図2ステップS3)。
【0025】
プロセッサ(#0〜#n)3−1〜3−n各々はイベントの排他制御タグが排他制御管理デバイス1に登録されているかを確認し(図2ステップS4)、登録されていれば、イベントキュー2に次のイベントが存在するかを判断し(図2ステップS5)、イベントキュー2に次のイベントが存在すれば、ステップS2に戻って上記と同様のイベント取得処理を行う。
【0026】
プロセッサ(#0〜#n)3−1〜3−n各々はイベントキュー2に存在する全てのイベントが取得不可の場合(図2ステップS5)、イベント取得権を解放し(図2ステップS6)、イベント取得状態通知受信マスクを解除し(図2ステップS7)、イベント取得状態通知待ちとなる(図2ステップS8)。
【0027】
プロセッサ(#0〜#n)3−1〜3−n各々はイベントの排他制御タグが排他制御管理デバイス1に登録されていなければ、その排他制御タグを排他制御管理デバイス1に登録し(図2ステップS9)、イベントの取得、イベント取得権の解放、イベント取得状態通知をそれぞれ行う(図2ステップS10)。
【0028】
処理内容処理完了後、プロセッサ(#0〜#n)3−1〜3−n各々は排他制御管理デバイス1から排他制御タグを削除し(図3ステップS11)、イベント取得状態通知受信マスクを解除し(図3ステップS12)、イベント取得状態通知を行う(図3ステップS13)。
【0029】
プロセッサ(#0〜#n)3−1〜3−n各々がイベント取得状態となるのは、イベント取得状態通知を受信した場合となる。イベント取得状態通知はイベントキュー2にイベントがキューイングされた時、プロセッサ(#0〜#n)3−1〜3−n各々がイベント取得権を解放した時、プロセッサ(#0〜#n)3−1〜3−n各々がイベント処理を完了し、排他制御タグを削除した時となる。
【0030】
このように、本実施例では、マスタプロセッサの存在をなくし、全て同レベルのプロセッサとして機能することによって、プロセッサ(#0〜#n)3−1〜3−n各々を有効に利用することができる。
【0031】
また、本実施例では、プロセッサ(#0〜#n)3−1〜3−n各々の処理内容が決まっておらず、全てのプロセッサにおいて同様の処理を行うようにすることで、従来ある処理を行うプロセッサのみに高い負荷がかかっていた場合でも、その処理を他のプロセッサでも処理を行うことによって、負荷が分散されるので、プロセッサ(#0〜#n)3−1〜3−n各々を有効に活用することができる。
【0032】
これによって、本実施例では、処理可能なイベントが存在するが、未動作のプロセッサが存在する状況がなくなり、プロセッサを効率よく使用することができ、同期管理の必要があるイベントにも効率よく対処することができる。
【0033】
図4及び図5は本発明の他の実施例によるマルチプロセッサシステムのプロセッサ各々のイベント取得動作を示すフローチャートである。本発明の他の実施例によるマルチプロセッサシステムは図1に示す本発明の一実施例によるマルチプロセッサシステムと同様の構成となっているので、これら図1と図4と図5とを参照してプロセッサ(#0〜#n)3−1〜3−n各々のイベント取得動作について説明する。尚、図4及び図5に示す処理はプロセッサ(#0〜#n)3−1〜3−n各々がプログラム31−0〜31−nを実行することで実現される。
【0034】
本発明の他の実施例では、プロセッサ(#0〜#n)3−1〜3−n各々のイベント取得状態遷移タイミングがイベント取得状態通知ではなく、ラウンドロビン形式の場合に対応しており、以下、この場合の動作について説明する。
【0035】
本発明の他の実施例では、プロセッサ(#0〜#n)3−1〜3−n各々の動作とは独立したラウンドロビン形式のイベント取得権遷移機構(図示せず)を用意している。
【0036】
イベント取得権遷移機構はあるプロセッサにイベント取得権を与え、一定時間後に、次のプロセッサにイベント取得権を委譲する。最後のプロセッサの次は先頭のプロセッサに委譲することとなる。
【0037】
プロセッサ(#0〜#n)3−1〜3−n各々はイベント取得可能状態になると、イベント処理中でなければ(図4ステップS21)、イベント取得権遷移機構の遷移を停止させる(図4ステップS23)。
【0038】
次に、プロセッサ(#0〜#n)3−1〜3−n各々はイベントキュー2に対してイベント取得を開始し(図4ステップS24)、イベントの排他制御タグが排他制御管理デバイス1に登録されているかどうかを確認する(図4ステップS25)。
【0039】
プロセッサ(#0〜#n)3−1〜3−n各々はイベントの排他制御タグが排他制御管理デバイス1に登録されている場合、イベントキュー2に次のイベントが存在するかを判断し(図4ステップS26)、イベントキュー2に次のイベントが存在すれば、ステップS24に戻って、上記と同様のイベント取得処理を行う。
【0040】
プロセッサ(#0〜#n)3−1〜3−n各々はイベントキュー2に存在する全てのイベントが取得不可の場合(図4ステップS26)、イベント取得権遷移機構の遷移停止を解除し(図4ステップS27)、イベント取得状態通知待ちとなる(図4ステップS28)。
【0041】
プロセッサ(#0〜#n)3−1〜3−n各々はイベントの排他制御タグが排他制御管理デバイス1に登録されていなければ、その排他制御タグを排他制御管理デバイス1に登録し(図4ステップS29)、イベントの取得、イベント取得権の解放、イベント取得状態通知をそれぞれ行う(図4ステップS30)。
【0042】
処理内容処理完了後、プロセッサ(#0〜#n)3−1〜3−n各々は排他制御管理デバイス1から排他制御タグを削除し(図5ステップS31)、イベント取得状態通知待ちとなる(図5ステップS32)。
【0043】
【発明の効果】
以上説明したように本発明は、各々独自のメモリ空間を持つ複数のプロセッサからなるマルチプロセッサシステムにおいて、処理内容と排他制御タグとからなるイベントを外部から受信してキューイングするイベントキューからイベントを取得する際にプロセッサによって処理されるイベントの排他制御タグを管理する排他制御管理デバイスに問合せを行い、当該イベント内の排他制御タグが排他制御管理デバイスに登録されていない時にイベントキューからイベントを取得し、当該イベントの取得時にそれに対応する排他制御タグを排他制御管理デバイスに登録することによって、各プロセッサを効率的に使用することができ、負荷分散を効率的に行うことができるという効果が得られる。
【図面の簡単な説明】
【図1】本発明の一実施例によるマルチプロセッサシステムの構成を示すブロック図である。
【図2】本発明の一実施例によるマルチプロセッサシステムのプロセッサ各々のイベント取得動作を示すフローチャートである。
【図3】本発明の一実施例によるマルチプロセッサシステムのプロセッサ各々のイベント取得動作を示すフローチャートである。
【図4】本発明の他の実施例によるマルチプロセッサシステムのプロセッサ各々のイベント取得動作を示すフローチャートである。
【図5】本発明の他の実施例によるマルチプロセッサシステムのプロセッサ各々のイベント取得動作を示すフローチャートである。
【図6】従来例によるマルチプロセッサシステムの構成例を示すブロック図である。
【図7】従来例によるマルチプロセッサシステムの他の構成例を示すブロック図である。
【符号の説明】
1 排他制御管理デバイス
2 イベントキュー
3−1〜3−n プロセッサ(#0〜#n)
11−0〜11−n,
21−0〜21−n 排他制御タグ
22−0〜22−n 処理内容
31−0〜31−n プログラム
100 バス[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a multiprocessor system, a load distribution control method used therefor, and a program therefor, and more particularly to a load distribution control method in a multiprocessor system in which each processor does not share a memory space.
[0002]
[Prior art]
Conventionally, in this type of multiprocessor system, a setting is made such that a plurality of processors do not share a memory space, and it is generally difficult to synchronize between processors when performing load distribution control in the system.
[0003]
In the above multiprocessor system, as shown in FIG. 6, there is a load distribution processing
[0004]
The management of the load status of the other processors (# 1 to #m) 5-1 to 5-m by the load distribution
[0005]
In another multiprocessor system, as shown in FIG. 7, A to X processing programs 71-1 to 71-x are distributed to processors (# 1 to #x) 7-1 to 7-x, respectively. By doing so, the event contents that can be processed in each of the processors (# 1 to #x) 7-1 to 7-x are fixed.
[0006]
In this case, in this multiprocessor system, the processor (# 0) 6 sends the A (system) event, the B (system) event, the C (system) event to the processors (# 1 to #x) 7-1 to 7-x. (Hereinafter, referred to as a second conventional technique).
[0007]
[Problems to be solved by the invention]
In the above-described conventional multiprocessor system, in the case of the first conventional technique, the purpose is to efficiently distribute events, so that each processor cannot be used efficiently.
[0008]
Further, in the case of the second conventional technique, it is difficult to efficiently distribute the load because the content of an event that can be processed by each processor is fixed, and the programs that operate on each processor are different. .
[0009]
Therefore, an object of the present invention is to solve the above problems, to efficiently use each processor, and to efficiently perform load distribution, a multiprocessor system, a load distribution control method used therefor, and a program therefor. Is to provide.
[0010]
[Means for Solving the Problems]
A multiprocessor system according to the present invention is a multiprocessor system including a plurality of processors each having a unique memory space,
An event queue for receiving and queuing an event composed of a processing content and an exclusive control tag from the outside;
An exclusive control management device that manages an exclusive control tag of an event processed by the processor,
Means for inquiring the exclusive control management device when the plurality of processors each obtain the event from the event queue, and when the exclusive control tag in the event is not registered in the exclusive control management device, A means for acquiring the event from an event queue; and a means for registering an exclusive control tag corresponding to the event in the exclusive control management device when the event is acquired.
[0011]
A load distribution control method according to the present invention is a load distribution control method for a multiprocessor system including a plurality of processors each having a unique memory space,
An inquiry is made to the exclusive control management device that manages the exclusive control tag of the event processed by the processor when acquiring the event from the event queue that receives and queues the event consisting of the processing content and the exclusive control tag from the outside. Performing the step, acquiring the event from the event queue when the exclusive control tag in the event is not registered in the exclusive control management device, and controlling the exclusive control tag corresponding to the event when acquiring the event. Registering with the management device for each of the plurality of processors.
[0012]
A program of a load distribution control method according to the present invention is a program of a load distribution control method for a multiprocessor system including a plurality of processors each having a unique memory space, wherein each of the plurality of processors has a processing content and an exclusive control tag. A process of inquiring an exclusive control management device that manages an exclusive control tag of an event processed by the processor when acquiring the event from an event queue that externally receives and queues an event consisting of: Acquiring the event from the event queue when the exclusive control tag is not registered in the exclusive control management device, and registering the corresponding exclusive control tag in the exclusive control management device when acquiring the event And running.
[0013]
That is, the multiprocessor system of the present invention requires a master processor that controls load distribution in a multiprocessor system in which a plurality of processors each having a unique memory space, an event queue, and an exclusive control management device are connected by a bus. Instead, the event including the processing content and the exclusive control tag is received from the outside and queued in the event queue.
[0014]
The processor that performs the event processing acquires the event from the event queue by itself, and when acquiring the event, inquires of the exclusive control management device, and only when the exclusive control tag in the event is not registered in the exclusive control management device, Exclusive control in each event acquisition process is performed by enabling an event to be acquired from an event queue and registering an exclusive control tag in the exclusive control management device when the event is acquired.
[0015]
As a result, in the multiprocessor system of the present invention, the existence of the master processor can be eliminated, and all the processors function as processors of the same level, so that the processors can be used effectively.
[0016]
Further, in the multiprocessor system of the present invention, the processing content of each processor is not determined, and all the processors can perform the same processing, so that only a processor performing a certain processing has a high load as in the related art. Even in such a case, the load is distributed and the processor can be effectively used by the other processors performing the processing.
[0017]
Therefore, in the multiprocessor system of the present invention, when there is an event that can be processed, there is no situation in which an inactive processor exists, and the processor can be used efficiently, and an event that needs to be managed synchronously. It can be dealt with efficiently.
[0018]
BEST MODE FOR CARRYING OUT THE INVENTION
Next, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing a configuration of a multiprocessor system according to one embodiment of the present invention. In FIG. 1, the multiprocessor system is configured by connecting a plurality of processors (# 0 to #n) 3-1 to 3-n to an exclusive
[0019]
In the exclusive
[0020]
An event coming from the outside is composed of exclusive control tags 21-0 to 21-n and processing contents 22-0 to 22-n, and is sequentially stored in the
[0021]
FIGS. 2 and 3 are flowcharts showing the event acquisition operation of each of the processors (# 0 to #n) 3-1 to 3-n of the multiprocessor system according to the embodiment of the present invention. The event acquisition operation of each of the processors (# 0 to #n) 3-1 to 3-n will be described with reference to FIGS. 2 and 3 are realized by the processors (# 0 to #n) 3-1 to 3-n executing the programs 31-0 to 31-n.
[0022]
When each of the processors (# 0 to #n) 3-1 to 3-n enters an event-acquirable state, the processor (# 0 to #n) starts acquiring an event for the
[0023]
If the processor (# 0 to #n) 3-1 to 3-n cannot acquire the event acquisition right when the event acquisition right is secured by another processor (step S1 in FIG. 2), the waiting state is set. (Step S8 in FIG. 2).
[0024]
When each of the processors (# 0 to #n) 3-1 to 3-n can secure the event acquisition right (step S1 in FIG. 2), the processor masks the reception of the event acquisition state notification (step S2 in FIG. 2), Event acquisition is started from the head of the event queue 2 (step S3 in FIG. 2).
[0025]
Each of the processors (# 0 to #n) 3-1 to 3-n checks whether the exclusive control tag of the event is registered in the exclusive control management device 1 (step S4 in FIG. 2). It is determined whether the next event exists in the queue 2 (step S5 in FIG. 2). If the next event exists in the
[0026]
When all the events existing in the
[0027]
If the exclusive control tag of the event is not registered in the exclusive
[0028]
After the completion of the processing, each of the processors (# 0 to #n) 3-1 to 3-n deletes the exclusive control tag from the exclusive control management device 1 (step S11 in FIG. 3), and releases the event acquisition state notification reception mask. Then (step S12 in FIG. 3), an event acquisition state notification is performed (step S13 in FIG. 3).
[0029]
Each of the processors (# 0 to #n) 3-1 to 3-n enters the event acquisition state when it receives the event acquisition state notification. The event acquisition status notification is sent when the event is queued in the
[0030]
As described above, in the present embodiment, the existence of the master processor is eliminated, and the processors (# 0 to #n) 3-1 to 3-n can be effectively used by functioning as processors of the same level. it can.
[0031]
Further, in the present embodiment, the processing contents of the processors (# 0 to #n) 3-1 to 3-n are not determined, and the same processing is performed in all processors. Even if a high load is applied only to the processor that performs the processing, the load is distributed by performing the processing by the other processors, so that the processors (# 0 to #n) 3-1 to 3-n Can be effectively utilized.
[0032]
As a result, in the present embodiment, although there are events that can be processed, there is no situation where there are no inactive processors, the processors can be used efficiently, and events that require synchronization management can be efficiently handled. can do.
[0033]
FIGS. 4 and 5 are flowcharts showing an event acquisition operation of each processor of a multiprocessor system according to another embodiment of the present invention. Since a multiprocessor system according to another embodiment of the present invention has the same configuration as the multiprocessor system according to one embodiment of the present invention shown in FIG. 1, referring to FIGS. 1, 4 and 5, FIG. The event acquisition operation of each of the processors (# 0 to #n) 3-1 to 3-n will be described. 4 and 5 are realized by the processors (# 0 to #n) 3-1 to 3-n executing the programs 31-0 to 31-n.
[0034]
In another embodiment of the present invention, the event acquisition state transition timing of each of the processors (# 0 to #n) 3-1 to 3-n is not an event acquisition state notification, but corresponds to a round robin format. Hereinafter, the operation in this case will be described.
[0035]
In another embodiment of the present invention, an event acquisition right transition mechanism (not shown) in a round robin format independent of the operation of each of the processors (# 0 to #n) 3-1 to 3-n is provided. .
[0036]
The event acquisition right transition mechanism grants an event acquisition right to a certain processor, and after a predetermined time, transfers the event acquisition right to the next processor. After the last processor, it is delegated to the first processor.
[0037]
When the processors (# 0 to #n) 3-1 to 3-n enter the event-acquirable state, unless the event is being processed (step S21 in FIG. 4), the transition of the event acquisition right transition mechanism is stopped (FIG. 4). Step S23).
[0038]
Next, each of the processors (# 0 to #n) 3-1 to 3-n starts acquiring events in the event queue 2 (step S24 in FIG. 4), and the exclusive control tag of the event is transmitted to the exclusive
[0039]
When the exclusive control tag of an event is registered in the exclusive
[0040]
If all the events existing in the
[0041]
If the exclusive control tag of the event is not registered in the exclusive
[0042]
After the completion of the processing, each of the processors (# 0 to #n) 3-1 to 3-n deletes the exclusive control tag from the exclusive control management device 1 (step S31 in FIG. 5), and waits for an event acquisition state notification (FIG. 5). FIG. 5 step S32).
[0043]
【The invention's effect】
As described above, according to the present invention, in a multiprocessor system including a plurality of processors each having a unique memory space, an event formed from an externally received event is queued by receiving an event including a processing content and an exclusive control tag. Queries the exclusive control management device that manages the exclusive control tag of the event processed by the processor when acquiring, and acquires the event from the event queue when the exclusive control tag in the event is not registered in the exclusive control management device However, by registering the exclusive control tag corresponding to the event in the exclusive control management device at the time of acquiring the event, each processor can be used efficiently and the load can be efficiently distributed. Can be
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a multiprocessor system according to one embodiment of the present invention.
FIG. 2 is a flowchart illustrating an event acquisition operation of each processor of a multiprocessor system according to an embodiment of the present invention.
FIG. 3 is a flowchart illustrating an event acquisition operation of each processor of a multiprocessor system according to an embodiment of the present invention.
FIG. 4 is a flowchart illustrating an event acquisition operation of each processor of a multiprocessor system according to another embodiment of the present invention.
FIG. 5 is a flowchart illustrating an event acquisition operation of each processor of a multiprocessor system according to another embodiment of the present invention.
FIG. 6 is a block diagram showing a configuration example of a multiprocessor system according to a conventional example.
FIG. 7 is a block diagram illustrating another configuration example of a multiprocessor system according to a conventional example.
[Explanation of symbols]
1 Exclusive
11-0 to 11-n,
21-0 to 21-n Exclusive control tag 22-0 to 22-n Processing contents 31-0 to 31-
Claims (7)
処理内容と排他制御タグとからなるイベントを外部から受信してキューイングするイベントキューと、
前記プロセッサによって処理されるイベントの排他制御タグを管理する排他制御管理デバイスとを有し、
前記複数のプロセッサ各々が、前記イベントキューから前記イベントを取得する際に前記排他制御管理デバイスに問合せを行う手段と、当該イベント内の排他制御タグが前記排他制御管理デバイスに登録されていない時に前記イベントキューから前記イベントを取得する手段と、当該イベントの取得時にそれに対応する排他制御タグを前記排他制御管理デバイスに登録する手段とを有することを特徴とするマルチプロセッサシステム。A multiprocessor system comprising a plurality of processors each having a unique memory space,
An event queue for receiving and queuing an event composed of a processing content and an exclusive control tag from the outside;
An exclusive control management device that manages an exclusive control tag of an event processed by the processor,
Means for inquiring the exclusive control management device when each of the plurality of processors acquires the event from the event queue, and when the exclusive control tag in the event is not registered in the exclusive control management device, A multiprocessor system comprising: means for acquiring the event from an event queue; and means for registering an exclusive control tag corresponding to the event in the exclusive control management device when the event is acquired.
処理内容と排他制御タグとからなるイベントを外部から受信してキューイングするイベントキューから前記イベントを取得する際に前記プロセッサによって処理されるイベントの排他制御タグを管理する排他制御管理デバイスに問合せを行うステップと、当該イベント内の排他制御タグが前記排他制御管理デバイスに登録されていない時に前記イベントキューから前記イベントを取得するステップと、当該イベントの取得時にそれに対応する排他制御タグを前記排他制御管理デバイスに登録するステップとを前記複数のプロセッサ各々に有することを特徴とする負荷分散制御方法。A load distribution control method for a multiprocessor system including a plurality of processors each having a unique memory space,
An inquiry is made to an exclusive control management device that manages an exclusive control tag of an event processed by the processor when acquiring the event from an event queue that receives and queues an event composed of a processing content and an exclusive control tag from the outside. Performing, acquiring the event from the event queue when the exclusive control tag in the event is not registered in the exclusive control management device, and performing exclusive control on the exclusive control tag corresponding to the event when the event is acquired. Registering in a management device in each of the plurality of processors.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002194044A JP4039145B2 (en) | 2002-07-03 | 2002-07-03 | Multiprocessor system, load balancing control method used therefor, and program thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002194044A JP4039145B2 (en) | 2002-07-03 | 2002-07-03 | Multiprocessor system, load balancing control method used therefor, and program thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004038511A true JP2004038511A (en) | 2004-02-05 |
JP4039145B2 JP4039145B2 (en) | 2008-01-30 |
Family
ID=31702835
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002194044A Expired - Fee Related JP4039145B2 (en) | 2002-07-03 | 2002-07-03 | Multiprocessor system, load balancing control method used therefor, and program thereof |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4039145B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015170180A (en) * | 2014-03-07 | 2015-09-28 | 株式会社デンソー | Electronic control device |
JP2019212032A (en) * | 2018-06-05 | 2019-12-12 | 株式会社デンソー | Electronic control device with multi-core microcomputer |
-
2002
- 2002-07-03 JP JP2002194044A patent/JP4039145B2/en not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015170180A (en) * | 2014-03-07 | 2015-09-28 | 株式会社デンソー | Electronic control device |
JP2019212032A (en) * | 2018-06-05 | 2019-12-12 | 株式会社デンソー | Electronic control device with multi-core microcomputer |
JP7070108B2 (en) | 2018-06-05 | 2022-05-18 | 株式会社デンソー | Electronic control device equipped with a multi-core microcomputer |
Also Published As
Publication number | Publication date |
---|---|
JP4039145B2 (en) | 2008-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4171910B2 (en) | Parallel processing system and parallel processing program | |
JP5453825B2 (en) | Program parallel execution system and program parallel execution method on multi-core processor | |
JP3490473B2 (en) | Communication system between processors | |
JP2004038511A (en) | Multi-processor system, load distribution control method for the same, and program for the same system | |
JP2003345614A (en) | Parallel processing system by os for single processor | |
JPH11265297A (en) | Distributed simulator system | |
JP2001092676A (en) | Task management system in integrated program | |
US20090019259A1 (en) | Multiprocessing method and multiprocessor system | |
JPH11154122A (en) | Message exchange communication system | |
JP2003330739A (en) | Communication response synchronous system and method, and communication response synchronous program | |
JP2910176B2 (en) | Request reception processing device | |
JP2003186684A (en) | Method of specifying and changing instance queue condition of service logic program, and service control node apparatus | |
JPH0991231A (en) | Application program execution method and device therefor in server-client computer system | |
JPH0887477A (en) | Service requesting method | |
JPH08115301A (en) | Control unit for priority between processes | |
JP2550189B2 (en) | Message identifier numbering system | |
JP2001344119A (en) | Transaction execution control system and transaction execution control method | |
JPH07107679B2 (en) | Message communication control method between client and server | |
CN116128704A (en) | Data processing method, data processing apparatus, and computer readable storage medium | |
JP2007026008A (en) | Task integration system | |
JPH06197145A (en) | Osi application protocol communication processor | |
JPH05342119A (en) | Time activation control system | |
JPH0573339A (en) | Parallel execution system fore distributed service | |
JP2000029850A (en) | Task controlling method using inter-processor communication of operating system | |
JPH07210524A (en) | Message transfer order guaranteeing device for computer system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050615 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070417 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070618 |
|
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: 20071016 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071029 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101116 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4039145 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111116 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111116 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121116 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121116 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131116 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |