Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5439983B2 - Multiprocessor system, interrupt control method, and interrupt control program - Google Patents
[go: Go Back, main page]

JP5439983B2 - Multiprocessor system, interrupt control method, and interrupt control program - Google Patents

Multiprocessor system, interrupt control method, and interrupt control program Download PDF

Info

Publication number
JP5439983B2
JP5439983B2 JP2009154394A JP2009154394A JP5439983B2 JP 5439983 B2 JP5439983 B2 JP 5439983B2 JP 2009154394 A JP2009154394 A JP 2009154394A JP 2009154394 A JP2009154394 A JP 2009154394A JP 5439983 B2 JP5439983 B2 JP 5439983B2
Authority
JP
Japan
Prior art keywords
interrupt
operation rate
processor
processing
processors
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.)
Expired - Fee Related
Application number
JP2009154394A
Other languages
Japanese (ja)
Other versions
JP2011008736A (en
Inventor
光男 本多
隆浩 大場
純矢 三上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2009154394A priority Critical patent/JP5439983B2/en
Publication of JP2011008736A publication Critical patent/JP2011008736A/en
Application granted granted Critical
Publication of JP5439983B2 publication Critical patent/JP5439983B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Power Sources (AREA)
  • Bus Control (AREA)

Description

本発明は、マルチプロセッサシステム、割り込み制御方法および割り込み制御プログラムに関する。   The present invention relates to a multiprocessor system, an interrupt control method, and an interrupt control program.

従来は、複数のプロセッサに割り込み処理を割り当てて、協調しながら動作するマルチプロセッサシステムが知られている。従来のマルチプロセッサシステムでは、各プロセッサが割り込みを許可する許可信号を割り込みコントローラに送信し、最も早く許可信号を送信したプロセッサに割り込み処理が割り当てている。   Conventionally, a multiprocessor system is known in which interrupt processing is assigned to a plurality of processors and operates in cooperation. In a conventional multiprocessor system, each processor transmits a permission signal permitting an interrupt to the interrupt controller, and interrupt processing is assigned to the processor that transmitted the permission signal earliest.

ここで、割り込み処理を割り当てる処理について図11を用いて具体的に説明する。図11は、従来技術を説明するための図である。まず、図11の(a)に示すように、割り込みコントローラは、各プロセッサに割り込み要求を送信する。そして、各プロセッサは、図11の(b)に示すように、アイドル状態(または自分の動作率がある値以下の状態など)である場合に、割り込みの許可信号を割り込みコントローラに送信する。   Here, processing for assigning interrupt processing will be specifically described with reference to FIG. FIG. 11 is a diagram for explaining the prior art. First, as shown in FIG. 11A, the interrupt controller transmits an interrupt request to each processor. Then, as shown in FIG. 11B, each processor transmits an interrupt permission signal to the interrupt controller when the processor is in an idle state (or a state where its own operation rate is a certain value or less).

そして、割り込みコントローラは、図11の(c)に示すように、最も早く許可信号を送信してきたプロセッサに割り込みを割り当てる。図11の例では、最も早く許可信号を送信してきたプロセッサCに対して割り込みを割り当てる。   Then, as shown in FIG. 11C, the interrupt controller assigns an interrupt to the processor that has transmitted the permission signal earliest. In the example of FIG. 11, an interrupt is assigned to the processor C that has transmitted the permission signal earliest.

特開2002−334066号公報JP 2002-334066 A

ところで、上記した従来の割り込み処理を割り当てる技術では、最も早く許可信号を送信してきたプロセッサに対して割り込みを割り当ているので、割り込みによるプロセッサの動作率を考慮せずに割り込み処理を割り当てている。   By the way, in the above-described conventional technique for allocating interrupt processing, an interrupt is allocated to the processor that has transmitted the permission signal earliest, so that the interrupt processing is allocated without considering the processor operating rate due to the interrupt.

このため、各プロセッサに対して割り込み処理が万遍なく割り当てられた場合には、全てのプロセッサが動作していることとなり、プロセッサの消費電力を抑えることができないという課題があった。   For this reason, when interrupt processing is uniformly assigned to each processor, all the processors are operating, and there is a problem that the power consumption of the processors cannot be suppressed.

そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、スリープするプロセッサの個数を増やし、プロセッサの消費電力を抑えることを目的とする。   Accordingly, the present invention has been made to solve the above-described problems of the prior art, and an object thereof is to increase the number of sleeping processors and suppress the power consumption of the processors.

上述した課題を解決し、目的を達成するため、この装置は、割り込み処理を実行する複数のプロセッサのいずれかに割り込み処理を割り当てる場合に、割り込み処理を割り当てた場合の各プロセッサの動作率を予測し、予測された各プロセッサの動作率のうち、上限動作率を超えず、かつ上限動作率に最も近い動作率のプロセッサに対して割り込み処理を割り当てるように制御する。   In order to solve the above-described problems and achieve the object, this apparatus predicts the operation rate of each processor when interrupt processing is assigned when assigning interrupt processing to any of a plurality of processors executing interrupt processing. Then, control is performed so that interrupt processing is assigned to a processor having an operation rate that does not exceed the upper limit operation rate and is closest to the upper limit operation rate among the predicted operation rates of the respective processors.

開示のシステムは、スリープするプロセッサの個数を増やし、プロセッサの消費電力を抑えるという効果を奏する。   The disclosed system has an effect of increasing the number of sleeping processors and reducing the power consumption of the processors.

図1は、実施例1に係るマルチプロセッサシステムの構成を説明するための図である。FIG. 1 is a diagram for explaining the configuration of the multiprocessor system according to the first embodiment. 図2は、実施例2に係るマルチプロセッサシステムの構成を示すブロック図である。FIG. 2 is a block diagram illustrating the configuration of the multiprocessor system according to the second embodiment. 図3は、動作率テーブルの例を説明するための図である。FIG. 3 is a diagram for explaining an example of the operation rate table. 図4は、想定動作率の計算処理を説明するための図である。FIG. 4 is a diagram for explaining an assumed operation rate calculation process. 図5は、動的に割り込みを割り当てた場合における動作率の変化を説明するための図である。FIG. 5 is a diagram for explaining the change in the operation rate when the interrupt is dynamically assigned. 図6は、割り込みコントローラが動作率を判断する処理を説明するための図である。FIG. 6 is a diagram for explaining processing in which the interrupt controller determines the operation rate. 図7は、実施例2に係る割り込みコントローラの処理手順を説明するためのフローチャートである。FIG. 7 is a flowchart for explaining the processing procedure of the interrupt controller according to the second embodiment. 図8は、実施例3に係るマルチプロセッサシステムの構成を示すブロック図である。FIG. 8 is a block diagram illustrating the configuration of the multiprocessor system according to the third embodiment. 図9は、各プロセッサが動作率を判断する処理を説明するための図である。FIG. 9 is a diagram for explaining processing in which each processor determines an operation rate. 図10は、割り込み制御プログラムを実行するコンピュータを示す図である。FIG. 10 is a diagram illustrating a computer that executes an interrupt control program. 図11は、従来技術を説明するための図である。FIG. 11 is a diagram for explaining the prior art.

以下に添付図面を参照して、この発明に係るマルチプロセッサシステム、割り込み制御方法および割り込み制御プログラムの実施例を詳細に説明する。   Exemplary embodiments of a multiprocessor system, an interrupt control method, and an interrupt control program according to the present invention will be described below in detail with reference to the accompanying drawings.

以下の実施例では、実施例1に係るマルチプロセッサシステムの構成および処理を説明し、最後に実施例1による効果を説明する。   In the following embodiment, the configuration and processing of the multiprocessor system according to the first embodiment will be described, and finally the effects of the first embodiment will be described.

最初に、図1を用いて、実施例1に係るマルチプロセッサシステムの構成を説明する。図1は、実施例1に係るマルチプロセッサシステムの構成を示すブロック図である。マルチプロセッサシステム1は、割り込みコントローラ2および複数のプロセッサ3を有する。   First, the configuration of the multiprocessor system according to the first embodiment will be described with reference to FIG. FIG. 1 is a block diagram illustrating the configuration of the multiprocessor system according to the first embodiment. The multiprocessor system 1 includes an interrupt controller 2 and a plurality of processors 3.

実施例1の割り込みコントローラ2は、動作率予測部2aおよび割り込み先制御部2bを有する。   The interrupt controller 2 according to the first embodiment includes an operation rate prediction unit 2a and an interrupt destination control unit 2b.

動作率予測部2aは、割り込み処理を実行する複数のプロセッサA〜Cのいずれかに割り込み処理を割り当てる場合に、割り込み処理を割り当てた場合の各プロセッサA〜Cの動作率を予測する。   The operation rate prediction unit 2a predicts the operation rate of each of the processors A to C when the interrupt processing is allocated when the interrupt processing is allocated to any of the plurality of processors A to C that execute the interrupt processing.

割り込み先制御部2bは、動作率予測部2aによって予測された各プロセッサの動作率のうち、上限動作率を超えず、かつ上限動作率に最も近い動作率のプロセッサに対して割り込み処理を割り当てるように制御する。   The interrupt destination control unit 2b assigns an interrupt process to a processor having an operation rate that does not exceed the upper limit operation rate and is closest to the upper limit operation rate among the operation rates of the processors predicted by the operation rate prediction unit 2a. To control.

このように、マルチプロセッサシステム1は、割り込み処理を割り当てた場合の動作率が、上限動作率(例えば、動作率「100%」)を超えず、かつ上限動作率に最も近い動作率のプロセッサに集中的に割り当てる。   As described above, the multiprocessor system 1 is a processor having an operation rate that does not exceed the upper limit operation rate (for example, the operation rate “100%”) and that has the operation rate closest to the upper limit operation rate. Assign intensively.

このため、割り込みコントローラ2は、割り込み処理を割り当てないプロセッサを増やして、スリープするプロセッサの個数を増やすことができる。この結果、スリープするプロセッサの個数を増やしてプロセッサの消費電力を抑えることが可能である。   For this reason, the interrupt controller 2 can increase the number of processors to which sleep processing is performed by increasing the number of processors to which interrupt processing is not assigned. As a result, it is possible to suppress the power consumption of the processors by increasing the number of processors that sleep.

以下の実施例では、実施例2に係るマルチプロセッサシステムの構成および処理の流れを順に説明し、最後に実施例2による効果を説明する。   In the following embodiments, the configuration and processing flow of the multiprocessor system according to the second embodiment will be described in order, and finally the effects of the second embodiment will be described.

[マルチプロセッサシステムの構成]
次に、図2を用いて、図1に示したマルチプロセッサシステムの構成を説明する。図2は、実施例2に係るマルチプロセッサシステムの構成を示すブロック図である。同図に示すように、このマルチプロセッサシステム1Aは、割り込みコントローラ10、複数のプロセッサ20、IOインターフェース30、メモリ40を有し、バス50を介してそれぞれが接続されている。以下にこれらの各部の処理を説明する。
[Configuration of multiprocessor system]
Next, the configuration of the multiprocessor system shown in FIG. 1 will be described with reference to FIG. FIG. 2 is a block diagram illustrating the configuration of the multiprocessor system according to the second embodiment. As shown in the figure, the multiprocessor system 1A includes an interrupt controller 10, a plurality of processors 20, an IO interface 30, and a memory 40, which are connected via a bus 50. The processing of each of these units will be described below.

割り込みコントローラ10は、各プロセッサ20に送信した割り込みから動作率を把握している。割り込みコントローラ10は、プロセッサに割り込みさせたい処理の動作率を計算する。各プロセッサの動作率と割り込み処理の動作率から、動作率が100%近くになるプロセッサ20に割り込み信号を送信する。   The interrupt controller 10 grasps the operation rate from the interrupt transmitted to each processor 20. The interrupt controller 10 calculates an operation rate of a process to be interrupted by the processor. Based on the operation rate of each processor and the operation rate of interrupt processing, an interrupt signal is transmitted to the processor 20 whose operation rate is close to 100%.

ここで、割り割り込みコントローラ10の構成について具体的に説明する。割り込みコントローラ10は、レジスタ11、各プロセッサの動作率予測部12(各処理の動作率テーブル12a、初期状態動作率計算部12b、想定動作率計算部12c)、割り込み先決定部13、クロスコネクト14を有する。   Here, the configuration of the split interrupt controller 10 will be specifically described. The interrupt controller 10 includes a register 11, an operation rate prediction unit 12 for each processor (an operation rate table 12a for each process, an initial state operation rate calculation unit 12b, an assumed operation rate calculation unit 12c), an interrupt destination determination unit 13, and a cross connect 14 Have

各プロセッサの動作率予測部12は、割り込み処理を実行する複数のプロセッサA〜Cのいずれかに割り込み処理を割り当てる場合に、割り込み処理を割り当てた場合の各プロセッサA〜Cの動作率を予測する。各プロセッサの動作率予測部12は、各処理の動作率テーブル12a、初期状態動作率計算部12b、想定動作率計算部12cを有する。   The operation rate prediction unit 12 of each processor predicts the operation rate of each of the processors A to C when the interrupt processing is allocated when the interrupt processing is allocated to any of the plurality of processors A to C that execute the interrupt processing. . The operation rate prediction unit 12 of each processor has an operation rate table 12a for each process, an initial state operation rate calculation unit 12b, and an assumed operation rate calculation unit 12c.

各処理の動作率テーブル12aは、各割り込み処理の動作率を記憶する。具体的には、各処理の動作率テーブル12aは、図3に例示するように、割り込み処理の種別と、いつまでに処理しなければならないかを示す「要求時間」と、プロセッサを100%の負荷で動作したときの処理時間である「最小処理時間」と、割り込み処理を処理した場合の「動作率」とを対応付けて記憶する。図3は、動作率テーブルの例を説明するための図である。   The operation rate table 12a of each process stores the operation rate of each interrupt process. Specifically, as shown in FIG. 3, the operation rate table 12a for each process includes a type of interrupt process, a “request time” indicating when the process must be performed, and a load of 100% on the processor. The “minimum processing time”, which is the processing time when operating in, and the “operation rate” when interrupt processing is processed are stored in association with each other. FIG. 3 is a diagram for explaining an example of the operation rate table.

ここで、動作率とは、最小処理時間を要求時間で割った値のことをいう。つまり、「動作率」=「最小処理時間」/「要求時間」でもとめられる。例えば、処理「A」の動作率は、「20ms」/「100ms」=「20%」となる。   Here, the operation rate is a value obtained by dividing the minimum processing time by the required time. That is, “operation rate” = “minimum processing time” / “request time” can also be obtained. For example, the operation rate of the process “A” is “20 ms” / “100 ms” = “20%”.

初期状態動作率計算部12bは、各処理の動作率テーブル12aを用いて、現在のプロセッサの動作率を計算する。例えば、図3の例を用いて説明すると、初期状態動作率計算部12bは、プロセッサAに対して割り込み処理Aを割り当てている場合には、プロセッサAの現在の動作率が「20%」であると計算する。なお、立ち上げ直後の場合には、プロセッサに割り込み処理を割り当てていない状態なので、プロセッサ動作率は「0%」である。   The initial state operation rate calculation unit 12b calculates the operation rate of the current processor using the operation rate table 12a of each process. For example, referring to the example of FIG. 3, when the interrupt processing A is assigned to the processor A, the initial state operation rate calculation unit 12b has the current operation rate of the processor A of “20%”. Calculate that there is. Note that the processor operating rate is “0%” immediately after start-up, because no interrupt processing is assigned to the processor.

想定動作率計算部12cは、割り込み処理を割り当てた場合の各プロセッサの動作率である想定動作率を計算する。また、想定動作率計算部12cは、要求処理時間が短い割り込み処理を優先する。つまり、プロセッサが現在行っている処理の要求処理時間よりも新たに割り当てる割り込み処理の要求処理時間の方が短い場合に、割り込み処理を割り当てる。   The assumed operation rate calculation unit 12c calculates an assumed operation rate that is an operation rate of each processor when interrupt processing is assigned. Further, the assumed operation rate calculation unit 12c gives priority to an interrupt process with a short request processing time. That is, when the request processing time of the interrupt processing newly assigned is shorter than the request processing time of the processing currently being performed by the processor, the interrupt processing is assigned.

ここで、想定動作率の計算方法について、具体的に説明する。想定動作率計算部12cは、各処理の動作率テーブル12aを用いて、割り込みコントローラは現在の処理の要求処理時間、現在の処理の最小処理時間、割り込み処理の要求処理時間、割り込み処理の最小処理時間を把握する。   Here, a method for calculating the assumed operation rate will be specifically described. The assumed operation rate calculation unit 12c uses the operation rate table 12a of each process, and the interrupt controller uses the current processing request processing time, the current processing minimum processing time, the interrupt processing request processing time, and the interrupt processing minimum processing. Know the time.

そして、想定動作率計算部12cは、要求処理時間が現在の要求処理時間を分母とし、現在の処理の最小処理時間と割り込み処理の最小処理時間の合計を分子とする。上記の分母と分子から割り込み処理を実施したときの想定動作率を求める。つまり、「動作率」=(「現在の処理の最小処理時間」+「割り込み処理の最小処理時間」)/「現在の処理の要求時間」でもとめられる。   Then, the assumed operation rate calculation unit 12c uses the current request processing time as the denominator and the sum of the minimum processing time of the current processing and the minimum processing time of the interrupt processing as the numerator. The expected operation rate when interrupt processing is performed from the above denominator and numerator is obtained. That is, “operation rate” = (“minimum processing time of current processing” + “minimum processing time of interrupt processing”) / “requested time of current processing” is also obtained.

ここで、図4の例を用いて、想定動作率の計算方法について具体的に説明する。図4は、想定動作率の計算処理を説明するための図である。図4では、現在の処理の要求処理時間を「要求処理時間1」、現在の処理の最小処理時間を「最小処理時間1」、割り込み処理の要求処理時間を「要求処理時間2」、割り込み処理の最小処理時間を「最小処理時間2」とする。   Here, the calculation method of the assumed operation rate will be specifically described with reference to the example of FIG. FIG. 4 is a diagram for explaining an assumed operation rate calculation process. In FIG. 4, the request processing time of the current processing is “request processing time 1”, the minimum processing time of the current processing is “minimum processing time 1”, the request processing time of interrupt processing is “request processing time 2”, and interrupt processing The minimum processing time is “minimum processing time 2”.

図4に示すように、想定動作率計算部12cは、プロセッサAについて、要求処理時間1が「100ms」であり、最小処理時間1が「20ms」であり、要求処理時間2が「20ms」であり、最小処理時間2が「10ms」である。このため、想定動作率計算部12cは、(20ms+10ms)/100msを計算し、想定動作率が「30%」となる。   As shown in FIG. 4, for the processor A, the assumed operation rate calculation unit 12c has a required processing time 1 of “100 ms”, a minimum processing time 1 of “20 ms”, and a required processing time 2 of “20 ms”. Yes, the minimum processing time 2 is “10 ms”. For this reason, the assumed operation rate calculation unit 12c calculates (20 ms + 10 ms) / 100 ms, and the assumed operation rate becomes “30%”.

また、想定動作率計算部12cは、プロセッサBについて、要求処理時間1が「100ms」であり、最小処理時間1が「80ms」であり、要求処理時間2が「20ms」であり、最小処理時間2が「10ms」である。このため、想定動作率計算部12cは、(80ms+10ms)/100msを計算し、想定動作率が「90%」となる。   Further, for the processor B, the assumed operation rate calculation unit 12c has a required processing time 1 of “100 ms”, a minimum processing time 1 of “80 ms”, a required processing time 2 of “20 ms”, and a minimum processing time. 2 is “10 ms”. For this reason, the assumed operation rate calculation unit 12c calculates (80 ms + 10 ms) / 100 ms, and the assumed operation rate becomes “90%”.

また、想定動作率計算部12cは、プロセッサCについて、要求処理時間1が「100ms」であり、最小処理時間1が「95ms」であり、要求処理時間2が「20ms」であり、最小処理時間2が「10ms」である。このため、想定動作率計算部12cは、(95ms+10ms)/100msを計算し、想定動作率が「105%」となる。   Further, the assumed operating rate calculation unit 12c has a required processing time 1 of “100 ms”, a minimum processing time 1 of “95 ms”, a required processing time 2 of “20 ms” and a minimum processing time of the processor C. 2 is “10 ms”. For this reason, the assumed operation rate calculation unit 12c calculates (95 ms + 10 ms) / 100 ms, and the assumed operation rate becomes “105%”.

割り込み先決定部13は、予測された各プロセッサの動作率のうち、上限動作率である「100%」を超えず、かつ「100%」に最も近い動作率のプロセッサに対して割り込み処理を割り当てるように制御する。   The interrupt destination determination unit 13 assigns an interrupt process to a processor having an operation rate that does not exceed the upper limit operation rate “100%” and is closest to “100%” among the predicted operation rates of the respective processors. To control.

例えば、割り込み先決定部13は、図4の例では、プロセッサAの想定動作率が「30%」、プロセッサBの想定動作率が「90%」、プロセッサCの想定動作率が「105%」である。このため、上限動作率である「100%」を超えず、かつ「100%」に最も近い動作率であるプロセッサBに割り込み処理を割り当てるように制御する。   For example, in the example of FIG. 4, the interrupt destination determination unit 13 has an assumed operation rate of “30%” for the processor A, “90%” for the assumed operation rate of the processor B, and “105%” for the assumed operation rate of the processor C. It is. For this reason, control is performed so that interrupt processing is assigned to the processor B that does not exceed the upper limit operation rate “100%” and has the operation rate closest to “100%”.

ここで、図5を用いて、動的に割り込みを割り当てた場合における動作率の変化を説明する。図5は、動的に割り込みを割り当てた場合における動作率の変化を説明するための図である。図5に例示するように、初期状態では、プロセッサAは、処理Aを行って動作率が20%であり、プロセッサBは、処理Bを行って動作率が80%であり、プロセッサCは、処理Cを行って動作率が95%である。   Here, the change in the operation rate when the interrupt is dynamically assigned will be described with reference to FIG. FIG. 5 is a diagram for explaining the change in the operation rate when the interrupt is dynamically assigned. As illustrated in FIG. 5, in the initial state, the processor A performs the process A and the operation rate is 20%, the processor B performs the process B and the operation rate is 80%, and the processor C Processing C is performed and the operating rate is 95%.

ここで、割り込みコントローラ10は、割り込み要因Dを受け付けたとき、現在の処理に加えて処理Dを行ったとしたときの想定動作率を各プロセッサについて計算する。つまり、図5に示すように、プロセッサAの想定動作率が30%、プロセッサBの想定動作率が90%、プロセッサCの想定動作率が105%となる。   Here, when the interrupt controller 10 receives the interrupt factor D, the interrupt controller 10 calculates an assumed operation rate for each processor when the process D is performed in addition to the current process. That is, as shown in FIG. 5, the assumed operation rate of the processor A is 30%, the assumed operation rate of the processor B is 90%, and the assumed operation rate of the processor C is 105%.

そして、割り込み先決定部13は、上限動作率である「100%」を超えず、かつ「100%」に最も近い動作率であるプロセッサBに割り込み処理を割り当てることを決定する。具体的には、割り込みコントローラ10は、割り込み要因Dをクロスコネクト14でプロセッサBにクロスコネクトする。プロセッサBは、割り込み要因Dの割り込みを受付け、処理Dを開始する。   Then, the interrupt destination determination unit 13 determines to allocate an interrupt process to the processor B having an operation rate that does not exceed the upper limit operation rate “100%” and is closest to “100%”. Specifically, the interrupt controller 10 cross connects the interrupt factor D to the processor B through the cross connect 14. The processor B receives the interrupt of the interrupt factor D and starts the process D.

その後、割り込みコントローラ10は、さらに割り込み要因Dを受け付けたとき、上記と同様に、現在の処理に加えて処理Dを行ったとしたときの想定動作率を各プロセッサについて計算する。つまり、図5に示すように、プロセッサAの想定動作率が30%、プロセッサBの想定動作率が100%、プロセッサCの想定動作率が105%となる。   Thereafter, when the interrupt controller 10 further receives the interrupt factor D, the interrupt controller 10 calculates the assumed operation rate for each processor when the process D is performed in addition to the current process, as described above. That is, as shown in FIG. 5, the assumed operation rate of the processor A is 30%, the assumed operation rate of the processor B is 100%, and the assumed operation rate of the processor C is 105%.

そして、割り込み先決定部13は、上限動作率である「100%」を超えず、かつ「100%」に最も近い想定動作率であるプロセッサBに割り込み処理を割り当てることを決定する。具体的には、割り込みコントローラ10は、割り込み要因Dをクロスコネクト部14でプロセッサBにクロスコネクトする。プロセッサBは、割り込み要因Dの割り込みを受付け、処理Dを開始する。   Then, the interrupt destination determination unit 13 determines to allocate an interrupt process to the processor B that has an estimated operation rate that does not exceed the upper limit operation rate “100%” and is closest to “100%”. Specifically, the interrupt controller 10 cross-connects the interrupt factor D to the processor B through the cross-connect unit 14. The processor B receives the interrupt of the interrupt factor D and starts the process D.

その後、最初の初期状態の処理(プロセッサAは処理A、プロセッサBは処理B、プロセッサCは処理C)が終了したとする。各プロセッサの動作率は、プロセッサAが0%でスリープ可能、プロセッサBが20%、プロセッサCが0%でスリープ可能となる。つまり、「100%」に最も近い動作率であるプロセッサBに集中的に割り当てて、プロセッサAおよびプロセッサCに割り当てなかった結果、プロセッサAおよびプロセッサCがスリープ状態となり、省電力化を図ることができる。   Thereafter, it is assumed that the processing in the initial state (processor A is processing A, processor B is processing B, and processor C is processing C) is completed. As for the operation rate of each processor, the processor A can sleep at 0%, the processor B can sleep at 20%, and the processor C can sleep at 0%. In other words, as a result of intensively assigning to the processor B having the operation rate closest to “100%” and not assigning to the processor A and the processor C, the processor A and the processor C enter the sleep state, and power saving can be achieved. it can.

このように、割り込みコントローラ10は、図6に例示するように、想定動作率を判断し、上限動作率である「100%」を超えず、かつ「100%」に最も近い想定動作率であるプロセッサBに割り込み処理を割り当てることを決定する。このため、スリープするプロセッサの個数を増やし、プロセッサの消費電力を抑えることが可能である。   Thus, as illustrated in FIG. 6, the interrupt controller 10 determines the assumed operation rate, does not exceed the upper limit operation rate “100%”, and is the assumed operation rate closest to “100%”. It is decided to assign an interrupt process to the processor B. For this reason, it is possible to increase the number of processors to sleep and suppress the power consumption of the processors.

レジスタ11は、各プロセッサに割り当てられた割り込み要因を記憶する。クロスコネクト14は、割り込み要因をプロセッサにクロスコネクトする。   The register 11 stores an interrupt factor assigned to each processor. The cross connect 14 cross connects interrupt factors to the processor.

プロセッサ20は、割り込み要因の割り込みを割り込みコントローラ10から受付け、割り込み処理を実行する。IOインターフェース30は、情報の入出力を制御する。メモリ40は、各種処理に必要なデータを格納する。   The processor 20 receives an interrupt cause interrupt from the interrupt controller 10 and executes interrupt processing. The IO interface 30 controls input / output of information. The memory 40 stores data necessary for various processes.

[割り込みコントローラによる処理]
次に、図7を用いて、実施例2に係る割り込みコントローラ10による処理を説明する。図7は、実施例2に係る割り込みコントローラ10の処理動作を示すフローチャートである。
[Processing by interrupt controller]
Next, processing performed by the interrupt controller 10 according to the second embodiment will be described with reference to FIG. FIG. 7 is a flowchart illustrating the processing operation of the interrupt controller 10 according to the second embodiment.

同図に示すように、割り込みコントローラ10は、初期化処理として、各プロセッサの動作率を0%に初期化する(ステップS101)。そして、割り込みコントローラ10は、アイドル状態となり(ステップS102)、割り込み要因を受け付けると、割り込み処理を割り当てた場合の各プロセッサの動作率である想定動作率を計算する(ステップS103)。   As shown in the figure, the interrupt controller 10 initializes the operation rate of each processor to 0% as an initialization process (step S101). Then, the interrupt controller 10 enters an idle state (step S102). When an interrupt factor is accepted, the interrupt controller 10 calculates an assumed operation rate that is an operation rate of each processor when interrupt processing is assigned (step S103).

そして、割り込みコントローラ10は、上限動作率である「100%」を超えず、かつ「100%」に最も近い想定動作率であるプロセッサを選択し(ステップS104)、選択されたプロセッサに割り込み処理を割り当てて、割り込みを発生させる(ステップS105)。その後、割り込みコントローラ10は、アイドル状態に戻り、割り込み要因を受け付けるたびにステップS102〜S106の処理を繰り返す。   Then, the interrupt controller 10 selects a processor that does not exceed the upper limit operation rate “100%” and has an assumed operation rate that is closest to “100%” (step S104), and performs interrupt processing on the selected processor. Allocate and generate an interrupt (step S105). Thereafter, the interrupt controller 10 returns to the idle state, and repeats the processing of steps S102 to S106 each time an interrupt factor is accepted.

[実施例2の効果]
上述してきたように、割り込みコントローラ10は、複数のプロセッサ20のいずれかに割り込み処理を割り当てる場合に、割り込み処理を割り当てた場合の各プロセッサ20の動作率を予測する。そして、割り込みコントローラ10は、予測された各プロセッサ20の動作率のうち、上限動作率を超えず、かつ上限動作率に最も近い動作率のプロセッサ20に対して割り込み処理を割り当てるように制御する。
[Effect of Example 2]
As described above, the interrupt controller 10 predicts the operation rate of each processor 20 when the interrupt process is assigned when the interrupt process is assigned to any of the plurality of processors 20. Then, the interrupt controller 10 performs control so that interrupt processing is allocated to the processor 20 having an operation rate that does not exceed the upper limit operation rate and is closest to the upper limit operation rate among the predicted operation rates of the respective processors 20.

このため、割り込みコントローラ10は、動作率が「100%」に最も近い動作率であるプロセッサ20に集中的に割り当てて、割り込み処理を割り当てないプロセッサ20を増やして、スリープするプロセッサ20の個数を増やすことができる。この結果、スリープするプロセッサ20の個数を増やしてプロセッサ20の消費電力を抑えることが可能である。また、割り込みコントローラ10が動作率を予測するので、処理負荷を集中管理することができる。   For this reason, the interrupt controller 10 concentrates the allocation on the processors 20 whose operation rate is closest to “100%”, increases the number of processors 20 to which no interrupt processing is allocated, and increases the number of processors 20 that sleep. be able to. As a result, the number of processors 20 that sleep can be increased to reduce the power consumption of the processors 20. Further, since the interrupt controller 10 predicts the operation rate, the processing load can be centrally managed.

また、実施例2によれば、割り込みコントローラ10は、割り込み処理をいつまでに処理しなければならないかを示す要求時間と、プロセッサ20を上限動作率の負荷で動作したときにかかる処理時間を示す最小処理時間とを用いて、各プロセッサ20の動作率を予測する。このため、各プロセッサ20の動作率を適切に予測することが可能である。   Further, according to the second embodiment, the interrupt controller 10 is a minimum time indicating a request time indicating how long the interrupt processing should be processed and a processing time required when the processor 20 is operated at the load of the upper limit operation rate. The operation rate of each processor 20 is predicted using the processing time. For this reason, it is possible to predict the operation rate of each processor 20 appropriately.

また、実施例2によれば、割り込みコントローラ10は、割り込み処理について、割り込み処理の種別と、要求時間と、最小処理時間と、割り込み処理を処理した場合の動作率とを対応付けて記憶する。このため、割り込みコントローラ10は、各割り込み処理にかかる動作率を計算する負担を軽減することが可能である。   Further, according to the second embodiment, the interrupt controller 10 stores the interrupt processing type, the request time, the minimum processing time, and the operation rate when the interrupt processing is processed in association with each other for the interrupt processing. Therefore, the interrupt controller 10 can reduce the burden of calculating the operation rate for each interrupt process.

ところで、上記の実施例2では、割り込みコントローラが各プロセッサの動作率を予測する場合を説明したが、本実施例はこれに限定されるものではなく、各プロセッサが自プロセッサの動作率を予測するようにしてもよい。   In the second embodiment, the case where the interrupt controller predicts the operation rate of each processor has been described. However, the present embodiment is not limited to this, and each processor predicts the operation rate of its own processor. You may do it.

そこで、以下の実施例3では、各プロセッサが自プロセッサの動作率を予測する場合として、図8および図9を用いて、実施例3におけるマルチプロセッサシステムの構成および処理について説明する。図8は、実施例3に係るマルチプロセッサシステムの構成を示すブロック図である。図9は、各プロセッサが動作率を判断する処理を説明するための図である。なお、実施例2と同じ構成、同じ処理については、説明を省略する。   Therefore, in the following third embodiment, the configuration and processing of the multiprocessor system in the third embodiment will be described using FIGS. 8 and 9 as a case where each processor predicts the operation rate of its own processor. FIG. 8 is a block diagram illustrating the configuration of the multiprocessor system according to the third embodiment. FIG. 9 is a diagram for explaining processing in which each processor determines an operation rate. Note that the description of the same configuration and the same processing as in the second embodiment is omitted.

図8に示すように、割り込みコントローラ10aは、レジスタ11a、割り込み先決定部13a、クロスコネクト14、割り込み要求信号送信部15を有する。また、各プロセッサ20aは、初期状態動作率計算部21、想定動作率計算部22、許可信号送信部23を有する。また、メモリ40aは、各処理の動作率を記憶する動作率テーブル41を記憶している。   As illustrated in FIG. 8, the interrupt controller 10a includes a register 11a, an interrupt destination determination unit 13a, a cross connect 14, and an interrupt request signal transmission unit 15. Each processor 20 a includes an initial state operation rate calculation unit 21, an assumed operation rate calculation unit 22, and a permission signal transmission unit 23. In addition, the memory 40a stores an operation rate table 41 that stores the operation rate of each process.

動作率テーブル41は、各割り込み処理の動作率を記憶する。具体的には、動作率テーブル41は、実施例2と同様に、割り込み処理の種別と、いつまでに処理しなければならないかを示す「要求時間」と、プロセッサを100%の負荷で動作したときの処理時間である「最小処理時間」と、割り込み処理を処理した場合の「動作率」とを対応付けて記憶する。なお、プロセッサごとに異なるテーブルを記憶するようにしてもよい。   The operation rate table 41 stores the operation rate of each interrupt process. Specifically, the operation rate table 41 is similar to the second embodiment in that the type of interrupt processing, “request time” indicating how long it must be processed, and when the processor is operated with a load of 100% Is stored in association with the “minimum processing time” that is the processing time of the above and the “operation rate” when the interrupt processing is processed. A different table may be stored for each processor.

割り込みコントローラ10aのレジスタ11aは、各プロセッサの現在実行中の割り込み要因である「割り込み要因」と、各プロセッサ20aに送信した割り込み要求信号で要求する割り込み要因である「送信要求要因」と、各プロセッサ20aに書き込まれた割り込みが可能である旨を示す「許可信号」とを記憶する。   The register 11a of the interrupt controller 10a includes an “interrupt factor” that is an interrupt factor currently being executed by each processor, an “transmission request factor” that is an interrupt factor requested by an interrupt request signal transmitted to each processor 20a, and each processor. The “permission signal” indicating that the interrupt written in 20a is possible is stored.

割り込みコントローラ10aの割り込み要求信号送信部15は、割り込み要因を受け付けると、各プロセッサ20aに対して、割り込み処理の処理を要求する割り込み要求信号を送信する。   When receiving an interrupt factor, the interrupt request signal transmission unit 15 of the interrupt controller 10a transmits an interrupt request signal for requesting interrupt processing to each processor 20a.

各プロセッサ20aの初期状態動作率計算部21は、割り込み要求信号送信部15から割り込み要求信号を受信すると、メモリ40aに記憶された動作率テーブル41を用いて、実施例2と同様に、自プロセッサの現在の動作率を計算する。   When receiving the interrupt request signal from the interrupt request signal transmission unit 15, the initial state operation rate calculation unit 21 of each processor 20a uses the operation rate table 41 stored in the memory 40a as in the second embodiment. Calculate the current operating rate of.

ここで、初期状態動作率計算部21は、初期状態の動作率は現在実行中の処理の割り込み要因を割り込みコントローラのレジスタ11aが記憶しているので、レジスタ11aから現在実行中の処理の割り込み要因を読み出した後、自プロセッサの現在の動作率を計算する。   Here, since the register 11a of the interrupt controller stores the interrupt factor of the currently executing process as the initial state operating rate, the interrupt factor of the currently executing process is stored in the interrupt controller register 11a. Is read, and the current operation rate of the processor is calculated.

また、想定動作率計算部22は、実施例2と同様に、割り込み処理が割り当てられた場合の自プロセッサの動作率である想定動作率を計算する。ここで、想定動作率計算部22は、どの割り込み要因の割り込み要求信号を受けたかを、レジスタ11aから読み出した後、割り込み処理が割り当てられた場合の自プロセッサの動作率である想定動作率を計算する。   Further, as in the second embodiment, the assumed operation rate calculation unit 22 calculates an assumed operation rate that is the operation rate of the own processor when interrupt processing is assigned. Here, the assumed operation rate calculation unit 22 reads the interrupt request signal of which interrupt factor is received from the register 11a, and then calculates the assumed operation rate that is the operation rate of the own processor when the interrupt process is assigned. To do.

許可信号送信部23は、予測された自プロセッサの動作率が上限動作率である「100%」を超えていない場合には、動作率が大きいほど早いタイミングで割り込みを許可する。つまり、許可信号送信部23は、自プロセッサの想定動作率を計算した後、割り込みが可能であるか判定し、割り込みが可能である場合には、想定動作率が大きいほど早いタイミングで割り込みを許可する許可信号を割り込みコントローラ10aに送信する。   When the predicted operation rate of the processor does not exceed the upper limit operation rate “100%”, the permission signal transmission unit 23 permits an interrupt at an earlier timing as the operation rate increases. In other words, the permission signal transmission unit 23 determines whether or not an interrupt is possible after calculating the assumed operation rate of the processor, and if interrupt is possible, the interrupt is permitted at an earlier timing as the assumed operation rate is larger. The permission signal to be transmitted is transmitted to the interrupt controller 10a.

具体的には、許可信号送信部23は、自プロセッサの想定動作率が「100%」を超えているか否かを判定し、超えていない場合には、割り込みが可能であると判定する。そして、許可信号送信部23は、割り込みが可能である場合には、想定動作率が大きいほど早いタイミングで割り込みを許可する許可信号を割り込みコントローラ10aに送信し、想定動作率が小さいほど遅いタイミングで割り込みを許可する許可信号を割り込みコントローラ10aに送信する。   Specifically, the permission signal transmission unit 23 determines whether or not the assumed operation rate of the own processor exceeds “100%”, and determines that the interruption is possible when it does not exceed. Then, when the interrupt is possible, the permission signal transmission unit 23 transmits the permission signal permitting the interrupt at an earlier timing as the assumed operation rate is larger, and at a later timing as the assumed operation rate is smaller. A permission signal for permitting an interrupt is transmitted to the interrupt controller 10a.

また、許可信号送信部23は、割り込みが可能である場合には、許可信号を送信しない。なお、許可信号を送信するタイミングについては、プロセッサ20aが時間にオフセットを付けてレジスタ11aに書き込むようにする。   Moreover, the permission signal transmission part 23 does not transmit a permission signal, when an interruption is possible. Note that the processor 20a writes the permission signal to the register 11a with an offset in time.

割り込みコントローラ10aの割り込み先決定部13aは、最も早く許可信号を送信したプロセッサを特定し、割り込み先に決定する。そして、割り込みコントローラ10aの割り込み先決定部13aは、プロセッサに対して割り込み処理を割り当てるように制御する。   The interrupt destination determination unit 13a of the interrupt controller 10a identifies the processor that has transmitted the permission signal earliest and determines the interrupt destination. Then, the interrupt destination determination unit 13a of the interrupt controller 10a performs control so that interrupt processing is assigned to the processor.

ここで、図9の例を用いて具体的に説明する。図9の(a)に示すように、割り込みコントローラ10aから割り込み要求を受信すると、各プロセッサ20aは、自装置の想定動作率を判断する。ここでは、プロセッサAの想定動作率が30%、プロセッサBの想定動作率が90%、プロセッサCの想定動作率が105%であったとする。   Here, it demonstrates concretely using the example of FIG. As shown in FIG. 9A, when an interrupt request is received from the interrupt controller 10a, each processor 20a determines an assumed operation rate of the own device. Here, it is assumed that the assumed operation rate of the processor A is 30%, the assumed operation rate of the processor B is 90%, and the assumed operation rate of the processor C is 105%.

このような場合に、図9の(b)に示すように、例えば、プロセッサAは、70μ秒後に許可信号を割り込みコントローラ10aに送信する。また、例えば、プロセッサBは、10μ秒後に許可信号を割り込みコントローラ10aに送信し、プロセッサCは、許可信号を送信しない。この結果、図9の(c)に示すように、割り込みコントローラ10aは、最も早く許可信号を送信したプロセッサBに割り込み処理を割り当てる。   In such a case, as shown in FIG. 9B, for example, the processor A transmits a permission signal to the interrupt controller 10a after 70 μsec. Further, for example, the processor B transmits a permission signal to the interrupt controller 10a after 10 μs, and the processor C does not transmit a permission signal. As a result, as shown in FIG. 9C, the interrupt controller 10a assigns an interrupt process to the processor B that has transmitted the permission signal earliest.

このように、複数のプロセッサ20aが、割り込み処理を割り当てられた場合の自プロセッサの動作率を予測し、予測された自プロセッサの動作率が上限動作率を超えていない場合には、動作率が大きいほど早いタイミングで割り込みを許可する許可信号を割り込みコントローラ10aに送信する。そして、割り込みコントローラ10aが、送信された各プロセッサ20aの許可信号のうち、最も早く許可信号を送信したプロセッサ20aに対して割り込み処理を割り当てるように制御する。   In this way, the plurality of processors 20a predict the operation rate of the own processor when the interrupt processing is assigned, and when the predicted operation rate of the own processor does not exceed the upper limit operation rate, the operation rate is A permission signal permitting an interrupt is transmitted to the interrupt controller 10a at an earlier timing as the value increases. Then, the interrupt controller 10a performs control so that interrupt processing is assigned to the processor 20a that has transmitted the permission signal earliest among the transmitted permission signals of each processor 20a.

このため、割り込みコントローラ10aは、動作率が「100%」に最も近い動作率であるプロセッサに集中的に割り当てて、割り込み処理を割り当てないプロセッサを増やして、スリープするプロセッサの個数を増やすことができる。この結果、スリープするプロセッサの個数を増やしてプロセッサの消費電力を抑えることが可能である。また、各プロセッサ20aが動作率を予測するので、処理負荷を分散することができる。   For this reason, the interrupt controller 10a can increase the number of processors to sleep by intensively assigning to processors whose operation rate is the closest to “100%”, increasing the number of processors not assigned interrupt processing. . As a result, it is possible to suppress the power consumption of the processors by increasing the number of processors that sleep. In addition, since each processor 20a predicts the operation rate, the processing load can be distributed.

さて、これまで本実施例について説明したが、上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では実施例4として本発明に含まれる他の実施例を説明する。   Although the present embodiment has been described so far, the present invention may be implemented in various different forms other than the embodiment described above. Accordingly, another embodiment included in the present invention will be described below as a fourth embodiment.

(1)システム構成等
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、初期状態動作率計算部12bと想定動作率計算部12cを統合してもよい。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
(1) System Configuration, etc. Further, each component of each illustrated apparatus is functionally conceptual and does not necessarily need to be physically configured as illustrated. In other words, the specific form of distribution / integration of each device is not limited to that shown in the figure, and all or a part thereof may be functionally or physically distributed or arbitrarily distributed in arbitrary units according to various loads or usage conditions. Can be integrated and configured. For example, the initial state operation rate calculation unit 12b and the assumed operation rate calculation unit 12c may be integrated. Further, all or any part of each processing function performed in each device may be realized by a CPU and a program analyzed and executed by the CPU, or may be realized as hardware by wired logic.

また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。   In addition, among the processes described in this embodiment, all or part of the processes described as being performed automatically can be performed manually, or the processes described as being performed manually can be performed. All or a part can be automatically performed by a known method. In addition, the processing procedure, control procedure, specific name, and information including various data and parameters shown in the above-described document and drawings can be arbitrarily changed unless otherwise specified.

(2)プログラム
また、上記の実施例1で説明した割り込みコントローラ2の各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することができる。そこで、以下では、図10を用いて、上記の実施例1と同様の機能を有する割り込み制御プログラムを実行するコンピュータの一例を説明する。図10は、割り込み制御プログラムを実行するコンピュータを示す図である。
(2) Program Various processes of the interrupt controller 2 described in the first embodiment can be realized by executing a program prepared in advance on a computer system such as a personal computer or a workstation. In the following, an example of a computer that executes an interrupt control program having the same function as that of the first embodiment will be described with reference to FIG. FIG. 10 is a diagram illustrating a computer that executes an interrupt control program.

同図に示すように、割り込みコントローラとしてのコンピュータ900は、RAM910、CPU920、HDD930およびクロスコネクト940をバスで接続して構成される。   As shown in the figure, a computer 900 as an interrupt controller is configured by connecting a RAM 910, a CPU 920, an HDD 930, and a cross-connect 940 via a bus.

ここで、クロスコネクト940は、プロセッサとの間でやり取りされる各種情報に関する通信を制御する。HDD930は、CPU920による各種処理の実行に必要な情報を記憶する。RAM910は、各種情報を一時的に記憶する。CPU920は、各種演算処理を実行する。   Here, the cross connect 940 controls communication related to various types of information exchanged with the processor. The HDD 930 stores information necessary for the CPU 920 to execute various processes. The RAM 910 temporarily stores various information. The CPU 920 executes various arithmetic processes.

そして、HDD930には、図10に示すように、上記の実施例1に示した、割り込みコントローラの各処理部と同様の機能を発揮する割り込み制御プログラム911があらかじめ記憶されている。なお、この割り込み制御プログラム911を適宜分散させて、ネットワークを介して通信可能に接続された他のコンピュータの記憶部に記憶させておくこともできる。   As shown in FIG. 10, the HDD 930 stores in advance an interrupt control program 911 that exhibits the same function as each processing unit of the interrupt controller shown in the first embodiment. Note that the interrupt control program 911 may be appropriately distributed and stored in a storage unit of another computer that is communicably connected via a network.

そして、CPU920が、この割り込み制御プログラム911をHDD930から読み出してRAM910に展開する。そして、割り込み制御プログラム911は、各種データをHDD930から読み出して、RAM910において自身に割り当てられた領域に展開し、この展開したデータ等に基づいて各種処理を実行する。   Then, the CPU 920 reads this interrupt control program 911 from the HDD 930 and expands it in the RAM 910. The interrupt control program 911 reads various data from the HDD 930, expands the data in an area allocated to itself in the RAM 910, and executes various processes based on the expanded data.

なお、上記した割り込み制御プログラム911については、必ずしも最初からHDD930に記憶させておく必要はなく、例えば、コンピュータ900に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」、さらには、公衆回線、インターネット、LAN、WANなどを介してコンピュータ900に接続される「他のコンピュータ(またはサーバ)」などに各プログラムを記憶させておき、コンピュータ900がこれらから各プログラムを読み出して実行するようにしてもよい。   The interrupt control program 911 described above does not necessarily need to be stored in the HDD 930 from the beginning. For example, a flexible disk (FD), a CD-ROM, a DVD disk, a magneto-optical disk, an IC inserted into the computer 900 can be used. Each program is stored in a “portable physical medium” such as a card, and “another computer (or server)” connected to the computer 900 via a public line, the Internet, a LAN, a WAN, or the like. The computer 900 may read and execute each program from these.

1、1A、1B マルチプロセッサシステム
2、10、10a 割り込みコントローラ
11 レジスタ
12 各プロセッサの動作率予測部
12a 動作率テーブル
12b 初期状態動作率計算部
12c 想定動作率計算部
13 割り込み先決定部
14 クロスコネクト
15 割り込み要求信号送信部
3、20、20a プロセッサ
30 IOインターフェース
40 メモリ
1, 1A, 1B Multiprocessor system 2, 10, 10a Interrupt controller 11 Register 12 Operation rate prediction unit of each processor 12a Operation rate table 12b Initial state operation rate calculation unit 12c Assumed operation rate calculation unit 13 Interrupt destination determination unit 14 Cross connect 15 Interrupt request signal transmission unit 3, 20, 20a Processor 30 IO interface 40 Memory

Claims (6)

割り込み処理を実行する複数のプロセッサと当該プロセッサに割り込み処理を割り当てる割り込みコントローラとを有するマルチプロセッサシステムであって、
前記割り込みコントローラが、
前記複数のプロセッサのいずれかに割り込み処理を割り当てる場合に、当該割り込み処理を割り当てた場合の各プロセッサの動作率を予測する動作率予測部と、
前記動作率予測部によって予測された各プロセッサの動作率のうち、上限動作率を超えず、かつ上限動作率に最も近い動作率のプロセッサに対して割り込み処理を割り当てるように制御する割り込み先制御部と、
を備えることを特徴とするマルチプロセッサシステム。
A multiprocessor system having a plurality of processors that execute interrupt processing and an interrupt controller that assigns interrupt processing to the processors,
The interrupt controller is
When assigning interrupt processing to any of the plurality of processors, an operation rate prediction unit that predicts the operation rate of each processor when the interrupt processing is assigned;
An interrupt destination control unit that performs control so that interrupt processing is allocated to a processor having an operation rate that does not exceed the upper limit operation rate and that is closest to the upper limit operation rate among the operation rates of each processor predicted by the operation rate prediction unit When,
A multiprocessor system comprising:
前記動作率予測部は、前記割り込み処理をいつまでに処理しなければならないかを示す要求時間と、前記プロセッサを上限動作率の負荷で動作したときにかかる処理時間を示す最小処理時間とを用いて、前記各プロセッサの動作率を予測することを特徴とする請求項1に記載のマルチプロセッサシステム。   The operating rate predicting unit uses a request time indicating how long the interrupt processing must be processed and a minimum processing time indicating a processing time required when the processor is operated with a load of an upper limit operating rate. The multiprocessor system according to claim 1, wherein an operation rate of each processor is predicted. 前記割り込みコントローラが、前記割り込み処理について、当該割り込み処理の種別と、前記要求時間と、前記最小処理時間と、割り込み処理を処理した場合の動作率とを対応付けて記憶する動作率記憶部をさらに備えることを特徴とする請求項2に記載のマルチプロセッサシステム。   The interrupt controller further includes an operation rate storage unit that stores, in association with the interrupt processing, the type of the interrupt processing, the request time, the minimum processing time, and the operation rate when the interrupt processing is processed in association with each other. The multiprocessor system according to claim 2, further comprising: 割り込み処理を実行する複数のプロセッサと当該プロセッサに割り込み処理を割り当てる割り込みコントローラとを有するマルチプロセッサシステムであって、
前記複数のプロセッサが、
前記割り込みコントローラから割り込み要求信号を受信した場合に、前記割り込み処理を割り当てられた場合の自プロセッサの動作率を予測する動作率予測部と、
前記動作率予測部によって予測された自プロセッサの動作率が上限動作率を超えていない場合には、当該動作率が大きいほど、前記割り込み要求信号を受信したときから早いタイミングで割り込みを許可する許可信号を前記割り込みコントローラに送信する許可信号送信部と、
を備え、
前記割り込みコントローラが、
前記許可信号送信部によって送信された各プロセッサの許可信号のうち、最も早く許可信号を送信したプロセッサに対して割り込み処理を割り当てるように制御する割り込み先制御部と、
を備えることを特徴とするマルチプロセッサシステム。
A multiprocessor system having a plurality of processors that execute interrupt processing and an interrupt controller that assigns interrupt processing to the processors,
The plurality of processors are
When an interrupt request signal is received from the interrupt controller, an operation rate prediction unit that predicts an operation rate of the own processor when the interrupt processing is assigned;
When the operation rate of the own processor predicted by the operation rate prediction unit does not exceed the upper limit operation rate, the larger the operation rate, the higher the permission that allows an interrupt at an earlier timing from the reception of the interrupt request signal A permission signal transmitter for transmitting a signal to the interrupt controller;
With
The interrupt controller is
Among the permission signals of each processor transmitted by the permission signal transmission unit, an interrupt destination control unit that controls to assign an interrupt process to the processor that transmitted the permission signal earliest;
A multiprocessor system comprising:
割り込み処理を実行する複数のプロセッサと当該プロセッサに割り込み処理を割り当てる割り込みコントローラとを有するマルチプロセッサシステムでおこなわれる割り込み制御方法であって、
前記割り込みコントローラが、割り込み処理を実行する前記複数のプロセッサのいずれかに割り込み処理を割り当てる場合に、当該割り込み処理を割り当てた場合の各プロセッサの動作率を予測する動作率予測ステップと、
前記割り込みコントローラが、前記動作率予測ステップによって予測された各プロセッサの動作率のうち、上限動作率を超えず、かつ上限動作率に最も近い動作率のプロセッサに対して割り込み処理を割り当てるように制御する割り込み先制御ステップと、
を含んだことを特徴とする割り込み制御方法。
An interrupt control method performed in a multiprocessor system having a plurality of processors that execute interrupt processing and an interrupt controller that assigns interrupt processing to the processor,
Said interrupt controller, when assigning interrupt processing in any of said plurality of processors to execute the interrupt processing, the operation rate prediction step of predicting the behavior of each processor when assigned the interrupt processing,
It said interrupt controller, among the operation rate of each processor which is predicted by the operation ratio prediction step, does not exceed the upper limit operation rate, and the interrupt process controller to allocate to the nearest operating ratio of the processor to the upper limit operation rate Interrupt destination control step to
An interrupt control method comprising:
割り込み処理を実行する複数のプロセッサを有するコンピュータに実行させる割り込み制御プログラムであって、
割り込み処理を実行する前記複数のプロセッサのいずれかに割り込み処理を割り当てる場合に、当該割り込み処理を割り当てた場合の各プロセッサの動作率を予測する動作率予測手順と、
前記動作率予測手順によって予測された各プロセッサの動作率のうち、上限動作率を超えず、かつ上限動作率に最も近い動作率のプロセッサに対して割り込み処理を割り当てるように制御する割り込み先制御手順と、
をコンピュータに実行させることを特徴とする割り込み制御プログラム。
An interrupt control program to be executed by a computer having a plurality of processors for executing interrupt processing,
When assigning an interrupt process interrupt processing in any of said plurality of processors executing, operating rate and the prediction procedure for predicting the behavior of each processor when assigned the interrupt processing,
Interrupt destination control procedure for controlling to assign an interrupt process to a processor having an operation rate closest to the upper limit operation rate among the operation rates of each processor predicted by the operation rate prediction procedure When,
An interrupt control program characterized by causing a computer to execute.
JP2009154394A 2009-06-29 2009-06-29 Multiprocessor system, interrupt control method, and interrupt control program Expired - Fee Related JP5439983B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009154394A JP5439983B2 (en) 2009-06-29 2009-06-29 Multiprocessor system, interrupt control method, and interrupt control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009154394A JP5439983B2 (en) 2009-06-29 2009-06-29 Multiprocessor system, interrupt control method, and interrupt control program

Publications (2)

Publication Number Publication Date
JP2011008736A JP2011008736A (en) 2011-01-13
JP5439983B2 true JP5439983B2 (en) 2014-03-12

Family

ID=43565263

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009154394A Expired - Fee Related JP5439983B2 (en) 2009-06-29 2009-06-29 Multiprocessor system, interrupt control method, and interrupt control program

Country Status (1)

Country Link
JP (1) JP5439983B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115421919B (en) * 2022-09-19 2025-09-09 Oppo广东移动通信有限公司 Memory management method, device, memory manager, equipment and storage medium

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5979332A (en) * 1982-10-29 1984-05-08 Toshiba Corp Interruption acceptance controlling system
JPH0658654B2 (en) * 1984-02-28 1994-08-03 株式会社東芝 Interrupt acceptance control method
JP2848297B2 (en) * 1995-12-06 1999-01-20 日本電気株式会社 Multiprocessor interrupt control system
JP5024561B2 (en) * 2008-12-18 2012-09-12 日本電気株式会社 Information processing apparatus and input / output path switching method

Also Published As

Publication number Publication date
JP2011008736A (en) 2011-01-13

Similar Documents

Publication Publication Date Title
JP2013524306A (en) Computer-implemented method, system, and computer program for initiating a task in a computer system
KR101373786B1 (en) Resource-based scheduler
CN103201720B (en) Virtual computer control apparatus, virtual computer control method, and integrated circuit
JP6640025B2 (en) Distributed processing control system and distributed processing control method
CN109788325A (en) Video task distribution method and server
JP7616321B2 (en) Task scheduler device and program
CN114546587A (en) A method for expanding and shrinking capacity of online image recognition service and related device
JP5439983B2 (en) Multiprocessor system, interrupt control method, and interrupt control program
JP2014078214A (en) Schedule system, schedule method, schedule program, and operating system
JP2005092780A (en) Real-time processor system and control method
JP6191361B2 (en) Information processing system, information processing system control method, and control program
US20160127259A1 (en) System and method for managing safe downtime of shared resources within a pcd
JP2009237858A (en) Server task management program and server task management method
JP2010218445A (en) Multicore processor system, scheduling method and scheduler program
JP6232698B2 (en) Network switching device, task moving method, and task moving program
US20140373024A1 (en) Real time processor
JP2008225641A (en) Computer system, interrupt control method and program
CN119225929A (en) An optimization method, system, device and medium for ETL task scheduling
CN107408061B (en) Parallel processing system (PPS)
KR20110018618A (en) Multithreaded asynchronous I / O processing device and method
WO2014188642A1 (en) Scheduling system, scheduling method, and recording medium
JP2010146382A (en) Load balancing system, load balancing method and load balancing program
JP4877317B2 (en) Information processing apparatus and interrupt control method
CN116680491B (en) An information acquisition and control method, apparatus, device, and storage medium
JP2003186686A (en) Resource control device, method and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120309

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130821

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130827

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131023

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131202

R150 Certificate of patent or registration of utility model

Ref document number: 5439983

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D02