JP2006277637A - Multiprocessor computer system for allocating job by temperature monitoring, and computer program - Google Patents
Multiprocessor computer system for allocating job by temperature monitoring, and computer program Download PDFInfo
- Publication number
- JP2006277637A JP2006277637A JP2005099580A JP2005099580A JP2006277637A JP 2006277637 A JP2006277637 A JP 2006277637A JP 2005099580 A JP2005099580 A JP 2005099580A JP 2005099580 A JP2005099580 A JP 2005099580A JP 2006277637 A JP2006277637 A JP 2006277637A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- job
- memory
- temperature
- computer system
- 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
Links
Images
Landscapes
- Multi Processors (AREA)
Abstract
Description
本発明は、複数個のプロセッサを有するマルチプロセッサ計算機システムにおいて、複数個のプロセッサへジョブを割り当てるジョブスケジューリング方法、及びそのジョブスケジューリング方法を有するマルチプロセッサ計算機システムに関する。 The present invention relates to a job scheduling method for assigning jobs to a plurality of processors and a multiprocessor computer system having the job scheduling method in a multiprocessor computer system having a plurality of processors.
従来、電子計算機のプロセッサには半導体素子が使われるのが一般的である。半導体素子に電流が流れると、内部損失によって熱が発生する。半導体素子の接合部温度(ジャンクション温度)が許容値を超えると機能劣化や故障の原因となり、著しい場合は半導体素子が破壊される。 Conventionally, a semiconductor element is generally used for a processor of an electronic computer. When a current flows through the semiconductor element, heat is generated due to internal loss. If the junction temperature of the semiconductor element (junction temperature) exceeds an allowable value, it may cause functional deterioration or failure, and in a severe case, the semiconductor element is destroyed.
電子計算機の性能を決める要因として、メモリアクセスによる遅延、いわゆるノイマンボトルネックがあるが、メモリアクセス速度を速くして、プロセッサの動作クロック周波数を上げていくと、スイッチング動作の消費電力が増加し、半導体素子の接合部温度が許容値を超えることになる。 Factors that determine the performance of a computer include a delay due to memory access, the so-called Neumann bottleneck, but increasing the memory access speed and increasing the processor operating clock frequency increases the power consumption of the switching operation. The junction temperature of the semiconductor element exceeds the allowable value.
そのため、接合部温度が許容値を超えない範囲にクロック周波数を制限しなければならず、動作速度をそれ以上速くできないという問題が発生する。 For this reason, the clock frequency must be limited to a range in which the junction temperature does not exceed the allowable value, and the operation speed cannot be increased any more.
そこで、プロセッサ毎の負荷状況を比較して、負荷の軽いプロセッサにジョブを割り当てる方法(特許文献1参照)がある。また、プロセッサの温度を監視して、一定以上の温度になったプロセッサは、その動作クロック周波数を下げる方法、及び温度の低いプロセッサにジョブを割り当てる方法が提案されている(特許文献2参照)。 Therefore, there is a method (see Patent Document 1) that compares the load status of each processor and assigns a job to a processor with a light load. In addition, a method has been proposed in which the processor temperature is monitored and the operating clock frequency of a processor that has reached a certain temperature is lowered, and a job is assigned to a processor having a lower temperature (see Patent Document 2).
一方、電子計算機の処理能力を高めるために複数のプロセッサを備えるマルチプロセッサ計算機システムが使用されている。マルチプロセッサ計算機システムでは、近年、論理共有メモリによる容易な並列プログラミングと、物理分散メモリによる性能スケーラビリティを両立させる並列計算機として、分散共有メモリ型並列計算機(DSM:Distributed Shared Memory processor computer)が注目されている。DSMでは、他プロセッサの物理メモリも自プロセッサの物理メモリと同様に通常のメモリ参照命令でアクセスできるが、前者は後者に比較して時間がかかる、という特性を持つ。このため、DSM上で十分な性能を得るには、データをどのプロセッサに配置するかを決めるデータ分散が重要である。 On the other hand, a multiprocessor computer system including a plurality of processors is used in order to increase the processing capability of an electronic computer. In the multiprocessor computer system, a distributed shared memory processor (DSM) has recently attracted attention as a parallel computer that combines easy parallel programming with logical shared memory and performance scalability with physical distributed memory. Yes. In DSM, the physical memory of another processor can be accessed by a normal memory reference instruction in the same manner as the physical memory of its own processor, but the former has a characteristic that it takes more time than the latter. For this reason, in order to obtain sufficient performance on the DSM, data distribution that determines which processor the data is allocated to is important.
データ分散には、次のような方法が提案されている。特許文献3の方法は、メモリアクセス装置は、複数のコマンドキューと、スケジューラと、スケジューラからの管理情報を用いてメモリアクセスを実行するメモリアクセス部と、1つのコマンドキューへのメモリアクセス要求の発信頻度を用いて、スケジューラに対して帯域変更を要求する制御部とインタフェース部とから構成される。各プロセッサの負荷変動に追随したメモリアクセス処理が可能になる、共有メモリシステムである。 The following methods have been proposed for data distribution. In the method of Patent Literature 3, a memory access device includes a plurality of command queues, a scheduler, a memory access unit that executes memory access using management information from the scheduler, and a memory access request to one command queue. It is composed of a control unit and an interface unit that request a bandwidth change to the scheduler using the frequency. This is a shared memory system that enables memory access processing following the load fluctuation of each processor.
特許文献4は、分散メモリ方式、もしくは、プロセッサとメモリ間の距離によってプロセッサからメモリへのアクセス速度に差がある共有メモリ方式のマルチプロセッサ計算機システムにおいて、1つのソースプログラムを複数のプロセッサにより分担して並列実行する際、ソースプログラム中の1つの配列データを複数のプロセッサのメモリへ分割して割り当てる方法を提案する。その方法によれば、並列実行用プログラムを容易に記述することが可能になると同時に、データ参照時のデータ転送時間を削減することができる。命令部の各プロセッサへの分割と配列データの分割とを一致させることにより、配列データと命令における繰り返し回数が異なっていても、各プロセッサにおいて、問題なく並列実行を行うことができる。 Patent Document 4 discloses that a single source program is shared by a plurality of processors in a distributed memory system or a shared memory multiprocessor computer system in which the access speed from the processor to the memory varies depending on the distance between the processor and the memory. In parallel execution, a method is proposed in which one array data in a source program is divided and allocated to memories of a plurality of processors. According to this method, it is possible to easily describe a parallel execution program, and at the same time, it is possible to reduce the data transfer time when referring to data. By matching the division of the instruction section into each processor and the division of the array data, parallel execution can be performed without any problem in each processor even if the number of repetitions in the array data and the instruction is different.
現在のプロセッサでは、ある温度以上になると、クロックダウンして動作することで、さらなる温度上昇を抑制する機能を有するものがある。しかしながら、このプロセッサを用いて複数のプロセッサを有するシステムを構築した場合、温度上昇を検出してクロックダウンしたプロセッサにジョブが割り当てられ、期待される性能が得られない場合があるという問題があった。この問題解決のために、前述したとおりプロセッサの温度を監視し、温度の低いプロセッサに優先的にジョブを割り当てる方式が提案されてきた。しかし、この方式によるジョブ割り当てでは、分散したメモリを単一のアドレス空間として扱う方式のマルチプロセッサシステムにおいてはジョブがアクセスするメモリとジョブが割り当てられたCPUとの論理的距離が遠くなることによりメモリアクセスに遅延が生じ、性能が低下する場合があるという問題があった。
本発明は、上記事情に鑑みてなされたものであり、複数のプロセッサを有し、分散したメモリを単一のアドレス空間として扱うことのできるマルチプロセッサ計算機システムにおいて、プロセッサの温度上昇による性能低下を防止することを目的とする。 The present invention has been made in view of the above circumstances, and in a multiprocessor computer system having a plurality of processors and capable of handling a distributed memory as a single address space, performance degradation due to an increase in processor temperature is reduced. The purpose is to prevent.
本発明のマルチプロセッサ計算機システムは、ある単位のプロセッサにメモリが対応付けられており、他の単位のプロセッサに対応するメモリに対しても、当該他のプロセッサの制御系を介してアクセスすることで、全てのプロセッサが全てのメモリにアクセス可能であるマルチプロセッサ計算機システムであって、
前記全てのメモリを単一のメモリ空間としてアドレス割付制御を行うメモリマップ制御手段と、
前記各プロセッサの温度を検出する温度検出手段と、
プロセッサとメモリとの距離に基づいて、ジョブが使用するデータが格納されたメモリに最も近いプロセッサへ、ジョブの割付の要求を行うジョブメモリマップ解析手段と、
前記ジョブメモリマップ解析手段と温度検出手段の情報に基づいて、あるしきい値以下の温度のプロセッサからジョブメモリマップ解析手段の要求に最も近いプロセッサへのジョブ割り当てを制御するスケジューラ手段と、
を備えることを特徴とする。
In the multiprocessor computer system of the present invention, a memory is associated with a processor of a certain unit, and a memory corresponding to a processor of another unit is accessed via the control system of the other processor. A multiprocessor computer system in which all processors can access all memories,
Memory map control means for performing address allocation control with all the memories as a single memory space;
Temperature detecting means for detecting the temperature of each processor;
Job memory map analysis means for requesting job allocation to the processor closest to the memory storing the data used by the job based on the distance between the processor and the memory;
Based on the information of the job memory map analyzing means and the temperature detecting means, a scheduler means for controlling job assignment from a processor having a temperature below a certain threshold value to a processor closest to the request of the job memory map analyzing means,
It is characterized by providing.
また、本発明のマルチプロセッサ計算機システムは、前記スケジューラ手段のジョブ割り当て履歴を記憶するジョブ割当履歴記憶手段を備え、前記ジョブメモリマップ解析手段が要求するジョブ割付と異なるプロセッサへジョブ割当が行われる状態が継続している場合に、前記スケジューラ手段にジョブ実行の一時停止を指令し、ジョブ割り当て要求の多いデータがより低温のプロセッサに対応付けられたメモリに格納されるように、データの再配置をメモリマップ制御手段に指令する温度ジョブ履歴管理手段を有することを特徴とする。 The multiprocessor computer system according to the present invention further includes a job allocation history storage unit that stores a job allocation history of the scheduler unit, and the job allocation to a processor different from the job allocation requested by the job memory map analysis unit is performed. If this is the case, the scheduler unit is instructed to temporarily stop job execution, and data relocation is performed so that data with many job allocation requests is stored in a memory associated with a lower temperature processor. It has temperature job history management means for instructing the memory map control means.
本発明のマルチプロセッサ計算機システムは、前記ジョブメモリ解析手段におけるジョブ割付の要求が、ジョブが割り付けられたプロセッサとそのジョブが使用するメモリの距離を、各プロセッサに割り付けられるすべてのジョブで合計した値が最小になるような割付であることが好ましい。 In the multiprocessor computer system of the present invention, the job allocation request in the job memory analyzing means is a value obtained by summing the distance between the processor to which the job is allocated and the memory used by the job for all the jobs allocated to each processor. It is preferable that the allocation is such that is minimized.
本発明のマルチプロセッサ計算機システムにおけるコンピュータプログラムは、ある単位のプロセッサにメモリが対応付けられており、他の単位のプロセッサに対応するメモリに対しても、当該他のプロセッサの制御系を介してアクセスすることで、全てのプロセッサが全てのメモリにアクセス可能であるマルチプロセッサ計算機システムにおいて、コンピュータを、
前記全てのメモリを単一のメモリ空間としてアドレス割付制御を行うメモリマップ制御手段と、
前記各プロセッサの温度を検出する温度検出手段と、
プロセッサとメモリとの距離に基づいて、ジョブが使用するデータが格納されたメモリに最も近いプロセッサへ、ジョブの割付の要求を行うジョブメモリマップ解析手段と、
前記ジョブメモリマップ解析手段と温度検出手段の情報に基づいて、あるしきい値以下の温度のプロセッサからジョブメモリマップ解析手段の要求に最も近いプロセッサへのジョブ割り当てを制御するスケジューラ手段と、
して機能させることを特徴とする。
In the computer program in the multiprocessor computer system of the present invention, a memory is associated with a processor of a certain unit, and a memory corresponding to a processor of another unit is also accessed via the control system of the other processor. In a multiprocessor computer system in which all processors can access all memories,
Memory map control means for performing address allocation control with all the memories as a single memory space;
Temperature detecting means for detecting the temperature of each processor;
Job memory map analysis means for requesting job allocation to the processor closest to the memory storing the data used by the job based on the distance between the processor and the memory;
Based on the information of the job memory map analyzing means and the temperature detecting means, a scheduler means for controlling job assignment from a processor having a temperature below a certain threshold value to a processor closest to the request of the job memory map analyzing means,
It is characterized by functioning.
本発明のマルチプロセッサ計算機システムによれば、不適切なプロセッサへのジョブ割り当てによる性能低下を防止することができる。また、不適切なプロセッサへのジョブ割り当てが連続することによる性能低下を抑制することができる。 According to the multiprocessor computer system of the present invention, it is possible to prevent performance degradation caused by job assignment to an inappropriate processor. In addition, it is possible to suppress a decrease in performance due to continuous job assignment to inappropriate processors.
以下、本発明の一実施の形態に係るマルチプロセッサ計算機システムを、図面を参照して説明する。 A multiprocessor computer system according to an embodiment of the present invention will be described below with reference to the drawings.
(実施の形態1)
図1は、本発明の実施の形態1に係るマルチプロセッサ計算機システムの論理的構成を示すブロック図である。図2は、本発明の実施の形態1に係るマルチプロセッサ計算機システムの一実施例を示すブロック図である。
(Embodiment 1)
FIG. 1 is a block diagram showing a logical configuration of a multiprocessor computer system according to
本実施の形態1に係るマルチプロセッサ計算機システム1は、図1に示すように、複数のプロセッサ(CPU)61、62、63を備え、それぞれのプロセッサにメモリ81、82、83が対応付けられている。本実施の形態1では、理解を容易にするために、プロセッサの数が3の場合について説明するが、本発明はプロセッサの数に制限されるものではない。各プロセッサ61、62、63はそれぞれメモリコントローラ(MMC)71、72、73を介してメモリにアクセスする。各プロセッサは対応付けられたメモリ以外に、他のプロセッサに対応付けられたメモリにプロセッサ間接続を通じてアクセスすることができる。プロセッサ61,62,63にはその温度を検出する手段として、温度検出手段(温度センサ)10が備えられている。温度検出手段10が検出した温度情報は、スケジューラ20に送られる。一方、ジョブメモリマップ解析手段30は、例えば、専用コントローラチップ(専用プロセッサチップ)等から構成され、各ジョブが使用するデータ(各ジョブのプログラムを含む)が格納されたメモリ81,82,83とプロセッサ61、62,63との距離(アクセスの時間)を算出し、データが格納されているメモリに近い順にジョブを割り当てるべきプロセッサを選定する。ジョブメモリマップ解析手段30のプロセッサ選定情報は、スケジューラ20に読み込まれる。そして、スケジューラ20は、プロセッサ61、62,63の温度とジョブメモリマップ解析手段30のプロセッサ選定情報から、ジョブを割り当てるべきプロセッサを選択して、ジョブをプロセッサ61、62,63に割り当てる。
As shown in FIG. 1, the
ジョブをプロセッサに割り当てた結果は、温度ジョブ履歴管理手段40に蓄積される。温度ジョブ履歴管理手段40は、例えば、履歴記憶用のメモリを内蔵する専用コントローラチップ(専用プロセッサチップ)から構成され、ジョブの割当履歴から、メモリ81、82、83の再配置(リマップ)が必要かどうかを判断する。メモリマップ制御手段50が温度ジョブ履歴管理手段40と各メモリコントローラ71、72、73に連携している。メモリマップ制御手段50は、専用コントローラチップ(専用プロセッサチップ)から構成され、データをメモリのどこに格納するかをメモリコントローラ71、72、73に指令する。温度ジョブ履歴管理手段40が、メモリリマップが必要と判断すると、メモリマップ制御手段50に指令して、データの再配置が行われる。
The result of assigning the job to the processor is stored in the temperature job history management means 40. The temperature job history management means 40 is composed of, for example, a dedicated controller chip (dedicated processor chip) incorporating a memory for history storage, and it is necessary to rearrange (remapping) the
その他、マルチプロセッサ計算機システム1は、予備メモリ84とそのメモリコントローラ74を備える。予備メモリ84とそのメモリコントローラ74は、各プロセッサ61、62、63からアクセスすることができて、メモリリマップを行うときに、メモリの内容を一時待避させるために用いられる。また、各プロセッサに対応付けられたメモリ又はメモリコントローラに障害があったときに、それらの代替をする。
In addition, the
図2は、図1に示すマルチプロセッサ計算機システム1のハードウェア構成の一例を示すブロック図である。マルチプロセッサ計算機システム1は、図2に示すように、制御部2、主記憶部3、入出力部5、制御チャネル6及び温度センサ入力部11を備える。主記憶部3、入出力部5、制御チャネル6及び温度センサ入力部11はいずれも内部バスBを介して制御部2に接続されている。
FIG. 2 is a block diagram showing an example of a hardware configuration of the
複数のプロセッサ61〜63にはそれぞれ、メモリコントローラ71〜73を介して、メモリ81〜83が接続されている。各プロセッサ61〜63は、後述する制御バス7を経由して他のプロセッサに通信することができて、他のプロセッサに対応づけられたメモリの内容を他のプロセッサ経由で読み書き(アクセス)することができる。
1つのプロセッサからメモリへの距離は、例えば次のように定義される。1つのプロセッサから他のプロセッサまでに経由する制御バス又はネットワークのリンクの数だけ、それぞれのデータ転送レートの逆数を合計した数値をプロセッサとメモリの距離とする。データ転送レートが全て等しい場合は、経由するプロセッサの数又はネットワークのリンク数(これらをホップ数ともいう)で定義することもできる。 The distance from one processor to the memory is defined as follows, for example. The distance between the processor and the memory is a value obtained by summing up the reciprocal of each data transfer rate by the number of control buses or network links passing from one processor to another. When the data transfer rates are all equal, it can be defined by the number of processors that pass through or the number of links in the network (these are also called hop numbers).
制御部2はCPU(Central Processing Unit)等から構成され、内部の論理回路及び/又はコード化されたプログラムに従って、後述するジョブメモリマップ解析、ジョブのスケジューラ、温度ジョブ履歴管理、メモリマップ制御などの処理を実行する。 The control unit 2 is composed of a CPU (Central Processing Unit) or the like, and performs job memory map analysis, job scheduler, temperature job history management, memory map control, etc., which will be described later, according to internal logic circuits and / or coded programs. Execute the process.
主記憶部3はRAM(Random-Access Memory)等から構成され、各プロセッサ61〜63の温度、各メモリ81〜83領域へ格納されているデータの配置、各プロセッサ61〜63へのジョブの割当及びその履歴等を記憶し、制御部2の作業領域として用いられる。
The main storage unit 3 is composed of a RAM (Random-Access Memory) or the like. The temperature of each of the
入出力部5はキーボードおよびマウスなどのポインティングデバイス等と、キーボードおよびポインティングデバイス等を内部バスBに接続するインターフェース装置から構成されている。入出力部5を介して、ジョブの入力、ジョブの開始、実行、終了などの指令、ジョブの状況モニタ指令などが入力され、制御部2に供給される。
The input /
制御チャネル6は、制御部2と各プロセッサ61〜63を接続し、制御部2の指令又はデータを各プロセッサ61〜63に伝達し、各プロセッサ61〜63からのデータを制御部2に伝える。制御チャネル6を介して、ジョブが各プロセッサ61〜63に入力され、ジョブの実行が指示される。また、メモリマップ制御、すなわちメモリ81〜83へのデータの格納及びメモリ81〜83からのデータの読み出しが指示される。
The
各プロセッサ61〜63には、温度センサ12が備えられている。各温度センサ12は温度検出ライン8を通じて温度センサ入力部11に接続している。制御部2は温度センサ入力部11を介して、各プロセッサ61〜63の温度を検出することができる。
Each
次に、図1及び図2に示すマルチプロセッサ計算機システム1の動作を、図3〜6を参照して説明する。なお、上述のように、マルチプロセッサ計算機システム1の動作は、制御部2が主記憶部3、入出力部5、制御チャネル6、温度センサ入力部11及び各プロセッサ61〜63と協働して行う。
Next, the operation of the
図3は、本発明の実施の形態に係るマルチプロセッサ計算機システム1において、各プロセッサ61〜63の温度によって、各プロセッサの動作クロック周波数を制御する動作の一例を示すフローチャートである。図4は、本発明の実施の形態に係るマルチプロセッサ計算機システム1のジョブメモリ解析の動作の一例を示すフローチャートである。図5は、本発明の実施の形態に係るマルチプロセッサ計算機システム1のジョブ割当の動作の一例を示すフローチャートである。
FIG. 3 is a flowchart showing an example of an operation of controlling the operation clock frequency of each processor according to the temperature of each of the
図3に示すように、制御部2は各プロセッサ61〜63の温度を順に検出し、プロセッサの温度が所定のしきい値を超えている場合は、そのプロセッサの動作クロック周波数を下げる。図3では、プロセッサの数をmとしている。制御部2は変数iを1に初期化して(ステップS31)、i番目のプロセッサの温度を、温度センサ入力部11を介して読み込む(ステップS32)。検出したi番目のプロセッサの温度がしきい値以下であるとき(ステップS33からNOに分岐)は、制御部2は制御チャネル6を介して、i番目のプロセッサの動作クロック周波数を正常な値にし(ステップS34)、プロセッサの温度がしきい値を超えている場合(ステップS33からYESに分岐)は、動作クロック周波数を正常な値から規定の値に下げる(ステップS35)。次に、変数iをインクリメントして(ステップS36)、変数iがプロセッサの数mを超えていなければ(ステップS37)、次のプロセッサの温度を検出する。この動作を繰り返して、すべてのプロセッサの温度を検出し、各プロセッサの温度に応じて、そのプロセッサの動作クロック周波数を制御する。
As shown in FIG. 3, the control unit 2 sequentially detects the temperatures of the
あるジョブの開始がオペレーティングシステム又は他のジョブから指令されたとき、あるいはジョブの開始が入出力部5から入力されたとき、制御部2はそのジョブをいずれかのプロセッサに割り当てる。そのジョブが使用するデータが格納されたメモリにもっとも近い空きプロセッサの候補を選ぶ(本発明では、ジョブを割り付けるという)。ジョブが使用するデータには、そのジョブ自身のプログラムが含まれる。図4に示すように、そのジョブが使用するデータが格納されているメモリを調べる(ステップS41)。他のジョブを実行していない空きのプロセッサすべてについて、そのジョブが使用するメモリとそのプロセッサとの距離を計算する(ステップS42)。空きプロセッサすべてについて、プロセッサとジョブが使用するメモリとの距離が小さい順に空きプロセッサの番号を並べて、ジョブメモリマップ解析結果を得る(ステップS43)。
When the start of a job is instructed by the operating system or another job, or when the start of a job is input from the input /
次に、制御部2は、プロセッサとジョブが使用するメモリとの距離が小さい順に並べられた空きプロセッサのなかから、プロセッサの温度が低いものを選定して、ジョブをそのプロセッサに割り当てる。図5に示すように、制御部2はジョブメモリマップ解析結果を読み込む(ステップS51)。図5では、空きプロセッサの数をnとしている。制御部2は変数iを1に初期化して(ステップS52)、i番目のプロセッサの温度がしきい値を超えているかどうか判定する(ステップS53)。i番目のプロセッサの温度がしきい値を超えている場合(ステップS53からYESに分岐)は、変数iをインクリメントして(ステップS54)、変数iが空きプロセッサの数を超えていなければ(ステップS55からNOに分岐)次のプロセッサの温度がしきい値を超えているかどうか判定する(ステップS53)。i番目のプロセッサの温度がしきい値を超えていなければ(ステップS53からNOに分岐)、そのプロセッサは動作クロックが下げられていないので、そのプロセッサにジョブを割り当てる(ステップS56)。 Next, the control unit 2 selects a processor having a low processor temperature from among the free processors arranged in ascending order of the distance between the processor and the memory used by the job, and assigns the job to the processor. As shown in FIG. 5, the control unit 2 reads the job memory map analysis result (step S51). In FIG. 5, n is the number of free processors. The control unit 2 initializes the variable i to 1 (step S52), and determines whether or not the temperature of the i-th processor exceeds the threshold value (step S53). If the temperature of the i-th processor exceeds the threshold value (branch from step S53 to YES), the variable i is incremented (step S54), and if the variable i does not exceed the number of free processors (step S54). (S55 branches to NO) It is determined whether or not the temperature of the next processor exceeds the threshold value (step S53). If the temperature of the i-th processor does not exceed the threshold value (branch to NO from step S53), since the operation clock of the processor has not been lowered, a job is assigned to that processor (step S56).
このようにして制御部2は、ジョブメモリマップ解析結果から、プロセッサとジョブが使用するメモリとの距離が小さい順に、空きプロセッサの温度がしきい値を超えているかどうかを判定し、温度がしきい値を超えていないプロセッサのうち、ジョブが使用するメモリとの距離が最も小さいプロセッサにジョブを割り当てる。 In this way, the control unit 2 determines whether the temperature of the free processor exceeds the threshold value in ascending order of the distance between the processor and the memory used by the job from the job memory map analysis result. Of the processors not exceeding the threshold, the job is assigned to the processor having the smallest distance from the memory used by the job.
空きプロセッサの温度が全て、しきい値を超えている場合(ステップS55からYESに分岐)は、本実施の形態では、ジョブが使用するメモリに最も近いプロセッサ(すなわちジョブメモリマップ解析結果の1番目のプロセッサ)に、ジョブを割り当てる(ステップS57)。この場合、ジョブを割り当てず、又はジョブを割り当てた上で、温度の低いプロセッサがないことを警告するようにしてもよい。 If all the free processor temperatures exceed the threshold value (branch from step S55 to YES), in this embodiment, the processor closest to the memory used by the job (that is, the first job memory map analysis result) The job is assigned to the processor (step S57). In this case, a job may not be assigned, or a job may be assigned to warn that there is no processor having a low temperature.
最後に制御部2は、ジョブとそのジョブを割り当てたプロセッサとを、ジョブ割り当て履歴に登録する(ステップS58)。図6は、ジョブ割り当て履歴の表の一例を示す図である。ジョブ割り当て履歴は例えば、図6に示すように、ジョブを割り当てた時刻、ジョブを識別するID、空きプロセッサのうちジョブが使用するメモリに最も近いプロセッサ(割付要求CPU)、実際に割り当てたプロセッサ(割当CPU)、及び割り当てたプロセッサのそのときの動作クロック周波数を含む。割当CPUの動作クロックを履歴に含むのは、割り当てたプロセッサの温度がしきい値を超えていたかどうかが判定できるからである。図5のステップS57の場合のように、空きプロセッサの温度が全てしきい値をこえている場合に、割付プロセッサと割当プロセッサが同じであっても、動作クロック周波数が低い場合があり得る。 Finally, the control unit 2 registers the job and the processor to which the job is assigned in the job assignment history (step S58). FIG. 6 is a diagram illustrating an example of a job allocation history table. For example, as shown in FIG. 6, the job allocation history includes a job allocation time, an ID for identifying the job, a processor (allocation request CPU) closest to the memory used by the job among the free processors, and an actually allocated processor ( Allocation CPU) and the current operating clock frequency of the allocated processor. The operation clock of the assigned CPU is included in the history because it can be determined whether or not the temperature of the assigned processor has exceeded the threshold value. As in the case of step S57 in FIG. 5, when all the temperatures of the free processors exceed the threshold value, the operation clock frequency may be low even if the allocated processor and the allocated processor are the same.
上述のとおり、本発明によれば、ジョブ毎に、プロセッサの温度と、メモリとの論理的距離関係が最適なプロセッサへの割り当てを要求し、そのプロセッサへの割り当てができない場合には、要求に近いプロセッサを割り当てるので、不適切なCPUへのジョブ割り当てによる性能低下を防止することができる。 As described above, according to the present invention, for each job, an allocation to a processor having an optimum logical distance relationship between the processor temperature and the memory is requested, and if the allocation to the processor cannot be performed, the request is made. Since close processors are allocated, it is possible to prevent performance degradation due to job allocation to inappropriate CPUs.
上述したように、空きプロセッサのうち、ジョブが使用するメモリに最も近いプロセッサから、動作クロック周波数が正常なものが選択されて、ジョブが割り当てられる。ジョブの割当が繰り返し行われると、ジョブが使用するメモリに近いプロセッサの温度が高い場合があり、動作クロック周波数が正常で、かつ使用するメモリに近いプロセッサにジョブが割り当てられるとは限らない。そこで本発明では、ジョブが使用するメモリに最も近いプロセッサと、実際にジョブが割り当てられたプロセッサとが異なるケースが連続した場合に、ジョブ割当履歴に基づいて、メモリをリマップする。 As described above, from among the free processors that are closest to the memory used by the job, the processor having the normal operation clock frequency is selected and assigned to the job. When job assignment is repeated, the temperature of the processor close to the memory used by the job may be high, and the job is not always assigned to a processor having a normal operation clock frequency and close to the memory used. Therefore, in the present invention, when a case where a processor closest to a memory used by a job is different from a processor to which a job is actually allocated continues, the memory is remapped based on the job allocation history.
本発明のジョブ割当履歴に基づいてメモリリマップを行う動作について説明する。図7は、本発明の実施の形態に係るマルチプロセッサ計算機システム1における、ジョブ割当履歴によってメモリリマップを行う動作の一例を示すフローチャートである。本実施の形態では、ジョブが使用するメモリに最も近いプロセッサと、実際にジョブが割り当てられたプロセッサとが異なるケースが連続してk回発生した場合に、メモリをリマップする。メモリリマップを起動するための、異なるプロセッサ割当連続発生回数kはマルチプロセッサ計算機システム1の構成に合わせて、適当な回数に設定することができる。
An operation for performing memory remapping based on the job allocation history of the present invention will be described. FIG. 7 is a flowchart showing an example of an operation for performing memory remapping based on the job allocation history in the
制御部2は、ジョブが使用するメモリに最も近い空きプロセッサ(割付プロセッサという)と異なるプロセッサに、連続してジョブ割当が行われた回数を表す変数iを1に初期化する(ステップS71)。次に制御部2は、例えば前記図5に示す動作で、新たなジョブをプロセッサに割り当て、ジョブ割当履歴に登録する(ステップS72)。割当プロセッサが割付プロセッサと同じである場合(ステップS73でYESに分岐)、さらに割当プロセッサの動作クロック周波数が正常であるかダウンしているかを判定する(ステップS74)。割当プロセッサの動作クロック周波数が正常である場合(ステップS74からNOに分岐)は、フローチャートの最初に戻って変数iを初期値1にする(ステップS71)。 The control unit 2 initializes to 1 a variable i indicating the number of times job assignment has been performed continuously to a processor different from the free processor closest to the memory used by the job (referred to as an assigned processor) (step S71). Next, the control unit 2 assigns a new job to the processor and registers it in the job assignment history, for example, by the operation shown in FIG. 5 (step S72). If the allocation processor is the same as the allocation processor (branch to YES in step S73), it is further determined whether the operation clock frequency of the allocation processor is normal or down (step S74). If the operation clock frequency of the assigned processor is normal (branch from step S74 to NO), the process returns to the beginning of the flowchart to set the variable i to the initial value 1 (step S71).
ステップS73で、割当プロセッサが割付プロセッサと異なる場合(ステップS73からNOに分岐)、変数iをインクリメントする(ステップS75)。ステップS74で割当プロセッサの動作クロック周波数がダウンしていた場合(ステップS74からYESに分岐)も、変数iをインクリメントする(ステップS75)。次いで、変数iがまだ所与の回数kを超えていなければ(ステップS76からNOに分岐)、変数iをそのまま保持して次のジョブ割当を行う(ステップS72)。変数iが所与の回数kを超えている場合(ステップS76からYESに分岐)は、ジョブの実行を停止して、メモリリマップを行う(ステップS77)。 If the assigned processor is different from the assigned processor in step S73 (branch from step S73 to NO), the variable i is incremented (step S75). If the operation clock frequency of the assigned processor is down in step S74 (branch from step S74 to YES), the variable i is also incremented (step S75). Next, if the variable i has not yet exceeded the given number of times k (branch from step S76 to NO), the variable i is held as it is and the next job allocation is performed (step S72). If the variable i exceeds the given number of times k (branch from step S76 to YES), the job execution is stopped and memory remapping is performed (step S77).
メモリリマップは、アクセス頻度の高いデータが温度の低いプロセッサに対応するメモリに格納されるように、データを配置する。その時点で割り当てられているジョブが使用するデータを、そのジョブが割り当てられているプロセッサに対応するメモリに格納するように優先順位をつけてもよい。 The memory remapping arranges data so that frequently accessed data is stored in a memory corresponding to a processor having a low temperature. Priorities may be set so that data used by the job assigned at that time is stored in a memory corresponding to the processor to which the job is assigned.
このようにメモリリマップを行うことによって、アクセス頻度の高いデータが、温度の低いプロセッサに対応するメモリに格納されるので、ジョブが使用するメモリに近く、かつ温度の低いプロセッサに、そのジョブが割り当てられる確率が高くなり、結果としてマルチプロセッサ計算機システム1の処理能力が高くなるのである。
By performing memory remapping in this manner, frequently accessed data is stored in the memory corresponding to the processor having a low temperature, so that the job is close to the memory used by the job and the processor having a low temperature. As a result, the processing capability of the
(実施の形態2)
図8は、本発明の実施の形態2に係るマルチプロセッサ計算機システム1の論理的構成を示すブロック図である。図9は、本発明の実施の形態2に係るマルチプロセッサ計算機システム1の一実施例を示すブロック図である。
(Embodiment 2)
FIG. 8 is a block diagram showing a logical configuration of the
本実施の形態2に係るマルチプロセッサ計算機システム1は、図8及び9に示すように、マルチプロセッサ計算機システム1が、複数のプロセッサを有する複数のノードから構成され、ノード間がネットワークで接続されており、1つのノードから他のノードのメモリにはネットワーク90を経由してアクセスする点で、実施の形態1と異なる。本実施の形態2は、制御部2等の構成は実施の形態1と同じであり、同様の構成については説明を省略する。
In the
本実施の形態2では、各プロセッサは対応付けられたメモリ以外に、他のプロセッサに対応付けられたメモリにネットワーク90を通じてアクセスすることができる。各プロセッサに備えられた温度検出手段10、メモリに近い順にジョブを割り当てるべきプロセッサを選定するジョブメモリマップ解析手段30、検出した温度情報が送られ、ジョブを割り当てるべきプロセッサを選択して、ジョブをプロセッサに割り当てるスケジューラ20、ジョブの割当履歴から、メモリ81、82、83の再配置(リマップ)が必要かどうかを判断する温度ジョブ履歴管理手段40、及びデータをメモリのどこに格納するかをメモリコントローラ71、72、73に指令するメモリマップ制御手段50は、実施の形態1と同様である。
In the second embodiment, each processor can access a memory associated with another processor through the
図9は、図8に示すマルチプロセッサ計算機システム1のハードウェア構成の一例を示すブロック図である。図9は、図8の各プロセッサ61、62、63が、それぞれ共有メモリ81、82、83を備える複数のプロセッサから構成されるノード51〜53の場合を示している。ノード51〜53は1つのプロセッサから構成される場合もあるし、図2のように複数のプロセッサから構成される場合もある。図9では、図8のプロセッサ62、メモリコントローラ72、メモリ82に該当するノードの記載を、紙幅の都合で省略している。
FIG. 9 is a block diagram showing an example of a hardware configuration of the
マルチプロセッサ計算機システム1は、図9に示すように、制御部2、主記憶部3、外部記憶部4、入出力部5、制御チャネル6及び温度センサ入力部11を備える。主記憶部3、外部記憶部4、入出力部5、制御チャネル6及び温度センサ入力部11はいずれも内部バスBを介して制御部2に接続されている。
As shown in FIG. 9, the
各ノード51〜53は、それぞれ、1つ又は複数のプロセッサ61〜63、メモリ81〜83、入出力部91〜93から構成される。メモリ81〜83及び入出力部91〜93はノード内の各プロセッサ61〜63にクロスバCを介して接続されている。ノード内の複数のプロセッサ61〜63は、ノード内のメモリ81〜83をそれぞれ共有している。入出力部91〜93はノード間のネットワーク90に接続されている。各ノードのプロセッサ61〜63は、入出力部91〜93及びネットワーク90を介して、他のノードのメモリにアクセスすることができる。図8のメモリコントローラ71、72、73は、クロスバC及びそれを制御するプロセッサ上のプログラムから構成される。
Each of the
1つのノード内のプロセッサから他のノードのメモリへの距離は、例えば次のように定義される。1つのノードから他のノードまでに経由するノード又はネットワークのリンクの数だけ、それぞれのデータ転送レートの逆数を合計した数値をプロセッサとメモリの距離とする。データ転送レートが全て等しい場合は、経由するノードの数又はネットワークのリンク数(これらをホップ数ともいう)で定義することもできる。 The distance from the processor in one node to the memory of another node is defined as follows, for example. The distance between the processor and the memory is a value obtained by summing up the reciprocal of each data transfer rate by the number of nodes or network links that pass from one node to another. When all the data transfer rates are equal, it can be defined by the number of nodes that pass through or the number of links in the network (these are also called hop numbers).
制御部2はCPU(Central Processing Unit)等から構成され、外部記憶部4に記憶されているプログラムに従って、後述するジョブメモリマップ解析、ジョブのスケジューラ、温度ジョブ履歴管理、メモリマップ制御などの処理を実行する。制御部2は、実施の形態1と同様に、内部の論理回路及び/又はコード化されたプログラムから構成されていてもよい。 The control unit 2 includes a CPU (Central Processing Unit) and the like, and performs processing such as job memory map analysis, job scheduler, temperature job history management, and memory map control, which will be described later, according to a program stored in the external storage unit 4. Execute. As in the first embodiment, the control unit 2 may be configured by an internal logic circuit and / or a coded program.
主記憶部3はRAM(Random-Access Memory)等から構成され、外部記憶部4に記憶されているプログラムをロードし、制御部2の作業領域として用いられる。 The main storage unit 3 is composed of a RAM (Random-Access Memory) or the like, and loads a program stored in the external storage unit 4 and is used as a work area of the control unit 2.
外部記憶部4は、フラッシュメモリ、ハードディスク、DVD(Digital Versatile Disc)、DVD−RAM(Digital Versatile Disc Random-Access Memory)、DVD−RW(Digital Versatile Disc Rewritable)等の不揮発性メモリから構成され、前記の処理を制御部2に行わせるためのプログラムを予め記憶し、また、制御部2の指示に従って、このプログラムが記憶するデータを制御部2に供給し、制御部2から供給されたデータを記憶する。 The external storage unit 4 includes a nonvolatile memory such as a flash memory, a hard disk, a DVD (Digital Versatile Disc), a DVD-RAM (Digital Versatile Disc Random-Access Memory), a DVD-RW (Digital Versatile Disc Rewritable), and the like. The program for causing the control unit 2 to perform the above process is stored in advance, and the data stored in the program is supplied to the control unit 2 according to the instruction of the control unit 2, and the data supplied from the control unit 2 is stored. To do.
入出力部5はキーボードおよびマウスなどのポインティングデバイス等と、キーボードおよびポインティングデバイス等を内部バスBに接続するインターフェース装置から構成されている。入出力部5を介して、ジョブの入力、ジョブの開始、実行、終了などの指令、ジョブの状況モニタ指令などが入力され、制御部2に供給される。
The input /
制御チャネル6は、制御部2と各プロセッサ61〜63を接続し、制御部2の指令又はデータを各プロセッサ61〜63に伝達し、各プロセッサ61〜63からのデータを制御部2に伝える。制御チャネル6を介して、ジョブが各プロセッサ61〜63に入力され、ジョブの実行が指示される。また、メモリマップ制御、すなわちメモリ81〜83へのデータの格納及びメモリ81〜83からのデータの読み出しが指示される。
The
各プロセッサ61〜63には、温度センサ12が備えられている。各温度センサ12は温度検出ライン8を通じて温度センサ入力部11に接続している。制御部2は温度センサ入力部11を介して、各プロセッサ61〜63の温度を検出することができる。
Each
制御チャネル6は、制御部2と各ノード51〜53のプロセッサ61〜63を接続し、制御部2の指令又はデータを各ノード51〜53に伝達し、各ノード51〜53からのデータを制御部2に伝える。制御チャネル6を介して、ジョブが各ノード51〜53に入力され、ジョブの実行が指示される。また、メモリマップ制御、すなわちメモリ81〜83へのデータの格納及びメモリ81〜83からのデータの読み出しが指示される。
The
各プロセッサ61〜63には、温度センサ12が備えられている。各温度センサ12は温度検出ライン8を通じて温度センサ入力部11に接続している。制御部2は温度センサ入力部11を介して、各ノード51〜53のプロセッサ61〜63の温度を検出することができる。
Each
本実施の形態2は、マルチプロセッサ計算機システム1が、複数のプロセッサを有する複数のノードから構成され、ノード間がネットワーク90で接続されており、1つのノードから他のノードのメモリにはネットワーク90を経由してアクセスする点で、実施の形態1と異なる。そのため、本実施の形態2では、プロセッサとメモリとの距離がネットワーク90の構成に合わせて計算されるが、本実施の形態2におけるクロック周波数制御、メモリ解析、ジョブ割当及びメモリリマップは実施の形態1と全く同様に行われる。
In the second embodiment, the
従って、ジョブ毎に、プロセッサの温度と、メモリとの論理的距離関係が最適なプロセッサへの割り当てを要求し、そのプロセッサへの割り当てができない場合には、要求に近いプロセッサを割り当てるので、不適切なCPUへのジョブ割り当てによる性能低下を防止することができる、という効果も同様である。また、メモリリマップを行うことによって、ジョブが使用するメモリに近く、かつ温度の低いプロセッサに、そのジョブが割り当てられる確率が高くなり、結果としてマルチプロセッサ計算機システム1の処理能力が高くなる、という同様の効果を奏することができる。
Therefore, for each job, the processor temperature and the logical distance relation between the memory require the assignment to the optimum processor, and if the assignment to the processor is not possible, the processor close to the request is assigned. This also has the same effect that performance degradation due to job assignment to a CPU can be prevented. Further, by performing the memory remapping, the probability that the job is assigned to a processor close to the memory used by the job and at a low temperature is increased, and as a result, the processing capability of the
実施の形態1及び実施の形態2について、前記のハードウエア構成やフローチャートは一例であり、任意に変更及び修正が可能である。 Regarding the first embodiment and the second embodiment, the hardware configuration and the flowchart described above are merely examples, and can be arbitrarily changed and modified.
制御部2、主記憶部3、外部記憶部4、入出力部5、内部バスBなどから構成されるジョブ割当処理を行う中心となる部分は、専用のシステムによらず、1つのプロセッサとメモリの組(実施の形態1の場合)又は1つのノード(実施の形態2の場合)を用いて実現してもよい。例えば、前記の動作を実行するためのコンピュータプログラムを、コンピュータが読みとり可能な記録媒体(フレキシブルディスク、CD-ROM、DVD-ROM等)に格納して配布し、当該コンピュータプログラムをマルチプロセッサ計算機システムの1つのプロセッサ又はノードにインストールすることにより、前記の処理を実行する装置を構成してもよい。また、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置に当該コンピュータプログラムを格納しておき、通常のマルチプロセッサ計算機システムがダウンロード等することで本発明のマルチプロセッサ計算機システム1を構成してもよい。
The central part that performs job allocation processing including the control unit 2, the main storage unit 3, the external storage unit 4, the input /
前記制御部の機能を1つのプロセッサ又はノードで実現するのでなく、複数のプロセッサ又はノードに当該プログラムを分散して配置し、その複数のプロセッサ又はノードが協働して前記機能を実現してもよい。 The function of the control unit is not realized by one processor or node, but the program is distributed and arranged in a plurality of processors or nodes, and the functions are realized by the cooperation of the plurality of processors or nodes. Good.
また、前記の各機能を、OS(オペレーティングシステム)とアプリケーションプログラムの分担、またはOSとアプリケーションプログラムとの協働により実現する場合などには、アプリケーションプログラム部分のみを記録媒体や記憶装置に格納してもよい。 When each of the above functions is realized by sharing an OS (operating system) and an application program, or by cooperation between the OS and the application program, only the application program part is stored in a recording medium or a storage device. Also good.
また、搬送波に上述のコンピュータプログラムを重畳し、通信ネットワークを介して配信することも可能である。 It is also possible to superimpose the above computer program on a carrier wave and distribute it via a communication network.
1 マルチプロセッサ計算機システム
2 制御部
3 主記憶部
4 外部記憶部
5 入出力部
6 制御チャネル
7 制御バス
8 温度検出ライン
10 温度検出手段
11 温度センサ入力部
12 温度センサ
20 スケジューラ
30 ジョブメモリマップ解析手段
40 温度ジョブ履歴管理手段
50 メモリマップ制御手段
51、53 ノード
61、62、63 プロセッサ
71、72、73 メモリコントローラ
81、82、83 メモリ
90 ネットワーク
91、93 入出力部
B 内部バス
C クロスバ
1 Multiprocessor computer system
2 Control unit
3 Main memory
4 External storage
5 I / O section
6 Control channel
7 Control bus
8 Temperature detection line
10 Temperature detection means
11 Temperature sensor input section
12 Temperature sensor
20 Scheduler
30 Job memory map analysis means
40 Temperature job history management means
50 Memory map control means
51, 53
90 network
91, 93 Input / output section
B Internal bus
C Crossbar
Claims (4)
前記全てのメモリを単一のメモリ空間としてアドレス割付制御を行うメモリマップ制御手段と、
前記各プロセッサの温度を検出する温度検出手段と、
プロセッサとメモリとの距離に基づいて、ジョブが使用するデータが格納されたメモリに最も近いプロセッサへ、ジョブの割付の要求を行うジョブメモリマップ解析手段と、
前記ジョブメモリマップ解析手段と温度検出手段の情報に基づいて、あるしきい値以下の温度のプロセッサからジョブメモリマップ解析手段の要求に最も近いプロセッサへのジョブ割り当てを制御するスケジューラ手段と、
を備えることを特徴とするマルチプロセッサ計算機システム。 A memory is associated with a processor of a certain unit, and all the processors can access all the memories by accessing the memory corresponding to the processor of another unit via the control system of the other processor. A multiprocessor computer system that is accessible,
Memory map control means for performing address allocation control with all the memories as a single memory space;
Temperature detecting means for detecting the temperature of each processor;
Job memory map analysis means for requesting job allocation to the processor closest to the memory storing the data used by the job based on the distance between the processor and the memory;
Based on the information of the job memory map analyzing means and the temperature detecting means, a scheduler means for controlling job assignment from a processor having a temperature below a certain threshold value to a processor closest to the request of the job memory map analyzing means,
A multiprocessor computer system comprising:
前記全てのメモリを単一のメモリ空間としてアドレス割付制御を行うメモリマップ制御手段と、
前記各プロセッサの温度を検出する温度検出手段と、
プロセッサとメモリとの距離に基づいて、ジョブが使用するデータが格納されたメモリに最も近いプロセッサへ、ジョブの割付の要求を行うジョブメモリマップ解析手段と、
前記ジョブメモリマップ解析手段と温度検出手段の情報に基づいて、あるしきい値以下の温度のプロセッサからジョブメモリマップ解析手段の要求に最も近いプロセッサへのジョブ割り当てを制御するスケジューラ手段と、
して機能させるためのコンピュータプログラム。
A memory is associated with a processor of a certain unit, and all the processors can access all the memories by accessing the memory corresponding to the processor of another unit via the control system of the other processor. In a multiprocessor computer system that is accessible, the computer
Memory map control means for performing address allocation control with all the memories as a single memory space;
Temperature detecting means for detecting the temperature of each processor;
Job memory map analysis means for requesting job allocation to the processor closest to the memory storing the data used by the job based on the distance between the processor and the memory;
Based on the information of the job memory map analyzing means and the temperature detecting means, a scheduler means for controlling job assignment from a processor having a temperature below a certain threshold value to a processor closest to the request of the job memory map analyzing means,
Computer program to make it function.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005099580A JP2006277637A (en) | 2005-03-30 | 2005-03-30 | Multiprocessor computer system for allocating job by temperature monitoring, and computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005099580A JP2006277637A (en) | 2005-03-30 | 2005-03-30 | Multiprocessor computer system for allocating job by temperature monitoring, and computer program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006277637A true JP2006277637A (en) | 2006-10-12 |
Family
ID=37212292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005099580A Pending JP2006277637A (en) | 2005-03-30 | 2005-03-30 | Multiprocessor computer system for allocating job by temperature monitoring, and computer program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006277637A (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008262340A (en) * | 2007-04-11 | 2008-10-30 | Denso Corp | Automatic code generating device for dual core |
JP2011197715A (en) * | 2010-03-17 | 2011-10-06 | Fujitsu Ltd | Load distribution system and computer program |
JP2012215936A (en) * | 2011-03-31 | 2012-11-08 | Nec Corp | Job scheduling method by io configuration |
JPWO2013008325A1 (en) * | 2011-07-13 | 2015-02-23 | 富士通株式会社 | Multi-core processor system and control method |
JP2016139171A (en) * | 2015-01-26 | 2016-08-04 | 日本電信電話株式会社 | Resource allocation device, resource allocation system and resource allocation method |
US9588577B2 (en) | 2013-10-31 | 2017-03-07 | Samsung Electronics Co., Ltd. | Electronic systems including heterogeneous multi-core processors and methods of operating same |
CN113032145A (en) * | 2021-03-18 | 2021-06-25 | 北京计算机技术及应用研究所 | Task scheduling method based on localization multi-NUMA node CPU junction temperature balancing strategy |
-
2005
- 2005-03-30 JP JP2005099580A patent/JP2006277637A/en active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008262340A (en) * | 2007-04-11 | 2008-10-30 | Denso Corp | Automatic code generating device for dual core |
JP2011197715A (en) * | 2010-03-17 | 2011-10-06 | Fujitsu Ltd | Load distribution system and computer program |
US9152472B2 (en) | 2010-03-17 | 2015-10-06 | Fujitsu Limited | Load distribution system |
JP2012215936A (en) * | 2011-03-31 | 2012-11-08 | Nec Corp | Job scheduling method by io configuration |
JPWO2013008325A1 (en) * | 2011-07-13 | 2015-02-23 | 富士通株式会社 | Multi-core processor system and control method |
US9547576B2 (en) | 2011-07-13 | 2017-01-17 | Fujitsu Limited | Multi-core processor system and control method |
US9588577B2 (en) | 2013-10-31 | 2017-03-07 | Samsung Electronics Co., Ltd. | Electronic systems including heterogeneous multi-core processors and methods of operating same |
JP2016139171A (en) * | 2015-01-26 | 2016-08-04 | 日本電信電話株式会社 | Resource allocation device, resource allocation system and resource allocation method |
CN113032145A (en) * | 2021-03-18 | 2021-06-25 | 北京计算机技术及应用研究所 | Task scheduling method based on localization multi-NUMA node CPU junction temperature balancing strategy |
CN113032145B (en) * | 2021-03-18 | 2023-12-26 | 北京计算机技术及应用研究所 | Task scheduling method based on domestic multi-NUMA node CPU junction temperature balancing strategy |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10817217B2 (en) | Data storage system with improved time-to-ready | |
US8327103B1 (en) | Scheduling data relocation activities using configurable fairness criteria | |
US10642500B2 (en) | Methods, systems and computer readable media for intelligent fetching of data storage device commands from submission queues | |
JP2006277637A (en) | Multiprocessor computer system for allocating job by temperature monitoring, and computer program | |
US20170083474A1 (en) | Distributed memory controller | |
US9823875B2 (en) | Transparent hybrid data storage | |
JP2006302255A (en) | Data storage device with nonvolatile memory of different kind and method for driving thereof | |
JP2009528610A (en) | Method and apparatus for dynamically resizing cache partition based on task execution phase | |
JP2021166034A (en) | Network-on-chip data processing method and device | |
JP2007026094A (en) | Execution device and application program | |
CN107273200B (en) | Task scheduling method for heterogeneous storage | |
TWI533146B (en) | Virtual resource adjusting method, device and computer readable storage medium for storing thereof | |
KR101140914B1 (en) | Technique for controlling computing resources | |
KR20130035934A (en) | Method for dynamically configuring resouces in storage device and the storage device and storage medium therefor | |
US11231872B2 (en) | Identification of substitute controllers based on temperature data | |
US9465745B2 (en) | Managing access commands by multiple level caching | |
JP2009277022A (en) | Information processing system, load control method, and load control program | |
US10872015B2 (en) | Data storage system with strategic contention avoidance | |
US20160363973A1 (en) | Workload allocation based on downstream thermal impacts | |
US20220113898A1 (en) | Data storage system with workload-based asymmetry compensation | |
JP2022121124A (en) | Job assignment control device, job assignment control method, and job assignment control program | |
KR20230068709A (en) | Scheduler, method for operating the same and electronic device including the same | |
JP6364827B2 (en) | Information processing apparatus, resource access method thereof, and resource access program | |
WO2024009747A1 (en) | Information processing device, information processing method, and program | |
CN112352216A (en) | Data storage method and data storage device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20070126 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080213 |
|
RD04 | Notification of resignation of power of attorney |
Effective date: 20080527 Free format text: JAPANESE INTERMEDIATE CODE: A7424 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091105 |
|
A131 | Notification of reasons for refusal |
Effective date: 20091117 Free format text: JAPANESE INTERMEDIATE CODE: A131 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100309 |