JP2010134698A - Information processing system - Google Patents
Information processing system Download PDFInfo
- Publication number
- JP2010134698A JP2010134698A JP2008309982A JP2008309982A JP2010134698A JP 2010134698 A JP2010134698 A JP 2010134698A JP 2008309982 A JP2008309982 A JP 2008309982A JP 2008309982 A JP2008309982 A JP 2008309982A JP 2010134698 A JP2010134698 A JP 2010134698A
- Authority
- JP
- Japan
- Prior art keywords
- information processing
- processing system
- node
- power saving
- reception
- 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
- Power Sources (AREA)
Abstract
Description
本発明は、情報処理システムに関し、特に、複数のプロセッサコアとメモリで構成されるマルチプロセッサシステムの並列プログラム実行における省電力制御に適用して有効な技術に関する。 The present invention relates to an information processing system, and more particularly to a technique effective when applied to power saving control in parallel program execution of a multiprocessor system including a plurality of processor cores and memories.
本発明者が検討したところによれば、情報処理システムに関しては、例えば特許文献1,2、非特許文献1に記載される技術などがある。
According to a study by the present inventor, there are techniques described in
特許文献1には、コンパイラが、入力プログラムから自動的に並列性を持つタスクを抽出し、複数のコアに割り当て、効率の良いスケジューリングを行い、処理時間を見積もることで、動作周波数と電源電圧を最適化するコードを生成するマルチプロセッサシステムについて開示されている。
In
特許文献2には、プロセッサコア間の通信にメールボックスキューを提供するシステムにおいて、満杯の送信メールボックスに書き込むプロセッサコア、または、空の受信メールボックスから読み出すプロセッサコアが低電力状態に移行し、他のプロセッサコアが送信メールボックスから読み出しまたは受信メールボックスへ書き込むことによって通常の電力モードに復帰する方法が開示されている。
In
非特許文献1には、スレッドレベルおよびプロセスレベルの並列処理の組合せからなるプログラムの実行パターンに応じて、演算処理を行っていない一部のプロセッサコアの動作周波数と基板電圧を高速に制御することにより電力効率を向上する低電力回路技術が開示されている。
ところで、前記のような情報処理システムに関して、本発明者が検討した結果、以下のようなことが明らかとなった。 By the way, as a result of examination by the present inventor regarding the information processing system as described above, the following has been clarified.
前記のような情報処理システムにおいては、半導体素子の微細化とプロセッサ設計の複雑化に伴う消費電力の増大により、動作周波数と命令レベル並列度の向上によるプロセッサコア単体の性能向上に限界が生じている。そこで、プロセッサコア単体の設計は複雑化せず、プロセッサチップに搭載するコア数を増やして性能を上げるマルチコア化が進行している。さらに、大量の演算を所定の時間内で実行する必要がある応用分野においては、必要な処理性能を得るために、このようなプロセッサチップとメモリを多数接続して構成される並列計算機が使用される。 In the information processing system as described above, due to the increase in power consumption accompanying the miniaturization of semiconductor elements and the complexity of processor design, there is a limit to the improvement of the performance of the processor core by improving the operating frequency and instruction level parallelism. Yes. Therefore, the design of a single processor core is not complicated, and multi-core processing is progressing to increase performance by increasing the number of cores mounted on a processor chip. Furthermore, in an application field where a large amount of operations need to be executed within a predetermined time, a parallel computer configured by connecting a large number of such processor chips and memories is used to obtain the required processing performance. The
最近は、複数チップを積層する3次元実装の技術開発が進められており、将来、積層されたマルチコアプロセッサとメモリが3次元的に密結合したシステムオンチップと、これを多数接続して構成される並列計算機システムが実現可能となると予測される。 Recently, three-dimensional packaging technology development that stacks multiple chips is underway, and in the future, it will be configured by connecting a number of system-on-chips in which stacked multi-core processors and memories are three-dimensionally tightly coupled. It is predicted that a parallel computer system will be feasible.
このようなマルチプロセッサシステムにおいて、コア数に比例した実効性能を得るためには、スレッドレベルおよびプロセスレベルの並列処理を行う必要がある。このスレッドレベルの並列処理では、使用する全プロセッサコアがメモリ空間を共有する必要があるのに対し、プロセスレベルの並列処理ではその制限はない。 In such a multiprocessor system, in order to obtain an effective performance proportional to the number of cores, it is necessary to perform parallel processing at a thread level and a process level. In this thread level parallel processing, all processor cores to be used need to share a memory space, whereas in process level parallel processing, there is no limit.
もともとプロセッサコアの設計が単純である場合が多い組込み用途のプロセッサにおいては、マルチコア化による性能向上は一般的な手法であり、プログラムの並列化によるスケーラブルな高速処理と、多数の論理ブロックを時間的、空間的に細かく制御することによる省電力性を両立させる必要がある。 For embedded processors, where the design of the processor core is often simple in nature, improving the performance through multi-core is a common technique. Scalable high-speed processing through parallelization of programs and the large number of logical blocks over time It is necessary to achieve both power saving by finely controlling spatially.
この問題を解決するための1つの方法として、前記特許文献1に開示されている、動作周波数と電源電圧を最適化するコードを生成するマルチプロセッサシステムの技術がある。また、プロセッサコア間の通信にメールボックスキューを提供するシステムとして、前記特許文献2に開示されている技術がある。さらに、スレッドレベルおよびプロセスレベルの並列処理の組合せからなるプログラムの実行において、電力効率を向上する低電力回路技術として、前記非特許文献1に開示されている技術がある。
As one method for solving this problem, there is a technique of a multiprocessor system that generates a code that optimizes an operating frequency and a power supply voltage, as disclosed in
しかしながら、前記のようなマルチプロセッサシステムにおいて、プログラムの並列化によるスケーラブルな高速処理を実現する、すなわち、処理量の増加に応じてコア数を増加してもコア数に比例した実効性能を得るためには、ローカルなメモリが個別に配置された計算ノードを複数個で接続し、ネットワーク経由のメッセージ通信によってデータを交換する分散メモリ型のマルチプロセッサシステムを用いるのが有利であり、従って、プロセスレベルの並列処理が必要となる。 However, in the multiprocessor system as described above, to achieve scalable high-speed processing by parallelizing programs, that is, to obtain effective performance proportional to the number of cores even if the number of cores is increased as the amount of processing increases. It is advantageous to use a distributed memory type multiprocessor system in which a plurality of computing nodes each having a local memory are individually connected and exchange data by message communication via a network. Parallel processing is required.
この個々の計算ノードは共有メモリ型のマルチプロセッサシステムであり、プロセスレベルの並列処理を記述するためのプロセス間通信制御ソフトウェアとしては、MPI(Message Passing Interface)通信ライブラリを利用されることが多い。 Each of these compute nodes is a shared memory type multiprocessor system, and MPI (Message Passing Interface) communication library is often used as interprocess communication control software for describing process level parallel processing.
そこで、本発明の目的の1つは、前記のようなマルチプロセッサシステムに対する必要性を考慮して、プロセッサコア間でメッセージ通信を行う並列プログラム実行の電力効率を向上する情報処理システムを提供することにある。 Accordingly, one of the objects of the present invention is to provide an information processing system that improves the power efficiency of parallel program execution that performs message communication between processor cores in consideration of the necessity for the multiprocessor system as described above. It is in.
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。 The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。 Of the inventions disclosed in the present application, the outline of typical ones will be briefly described as follows.
すなわち、代表的なものの概要は、ネットワークで接続された複数の計算ノード間でデータ通信を行いながら並列処理を行う情報処理システムにおいて、第1の計算ノードは、第1の計算ノードで動作中のプログラムがデータ送信の準備が完了したにもかかわらず、第2の計算ノードでデータ受信の準備が完了していない場合に、第1の計算ノードを省電力モードに移行させるための通信制御ソフトウェアを備えることを特徴とする。または、第2の計算ノードは、第2の計算ノードで動作中のプログラムがデータ受信の準備が完了したにもかかわらず、第1の計算ノードでデータ送信の準備が完了していない場合に、第2の計算ノードを省電力モードに移行させるための通信制御ソフトウェアを備えることを特徴とする。 That is, the outline of a typical one is that an information processing system that performs parallel processing while performing data communication between a plurality of computation nodes connected by a network, and the first computation node is operating on the first computation node. Communication control software for shifting the first computing node to the power saving mode when the program is ready for data transmission but the second computing node is not ready for data reception It is characterized by providing. Alternatively, when the second computation node is not ready for data transmission in the first computation node even though the program running on the second computation node is ready for data reception, Communication control software for shifting the second computing node to the power saving mode is provided.
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。 Among the inventions disclosed in the present application, effects obtained by typical ones will be briefly described as follows.
すなわち、代表的なものによって得られる効果は、プロセッサコア間でメッセージ通信を行う並列プログラム実行の電力効率を向上する情報処理システムを提供することができる。 In other words, the effect obtained by the representative one can provide an information processing system that improves the power efficiency of parallel program execution in which message communication is performed between processor cores.
<本発明の実施の形態の概要>
本発明の実施の形態では、マルチコアプロセッサを用いた情報処理システムにおける電力効率を向上するために、プロセスレベルの並列化によるスケーラブルな高速処理と、多数の論理ブロックを時間的・空間的に細かく制御することによる省電力性を両立することを目的とする。
<Outline of Embodiment of the Present Invention>
In the embodiment of the present invention, in order to improve the power efficiency in an information processing system using a multi-core processor, scalable high-speed processing by process level parallelization and fine control of a large number of logical blocks in time and space are performed. The purpose is to achieve both power savings.
この目的を達成するために、プロセッサコア間でメッセージ通信を行う並列プログラム実行の電力効率を向上する情報処理システムを提供する。プロセスレベルの並列化されたプログラムの実行においては、各プロセスの実行時間のばらつきに起因して、プロセス間通信を行う際にプロセス実行に待ちが発生する典型的なパターンがあり、これらのパターンをMPI通信ライブラリに代表される通信制御ソフトウェアで検出し、通信制御ソフトウェアから周波数・電源電圧制御(以下、FV制御と呼ぶ)ユニットに対して省電力モードへの移行を命令する。 In order to achieve this object, an information processing system for improving the power efficiency of parallel program execution for performing message communication between processor cores is provided. In the execution of parallel programs at the process level, there are typical patterns in which waiting for process execution occurs when performing inter-process communication due to variations in the execution time of each process. Detection is performed by communication control software represented by the MPI communication library, and the communication control software instructs the frequency / power supply voltage control (hereinafter referred to as FV control) unit to shift to the power saving mode.
この省電力モードは、プロセッサコアやキャッシュメモリなどの論理ブロックごとに設定することが可能であり、動作周波数変更、クロック供給停止、電源電圧変更、電源供給停止など、消費電力の削減量と通常電力モードへの復帰時間が異なる複数のモードを持つ。従って、メモリ素子中のデータを保持しつつ通常電力モードにソフトウェアのオーバヘッド込みで数サイクルから数十サイクルで復帰できるモードを用いることによって、プログラム全体の実行時間に大きな影響を与えずに通常電力モードに復帰可能である。 This power saving mode can be set for each logical block such as a processor core or cache memory. The power consumption reduction amount and normal power consumption, such as operating frequency change, clock supply stop, power supply voltage change, power supply stop, etc. Has multiple modes with different return times. Therefore, the normal power mode can be used without affecting the execution time of the entire program by using the mode that can restore the normal power mode in several cycles to tens of cycles with software overhead while retaining the data in the memory device. It is possible to return to
それぞれの計算ノードは、当該計算ノードに属する論理ブロックごとに省電力モードを制御するレジスタ群と、通常電力モードへの復帰条件を設定するレジスタ群と、復帰条件の判定部を備える。前記復帰条件の判定に必要なデータは、送受信データをメモリアクセスするDMAコントローラから取得する。 Each calculation node includes a register group for controlling the power saving mode for each logical block belonging to the calculation node, a register group for setting a return condition to the normal power mode, and a return condition determination unit. Data necessary for determining the return condition is acquired from the DMA controller that accesses the transmission / reception data in the memory.
省電力モードへの移行にあたっては、メッセージを送信(あるいは受信)する準備が完了した第1(第2)の計算ノードのプロセッサコアが、メッセージを受信(あるいは送信)する第2(第1)の計算ノードにおいて受信バッファの確保(あるいは送信データの準備)が完了しているかどうかを判定する。受信バッファの確保(あるいは送信データの準備)が未完了の場合、第1(第2)の計算ノードのプロセッサコアは、第1(第2)の計算ノードのネットワークアダプタに通常電力モードへの復帰条件を設定し、FV制御ユニットに対して第1(第2)の計算ノードのプロセッサコア群および周辺回路を省電力モードへ移行する命令を発行する。 In the transition to the power saving mode, the processor core of the first (second) computing node that is ready to transmit (or receive) the message receives (or transmits) the second (first) message. It is determined whether or not reception buffer reservation (or preparation of transmission data) has been completed in the computation node. If securing of the reception buffer (or preparation of transmission data) is not completed, the processor core of the first (second) calculation node returns to the normal power mode for the network adapter of the first (second) calculation node. A condition is set, and an instruction to shift the processor core group and peripheral circuits of the first (second) calculation node to the power saving mode is issued to the FV control unit.
通常電力モードへの復帰にあたっては、第1(第2)の計算ノードのネットワークアダプタが送受信されるメッセージを監視することによって復帰条件の判定を行い、第1(第2)の計算ノードのFV制御ユニットに対してプロセッサコア群および周辺回路を通常の電力モードへ移行する命令を発行する。 When returning to the normal power mode, the return condition is determined by monitoring a message transmitted / received by the network adapter of the first (second) calculation node, and FV control of the first (second) calculation node is performed. An instruction to shift the processor core group and peripheral circuits to the normal power mode is issued to the unit.
省電力モード適用の対象となる、複数プロセスが同期する際のプロセス実行時間のばらつきの大きさは、実行するプログラムの内容によって異なる。省電力モードとして、動作周波数変更、クロック供給停止、電源電圧変更、電源供給停止など、省電力性と復帰時間の異なる複数のモードを持つ場合に、消費電力の削減量と、省電力モードへの移行および復帰にかかる実行時間増加との最適なバランスを、プログラム開発者によって記述される指示文によって、移行する省電力モードおよび対象ブロックを変更することを可能とすることで、プログラムの処理内容に応じて、消費電力の削減量と、省電力モードへの移行および復帰にかかる実行時間の増加を制御する。 The amount of variation in process execution time when a plurality of processes are synchronized, which is the target of application of the power saving mode, varies depending on the contents of the program to be executed. When there are multiple modes with different power saving and recovery time, such as operating frequency change, clock supply stop, power supply voltage change, power supply stop, etc. By making it possible to change the power-saving mode and target block to be migrated with the directives written by the program developer, the optimal balance with the increase in execution time required for migration and restoration can be changed to the processing contents of the program. Accordingly, the reduction amount of power consumption and the increase in execution time required for shifting to and returning from the power saving mode are controlled.
以上のような構成により、プロセスレベルで並列化されたプログラムの実行において、プロセス間通信の際にプロセス実行に待ちが発生する典型的なパターンを通信制御ソフトウェアが検出して、動作を停止あるいは低速にすることができる論理ブロックに対する、最適な復帰時間の省電力モードと、通常電力モードへの復帰条件を設定することによって、電力効率を向上することができる。 With the above configuration, when executing a program parallelized at the process level, the communication control software detects a typical pattern of waiting for process execution during inter-process communication, and stops or slows down the operation. The power efficiency can be improved by setting the power saving mode with the optimal return time and the return condition to the normal power mode for the logical block that can be set to the same.
また、遠隔の計算ノードにおけるデータ送信またはデータ受信の準備が完了しているかどうかを、通信制御ソフトウェアにおける送信関数、または、受信関数の内部で検出して省電力制御を行うことにより、省電力制御をサポートしないシステムにおいて動作する並列プログラムを変更することなく、省電力制御を行うシステムにおいては電力効率を上げて実行することができる。さらに、プログラムの処理内容に応じてプログラム開発者が記述する指示文によって、移行する省電力モードおよび対象ブロックを変更することを可能として、消費電力の削減量と、省電力モードへの移行および復帰にかかる実行時間の増加を最適に制御することができる。 In addition, the power saving control is performed by detecting whether the preparation for data transmission or data reception in the remote computing node is completed within the transmission function or the reception function in the communication control software and performing power saving control. In a system that performs power saving control, it is possible to increase the power efficiency without changing a parallel program that operates in a system that does not support. In addition, it is possible to change the power saving mode and target block to be transferred according to the directives written by the program developer according to the processing contents of the program, reducing the amount of power consumption, and switching to and returning to the power saving mode. It is possible to optimally control the increase in the execution time required for.
以下、前述した本発明の実施の形態の概要に基づいた実施の形態を、図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。 Hereinafter, embodiments based on the outline of the embodiments of the present invention described above will be described in detail with reference to the drawings. Note that components having the same function are denoted by the same reference symbols throughout the drawings for describing the embodiment, and the repetitive description thereof will be omitted.
<並列計算機システムの構成>
図1は、本発明の情報処理システムの一実施の形態である並列計算機システムの構成の一例を示すブロック図である。
<Configuration of parallel computer system>
FIG. 1 is a block diagram showing an example of the configuration of a parallel computer system which is an embodiment of an information processing system of the present invention.
本実施の形態である並列計算機システムは、複数の計算ノードとノード間ネットワークで構成され、例えば図1の例においては、それぞれが同じ構成を持つ2つの計算ノード1および2と、ノード間ネットワーク5で構成されている。ここでは、計算ノード1を送信側、計算ノード2を受信側として説明し、さらに、計算ノード2が計算ノード1に対して遠隔に配置される場合を説明する。
The parallel computer system according to this embodiment includes a plurality of calculation nodes and an inter-node network. For example, in the example of FIG. 1, two
計算ノード1は、複数(図1においては2つの例)のプロセッサコア(コア)111,112と、プロセッサコア111,112ごとに独立にアクセスできるローカルメモリ(LM)121,122と、プロセッサコア111,112からのアクセスに対してコヒーレンスが保証されているレベル1キャッシュメモリ(L1)131,132と、プロセッサコア111,112で共有されるレベル2キャッシュメモリ(L2キャッシュ)14と、主記憶15と、ネットワークアダプタ16と、これらの論理ブロックに対して供給されるクロックや電源電圧を制御するFV制御ユニット10を主体として構成される。
The
この計算ノード1の主記憶15には、送信データ17が格納されている。さらに、主記憶15には、MPI通信ライブラリなどの通信制御ソフトウェアが格納されている。また、ネットワークアダプタ16には、通常電力モードへの復帰条件の復帰判定部161と、送受信データをメモリアクセスするDMAコントローラ(DMAC)162が設けられている。
計算ノード2も同様に、2つのプロセッサコア211,22と、2つのローカルメモリ221,222と、2つのレベル1キャッシュメモリ231,232と、レベル2キャッシュメモリ24と、主記憶25と、ネットワークアダプタ26と、FV制御ユニット20を主体として構成される。この計算ノード2の主記憶25には、受信バッファ27が設けられており、さらに、MPI通信ライブラリなどの通信制御ソフトウェアが格納されている。また、ネットワークアダプタ26には、復帰判定部261と、DMAコントローラ262が設けられている。
Similarly, the
この並列計算機システムでは、プロセスレベルで並列化されたプログラムを実行する場合、相互にデータ通信を行う複数のプロセスは、それぞれがある1つの計算ノード1,2に割り当てられる。この各プロセスは、計算ノード1,2内の複数のプロセッサコア111,112,211,212ごとにスレッドを割り当てる、スレッドレベルの並列化がなされていてもよい。
In this parallel computer system, when a program parallelized at the process level is executed, a plurality of processes that perform data communication with each other are assigned to a
図1では、計算ノード1で動作しているプロセスが、MPI通信ライブラリなどの通信制御ソフトウェアの送信関数を呼び出すことによって、主記憶15上の送信データ17を、計算ノード2で動作しているプロセスの主記憶25上の受信バッファ27へ、ネットワークアダプタ16、ノード間ネットワーク5、ネットワークアダプタ26を経由して、計算ノード1と計算ノード2間で複製する場合を示す。ノード間ネットワーク5は、共有バスやクロスバースイッチなどで構成してもよい。
In FIG. 1, the process operating on the
ここでは、データを受信する計算ノード2側のプロセスは、受信バッファ27にある必要なデータの上書きを防止するために、通信制御ソフトウェアの受信関数を呼び出す必要がある。受信関数を呼び出した時点で、受信バッファ27へネットワークアダプタ26のDMAコントローラ262が、送信ノード1から送信されてきたデータを上書きしてもよいことを示す。
Here, the process on the
<計算ノード間でのデータの複製(受信関数に対して送信関数の呼び出しが先行)>
図2は、時間的に、計算ノード1のプロセス18が送信関数191を呼び出し、次に、計算ノード2のプロセス28が受信関数292を呼び出すことによって、送信データ17を受信バッファ27へ計算ノード間で複製する際に、送信関数191と受信関数292が、計算ノード1と2の間で受け渡すメッセージの一例を示す説明図である。この送信関数191は、受信関数292が呼び出され対応する受信を開始した時点でリターンする、同期型の通信を行うものとする。
<Replication of data between compute nodes (calling of transmission function precedes reception function)>
FIG. 2 shows that the
送信データ17の準備が終わったプロセス18が、送信データ領域のアドレスとサイズを引数で指定して送信関数191を呼び出すと、送信関数191は送信要求の制御メッセージ31を計算ノード2に送出するとともに、送信データ17を通信バッファ190にコピーする。送信要求の制御メッセージ31を受けた計算ノード2のネットワークアダプタ26は、主記憶25上に設けられる制御メッセージの制御用キュー293に送信要求を記録する。
When the
次に、受信バッファ27の準備が終わったプロセス28が、受信バッファ27のアドレスとサイズを引数で指定して受信関数292を呼び出すと、受信関数292は受信要求の制御メッセージ32を計算ノード1に送出する。受信要求の制御メッセージ32を受けた計算ノード1のネットワークアダプタ16は、主記憶15上に設けられる制御メッセージの制御用キュー193に受信要求を記録する。
Next, when the
送信関数191は、送信データ17の通信バッファ190へのコピー終了後、制御用キュー193を調べて、送信要求の制御メッセージ31に対応する受信要求の制御メッセージ32が到着しているかどうかを確認する。到着している場合は、通信バッファ190から計算ノード2の通信バッファ290への計算ノード1,2間のデータ転送メッセージ33を、ネットワークアダプタ16に対して起動する。そして、受信完了した時点で、受信完了の制御メッセージ34を計算ノード1に通知する。
After the copy of the
一方、受信要求の制御メッセージ32が到着していない場合は、送信側のプロセス18に対して受信側のプロセス28の実行が遅れていることを意味し、送信関数191が受信要求の制御メッセージ32の到着を確認した時点でリターンする同期型のとき、計算ノード1のプロセッサコア111あるいは112は制御用キュー193をポーリングするループに入り、実質的な演算処理は行われない。
On the other hand, if the reception
そこで、並列プログラム実行の電力効率を向上するため、送信関数191は、FV制御ユニット10に対し、自らが動作する計算ノード1のプロセッサコア111,112を省電力モードに移行する命令を発行する。ここでは、移行する省電力モードを通信制御ソフトウェアの環境設定として指定可能としてもよく、また、受信要求の制御メッセージ32が到達していないことを確認してから省電力制御を行うまでに一定の待ち時間を設け、この待ち時間を通信制御ソフトウェアの環境設定として指定可能としてもよい。
Therefore, in order to improve the power efficiency of the parallel program execution, the
<FV制御ユニットおよびネットワークアダプタのレジスタ群>
図3は、FV制御ユニット10における省電力モードへの移行を命令するレジスタ群101、および、ネットワークアダプタ16における通常電力モードへの復帰条件を設定するレジスタ群163の一例を示す構成図である。FV制御ユニット10は、レジスタ102に設定された論理ブロックに対して、レジスタ群101のいずれかに書き込みが行われたとき、当該レジスタに対応する電力モードへの移行を行う。FV制御ユニット10における省電力制御命令は、一つの命令レジスタに命令コードをセットすることによって実現してもよい。あるいは、レジスタ群101のそれぞれに、制御対象の論理ブロックをビットマップで指定できるようにしてもよい。
<Registers of FV control unit and network adapter>
FIG. 3 is a configuration diagram illustrating an example of the
移行する省電力モードが、電源電圧と動作周波数を低下するモード(LVLF)である場合、ポーリング間隔が伸びるものの、送信関数191は、受信要求の制御メッセージ32の確認は引き続き行い、確認がとれた時点でFV制御ユニット10に対して命令を発行し、計算ノード1を通常の電源電圧と動作周波数に復帰させた後、リターンしてプロセス18の実行を継続する。
When the power saving mode to be transferred is a mode (LVLF) in which the power supply voltage and the operating frequency are lowered, the polling interval is extended, but the
移行する省電力モードが、プロセッサコア111,112の電源電圧をゼロにするモード(電源オフ)、あるいは動作周波数をゼロにするモード(クロック停止)である場合、送信関数191の動作も停止するため、受信要求の制御メッセージ32を特徴付けるために必要な条件を、ネットワークアダプタ16に設定した後、省電力モードへ移行する。ネットワークアダプタ16は、ノード間ネットワーク5から到着するメッセージを復帰判定部161に渡し、受信要求の制御メッセージ32の到達確認とFV制御ユニット10に対する通常電力モードへの復帰命令の発行を行う。
When the power saving mode to be shifted is a mode in which the power supply voltage of the
<通常電力モードへの復帰条件設定のレジスタ群>
図4は、通常電力モードへの復帰条件を設定するレジスタ群の一例を示す構成図である。図4における復帰条件の判定は、メッセージパケットの複数のワードに関する条件を示すレジスタ40〜49の論理演算によって行われる。個々のワードに関する条件を示すレジスタ40は、有効ビット401、条件番号402、ワード番号403、ビットマスク404、および、ワードデータ405から構成され、有効ビット401の値が1であり、メッセージパケット先頭からのワード数がワード番号403の値である、メッセージパケットのワードについて、ビットマスク404の値が0であるビットのデータがワードデータ405の値に一致するとき、真と判定される。レジスタ41〜49も同様に、有効ビット411〜491、条件番号412〜492、ワード番号413〜493、ビットマスク414〜494、および、ワードデータ415〜495から構成される。
<Register group for setting conditions for returning to normal power mode>
FIG. 4 is a configuration diagram illustrating an example of a register group that sets conditions for returning to the normal power mode. The determination of the return condition in FIG. 4 is performed by a logical operation of the
複数のワードに関する条件を示すレジスタ40〜49のうち、条件番号の値が同じ条件について論理和をとった後、条件番号の値が異なる条件について論理積をとった結果が真であるとき、通常電力モードへの復帰命令を発行する。この条件は、受信要求の制御メッセージ32を特徴付ける必要条件であればよく、送信要求の制御メッセージ31に対応する受信要求の制御メッセージ32を厳密に特定する必要かつ十分な条件を設定しなくてもよい。
When the result of logical product of conditions having different condition number values after the logical sum of conditions having the same condition number value among the
また、通常電力モードへの復帰にあたっては、受信要求の制御メッセージ32の到着に伴いネットワークアダプタ16からプロセッサコア111あるいは112へ受信割り込みを発生するようにして、割り込み発生をFV制御ユニット10が監視して、プロセッサコア111,112を通常電力モードへ復帰するように実現してもよい。
Further, when returning to the normal power mode, the
<計算ノード間でのデータの複製(送信関数に対して受信関数の呼び出しが先行)>
図5は、前記図2に対して、計算ノード2のプロセス28が受信関数292を呼び出し、次に、計算ノード1のプロセス18が送信関数191を呼び出すという順番の場合に、送信関数191と受信関数292が計算ノード1と2の間で受け渡すメッセージの一例を示す説明図である。この受信関数292は、受信バッファ27への受信したデータを書き込みが完了した時点でリターンするブロッキング型とする。
<Replication of data between compute nodes (calling of reception function precedes transmission function)>
FIG. 5 is different from FIG. 2 in that the
受信バッファ27の準備が終わったプロセス28が、受信バッファのアドレスとサイズを引数で指定して受信関数292を呼び出すと、受信関数292は受信要求の制御メッセージ32を計算ノード1に送出する。
When the
次に、送信データ17の準備が終わったプロセス18が、送信データ領域のアドレスとサイズを引数で指定して送信関数191を呼び出すと、送信関数191は送信要求の制御メッセージ31を計算ノード2に送出する。送信要求の制御メッセージ31を受けた計算ノード2のネットワークアダプタ26は、主記憶25上に設けられる制御メッセージの制御用キュー293に送信要求を記録する。
Next, when the
送信関数191は、送信データ17の通信バッファ190へのコピー終了後、制御用キュー193を調べて、送信要求の制御メッセージ31に対応する受信要求の制御メッセージ32が到着していることを確認し、通信バッファ190から計算ノード2の通信バッファ290への計算ノード1,2間のデータ転送メッセージ33を、ネットワークアダプタ16に対して起動する。受信関数292は、転送されたデータを通信バッファ290から受信バッファ27へコピーする。
The
従って、受信関数292が受信要求の制御メッセージ32を送出した時点で、送信要求の制御メッセージ31が到着していない場合は、受信側のプロセス28に対して送信側のプロセス18の実行が遅れていることを意味し、受信関数292がブロッキング型のとき、計算ノード2のプロセッサコア211あるいは212は制御用キュー293をポーリングするループに入り、実質的な演算処理は行われない。
Accordingly, when the reception
そこで、並列プログラム実行の電力効率を向上するため、受信関数292は、FV制御ユニット20に対し、自らが動作する計算ノード2のプロセッサコア211,212を省電力モードに移行する命令を発行する。ここでは、移行する省電力モードを通信制御ソフトウェアの環境設定として指定可能としてもよく、また、送信要求の制御メッセージ31が到達していないことを確認してから省電力制御を行うまでに一定の待ち時間を設けて、この待ち時間を通信制御ソフトウェアの環境設定として指定可能としてもよい。
Therefore, in order to improve the power efficiency of the parallel program execution, the
移行する省電力モードが、受信関数192の動作が停止する、プロセッサコアの電源電圧あるいは動作周波数をゼロにするモードである場合、送信要求の制御メッセージ31を特徴付けるために必要な条件を、ネットワークアダプタ26に設定した後、省電力モードへ移行する。ネットワークアダプタ26は、ノード間ネットワーク5から到着するメッセージを復帰判定部261に渡し、送信要求の制御メッセージ31の到達確認とFV制御ユニット20に対する通常電力モードへの復帰命令の発行を行う。
When the power saving mode to be transferred is a mode in which the power supply voltage or the operating frequency of the processor core is zero, in which the operation of the reception function 192 is stopped, the conditions necessary for characterizing the
<集団通信関数>
ところで、プロセスレベルで並列化されたプログラムの多くにおいて、複数のプロセスにまたがってブロードキャスト、全対全通信、総和などの操作を行う、集団通信関数が使用される。集団通信に参加するプロセスグループの全てのプロセスは、送信バッファおよび受信バッファ双方の引数を指定して集団通信関数を呼び出し、集団通信関数の内部において、送信先の計算ノードあるいは受信元の計算ノードを集団通信の種類に応じたパターンで変化させながら、複数回の送信および受信が行われる。
<Collective communication function>
By the way, in many programs parallelized at the process level, a collective communication function for performing operations such as broadcast, all-to-all communication, and summation over a plurality of processes is used. All processes in the process group that participate in collective communication call the collective communication function with arguments for both the send buffer and the receive buffer, and within the collective communication function, specify the destination computation node or the receive computation node. A plurality of transmissions and receptions are performed while changing the pattern according to the type of collective communication.
そこで、集団通信関数の内部において、前記の省電力制御を行う送信関数および受信関数を使用することによって、プロセスグループにおけるそれぞれのプロセス実行時間のばらつきに起因する送信待ち、および、受信待ちの間のプロセッサコアを省電力モードに移行して、電力効率を向上することができる。 Therefore, by using the transmission function and the reception function for performing the power saving control in the collective communication function, it is possible to wait between transmission waiting and reception waiting due to variations in process execution times in the process group. It is possible to improve the power efficiency by shifting the processor core to the power saving mode.
図6は、計算ノード1,2に加えて、4つの計算ノード1〜4で構成される場合に、計算ノード1〜4で動作しているプロセス18,28,38,48からなるプロセスグループにおいて、各プロセスが自分のデータを全てのプロセスに送る動作である、全対全通信を行う集団通信関数による、送信関数および受信関数の使用例を示す説明図である。ここでは、各プロセスの実行時間にばらつきがあり、集合通信関数1C,2C,3C,4Cの呼び出し時刻が異なる。また、12S,13S,21S,24S,34S,31S,43S,42Sは送信関数を示し、それぞれに対応し、12R,13R,21R,24R,34R,31R,43R,42Rは受信関数を示す。
FIG. 6 shows a process group consisting of
前記全対全通信は、まず、計算ノード1と2の間、および、計算ノード3と4の間でデータを交換し、次に、計算ノード1と3の間、および、計算ノード2と4の間でデータを交換することによって実現される。計算ノード1のプロセス18においては、まず、計算ノード2への送信関数12Sにより自プロセスのデータをプロセス28へ送り、計算ノード2からの受信関数21Rによりプロセス28のデータを受信する。次に、計算ノード3への送信関数13Sにより自プロセスおよびプロセス28のデータをプロセス38へ送り、計算ノード3からの受信関数31Rによりプロセス38および48のデータを受信する。
The all-to-all communication involves first exchanging data between
図6においては、プロセス18に対して、プロセス28の実行が遅れているので、送信関数12Sにおいて、計算ノード1のプロセッサコアに対する前記の省電力制御が適用できる。プロセス48に対して、プロセス38の実行が遅れているので、受信関数34Rにおいて、計算ノード4のプロセッサコアに対する前記の省電力制御が適用できる。また、計算ノード3と4の間でのデータ交換終了に対して、計算ノード1と2の間でのデータ交換の終了が遅れるので、受信関数13Rおよび24Rにおいて、計算ノード3および4のプロセッサコアに対する前記の省電力制御が適用できる。
In FIG. 6, since the execution of the
2つの計算ノード間でのデータ交換を行う場合に、同期型の送信関数を用いることにより、図6における送信関数12Sおよび受信関数12Rは、プロセス18とプロセス28の実行時間のずれを吸収する。従って、引き続いて行われる逆方向の送信関数21Sおよび受信関数21Rについては、効果の小さい省電力制御を適用しないことにより、実行時間の増大を抑えることができる。
When exchanging data between two computation nodes, the
同様に、2つの計算ノード間でのデータ交換を行う場合に、ブロッキング型の受信関数を用いることにより、図6における受信関数34Rおよび送信関数34Sが、プロセス38とプロセス48の実行時間のずれは吸収するため、送信関数43Sおよび受信関数43Rについては省電力制御を適用せず、実行時間の増大を抑えることができる。
Similarly, when data is exchanged between two computation nodes, the
<ノンブロッキング型の送信関数と受信関数>
ところで、プロセスレベルで並列化されたプログラムの実行時間を短縮するため、あるいは、各プロセスが非同期に動作する場合に、送信あるいは受信の起動のみを行ってリターンする、ノンブロッキング型の送信関数、受信関数を使用する場合がある。
<Non-blocking transmission and reception functions>
By the way, in order to shorten the execution time of a program parallelized at the process level, or when each process operates asynchronously, only a transmission or reception is started and a return is performed. May be used.
ノンブロッキング型の送信関数の呼出しは、送信データがコピーされる前にリターンするので、送信を完了させるため、すなわち、送信データのコピーが終了したことを確認するために、送信完了関数の呼出しが必要となる。 Calling the non-blocking transmission function returns before the transmission data is copied, so it is necessary to call the transmission completion function to complete the transmission, that is, to confirm that the transmission data has been copied. It becomes.
同様に、ノンブロッキング型の受信関数の呼出しは、送られてきたデータが受信バッファに格納される前にリターンするので、受信操作を完了させ、データが受信バッファに受け取られたことを確認するためには、受信完了関数の呼出しが必要である。 Similarly, a call to a non-blocking receive function returns before the sent data is stored in the receive buffer, so that the receive operation is completed and the data is received in the receive buffer. Needs to call the reception completion function.
図7は、計算ノード1で動作しているプロセス18から計算ノード2で動作しているプロセス28へのノンブロッキング型の通信と、演算処理をオーバーラップすることにより実行時間を短縮する通信例を示す説明図である。ここでは、1NSはノンブロッキング型の送信関数の呼出しを示し、これに対応し、1WSは送信完了関数の呼出し、1ESは送信完了関数のリターンをそれぞれ示す。また、2NRはノンブロッキング型の受信関数の呼出しを示し、これに対応し、2WRは受信完了関数の呼出し、2ERは受信完了関数のリターンをそれぞれ示す。
FIG. 7 shows a non-blocking type communication from the
図7(a)は、プロセス18による送信起動が、プロセス28による受信起動に対して先行して発行される場合を示す。送信データの準備が終わったプロセス18は、ノンブロッキング型の送信関数の呼出し1NSを行い、送信を起動する。ノンブロッキング型の送信関数は、図2に示される、送信要求の制御メッセージ31を計算ノード2に送出するとともに、送信データ17を通信バッファ190にコピーを開始する。送信要求の制御メッセージ31を受けた計算ノード2のネットワークアダプタ26は、制御メッセージの制御用キュー293に送信要求を記録する。
FIG. 7A shows a case where the transmission activation by the
ノンブロッキング型の送信関数は、送信データ17のコピー完了を待つことなくリターンし、プロセス18は演算処理を続行した後、送信完了関数の呼出し1WSを行う。
The non-blocking type transmission function returns without waiting for the completion of copying of the
一方、計算ノード2のプロセス28は、前記送信関数の呼出し1NSに対応する受信バッファの準備ができると、ノンブロッキング型の受信関数の呼出し2NRを行い、受信を起動する。ノンブロッキング型の受信関数は、図2に示される、受信要求の制御メッセージ32を計算ノード1に送出してリターンし、引き続いて行われるネットワークアダプタ26によるデータ受信と並行して、プロセッサコアでは演算処理を続行する。受信要求の制御メッセージ32を受けた計算ノード1のネットワークアダプタ16は、制御メッセージの制御用キュー193に受信要求を記録する。
On the other hand, when the reception buffer corresponding to the transmission function call 1NS is ready, the
前記の送信完了関数は、制御用キュー193をポーリングするループに入り、受信要求の制御メッセージ32の到着を待つ。従って、送信完了関数の呼出し1WSから受信要求32の到着までの間、計算ノード1において実質的な演算処理は行われない。
The transmission completion function enters a loop for polling the control queue 193 and waits for the reception
そこで、送信完了関数は、呼出し1WSにおいて受信要求の制御メッセージ32が未到着の場合、FV制御ユニットに対し、自らが動作する計算ノード1のプロセッサコアを省電力モードに移行する命令を発行する。ここでは、移行する省電力モードを通信制御ソフトウェアの環境設定として指定可能としてもよく、また、受信要求の制御メッセージ32が到達していないことを確認してから省電力制御を行うまでに一定の待ち時間を設けて、この待ち時間を通信制御ソフトウェアの環境設定として指定可能としてもよい。
Therefore, when the reception
図7(b)は、プロセス28による受信起動が、プロセス28による送信起動に対して先行して発行される場合である。受信バッファを確保したプロセス28は、ノンブロッキング型の受信関数の呼出し2NRを行い、受信を起動する。ノンブロッキング型の受信関数は、図5に示される、受信要求の制御メッセージ32を計算ノード1に送出する。
FIG. 7B shows a case where the reception activation by the
ノンブロッキング型の受信関数は、データの受信を待つことなくリターンし、プロセス28は演算処理を続行した後、受信完了関数の呼出し2WRを行う。
The non-blocking reception function returns without waiting for the reception of data, and the
一方、計算ノード1のプロセス18は、前記受信関数の呼出し2NRに対応する送信データの準備ができると、ノンブロッキング型の送信関数の呼出し1NSを行い、送信を起動する。ノンブロッキング型の送信関数は、図5に示される、送信要求の制御メッセージ31を計算ノード2に送出する。送信要求の制御メッセージ31を受けた計算ノード2のネットワークアダプタ26は、制御メッセージの制御用キュー293に送信要求を記録する。
On the other hand, when the transmission data corresponding to the reception function call 2NR is prepared, the
前記の受信完了関数は、制御用キュー293をポーリングするループに入り、送信要求の制御メッセージ31の到着を待つ。従って、受信完了関数の呼出し2WRから送信要求の制御メッセージ31の到着までの間、計算ノード2において実質的な演算処理は行われない。
The reception completion function enters a loop for polling the control queue 293 and waits for the arrival of the
そこで、受信完了関数は、呼出し2WRにおいて送信要求の制御メッセージ31が未到着の場合、FV制御ユニットに対し、自らが動作する計算ノード2のプロセッサコアを省電力モードに移行する命令を発行する。ここでは、移行する省電力モード、あるいは、省電力制御を行うまでの待ち時間を通信制御ソフトウェアの環境設定として指定可能としてもよい。
Therefore, when the transmission
なお、図2に示すように、データの送信を、通信バッファ190を経由して行う方式の通信制御ソフトウェアでは、使用される送信関数が、同期型ではない、ブロッキング型の場合に、送信データ17が通信バッファ190へのメモリコピーが完了し、送信データ領域が上書き可能になった時点で、計算ノード2へのデータ転送開始を待たずにリターンすることができる。プロセス18は、遠隔の計算ノード2のプロセス28の実行状況に依存せずに、処理を続行できるため、省電力モードへの移行を行う必要がない。
As shown in FIG. 2, in the communication control software that transmits data via the communication buffer 190, the
ノンブロッキング型の送信関数で起動した通信の送信完了関数においても、前記と同じく遠隔の計算ノードの実行状況に依存せずに処理を続行できるため、省電力モードへの移行を行う必要はない。 Even in the transmission completion function of the communication activated by the non-blocking transmission function, the process can be continued without depending on the execution status of the remote computing node as described above, so that it is not necessary to shift to the power saving mode.
一方、大量のデータをプロセス間で通信するプログラムにおいて、図2に示す通信バッファ190,290を経由する通信方式は、通信バッファ190,290によるメモリ使用量増大と、メモリコピーによる実行時間増加が問題となる。 On the other hand, in a program for communicating a large amount of data between processes, the communication method via the communication buffers 190 and 290 shown in FIG. It becomes.
<ネットワークアダプタが送信データおよび受信バッファを直接アクセスする方式>
図8は、送信関数191、受信関数292において、1回の送信および受信によって転送されるデータ量が、しきい値194,294より大きい場合に、送信データ17をネットワークアダプタ16が直接読み出して、計算ノード2へ転送されたデータを、ネットワークアダプタ26が受信バッファ27へ直接書き込む方式を示す説明図である。
<Method in which network adapter directly accesses transmission data and reception buffer>
FIG. 8 shows that in the
このとき、受信関数292の呼出しに対して時間的に先行して呼び出される、ブロッキング型の送信関数191、あるいは、ノンブロッキング型で起動した通信の送信完了関数は、ネットワークアダプタ16が全ての送信データ17を読み出し完了するまで、リターンしない。従って、FV制御ユニットに対し、自らが動作する計算ノード1のプロセッサコアを省電力モードに移行する命令を発行することができる。また、ネットワークアダプタ16が送信データ17の読み出しを行うため、プロセッサコアの省電力モードから通常電力モードへの復帰するタイミングを、送信データ17の読み出し完了時とすることにより、省電力モードの適用時間を延長することができる。
At this time, the blocking
さらに、受信側の計算ノード2において、ネットワークアダプタ26が受信バッファ27へ書き込みを行うため、プロセッサコアの省電力モードから通常電力モードへの復帰するタイミングを、受信バッファ27への書き込み完了時とすることにより電力効率を向上させることができる。
Furthermore, since the
<本実施の形態の効果>
以上で説明したように、本実施の形態によれば、MPI通信ライブラリに代表される通信制御ソフトウェアにおける、送信関数、受信関数、ノンブロッキング型で起動された送信完了関数、受信完了関数、あるいは、複数回のデータ送受信を伴う集団通信関数の内部において、省電力モードへの移行条件を検出し、通常電力モードへの復帰条件を設定し、省電力制御を行うことにより、省電力制御をサポートしないシステムにおいて動作する並列プログラムを変更することなく、省電力制御を行うシステムにおいては電力効率を向上させて実行することができる。
<Effects of the present embodiment>
As described above, according to the present embodiment, in the communication control software represented by the MPI communication library, a transmission function, a reception function, a transmission completion function activated by a non-blocking type, a reception completion function, or a plurality of functions A system that does not support power saving control by detecting the transition condition to the power saving mode, setting the return condition to the normal power mode, and performing power saving control inside the collective communication function with multiple data transmission / reception In a system that performs power saving control, the power efficiency can be improved and executed without changing the parallel program that operates in step.
さらに、電力効率を向上するために、省電力モードとして、動作周波数変更、クロック供給停止、電源電圧変更、電源供給停止など、省電力性と復帰時間の異なる複数のモードを持つ場合に、プログラム開発者が、プログラムの処理内容に応じて、移行する省電力モードおよび対象ブロックの変更を可能とすることが望ましい。 In addition, to improve power efficiency, program development is possible when there are multiple modes with different power savings and recovery times, such as operating frequency change, clock supply stop, power supply voltage change, power supply stop, etc. It is desirable that the person can change the power saving mode to be transferred and the target block according to the processing contents of the program.
プログラム開発者は、前記省電力制御を適用対象となる通信関数呼出し時点において発生し得るプロセス実行時間のばらつきの大きさと、通信の頻度および粒度を見積もり、省電力モードへの移行および復帰にかかる実行時間の増加と対比することによって、通常電力モードのままで通信を行う場合も含んで最適な省電力モードを選択する。選択した省電力モードは、省電力制御をサポートしないシステムにおいてはコメント文として解釈されて実行に影響を与えない形式の指示文によって、記述することにより、プログラムの互換性を保ちながら、消費電力の削減量と、省電力モードへの移行および復帰にかかる実行時間の増加を最適に制御することができる。 The program developer estimates the degree of variation in process execution time that may occur at the time of calling the communication function to which the power saving control is applied, the frequency and granularity of communication, and executes execution for shifting to and returning to the power saving mode. By contrasting with the increase in time, the optimum power saving mode is selected including the case where communication is performed in the normal power mode. The selected power saving mode is written as a directive that is interpreted as a comment and does not affect execution in a system that does not support power saving control. It is possible to optimally control the reduction amount and the increase in execution time required for shifting to and returning to the power saving mode.
<本実施の形態の付加機能および応用例>
以下においては、本実施の形態である並列計算機システムにおける付加機能および応用例として、省電力制御の対象ブロック、管理者権限とユーザ権限、システムオンチップについて説明する。
<Additional functions and application examples of this embodiment>
In the following, as an additional function and an application example in the parallel computer system according to the present embodiment, a target block for power saving control, an administrator authority and a user authority, and a system on chip will be described.
<省電力制御の対象ブロック>
省電力モードへ移行する対象ブロックについて、以下で説明する。図1に示す並列計算機システムにおけるプロセッサコア以外の論理ブロックを省電力制御の対象とすることができる。
<Target block for power saving control>
The target block to be shifted to the power saving mode will be described below. Logic blocks other than the processor core in the parallel computer system shown in FIG. 1 can be targeted for power saving control.
ネットワークアダプタ16,26およびノード間ネットワーク5が、外部システムとの通信には使用されず、前記通信関数によって占有されるネットワークである場合、ネットワークアダプタ16あるいは26に処理すべき情報がなく、一定時間書き込みがなければ自ら省電力モードへ移行し、送信または受信のための情報が書き込まれたら通常電力モードへ復帰する。
When the
主記憶15あるいは25は、通信関数からの制御による、プロセッサコア111,112あるいは211,212に対する省電力制御と合わせて、省電力モードへの移行および通常電力モードへの復帰を行うことができる。
The
図1が、送信側の計算ノード1のレベル1およびレベル2キャッシュメモリ131,132および14に対する、受信側の計算ノード2におけるレベル1およびレベル2キャッシュメモリ231,232および24のコヒーレンスが、ハードウェアにより保証されないシステムである場合に、受信側の計算ノード2におけるキャッシュメモリ231,232および24は、ブロッキング型の受信関数において、受信バッファ27の領域をキャッシュパージしてからリターンするまでの間、省電力モードへ移行させることができる。
FIG. 1 shows that the coherence of the
送信データ17が、ローカルメモリ121あるいは122に準備されて、キャッシュメモリとは独立なローカルメモリ間でデータ送信が行われる場合、送信側の計算ノード1におけるキャッシュメモリ131,132および14は、ブロッキング型の送信関数において、計算ノード1から2へのデータ転送を開始してから送信関数がリターンするまでの間、省電力モードへ移行させることができる。
When the
受信バッファ27が、ローカルメモリ221あるいは222に準備されて、キャッシュメモリとは独立なローカルメモリ間でデータ受信が行われる場合、受信側の計算ノード2におけるキャッシュメモリ231,232および24は、ブロッキング型の受信関数において、計算ノード1から2へのデータ転送が開始されてから受信関数がリターンするまでの間、省電力モードへ移行させることができる。
When the
<管理者権限とユーザ権限>
ところで、本発明における特徴の一つに、計算ノード内の資源管理を行うオペレーティングシステムが管理者権限で省電力制御を行うのではなく、ユーザ権限で実行される通信関数の内部で省電力制御を行うことがある。省電力モードへの移行を伴うユーザプログラム実行と並行して、オペレーティングシステムが優先度の高い処理を実行している場合には、ユーザ権限での省電力制御に対して管理者権限での省電力制御を優先させる必要がある。
<Administrator authority and user authority>
By the way, one of the features of the present invention is that the operating system for managing resources in the computing node does not perform power saving control with administrator authority, but performs power saving control within a communication function executed with user authority. There are things to do. When the operating system is executing a high-priority process in parallel with the user program execution that shifts to the power saving mode, the power saving with the administrator authority is performed for the power saving control with the user authority. Control needs to be prioritized.
図9は、FV制御ユニット10において、管理者権限の特権モードによってのみ値をセットできる省電力制御レジスタ103および制御対象論理ブロックをセットするレジスタ104を、別途備える構成の一例を示す構成図である。ここでは、管理者権限による省電力制御レジスタ103に値がセットされているときは、ユーザプログラムからの省電力制御は行うことができない。
FIG. 9 is a configuration diagram showing an example of a configuration in which the
<システムオンチップ>
本発明の実現の一形態として、複数チップを積層する3次元実装技術を利用して、積層されたマルチコアプロセッサチップとメモリチップを3次元的に密結合したシステムオンチップを、ノード間ネットワークで複数接続したシステム構成が挙げられる。ここでは、マルチコアプロセッサチップは、プロセッサコアと各プロセッサコアに付随するキャッシュメモリを備える。
<System on chip>
As one mode of realization of the present invention, a plurality of system-on-chips in which three-dimensionally stacked multi-core processor chips and memory chips are three-dimensionally coupled using a three-dimensional mounting technique in which a plurality of chips are stacked are connected via a node-to-node network. A connected system configuration can be mentioned. Here, the multi-core processor chip includes a processor core and a cache memory associated with each processor core.
論理構成としては3次元実装を前提としないマルチコアプロセッサチップとメモリチップを構成要素として積層する場合、3次元接続に関する、ハードウェアによるキャッシュコヒーレンス制御機能を持たず、2次元的に実装されているマルチコアプロセッサチップ内部でのみ行われる場合がある。 When stacking multi-core processor chips and memory chips that are not premised on three-dimensional implementation as logical components, the multi-core implemented in two dimensions without having a hardware cache coherence control function for three-dimensional connections. This may only be done inside the processor chip.
図10は、マルチコアプロセッサチップ51,52、メモリチップ61,62、および、インターフェースチップ71を3次元接続バス81〜84により接続したシステムオンチップの一例を示す説明図である。これに限定されるものではないが、例えば図1に対応させると、マルチコアプロセッサチップ51,52にはプロセッサコアとレベル1キャッシュメモリが備えられ、メモリチップ61,62には主記憶とローカルメモリとレベル2キャッシュメモリが備えられ、インターフェースチップ71にはネットワークアダプタとFV制御ユニットが備えられる。
FIG. 10 is an explanatory diagram showing an example of a system-on-chip in which the
キャッシュメモリのコヒーレンス制御が及ぶ適用範囲が、メモリチップ61,62上の主記憶を共有するコア群の一部にとどまる前記のタイプの図10の計算ノードにおいて、あるマルチコアプロセッサチップ51上の全てのコアが動作を停止する省電力モードに移行するとき、他のマルチコアプロセッサチップ52で動作中のコアによる主記憶アクセスによって、マルチコアプロセッサチップ51上のキャッシュメモリは、影響を受けないため、省電力モードに移行できる。例えば、マルチコアプロセッサチップ52上で行われている通信関数以外の処理が行われていない場合、マルチコアプロセッサチップ52上のキャッシュメモリは、通信関数の主記憶アクセスによりコヒーレンス制御を受ける可能性があるために動作を停止させない一方で、マルチコアプロセッサチップ51上のキャッシュメモリに対して、省電力モードを適用し、動作を停止させる。
The scope of application of the cache memory coherence control is limited to a part of the core group sharing the main memory on the
図10に示すようなマルチコアプロセッサチップとメモリチップを3次元実装したシステムオンチップにおいて、プロセッサコアとこれに付随するキャッシュメモリを備えるマルチコアプロセッサチップ51または52ごとに、キャッシュメモリのハードウェアによるコヒーレンス制御が及ぶ範囲に応じてキャッシュメモリの省電力モード移行を行うことができる。
In a system-on-chip in which a multi-core processor chip and a memory chip are three-dimensionally mounted as shown in FIG. 10, coherence control by hardware of cache memory is performed for each
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。 As mentioned above, the invention made by the present inventor has been specifically described based on the embodiment. However, the present invention is not limited to the embodiment, and various modifications can be made without departing from the scope of the invention. Needless to say.
本発明は、ネットワークで接続されたマルチコアプロセッサで構成される情報処理システムに適用することで、通信制御ソフトウェアの通信関数内部において論理ブロックごとに省電力モードへの移行および通常電力モードへの復帰を行うことによる、プロセスレベルの並列化によるスケーラブルな高速処理と省電力性を両立することができる。 The present invention is applied to an information processing system composed of multi-core processors connected by a network, thereby shifting to a power saving mode and returning to a normal power mode for each logical block within a communication function of communication control software. By doing so, it is possible to achieve both scalable high-speed processing and power saving by parallelization at the process level.
1,2,3,4 計算ノード
5 ノード間ネットワーク
10,20 FV制御ユニット(周波数・電源電圧制御ユニット)
101 レジスタ群
102 レジスタ
103 省電力制御レジスタ
104 レジスタ
111,112,211,212 プロセッサコア
121,122,221,222 ローカルメモリ
131,132,231,232 レベル1キャッシュメモリ
14,24 レベル2キャッシュメモリ
15,25 主記憶
16,26 ネットワークアダプタ
17 送信データ
27 受信バッファ
161,261 復帰判定部
162,262 DMAコントローラ
163 レジスタ群
18,28,38,48 プロセス
190,290 通信バッファ
191 送信関数
292 受信関数
193,293 制御用キュー
194,294 しきい値
31 送信要求の制御メッセージ
32 受信要求の制御メッセージ
33 データ転送メッセージ
34 受信完了の制御メッセージ
40〜49 レジスタ
401〜491 有効ビット
402〜492 条件番号
404〜494 ビットマスク
405〜495 ワードデータ
51,52 マルチコアプロセッサチップ
61,62 メモリチップ
71 インターフェースチップ
81〜84 3次元接続バス
1, 2, 3, 4
Claims (20)
前記複数の計算ノードは、第1の計算ノードと第2の計算ノードとを含み、
前記第1の計算ノードは、前記第1の計算ノードで動作中のプログラムがデータ送信の準備が完了し、前記第2の計算ノードでデータ受信の準備が完了していない場合に、前記第1の計算ノードを省電力モードに移行させるための通信制御ソフトウェアを備えることを特徴とする情報処理システム。 An information processing system comprising a plurality of calculation nodes and a network connecting the plurality of calculation nodes, and performing parallel processing while performing data communication between the plurality of calculation nodes connected by the network,
The plurality of computation nodes include a first computation node and a second computation node,
The first computing node is configured to execute the first computing node when a program running on the first computing node is ready for data transmission and the second computing node is not ready for data reception. An information processing system comprising communication control software for shifting the computing node to a power saving mode.
前記第1の計算ノードは、前記第2の計算ノードでデータ受信の準備が完了しているかどうかを、前記通信制御ソフトウェアにおける送信関数、ノンブロッキング型の送信完了関数、または、前記複数の計算ノードが同期してデータ送受信を行う集団通信関数の内部で検出して省電力制御を行うことを特徴とする情報処理システム。 The information processing system according to claim 1,
Whether the first calculation node is ready for data reception in the second calculation node, the transmission function in the communication control software, the non-blocking transmission completion function, or the plurality of calculation nodes An information processing system that performs power saving control by detecting within a collective communication function that performs synchronous data transmission and reception.
前記通信制御ソフトウェアは、MPI通信ライブラリであることを特徴とする情報処理システム。 The information processing system according to claim 2,
The information processing system, wherein the communication control software is an MPI communication library.
前記送信関数、前記送信完了関数、および、前記集団通信関数の各関数は、プログラム開発者が記述する指示文によって、移行する省電力モードおよび対象ブロックを変更可能であり、プログラムの処理内容に応じて、消費電力の削減量と、省電力モードへの移行および復帰にかかる実行時間の増加を制御することを特徴とする情報処理システム。 The information processing system according to claim 2,
Each function of the transmission function, the transmission completion function, and the collective communication function can change a power saving mode and a target block to be transferred according to an instruction written by a program developer, and depends on a program processing content. An information processing system that controls a reduction in power consumption and an increase in execution time required for shifting to and returning to a power saving mode.
前記第1の計算ノードは、前記ネットワークに接続されるネットワークアダプタを備え、
前記ネットワークアダプタは、通常の電力モードへ復帰する際の条件を設定するレジスタ群と、送受信パケットを監視して復帰条件を判定する判定部とを備え、復帰条件を満たした場合に周波数・電源電圧制御ユニットに対して通常の電力モードへの復帰を指示することを特徴とする情報処理システム。 The information processing system according to claim 1,
The first computing node comprises a network adapter connected to the network;
The network adapter includes a register group for setting a condition for returning to the normal power mode, and a determination unit that monitors transmission / reception packets and determines the return condition. When the return condition is satisfied, the frequency / power supply voltage An information processing system for instructing a control unit to return to a normal power mode.
前記周波数・電源電圧制御ユニットは、省電力モードへの移行を制御するレジスタ群を備え、
前記周波数・電源電圧制御ユニットに備える省電力モードへの移行を制御するレジスタ群と、前記ネットワークアダプタに備える通常の電力モードへ復帰する際の条件を設定するレジスタ群とは、前記通信制御ソフトウェアから設定できるレジスタ群と、オペレーティングシステムが特権モードで省電力制御を行うレジスタ群とに分離して備えることを特徴とする情報処理システム。 The information processing system according to claim 5,
The frequency / power supply voltage control unit includes a register group that controls the transition to the power saving mode,
The register group for controlling the transition to the power saving mode provided in the frequency / power supply voltage control unit, and the register group for setting a condition for returning to the normal power mode provided for the network adapter are obtained from the communication control software. An information processing system comprising: a register group that can be set; and a register group in which an operating system performs power saving control in a privileged mode.
前記第1の計算ノードは、複数のプロセッサコアと各プロセッサコアに付随するキャッシュメモリと主記憶とを統合して1つのパッケージに3次元実装されたチップであり、前記キャッシュメモリのハードウェアによるコヒーレンス制御が及ぶ範囲に応じて、前記キャッシュメモリの論理ブロックの省電力モード移行を行うことを特徴とする情報処理システム。 The information processing system according to claim 1,
The first computing node is a chip that integrates a plurality of processor cores, a cache memory associated with each processor core, and a main memory, and is three-dimensionally mounted in one package. Coherence by hardware of the cache memory An information processing system for performing a power saving mode shift of a logical block of the cache memory according to a range to which control is applied.
前記複数の計算ノードは、第1の計算ノードと第2の計算ノードとを含み、
前記第2の計算ノードは、前記第2の計算ノードで動作中のプログラムがデータ受信の準備が完了し、前記第1の計算ノードでデータ送信の準備が完了していない場合に、前記第2の計算ノードを省電力モードに移行させるための通信制御ソフトウェアを備えることを特徴とする情報処理システム。 An information processing system comprising a plurality of calculation nodes and a network connecting the plurality of calculation nodes, and performing parallel processing while performing data communication between the plurality of calculation nodes connected by the network,
The plurality of computation nodes include a first computation node and a second computation node,
The second computing node is configured such that when the program running on the second computing node is ready to receive data and the first computing node is not ready to send data, the second computing node An information processing system comprising communication control software for shifting the computing node to a power saving mode.
前記第2の計算ノードは、前記第1の計算ノードでデータ送信の準備が完了しているかどうかを、前記通信制御ソフトウェアにおける受信関数、ノンブロッキング型の受信完了関数、または、前記複数の計算ノードが同期してデータ送受信を行う集団通信関数の内部で検出して省電力制御を行うことを特徴とする情報処理システム。 The information processing system according to claim 8,
Whether the second calculation node is ready for data transmission in the first calculation node, the reception function in the communication control software, the non-blocking reception completion function, or the plurality of calculation nodes An information processing system that performs power saving control by detecting within a collective communication function that performs synchronous data transmission and reception.
前記通信制御ソフトウェアは、MPI通信ライブラリであることを特徴とする情報処理システム。 The information processing system according to claim 9,
The information processing system, wherein the communication control software is an MPI communication library.
前記受信関数、前記受信完了関数、および、前記集団通信関数の各関数は、プログラム開発者が記述する指示文によって、移行する省電力モードおよび対象ブロックを変更可能であり、プログラムの処理内容に応じて、消費電力の削減量と、省電力モードへの移行および復帰にかかる実行時間の増加を制御することを特徴とする情報処理システム。 The information processing system according to claim 9,
The functions of the reception function, the reception completion function, and the collective communication function can change the power saving mode and the target block to be transferred according to the directives written by the program developer, depending on the processing contents of the program An information processing system that controls a reduction in power consumption and an increase in execution time required for shifting to and returning to a power saving mode.
前記第2の計算ノードは、前記ネットワークに接続されるネットワークアダプタを備え、
前記ネットワークアダプタは、通常の電力モードへ復帰する際の条件を設定するレジスタ群と、送受信パケットを監視して復帰条件を判定する判定部とを備え、復帰条件を満たした場合に周波数・電源電圧制御ユニットに対して通常の電力モードへの復帰を指示することを特徴とする情報処理システム。 The information processing system according to claim 8,
The second computing node comprises a network adapter connected to the network;
The network adapter includes a register group for setting a condition for returning to the normal power mode, and a determination unit that monitors transmission / reception packets and determines the return condition. When the return condition is satisfied, the frequency / power supply voltage An information processing system for instructing a control unit to return to a normal power mode.
前記周波数・電源電圧制御ユニットは、省電力モードへの移行を制御するレジスタ群を備え、
前記周波数・電源電圧制御ユニットに備える省電力モードへの移行を制御するレジスタ群と、前記ネットワークアダプタに備える通常の電力モードへ復帰する際の条件を設定するレジスタ群とは、前記通信制御ソフトウェアから設定できるレジスタ群と、オペレーティングシステムが特権モードで省電力制御を行うレジスタ群とに分離して備えることを特徴とする情報処理システム。 The information processing system according to claim 12,
The frequency / power supply voltage control unit includes a register group that controls the transition to the power saving mode,
The register group for controlling the transition to the power saving mode provided in the frequency / power supply voltage control unit, and the register group for setting a condition for returning to the normal power mode provided for the network adapter are obtained from the communication control software. An information processing system comprising: a register group that can be set; and a register group in which an operating system performs power saving control in a privileged mode.
前記第2の計算ノードは、複数のプロセッサコアと各プロセッサコアに付随するキャッシュメモリと主記憶とを統合して1つのパッケージに3次元実装されたチップであり、前記キャッシュメモリのハードウェアによるコヒーレンス制御が及ぶ範囲に応じて、前記キャッシュメモリの論理ブロックの省電力モード移行を行うことを特徴とする情報処理システム。 The information processing system according to claim 8,
The second computing node is a chip that integrates a plurality of processor cores, a cache memory associated with each processor core, and a main memory, and is three-dimensionally mounted in one package. Coherence by hardware of the cache memory An information processing system for performing a power saving mode shift of a logical block of the cache memory according to a range to which control is applied.
前記複数の計算ノードは、MPI通信ライブラリである通信制御ソフトウェアをそれぞれ備えた第1の計算ノードと第2の計算ノードとを含み、
前記第1の計算ノード上の前記通信制御ソフトウェアは、前記第1の計算ノードで動作中のプログラムがデータ送信の準備が完了し、前記第2の計算ノードでデータ受信の準備が完了していない場合に、前記第1の計算ノードを省電力モードに移行させ、
前記第2の計算ノード上の前記通信制御ソフトウェアは、前記第2の計算ノードで動作中のプログラムがデータ受信の準備が完了し、前記第1の計算ノードでデータ送信の準備が完了していない場合に、前記第2の計算ノードを省電力モードに移行させることを特徴とする情報処理システム。 An information processing system comprising a plurality of calculation nodes and a network connecting the plurality of calculation nodes, and performing parallel processing while performing data communication between the plurality of calculation nodes connected by the network,
The plurality of calculation nodes include a first calculation node and a second calculation node each having communication control software which is an MPI communication library,
In the communication control software on the first calculation node, the program running on the first calculation node is not ready for data transmission, and the second calculation node is not ready for data reception. The first compute node is shifted to a power saving mode,
In the communication control software on the second calculation node, the program running on the second calculation node is ready for data reception, and the first calculation node is not ready for data transmission. In this case, the information processing system is characterized in that the second computing node is shifted to a power saving mode.
前記第1の計算ノードおよび前記第2の計算ノードは、前記第2の計算ノードまたは前記第1の計算ノードでデータ受信またはデータ送信の準備が完了しているかどうかを、前記通信制御ソフトウェアにおける送信関数、受信関数、ノンブロッキング型の送信完了関数、受信完了関数、または、前記複数の計算ノードが同期してデータ送受信を行う集団通信関数の内部で検出して省電力制御を行うことを特徴とする情報処理システム。 The information processing system according to claim 15,
The first calculation node and the second calculation node transmit in the communication control software whether the second calculation node or the first calculation node is ready for data reception or data transmission. A function, a reception function, a non-blocking transmission completion function, a reception completion function, or a collective communication function in which the plurality of calculation nodes perform data transmission and reception synchronously, and perform power saving control Information processing system.
前記送信関数、前記受信関数、前記送信完了関数、前記受信完了関数、および、前記集団通信関数の各関数は、プログラム開発者が記述する指示文によって、移行する省電力モードおよび対象ブロックを変更可能であり、プログラムの処理内容に応じて、消費電力の削減量と、省電力モードへの移行および復帰にかかる実行時間の増加を制御することを特徴とする情報処理システム。 The information processing system according to claim 16,
Each of the transmission function, the reception function, the transmission completion function, the reception completion function, and the collective communication function can change the power saving mode and target block to be transferred according to an instruction sentence written by a program developer. An information processing system that controls a reduction in power consumption and an increase in execution time required for shifting to and returning to a power saving mode according to the processing content of a program.
前記第1の計算ノードおよび前記第2の計算ノードは、それぞれ、前記ネットワークに接続されるネットワークアダプタを備え、
前記ネットワークアダプタは、通常の電力モードへ復帰する際の条件を設定するレジスタ群と、送受信パケットを監視して復帰条件を判定する判定部とを備え、復帰条件を満たした場合に周波数・電源電圧制御ユニットに対して通常の電力モードへの復帰を指示することを特徴とする情報処理システム。 The information processing system according to claim 15,
Each of the first calculation node and the second calculation node includes a network adapter connected to the network;
The network adapter includes a register group for setting a condition for returning to the normal power mode, and a determination unit that monitors transmission / reception packets and determines the return condition. When the return condition is satisfied, the frequency / power supply voltage An information processing system for instructing a control unit to return to a normal power mode.
前記周波数・電源電圧制御ユニットは、省電力モードへの移行を制御するレジスタ群を備え、
前記周波数・電源電圧制御ユニットに備える省電力モードへの移行を制御するレジスタ群と、前記ネットワークアダプタに備える通常の電力モードへ復帰する際の条件を設定するレジスタ群とは、前記通信制御ソフトウェアから設定できるレジスタ群と、オペレーティングシステムが特権モードで省電力制御を行うレジスタ群とに分離して備えることを特徴とする情報処理システム。 The information processing system according to claim 18,
The frequency / power supply voltage control unit includes a register group that controls the transition to the power saving mode,
The register group for controlling the transition to the power saving mode provided in the frequency / power supply voltage control unit, and the register group for setting a condition for returning to the normal power mode provided for the network adapter are obtained from the communication control software. An information processing system comprising: a register group that can be set; and a register group in which an operating system performs power saving control in a privileged mode.
前記第1の計算ノードおよび前記第2の計算ノードは、それぞれ、複数のプロセッサコアと各プロセッサコアに付随するキャッシュメモリと主記憶とを統合して1つのパッケージに3次元実装されたチップであり、前記キャッシュメモリのハードウェアによるコヒーレンス制御が及ぶ範囲に応じて、前記キャッシュメモリの論理ブロックの省電力モード移行を行うことを特徴とする情報処理システム。 The information processing system according to claim 15,
Each of the first calculation node and the second calculation node is a chip that is three-dimensionally mounted in one package by integrating a plurality of processor cores, a cache memory associated with each processor core, and a main memory. An information processing system for performing a power saving mode shift of a logical block of the cache memory in accordance with a range to which coherence control by hardware of the cache memory extends.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008309982A JP2010134698A (en) | 2008-12-04 | 2008-12-04 | Information processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008309982A JP2010134698A (en) | 2008-12-04 | 2008-12-04 | Information processing system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010134698A true JP2010134698A (en) | 2010-06-17 |
Family
ID=42345935
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008309982A Pending JP2010134698A (en) | 2008-12-04 | 2008-12-04 | Information processing system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010134698A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013516006A (en) * | 2009-12-29 | 2013-05-09 | エンパイア テクノロジー ディベロップメント エルエルシー | Shared memory for energy efficient multi-core processors |
JP2013178675A (en) * | 2012-02-28 | 2013-09-09 | Fujitsu Ltd | Multiprocessor device and power control method of the same |
JP2014174984A (en) * | 2013-03-08 | 2014-09-22 | Intel Corp | Indicating critical battery status in mobile devices |
KR20200047254A (en) * | 2018-10-25 | 2020-05-07 | 상명대학교산학협력단 | Method and apparatus for transformation of MPI programs for Memory Centric Computers |
CN111670432A (en) * | 2017-12-22 | 2020-09-15 | 北欧半导体公司 | Inter-processor communication |
-
2008
- 2008-12-04 JP JP2008309982A patent/JP2010134698A/en active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013516006A (en) * | 2009-12-29 | 2013-05-09 | エンパイア テクノロジー ディベロップメント エルエルシー | Shared memory for energy efficient multi-core processors |
US9367462B2 (en) | 2009-12-29 | 2016-06-14 | Empire Technology Development Llc | Shared memories for energy efficient multi-core processors |
JP2013178675A (en) * | 2012-02-28 | 2013-09-09 | Fujitsu Ltd | Multiprocessor device and power control method of the same |
JP2014174984A (en) * | 2013-03-08 | 2014-09-22 | Intel Corp | Indicating critical battery status in mobile devices |
JP2016066361A (en) * | 2013-03-08 | 2016-04-28 | インテル・コーポレーション | Indication of battery critical status in mobile device |
US9335808B2 (en) | 2013-03-08 | 2016-05-10 | Intel Corporation | Indicating critical battery status in mobile devices |
US9798369B2 (en) | 2013-03-08 | 2017-10-24 | Intel Corporation | Indicating critical battery status in mobile devices |
CN111670432A (en) * | 2017-12-22 | 2020-09-15 | 北欧半导体公司 | Inter-processor communication |
KR20200047254A (en) * | 2018-10-25 | 2020-05-07 | 상명대학교산학협력단 | Method and apparatus for transformation of MPI programs for Memory Centric Computers |
KR102126896B1 (en) | 2018-10-25 | 2020-06-25 | 상명대학교산학협력단 | Method and apparatus for transformation of MPI programs for Memory Centric Computers |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7971029B2 (en) | Barrier synchronization method, device, and multi-core processor | |
US7895260B2 (en) | Processing data access requests among a plurality of compute nodes | |
Van der Wijngaart et al. | Light-weight communications on Intel's single-chip cloud computer processor | |
US8140704B2 (en) | Pacing network traffic among a plurality of compute nodes connected using a data communications network | |
US7376952B2 (en) | Optimizing critical section microblocks by controlling thread execution | |
KR101951072B1 (en) | Inter-core communication apparatus and method | |
US7802025B2 (en) | DMA engine for repeating communication patterns | |
US8359367B2 (en) | Network support for system initiated checkpoints | |
JP2009265963A (en) | Information processing system and task execution control method | |
US10705998B1 (en) | Exchange of data between processor modules | |
US11341087B2 (en) | Single-chip multi-processor communication | |
WO2012016439A1 (en) | Method, device and equipment for service management | |
US10932202B2 (en) | Technologies for dynamic multi-core network packet processing distribution | |
US8086766B2 (en) | Support for non-locking parallel reception of packets belonging to a single memory reception FIFO | |
JP2010134698A (en) | Information processing system | |
US7716407B2 (en) | Executing application function calls in response to an interrupt | |
CN114328350A (en) | Communication method, device and medium based on AXI bus | |
JP2002024195A (en) | Parallel processor and parallel process method | |
EP4036730A1 (en) | Application data flow graph execution using network-on-chip overlay | |
KR20050080704A (en) | Apparatus and method of inter processor communication | |
US8675444B2 (en) | Synchronized command throttling for multi-channel duty-cycle based memory power management | |
KR20130104958A (en) | Apparatus and methods for executing multi-operating systems | |
US20240160468A1 (en) | Server delay control device, server delay control method, and program | |
Liu et al. | Inter-Core Communication Mechanisms for Microkernel Operating System based on Signal Transmission and Shared Memory | |
US20240333541A1 (en) | Data transmission device on server, data transmission method and program on server |