JPH04283849A - Multiprocessor system - Google Patents

Multiprocessor system

Info

Publication number
JPH04283849A
JPH04283849A JP4838591A JP4838591A JPH04283849A JP H04283849 A JPH04283849 A JP H04283849A JP 4838591 A JP4838591 A JP 4838591A JP 4838591 A JP4838591 A JP 4838591A JP H04283849 A JPH04283849 A JP H04283849A
Authority
JP
Japan
Prior art keywords
processor
mini
cache
processors
cluster
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
JP4838591A
Other languages
Japanese (ja)
Inventor
Hideo Segawa
英生 瀬川
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP4838591A priority Critical patent/JPH04283849A/en
Publication of JPH04283849A publication Critical patent/JPH04283849A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

PURPOSE:To realize scheduling wherein threads which belong to the same task are performed with the same mini cluster. CONSTITUTION:Plural mini clusters are constituted by combining plural multi- processors and caches in plural layers, a process table 23 where the relation between threads and execution processors is recorded and a cache constitution table 24 which indicates the relation between the respective processors and mini clusters are prepared, and a job queue is prepared for each processor; and the process table is used to decide whether or not a thread which is dequeued from a processor in an idle state and a thread which is executed by the same task can be executed by an execution processor, the mini cluster that the execution processor belongs to is decided by the cache constitution table, and in this state, the processor having the shortest job queue is selected among the processors of the belonging mini clusters.

Description

【発明の詳細な説明】[Detailed description of the invention]

【0001】0001

【産業上の利用分野】本発明は、階層キャッシュを備え
たマルチプロセッサシステムに関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to multiprocessor systems with hierarchical caches.

【0002】0002

【従来の技術】最近の電子計算機の発達は目覚ましいも
のがあり、特にマイクロプロセッサの進歩とメモリの大
容量化にともない、マイクロプロセッサ、キャッシュお
よび共通メモリによる構成のものが一般的になっている
2. Description of the Related Art The recent development of electronic computers has been remarkable. In particular, with the advancement of microprocessors and the increase in memory capacity, computers having a configuration of a microprocessor, a cache, and a common memory have become common.

【0003】ところで、このような計算機において、多
数のマイクロプロセッサを有するマルチプロセッサ方式
を採用したものでは、自律的に動作する各プロセッサを
互いに密に通信し、協調させながら並列動作するように
している。
By the way, in such computers that employ a multiprocessor system having a large number of microprocessors, each processor that operates autonomously communicates closely with each other and operates in parallel while cooperating with each other. .

【0004】ところが、これらマイクロプロセッサのす
べてをバスに対して接続するようにすると、例えば、バ
ス上に一度に多くのトラフックが発生した場合に、シス
テムが動作不能に陥ることがある。
However, if all of these microprocessors are connected to a bus, the system may become inoperable if, for example, a large amount of traffic occurs on the bus at once.

【0005】そこで、従来では、図4に示すように、複
数のマイクロプロセッサ(P)1をファーストキャッシ
ュ(Fc)2とセカンドキャッシュ(Sc)3を有する
階層キャッシュと組み合わせることによりミニクラスタ
4を構成し、このようなミニクラスタ4を複数個、メイ
ン・メモリ(MM)5とともにバス6に接続するように
したものがある。
Conventionally, as shown in FIG. 4, a mini-cluster 4 is configured by combining a plurality of microprocessors (P) 1 with a hierarchical cache having a first cache (Fc) 2 and a second cache (Sc) 3. However, there is a device in which a plurality of such mini-clusters 4 are connected to a bus 6 together with a main memory (MM) 5.

【0006】そして、このような階層キャッシュを有す
るものでは、プログラミングを容易にするため、データ
の一貫性をハードウェアが保証するようにしている。つ
まり、同一のプログラムを同時実行する場合には、異な
るプロセッサ1が同一アドレスAをアクセスするのに、
Aの値を同一することでデータの一貫性を保証するよう
にしている。
[0006] In devices having such a hierarchical cache, data consistency is guaranteed by hardware in order to facilitate programming. In other words, when the same program is executed simultaneously, even though different processors 1 access the same address A,
By making the value of A the same, data consistency is guaranteed.

【0007】このことは、例えば、上述の図4に示す2
階層キャッシュの場合、異なるミニクラスタ4のプロセ
ッサ(α、β)1が同一アドレスAをアクセスすると、
まず、アドレスAをα側で更新して、α側のファースト
キャッシュ2のAの値を更新し、その後、α、β側のそ
れぞれのセカンドキャッシュ3の値を変更し、さらにβ
側のファーストキャッシュ2のAの値を更新するように
なるので、手間が多くかかり、コスト的に高価なものに
なる欠点があった。
[0007] This is true, for example, as shown in FIG. 4 above.
In the case of hierarchical cache, when processors (α, β) 1 of different mini-clusters 4 access the same address A,
First, address A is updated on the α side, the value of A in the first cache 2 on the α side is updated, and then the value of each second cache 3 on the α and β sides is changed, and then β
Since the value of A in the first cache 2 on the side has to be updated, it takes a lot of effort and has the disadvantage of being expensive.

【0008】一方、このようなマルチプロセッサ方式の
OS(オペレーティングシステム)の構成は、ジョブの
レディ・キューが1本で、ジュブが終了してアイドル状
態になったプロセッサが、レディ・キューから順にジョ
ブを取り出しながらプログラムを実行する形態になって
いる。
On the other hand, in the configuration of such a multiprocessor type OS (operating system), there is only one ready queue for jobs, and the processors that are in an idle state after completing a job process jobs from the ready queue in order. The program is executed while extracting the .

【0009】この場合、各プログラムが、どこのプロセ
ッサで実行されるかは、システムの状態によって決定さ
れ、例えば、システムコールによりプロセスがタスク・
スイッチを起こし、システムより復帰される場合には、
プロセスは、以前と異なるプロセッサにより実行される
ことがある。このようにプロセスがプロセッサを移動す
る、いわゆるプロセス・マイグレーションを生じると、
移動する前のプロセッサのキャシュの内容が無駄に捨て
られ、これらが有効に使われることがないので、システ
ム全体の実行速度が遅くなる欠点もあった。
[0009] In this case, which processor each program is executed on is determined by the state of the system.
If the switch is woken up and the system returns,
A process may be executed by a different processor than before. When a process moves from one processor to another in this way, so-called process migration occurs,
Since the contents of the cache of the processor before being moved are wasted and are not used effectively, there is also the drawback that the execution speed of the entire system is slowed down.

【0010】そこで、従来、このようなプロセス・マイ
グレーションを未然に防止する手段として、プロセステ
ーブルにプロセス名と対応させて実行プロセッサ名を記
録するとともに、各プロセッサ毎にプロセスキューを用
意するようにしたものがある。このようにすれば、シス
テムコールによりプロセスがタスク・スイッチを生じて
も、プロセステーブルには、実行するプロセッサ名が記
録されているので、システムコールからリターンを受け
た場合、そのプロセッサ名でプロセスを再実行すればよ
く、プロセス・マイグレーションを防ぐことでキャッシ
ュの中身が無駄に捨てられること無く、そのまま保持さ
れるので、プログラムを高速で実行することが可能にな
る。
[0010] Conventionally, as a means to prevent such process migration, the name of the executing processor is recorded in correspondence with the process name in a process table, and a process queue is prepared for each processor. There is something. In this way, even if a process causes a task switch due to a system call, the name of the executing processor is recorded in the process table, so when a return is received from a system call, the process is executed using that processor name. All you have to do is re-execute the program, and by preventing process migration, the contents of the cache are retained without being wasted, making it possible to execute the program at high speed.

【0011】ところが、プログラミングスタイルとして
異なるスレッドが並列的に共有グローバル・データにア
クセスして操作を行うマルチ・スレッドサーバなどでは
、マルチ・スレッドをマルチプロセッサ上で実行すると
、データ空間を共有していることから、例え、スレッド
の実行プロセッサを固定しても、図4で述べた状態が多
発し、データの一貫性を保つための各プロセッサ間での
通信に伴うハードウェア的なオーバヘッド(むだ時間)
が大きくなる欠点があった。これは、ライト・スルー、
コピー・バックなどデータの一貫性を取るプロトコルの
いかんを問わないことである。
However, in a multi-threaded server, etc., where different threads access and manipulate shared global data in parallel as a programming style, when multiple threads are executed on a multiprocessor, the data space is shared. Therefore, even if the execution processor of a thread is fixed, the situation described in Figure 4 will occur frequently, and the hardware overhead (dead time) associated with communication between each processor to maintain data consistency will occur.
The disadvantage was that it became larger. This is write through,
It does not matter what protocol is used to ensure data consistency, such as copying back.

【0012】0012

【発明が解決しようとする課題】このように従来では、
マルチプロセッサ上でマルチ・スレッドサーバを実行し
ようとすると、データの一貫性を保つために各プロセッ
サ間での通信に伴うハードウェア的なオーバヘッドが大
きくなる欠点があった。
[Problem to be solved by the invention] In this way, conventionally,
When attempting to run a multi-threaded server on a multiprocessor, there is a drawback that the hardware overhead associated with communication between each processor to maintain data consistency becomes large.

【0013】本発明は、上記事情に鑑みてなされたもの
で、データの一貫性を保つことができ、各プロセッサ間
での通信に伴うハードウェア的なオーバヘッドの低減を
図ることができるスケジューリングを実現したマルチプ
ロセッサシステムを提供することを目的とする。
The present invention has been made in view of the above circumstances, and realizes scheduling that can maintain data consistency and reduce hardware overhead associated with communication between processors. The purpose is to provide a multiprocessor system with

【0014】[0014]

【課題を解決するための手段】本発明は、複数のマルチ
プロセッサと複数階層からなるキャッシュを組み合わせ
ることにより複数のミニクラスタを構成したマルチプロ
セッサシステムであって、スレッドと実行プロセッサの
関係を記録するプロセステーブルと上記各プロセッサと
上記ミニクラスタの関係を上記階層キャッシュの関係で
表すキャッシュ構成テーブルをそれぞれ用意するととも
に、各プロセッサ毎にジョブキューを用意し、アイドル
状態のプロセッサからデキューされたスレッドと同一タ
スクで実行されるスレッドの実行プロセッサの可否を上
記プロセステーブルで判定するとともに、該実行プロセ
ッサの所属ミニクラスタを上記キャッシュ構成テーブル
により判定し、この判定結果から定められたスケジュー
ルアルゴリズムに従って得られたプロセッサを選択する
ようにしている。一例としては、キャッシュ構成テーブ
ルによる判定結果から所属ミニクラスタのプロセッサの
うちのジュブキュー最短のプロセッサを選択するように
構成している。
[Means for Solving the Problems] The present invention is a multiprocessor system that configures a plurality of mini-clusters by combining a plurality of multiprocessors and a cache consisting of a plurality of layers, and records the relationship between threads and executing processors. In addition to preparing a process table and a cache configuration table that expresses the relationship between each of the above processors and the above mini-cluster in terms of the relationship between the above hierarchical caches, a job queue is prepared for each processor, and the thread is the same as the thread dequeued from the idle processor. The availability of the execution processor for the thread executed in the task is determined from the above process table, and the mini-cluster to which the execution processor belongs is determined from the above cache configuration table, and the processor obtained according to the scheduling algorithm determined from this determination result. I try to choose. For example, the processor with the shortest jub queue among the processors in the affiliated mini-cluster is selected based on the determination result based on the cache configuration table.

【0015】[0015]

【作用】この結果、本発明によれば同一タスクに属する
スレッドが、同一のミニクラスタで実行されるようなス
ケジューングを実現することができる。
As a result, according to the present invention, it is possible to implement scheduling in which threads belonging to the same task are executed in the same mini-cluster.

【0016】[0016]

【実施例】以下、本発明の一実施例を図面にしたがい説
明する。この場合、
DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings. in this case,

【0017】図1は、同実施例が適用されるマルチプロ
セッサシステムの概略構成を示すものである。この場合
、11はプロセッサで、このプロセッサ11は、ファー
ストキャシュ(Fc)12とセカンドキャシュ(Sc)
13からなる階層キャシュと組み合わせることによりミ
ニクラスタ10を構成し、このようなミニクラスタ10
をメインメモリ(MM)14とともにバス15に接続す
るようにしている。そして、このように階層キャシュを
備えたマルチプロセッサシステムに対する、スケジュー
リングは、次のようにして実行される。次に、図2は、
このようなマルチプロセッサシステムのスケジューリン
グを説明するための図である。
FIG. 1 shows a schematic configuration of a multiprocessor system to which this embodiment is applied. In this case, 11 is a processor, and this processor 11 has a first cache (Fc) 12 and a second cache (Sc).
A mini-cluster 10 is configured by combining with a hierarchical cache consisting of 13, and such a mini-cluster 10
is connected to the bus 15 together with the main memory (MM) 14. Scheduling for a multiprocessor system equipped with such a hierarchical cache is performed as follows. Next, Figure 2 shows
FIG. 2 is a diagram for explaining scheduling of such a multiprocessor system.

【0018】この場合、対称なマルチプロセッサOSに
おいて、アイドル状態になったプロセッサのレディ・キ
ューを符号21で示すと、このレディ・キュー21より
実行可能なスレッドをデキューするようになっている。 そして、このデキューされたスレッドをスケジューラ2
2に送る。
In this case, in the symmetric multiprocessor OS, the ready queue of a processor in an idle state is indicated by reference numeral 21, and executable threads are dequeued from this ready queue 21. Then, this dequeued thread is sent to scheduler 2.
Send to 2.

【0019】スケジューラ22は、スレッド番号と実行
プロセッサ名の関係を記録したプロセステーブル23と
、プロセッサ名に対する上述したファーストキャシュ(
Fc)12、セカンドキャシュ(Sc)13およびミニ
クラスタ(Xc)10の関係を記録したキャッシュ構成
テーブル24を有しており、レディ・キュー21よりデ
キューされたスレッドを用いて各テーブル23、24を
参照することにより同一タスクに属し、同一クラスタ内
で実行されているスレッドを判断するようにしている。
The scheduler 22 has a process table 23 that records the relationship between thread numbers and execution processor names, and the above-mentioned first cache (
It has a cache configuration table 24 that records the relationship between the Fc) 12, the second cache (Sc) 13, and the mini cluster (Xc) 10, and uses threads dequeued from the ready queue 21 to update each table 23 and 24. By referring to it, threads that belong to the same task and are being executed within the same cluster are determined.

【0020】一方、各ミニクラスタ10では、各プロセ
ッサ11に、それぞれジョブ・キュー111、112、
113、…を用意しており、ミニクラスタ10が特定さ
れると、各プロセッサ11のジョブ・キュー111、1
12、113、114、…の状態から所望のプロセッサ
11が選択されるようになっている。図3は、このよう
なスケジューリングのアルゴリズムを説明するためのフ
ローチャートである。
On the other hand, in each mini-cluster 10, each processor 11 has a job queue 111, 112,
113, ... are prepared, and when the mini-cluster 10 is specified, the job queue 111, 1 of each processor 11 is
A desired processor 11 is selected from the states 12, 113, 114, . FIG. 3 is a flowchart for explaining such a scheduling algorithm.

【0021】この場合、アイドル状態になったプロセッ
サ11がレディ・キュー21の先頭のスレッドを取り出
すと(ステップA1)、この取り出されたスレッドは、
スケジューラ22に送られる。そして、プロセステーブ
ル23との内容と比較され、同一タスクで実行中のスレ
ッドがあるかが判断される(ステップA2)。
In this case, when the processor 11 in the idle state takes out the thread at the head of the ready queue 21 (step A1), this taken out thread is
It is sent to the scheduler 22. Then, the contents are compared with the contents of the process table 23, and it is determined whether there is a thread running on the same task (step A2).

【0022】ここで、実行中のスレッドがあると判断さ
れると、キャッシュ構成テーブル24が参照され、ミニ
クラスタ(Xc)10がサーチされる(ステップA3)
。次いで、同一ミニクラスタ(Xc)10に属する各プ
ロセッサ11のうちでジョブ・キュー111、112、
113、…が最短のプロセッサ11が選択され(ステッ
プA4)、このプロセッサ11のジョブ・キューがエン
トリされ(ステップA5)、その後の実行に移行される
[0022] Here, if it is determined that there is a thread being executed, the cache configuration table 24 is referred to and the mini-cluster (Xc) 10 is searched (step A3).
. Next, among the processors 11 belonging to the same mini-cluster (Xc) 10, job queues 111, 112,
113, . . . is selected (step A4), the job queue of this processor 11 is entered (step A5), and the subsequent execution is performed.

【0023】一方、ステップA2で、実行中のスレッド
がないと判断された場合は、どのプロセッサ11で実行
されてもキャッシュの効果は得られないので、各プロセ
ッサ11に割り当てられたジョブ・キューのうち最も実
行が早く行われるであろう最短のキューを有するプロセ
ッサ11が選択され(ステップA6)、そして、このプ
ロセッサ11のジョブ・キューがエントリされ(ステッ
プA7)、その後の実行に移行される。
On the other hand, if it is determined in step A2 that there is no thread being executed, the cache effect will not be obtained no matter which processor 11 executes the job, so the job queue allocated to each processor 11 will be The processor 11 that has the shortest queue and is likely to be executed most quickly is selected (step A6), and the job queue of this processor 11 is entered (step A7) to proceed to subsequent execution.

【0024】したがって、このようにすればアイドル状
態になったプロセッサ11の先頭のスレッドについて、
プロセステーブル23との比較により、同一タスクで実
行中のスレッドがあるか判断され、実行中スレッドがあ
ると判断されると、キャッシュ構成テーブル24が参照
され、ミニクラスタ10がサーチされ、さらに、このミ
ニクラスタ10に属する各プロセッサ11のジョブ・キ
ュー111、112、113、…の最短のプロセッサ1
1が選択されるようになっているので、常に同一タスク
に属するスレッドが、同一のミニクラスタで実行される
ようなスケジューングを実現することができることにな
る。これによりマルチプロセッサ上でマルチスレッドサ
ーバを実行した場合も、データの一貫性を保つことが可
能となり、各プロセッサ間での通信に伴うハードウェア
的なオーバヘッドの低減を図ることもできるようになる
[0024] Therefore, in this way, regarding the leading thread of the processor 11 which is in the idle state,
By comparison with the process table 23, it is determined whether there is a thread running in the same task. If it is determined that there is a thread running, the cache configuration table 24 is referred to, the mini-cluster 10 is searched, and furthermore, this The shortest processor 1 of the job queues 111, 112, 113, ... of each processor 11 belonging to the mini-cluster 10
1 is selected, it is possible to implement scheduling such that threads belonging to the same task are always executed in the same mini-cluster. This makes it possible to maintain data consistency even when a multi-thread server is executed on a multi-processor, and it also becomes possible to reduce the hardware overhead associated with communication between each processor.

【0025】なお、本発明は、上記実施例にのみ限定さ
れず、要旨を変更しない範囲で適宜変形して実施できる
。例えば、上述の実施例では、プロセス毎のジョブ・キ
ューやキャッシュ構成表を用いているが、これらと同等
な効果は、スレッドの実行優先度を工夫することで得ら
れる。また、本実施例では、プログラムの実行単位はス
レッドであるが、テキスト空間、データ空間に共有する
スレッドの場合、発明の効果は著しいが、プロセス実行
単位になっても発明の効果は損なわれない。また、上述
では、キャッシュ構成テーブルによる判定結果から所属
ミニクラスタのプロセッサのうちのジュブキュー最短の
プロセッサを選択するようにしているが、実行プロセッ
サの所属ミニクラスタをキャッシュ構成テーブルにより
判定し、この判定結果から定められたスケジュールアル
ゴリズムに従って得られたプロセッサを選択するように
構成してもよい。
It should be noted that the present invention is not limited to the above-mentioned embodiments, but can be implemented with appropriate modifications without changing the gist. For example, in the above-described embodiment, a job queue and a cache configuration table are used for each process, but effects equivalent to these can be obtained by adjusting the execution priorities of threads. In addition, in this embodiment, the execution unit of the program is a thread, but the effect of the invention is remarkable in the case of a thread that shares text space and data space, but the effect of the invention is not impaired even if it becomes a process execution unit. . In addition, in the above, the processor with the shortest jub queue among the processors in the mini-cluster to which it belongs is selected based on the determination result based on the cache configuration table, but the mini-cluster to which the executing processor belongs is determined based on the cache configuration table, The processor may be selected according to a schedule algorithm determined from the above.

【0026】[0026]

【発明の効果】本発明のマルチプロセッサシステムによ
れば、同一タスクに属するスレッドが、同一のミニクラ
スタで実行されるようなスケジューングを実現すること
ができるので、データの一貫性を保つことができ、各プ
ロセッサ間での通信に伴うハードウェア的なオーバヘッ
ドの低減を可能にしたスケジューリングを実現できる。 また、プロセスマイグレーションが押さえられることか
ら、階層的キャッシュが効率的に利用でき、著しい計算
能力の向上を図ることも可能になる。
[Effects of the Invention] According to the multiprocessor system of the present invention, it is possible to implement scheduling such that threads belonging to the same task are executed in the same mini-cluster, so data consistency can be maintained. This makes it possible to implement scheduling that reduces hardware overhead associated with communication between processors. Furthermore, since process migration is suppressed, hierarchical caches can be used efficiently, and computing power can be significantly improved.

【図面の簡単な説明】[Brief explanation of the drawing]

【図1】本発明のマルチプロセッサシステムの一実施例
の概略的構成を示す図。
FIG. 1 is a diagram showing a schematic configuration of an embodiment of a multiprocessor system of the present invention.

【図2】同実施例のスケジューリングを説明するための
図。
FIG. 2 is a diagram for explaining scheduling in the same embodiment.

【図3】同実施例のスケジューリングのアルゴリズムを
説明するためのフローチャート。
FIG. 3 is a flowchart for explaining the scheduling algorithm of the embodiment.

【図4】従来のマルチプロセッサシステムの一例を説明
するための図。
FIG. 4 is a diagram for explaining an example of a conventional multiprocessor system.

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

10…ミニクラスタ、11…プロセッサ、12…ファー
ストキャシュ、13…セカンドキャシュ、14…メイン
メモリ、15…バス、21…レディ・キュー、22…ス
ケジューラ、23…プロセステーブル、24…キャッシ
ュ構成テーブル。
DESCRIPTION OF SYMBOLS 10... Mini cluster, 11... Processor, 12... First cache, 13... Second cache, 14... Main memory, 15... Bus, 21... Ready queue, 22... Scheduler, 23... Process table, 24... Cache configuration table.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】  複数のマルチプロセッサと複数階層か
らなるキャッシュを組み合わせることにより複数のミニ
クラスタを構成したマルチプロセッサシステムにおいて
、スレッドと実行プロセッサの関係を記録するプロセス
テーブルと上記各プロセッサと上記ミニクラスタの関係
を上記階層キャッシュの関係で表すキャッシュ構成テー
ブルをそれぞれ用意するとともに、上記各プロセッサ毎
にジョブキューを用意し、アイドル状態のプロセッサか
らデキューされたスレッドと同一タスクで実行されるス
レッドの実行プロセッサの可否を上記プロセステーブル
で判定するとともに、該実行プロセッサの所属ミニクラ
スタを上記キャッシュ構成テーブルにより判定し、これ
らの判定結果から定められたスケジュールアルゴリズム
に従って得られたプロセッサを選択するようにしたこと
を特徴とするマルチプロセッサシステム。
1. In a multiprocessor system in which a plurality of mini-clusters are configured by combining a plurality of multiprocessors and a cache consisting of a plurality of hierarchies, a process table for recording the relationship between threads and executing processors, and a process table for recording the relationship between each of the processors and the mini-cluster. In addition to preparing a cache configuration table representing the relationship of the hierarchical caches in terms of the hierarchical cache relationship described above, a job queue is prepared for each of the above processors, and the execution processor of the thread that is executed in the same task as the thread dequeued from the idle processor is prepared. The process table is used to determine whether or not the executing processor is available, the mini-cluster to which the execution processor belongs is determined from the cache configuration table, and the processor is selected based on the results of these determinations according to a predetermined scheduling algorithm. Features a multiprocessor system.
JP4838591A 1991-03-13 1991-03-13 Multiprocessor system Pending JPH04283849A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4838591A JPH04283849A (en) 1991-03-13 1991-03-13 Multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4838591A JPH04283849A (en) 1991-03-13 1991-03-13 Multiprocessor system

Publications (1)

Publication Number Publication Date
JPH04283849A true JPH04283849A (en) 1992-10-08

Family

ID=12801839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4838591A Pending JPH04283849A (en) 1991-03-13 1991-03-13 Multiprocessor system

Country Status (1)

Country Link
JP (1) JPH04283849A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6088788A (en) * 1996-12-27 2000-07-11 International Business Machines Corporation Background completion of instruction and associated fetch request in a multithread processor
WO2007017932A1 (en) * 2005-08-09 2007-02-15 Fujitsu Limited Schedule control program and schedule control method
JP2013054451A (en) * 2011-09-01 2013-03-21 Fujitsu Ltd Information processor, information processing method, and information processing program
JP2013239199A (en) * 2005-09-30 2013-11-28 Synopsys Inc Scheduling in multi-core architecture

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6088788A (en) * 1996-12-27 2000-07-11 International Business Machines Corporation Background completion of instruction and associated fetch request in a multithread processor
WO2007017932A1 (en) * 2005-08-09 2007-02-15 Fujitsu Limited Schedule control program and schedule control method
JPWO2007017932A1 (en) * 2005-08-09 2009-02-19 富士通株式会社 Schedule control program and schedule control method
KR100942740B1 (en) * 2005-08-09 2010-02-17 후지쯔 가부시끼가이샤 Computer-readable recording medium recording schedule control program and schedule control method
JP4651671B2 (en) * 2005-08-09 2011-03-16 富士通株式会社 Schedule control program and schedule control method
US8479205B2 (en) 2005-08-09 2013-07-02 Fujitsu Limited Schedule control program and schedule control method
JP2013239199A (en) * 2005-09-30 2013-11-28 Synopsys Inc Scheduling in multi-core architecture
US9286262B2 (en) 2005-09-30 2016-03-15 Synopsys, Inc. Scheduling in a multicore architecture
US9442886B2 (en) 2005-09-30 2016-09-13 Synopsys, Inc. Scheduling in a multicore architecture
JP2013054451A (en) * 2011-09-01 2013-03-21 Fujitsu Ltd Information processor, information processing method, and information processing program

Similar Documents

Publication Publication Date Title
US7143412B2 (en) Method and apparatus for optimizing performance in a multi-processing system
Chen et al. Preemptive, low latency datacenter scheduling via lightweight virtualization
US7318128B1 (en) Methods and apparatus for selecting processes for execution
JP6294586B2 (en) Execution management system combining instruction threads and management method
CN105579961B (en) Data processing system, operating method and hardware unit for data processing system
US6389446B1 (en) Multi-processor system executing a plurality of threads simultaneously and an execution method therefor
Cho et al. Natjam: Design and evaluation of eviction policies for supporting priorities and deadlines in mapreduce clusters
US9052957B2 (en) Method and system for conducting intensive multitask and multiflow calculation in real-time
US20060130062A1 (en) Scheduling threads in a multi-threaded computer
JPH0640324B2 (en) Multiprocessor system and process synchronization method thereof
JP4705051B2 (en) Computer system
JP2561801B2 (en) Method and system for managing process scheduling
JP2006515690A (en) Data processing system having a plurality of processors, task scheduler for a data processing system having a plurality of processors, and a corresponding method of task scheduling
WO2021022964A1 (en) Task processing method, device, and computer-readable storage medium based on multi-core system
Chen et al. Preemptive and low latency datacenter scheduling via lightweight containers
US20050066149A1 (en) Method and system for multithreaded processing using errands
JP3546694B2 (en) Multi-thread computer system and multi-thread execution control method
CN115981833A (en) Task processing method and device
CN109766168B (en) Task scheduling method and device, storage medium and computing equipment
JPH04283849A (en) Multiprocessor system
JP2001117786A (en) Process scheduling device and process scheduling method
CN108845969B (en) Operation control method and operation system suitable for incompletely symmetrical multi-processing microcontroller
CN115964150A (en) Business processing method, system, device and medium based on double real-time kernels
JPH05151064A (en) Tightly coupled multiprocessor system
JPH07129518A (en) Computer system