JPH03250356A - Multiprocessor load decentralized control system - Google Patents

Multiprocessor load decentralized control system

Info

Publication number
JPH03250356A
JPH03250356A JP4557390A JP4557390A JPH03250356A JP H03250356 A JPH03250356 A JP H03250356A JP 4557390 A JP4557390 A JP 4557390A JP 4557390 A JP4557390 A JP 4557390A JP H03250356 A JPH03250356 A JP H03250356A
Authority
JP
Japan
Prior art keywords
load
processors
loads
processor
recorded
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
JP4557390A
Other languages
Japanese (ja)
Inventor
Hajime Kishida
岸田 一
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP4557390A priority Critical patent/JPH03250356A/en
Publication of JPH03250356A publication Critical patent/JPH03250356A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

PURPOSE:To attain the optimum multiplex processing and to secure the optimum throughput and response of an entire system by decentralizing the loads in consideration of the characteristics of the processing serving as the loads. CONSTITUTION:The processors P1 - Pn consisting of the CPUs, timers, process control modules, etc., are connected to each other via an internal bus. A shared memory SM is provided with a load characteristic table TBL where the loads and their characteristics of processors P1 - Pn are recorded. The characteristic data on the processes serving a the loads are statically and dynamically collected and recorded to the table TBL. Based on these recorded characteristic data, the processings to be multiplexed by the processors P1 - Pn are equally decentralized in terms of loads among all or specific processors. In such a way, an optimum load balance is secured in consideration of the characteristics of the processes serving as the loads. Thus the optimum throughput and response time can be secured for an entire system.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、マルチプロセッサ負荷分散制御方式に関し、
特に共有メモリを有するマルチプロセッサシステム上で
の負荷分散制御方式に関するものである。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to a multiprocessor load distribution control method,
In particular, it relates to a load distribution control method on a multiprocessor system having shared memory.

(従来の技術) 従来、同一処理を、多数のプロセッサで分担(負荷分散
)して高速化を図るため、マルチプロセッサシステムを
採用している。このマルチプロセッサシステムでは、各
プロセッサが処理を進めるのに必要な情報をプロセッサ
間において相互に交換することが必要である。このよう
なプロセッサ間通信を行う方法としては、複数のプロセ
ッサと共有の主記憶である共有メモリとを結合してマル
チプロセッサシステムを構築し、各プロセッサは共有メ
モリを介して通信を行うものが知られている。
(Prior Art) Conventionally, multiprocessor systems have been used to increase speed by sharing the same processing among multiple processors (load distribution). In this multiprocessor system, it is necessary for the processors to mutually exchange information necessary for each processor to proceed with processing. One well-known method for performing such inter-processor communication is to combine multiple processors with a shared memory, which is a shared main memory, to construct a multiprocessor system, and each processor communicates via the shared memory. It is being

このような共有メモリを持つマルチプロセッサシステム
において、各プロセッサの能力に応じて負荷を効率的に
分配する負荷分散制御を行っている。この負荷分散制御
は単にプロセス実行時間を各プロセッサに均等に配分す
るだけで、負荷となるプロセスの特性を考慮して負荷バ
ランスしてない (発明が解決しようとする課題) 上記従来のマルチプロセッサ負荷分散制御方式ては、マ
ルチプロセッサシステムの各プロセッサの負荷となるプ
ロセスの特性か考慮されていないため、プロセッサ毎に
処理の多重度と多重内容が異なる。このため、各プロセ
ッサの負荷か均等であっても、処理の多重化か最適でな
いので、システム全体としてスルーブツトとレスポンス
タイムを最適にできないという問題があった。
In a multiprocessor system having such a shared memory, load distribution control is performed to efficiently distribute the load according to the capabilities of each processor. This load distribution control simply allocates process execution time equally to each processor, but does not take into account the characteristics of the load processes to balance the load (problem to be solved by the invention).The above conventional multiprocessor load Distributed control methods do not take into account the characteristics of the processes that serve as a load on each processor in a multiprocessor system, so the degree of multiplicity and content of multiplication differs for each processor. For this reason, even if the loads on each processor are equal, the multiplexing of processes is not optimal, resulting in the problem that the throughput and response time of the system as a whole cannot be optimized.

本発明の目的は、このような従来の問題を解決し、負荷
を構成するプロセスの特性を考慮して負荷バランスを最
適にし、各プロセッサでマルチプロセッシングを効率的
に行えるマルチプロセッサ負荷分散制御方式を提供する
ことにある。
The purpose of the present invention is to solve such conventional problems, to provide a multiprocessor load distribution control method that optimizes load balance by taking into account the characteristics of the processes that make up the load, and allows each processor to perform multiprocessing efficiently. It is about providing.

(課題を解決するための手段) 上記目的を達成するため、本発明のマルチプロセッサ負
荷分散制御方式は、複数のプロセッサと共有メモリとを
有し、各プロセッサはプロセススケジューリングを行う
マルチプロセッサシステムにおいて、負荷となるプロセ
スの特性データを静的または動的に収集・記録し、該収
集・記録された特性データに基づきプロセッサで多重化
される処理かすべてまたは特定のプロセッサ間で均等に
なるように負荷分散することに特徴かある。
(Means for Solving the Problems) In order to achieve the above object, the multiprocessor load distribution control method of the present invention provides a multiprocessor system that includes a plurality of processors and a shared memory, and each processor performs process scheduling. Characteristic data of the process that is the load is statically or dynamically collected and recorded, and based on the collected and recorded characteristic data, the processing is multiplexed on the processors or the load is balanced evenly between all or specific processors. It is characterized by its dispersion.

(作用) 本発明においては、負荷となるプロセスの特性データを
静的または動的に収集・記録し、該収集・記録された特
性データに基づきプロセッサで多重化される処理がすべ
てまたは特定のプロセッサ間で均等になるように負荷分
散する。
(Operation) The present invention statically or dynamically collects and records characteristic data of a process that is a load, and processes that are multiplexed on a processor based on the collected and recorded characteristic data are executed by all or a specific processor. Distribute the load evenly between the two.

(実施例) 以下、本発明の実施例を、図面により詳細に説明する。(Example) Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

第2図は本発明を適用したマルチプロセッサシステムの
構成図である。
FIG. 2 is a block diagram of a multiprocessor system to which the present invention is applied.

第2図において、P I+ P2+ ”” Pr1はc
pt、+ 、タイマ、プロセス管理モジュール等から成
るプロセッサであり、内部バスによって結合されている
。SMはプロセッサPI+P2+・・・、Pnによって
共有される共有メモリである。この共有メモリSMには
、各プロセッサP、(1≦i≦n)の負荷と負荷特性を
記録しておく負荷特性テーブルTBLかある。
In Figure 2, P I+ P2+ "" Pr1 is c
pt, +, timer, process management module, etc., connected by an internal bus. SM is a shared memory shared by processors PI+P2+..., Pn. This shared memory SM includes a load characteristic table TBL in which the load and load characteristics of each processor P (1≦i≦n) are recorded.

本実施例では、累積された負荷としてプロセスの実行時
間を、負荷特性としてプロセスのスリーブ回数を代用特
性にする。スリーブ回数はプロセスか°I10インテン
シブ(指向)かCPUインテンシブ(指向)かを示す。
In this embodiment, the process execution time is used as the accumulated load, and the number of sleeves in the process is used as the load characteristic. The sleeve count indicates whether the process is °I10 intensive (directed) or CPU intensive (directed).

さらに、プロセスの実行時間とスリーブ回数をそれぞれ
n、m段f’i(1≦n。
Further, the process execution time and the number of sleeves are set to n and m stages f'i (1≦n, respectively).

1≦@)に分類する。Classify as 1≦@).

第3図は第2図における負荷特性テーブルの例を示す図
である。
FIG. 3 is a diagram showing an example of the load characteristic table in FIG. 2.

負荷特性テーブルTBLは、第3図に示すように、各プ
ロセッサP□毎に、n、m段階に分類された実行時間と
スリーブ回数の2次元の表の集合である。各機の要素に
は、そこに属するシステムかプロセスに一意に与えるプ
ロセスの識別子とプロセス総数を記録する。負荷または
負荷特性を表す代用特性が増えた時は、その分、表の次
元を増す。
As shown in FIG. 3, the load characteristic table TBL is a set of two-dimensional tables of execution times and sleeve counts classified into n and m stages for each processor P□. For each machine element, record the process identifier that is uniquely given to the system or process that belongs to it and the total number of processes. When the number of loads or substitute characteristics representing load characteristics increases, the dimension of the table increases accordingly.

以下、本実施例の動作を説明する。The operation of this embodiment will be explained below.

各プロセッサP、内のプロセス管理モジュールPMは、
ラウントロピン方式(巡回方式)でプロセススケジュー
リングしながら、各プロセスの実行時間とスリーブ回数
を負荷特性テーブルTBLに記録する。さらに、プロセ
ス管理モジュールPMは一定時間Ct毎に負荷バランス
する。システム立ち上げ時に、各プロセッサP、のプロ
セス管理モジュールPMか負荷バランスをする時期を、
P、毎にCt時間ずつずらすことによって、システム全
体としてはCt時間毎に負荷バランスする。ここで、負
荷バランスするためのマスクプロセッサとスレーツプロ
セッサの区別はない。
The process management module PM in each processor P is
The execution time and number of sleeves for each process are recorded in the load characteristic table TBL while performing process scheduling using the round-robin method. Further, the process management module PM balances the load at regular intervals Ct. When starting up the system, the process management module PM of each processor P determines when to perform load balancing.
By shifting the Ct time for each P, the load is balanced for the entire system every Ct time. Here, there is no distinction between mask processors and slave processors for load balancing.

第1図は、本発明の実施例を示す各プロセッサP、のプ
ロセス管理モジュールPMによる負荷分散制御フローチ
ャートである。以下、第1図のフローに従って、負荷分
散化処理を説明する。
FIG. 1 is a flowchart of load distribution control by the process management module PM of each processor P, showing an embodiment of the present invention. The load balancing process will be explained below according to the flow shown in FIG.

まず、プロセッサP、のプロセス実行時間の第1段階で
スリーブ回数の第1段階に入っているプロセス数を取得
し、すべてのプロセッサP1に対し、平均値を求める(
ステップ101,102 )。
First, obtain the number of processes that are in the first stage of the number of sleeves in the first stage of the process execution time of processor P, and calculate the average value for all processors P1 (
Steps 101, 102).

次にIP、のプロセス数−平均プロセス数1<wとなる
ように、プロセッサP、から移動させるプロセス数を決
定し、それを記録する(ステップ103 ) 。
Next, the number of processes to be moved from processor P is determined so that the number of processes in IP - the average number of processes 1<w, and it is recorded (step 103).

上記ステップ101−103の処理をプロセス実行時間
の第2〜第n段階てスリーブ回数の第2〜第m段階につ
いて行う。
The processing in steps 101 to 103 is performed for the second to nth stages of the process execution time and the second to mth stages of the number of sleeves.

上記ステップ103の記録に基づき、プロセスを移動さ
せる(ステップ104 ) 。
Based on the record in step 103, the process is moved (step 104).

以上のステップ101〜104までの処理によって、各
プロセッサP+毎にプロセス実行時間とスリーブ回数を
バランスする。
Through the above steps 101 to 104, the process execution time and number of sleeves are balanced for each processor P+.

本実施例では、プロセス管理モジュールPMはCt時間
毎に負荷バランスを取ることに加え、プロセス生成時に
プロセス生成光を決定するために、負荷特性テーブルT
BLのプロセス実行時間情報を用いる。また、本実施例
では、プロセス管理モジュールPMは実行時間の最小階
層に属するプロセスの数が最小のプロセッサP、に、プ
ロセスを生成する。
In this embodiment, in addition to balancing the load for each Ct time, the process management module PM also uses the load characteristic table T to determine the process generated light at the time of process generation.
BL process execution time information is used. Furthermore, in this embodiment, the process management module PM generates a process on the processor P that has the minimum number of processes belonging to the hierarchy with the minimum execution time.

第4図は本実施例における負荷バランスの具体例を示す
図てあり、第4図(a)はプロセッサP、〜P3におけ
る負荷特性テーブルの例を示し、第4図(b)はプロセ
ッサP I” P 3の各段階のプロセス平均値を示し
ている。
FIG. 4 is a diagram showing a specific example of load balance in this embodiment. FIG. 4(a) shows an example of a load characteristic table for processors P to P3, and FIG. ” The process average value of each stage of P3 is shown.

第4図の例では、プロセッサはPI+ h、 P’sの
3つとし、負荷特性テーブルTBLの内容を第4図(a
)のように設定する。プロセス移動による負荷分散効果
とその移動コストを調整するWの値はOに設定する。
In the example shown in Figure 4, there are three processors, PI+h and P's, and the contents of the load characteristic table TBL are shown in Figure 4 (a).
). The value of W, which adjusts the load distribution effect due to process movement and the movement cost, is set to O.

第4図(b)に示すように、実行時間lO■sec以下
かつスリーブ回数lO回以下のプロセスの平均値は1個
である。プロセッサP1. pm、 pffでは各々1
個なので、プロセスの移動は行わない、実行時間1O−
sec以下かつスリープ回数11〜49回では、平均値
が3なので、プロセッサP、からプロセス2個を、プロ
セッサP、からプロセス1個をプロセッサP2に移動す
る。以後、同様にしてプロセスの移動を行う。
As shown in FIG. 4(b), the average value of processes in which the execution time is less than 10 seconds and the number of sleeves is less than 10 times is one. Processor P1. 1 for each of pm and pff
Since the process is not moved, the execution time is 10-
sec or less and the number of sleeps is 11 to 49, the average value is 3, so two processes are moved from processor P, and one process from processor P is moved to processor P2. Thereafter, processes are moved in the same manner.

本実施例では、プロセス特性として、プロセスの実行時
間とスリーブ回数を用いたか、この他にもプライオリテ
ィ、プロセスタイプ、メモリ量などのプロセス特性を対
象にして負荷バランスを取るようにしても良い。
In this embodiment, the process execution time and the number of sleeves are used as process characteristics, but load balancing may also be achieved using other process characteristics such as priority, process type, and memory amount.

なお、上記実施例ては、システム内の全てのプロセッサ
に対して負荷分散制御を行っているか。
In addition, in the above embodiment, is load distribution control performed on all processors in the system?

システム内の一部のプロセッサに対してのみ本実施例を
適用することも可能である。
It is also possible to apply this embodiment only to some processors within the system.

(発明の効果) 以上説明したように、本発明によれば、I10インテン
シブなプロセスとCPUインテンシブなプロセスを負荷
バランスすることにより、システム内の各プロセッサで
の処理の多重度を均一にてきる。また、負荷となるプロ
セスの特性を考慮して負荷分散することによって、最適
な多重処理を実現てき、システム全体のスループットと
レスポンスを最適にできる。
(Effects of the Invention) As described above, according to the present invention, by load balancing the I10-intensive process and the CPU-intensive process, the multiplicity of processing in each processor in the system can be made uniform. In addition, by distributing the load by taking into consideration the characteristics of the load processes, optimal multiprocessing can be achieved, and the throughput and response of the entire system can be optimized.

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

第1図は本発明の実施例を示す負荷分散制御フローチャ
ート、 第2図は本発明を適用したマルチプロセッサシステムの
構成図、 第3図は負荷特性テーブルの構成例を示す図。 第4図は本発明の実施例における負荷バランスの具体例
を示す図である。 p、、 p、、−p、:プロセッサ、 SM:共有メモリ、 PM:プロセス管理モジュール。 TBL :負荷特性テーブル。
FIG. 1 is a load distribution control flowchart showing an embodiment of the invention, FIG. 2 is a configuration diagram of a multiprocessor system to which the invention is applied, and FIG. 3 is a diagram showing an example of the configuration of a load characteristic table. FIG. 4 is a diagram showing a specific example of load balance in the embodiment of the present invention. p,, p,, -p,: Processor, SM: Shared memory, PM: Process management module. TBL: Load characteristic table.

Claims (1)

【特許請求の範囲】[Claims] (1)複数のプロセッサと共有メモリとを有し、各プロ
セッサはプロセススケジューリングを行うマルチプロセ
ッサシステムにおいて、 負荷となるプロセスの特性データを静的または動的に収
集・記録し、該収集・記録された特性データに基づきプ
ロセッサで多重化される処理がすべてまたは特定のプロ
セッサ間で均等になるように負荷分散することを特徴と
するマルチプロセッサ負荷分散制御方式。
(1) In a multiprocessor system that has multiple processors and shared memory, and each processor performs process scheduling, characteristic data of the load process is statically or dynamically collected and recorded, and the collected and recorded data is A multiprocessor load distribution control method characterized by distributing the load so that processing multiplexed by processors is equalized between all or specific processors based on characteristic data.
JP4557390A 1990-02-28 1990-02-28 Multiprocessor load decentralized control system Pending JPH03250356A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4557390A JPH03250356A (en) 1990-02-28 1990-02-28 Multiprocessor load decentralized control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4557390A JPH03250356A (en) 1990-02-28 1990-02-28 Multiprocessor load decentralized control system

Publications (1)

Publication Number Publication Date
JPH03250356A true JPH03250356A (en) 1991-11-08

Family

ID=12723093

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4557390A Pending JPH03250356A (en) 1990-02-28 1990-02-28 Multiprocessor load decentralized control system

Country Status (1)

Country Link
JP (1) JPH03250356A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012032877A (en) * 2010-07-28 2012-02-16 Fujitsu Ltd Program, method and apparatus for managing information processor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012032877A (en) * 2010-07-28 2012-02-16 Fujitsu Ltd Program, method and apparatus for managing information processor

Similar Documents

Publication Publication Date Title
Boukerche et al. Dynamic load balancing strategies for conservative parallel simulations
Kitsuregawa et al. Bucket Spreading Parallel Hash: A New, Robust, Parallel Hash Join Method for Data Skew in the Super Database Computer (SDC).
US7689996B2 (en) Method to distribute programs using remote Java objects
US9152669B2 (en) System and method for distributed SQL join processing in shared-nothing relational database clusters using stationary tables
Setia et al. Processor scheduling on multiprogrammed, distributed memory parallel computers
Krueger et al. An adaptive load balancing algorithm for a multicomputer
CN102314336A (en) Data processing method and system
CN107977271A (en) A kind of data center&#39;s total management system load-balancing method
Ni et al. Design tradeoffs for process scheduling in shared memory multiprocessor systems
Nanda et al. Scheduling directed task graphs on multiprocessors using simulated annealing
JPH03250356A (en) Multiprocessor load decentralized control system
Lakshmanan et al. Placement of replicated tasks for distributed stream processing systems
Huang et al. Parallel Iterative A* Search: An Admissible Distributed Heuristic Search Algorithm.
Dandamudi et al. Performance of hierarchical processor scheduling in shared-memory multiprocessor systems
CN110262896A (en) A kind of data processing accelerated method towards Spark system
Wu et al. Argus: Efficient job scheduling in rdma-assisted big data processing
US20210042116A1 (en) Distributed physical processing of matrix sum operation
CN113110935A (en) Distributed batch job processing system
Ashok et al. Scheduling a mixed interactive and batch workload on a parallel, shared memory supercomputer
Cheng et al. Towards Network-aware Query Execution Systems in Large Datacenters
Prince Mary et al. Big data deployment for an efficient resource prerequisite job
Shum Adaptive distributed computing through competition
Van Tilborg et al. Distributed task force scheduling in multi-microcomputer networks
JPH0120462B2 (en)
Mithila et al. Scheduling Many-Task Applications on Multi-clouds and Hybrid Clouds