JP2010134698A - Information processing system - Google Patents

Information processing system Download PDF

Info

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
Application number
JP2008309982A
Other languages
Japanese (ja)
Inventor
Yuji Saeki
裕治 佐伯
Yoshiko Nagasaka
由子 長坂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2008309982A priority Critical patent/JP2010134698A/en
Publication of JP2010134698A publication Critical patent/JP2010134698A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Power Sources (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an information processing system capable of improving power efficiency in parallel program execution for performing message communication between processor cores. <P>SOLUTION: In the information processing system for performing parallel processing while performing data communication between two or more computation nodes 1, 2 connected through an inter-node network 5, the computation node 1 includes communication control software for shifting the computation node 1 into a power-saving mode when the computation node 2 is yet to be ready for data reception although a running program on the computation node 1 is ready for data transmission. Otherwise, the computation node 2 includes communication control software for shifting the computation node 2 into the power-saving mode when the computation node 1 is yet to be ready for data transmission although a running program on the computation node 2 is ready for data reception. <P>COPYRIGHT: (C)2010,JPO&INPIT

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 Patent Documents 1 and 2 and Non-Patent Document 1, for example, regarding information processing systems.

特許文献1には、コンパイラが、入力プログラムから自動的に並列性を持つタスクを抽出し、複数のコアに割り当て、効率の良いスケジューリングを行い、処理時間を見積もることで、動作周波数と電源電圧を最適化するコードを生成するマルチプロセッサシステムについて開示されている。   In Patent Document 1, the compiler automatically extracts tasks having parallelism from the input program, assigns them to a plurality of cores, performs efficient scheduling, estimates the processing time, and sets the operating frequency and power supply voltage. A multiprocessor system for generating code for optimization is disclosed.

特許文献2には、プロセッサコア間の通信にメールボックスキューを提供するシステムにおいて、満杯の送信メールボックスに書き込むプロセッサコア、または、空の受信メールボックスから読み出すプロセッサコアが低電力状態に移行し、他のプロセッサコアが送信メールボックスから読み出しまたは受信メールボックスへ書き込むことによって通常の電力モードに復帰する方法が開示されている。   In Patent Document 2, in a system that provides a mailbox queue for communication between processor cores, a processor core that writes to a full transmission mailbox or a processor core that reads from an empty reception mailbox shifts to a low power state, A method is disclosed in which another processor core returns to normal power mode by reading from a transmit mailbox or writing to a receive mailbox.

非特許文献1には、スレッドレベルおよびプロセスレベルの並列処理の組合せからなるプログラムの実行パターンに応じて、演算処理を行っていない一部のプロセッサコアの動作周波数と基板電圧を高速に制御することにより電力効率を向上する低電力回路技術が開示されている。
特開2007−305148号公報 特開2007−52790号公報 H.Aoki,et.al.,VLSI Symposium 2008「A Powerful yet Ecological Parallel Processing System using Execution−based Adaptive Power−down Control and Compact Quadruple−Precision Assist FPUs」
Non-Patent Document 1 discloses that the operating frequency and substrate voltage of some processor cores that are not performing arithmetic processing are controlled at high speed according to the execution pattern of a program that is a combination of thread level and process level parallel processing. Discloses a low-power circuit technology that improves power efficiency.
JP 2007-305148 A JP 2007-52790 A H. Aoki, et. al. , VLSI Symposium 2008 "A Powerfulet Ecological Parallel Processing System using Execution -basic Adaptive Power-down Control and CompactQuadupple

ところで、前記のような情報処理システムに関して、本発明者が検討した結果、以下のようなことが明らかとなった。   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 Patent Document 1. As a system for providing a mailbox queue for communication between processor cores, there is a technique disclosed in Patent Document 2. Furthermore, there is a technique disclosed in Non-Patent Document 1 as a low power circuit technique for improving power efficiency in the execution of a program composed of a combination of thread level and process level parallel processing.

しかしながら、前記のようなマルチプロセッサシステムにおいて、プログラムの並列化によるスケーラブルな高速処理を実現する、すなわち、処理量の増加に応じてコア数を増加してもコア数に比例した実効性能を得るためには、ローカルなメモリが個別に配置された計算ノードを複数個で接続し、ネットワーク経由のメッセージ通信によってデータを交換する分散メモリ型のマルチプロセッサシステムを用いるのが有利であり、従って、プロセスレベルの並列処理が必要となる。   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 calculation nodes 1 and 2 each having the same configuration, and an inter-node network 5 It consists of Here, the calculation node 1 will be described as a transmission side, the calculation node 2 will be described as a reception side, and a case where the calculation node 2 is remotely located with respect to the calculation node 1 will be described.

計算ノード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 computation node 1 includes a plurality (two examples in FIG. 1) of processor cores (cores) 111 and 112, local memories (LM) 121 and 122 that can be accessed independently for each of the processor cores 111 and 112, and a processor core 111. , 112, level 1 cache memories (L 1) 131 and 132 for which coherence is guaranteed, a level 2 cache memory (L 2 cache) 14 shared by the processor cores 111 and 112, a main memory 15, The network adapter 16 and the FV control unit 10 that controls the clock and power supply voltage supplied to these logic blocks are mainly configured.

この計算ノード1の主記憶15には、送信データ17が格納されている。さらに、主記憶15には、MPI通信ライブラリなどの通信制御ソフトウェアが格納されている。また、ネットワークアダプタ16には、通常電力モードへの復帰条件の復帰判定部161と、送受信データをメモリアクセスするDMAコントローラ(DMAC)162が設けられている。   Transmission data 17 is stored in the main memory 15 of the calculation node 1. Further, the main memory 15 stores communication control software such as an MPI communication library. Further, the network adapter 16 is provided with a return determination unit 161 for returning to the normal power mode and a DMA controller (DMAC) 162 for accessing the transmission / reception data in the memory.

計算ノード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 calculation node 2 includes two processor cores 211 and 22, two local memories 221 and 222, two level 1 cache memories 231 and 232, a level 2 cache memory 24, a main memory 25, and a network adapter. 26 and the FV control unit 20 are mainly configured. The main memory 25 of the calculation node 2 is provided with a reception buffer 27 and further stores communication control software such as an MPI communication library. Further, the network adapter 26 is provided with a return determination unit 261 and a DMA controller 262.

この並列計算機システムでは、プロセスレベルで並列化されたプログラムを実行する場合、相互にデータ通信を行う複数のプロセスは、それぞれがある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 certain computing node 1 and 2, respectively. Each process may be parallelized at a thread level in which a thread is assigned to each of the plurality of processor cores 111, 112, 211, and 212 in the computation nodes 1 and 2.

図1では、計算ノード1で動作しているプロセスが、MPI通信ライブラリなどの通信制御ソフトウェアの送信関数を呼び出すことによって、主記憶15上の送信データ17を、計算ノード2で動作しているプロセスの主記憶25上の受信バッファ27へ、ネットワークアダプタ16、ノード間ネットワーク5、ネットワークアダプタ26を経由して、計算ノード1と計算ノード2間で複製する場合を示す。ノード間ネットワーク5は、共有バスやクロスバースイッチなどで構成してもよい。   In FIG. 1, the process operating on the calculation node 1 causes the transmission data 17 on the main memory 15 to be converted to the process operating on the calculation node 2 by calling a transmission function of communication control software such as the MPI communication library. A case is shown in which replication is performed between the computation node 1 and the computation node 2 via the network adapter 16, the inter-node network 5, and the network adapter 26 to the reception buffer 27 on the main memory 25. The inter-node network 5 may be configured with a shared bus, a crossbar switch, or the like.

ここでは、データを受信する計算ノード2側のプロセスは、受信バッファ27にある必要なデータの上書きを防止するために、通信制御ソフトウェアの受信関数を呼び出す必要がある。受信関数を呼び出した時点で、受信バッファ27へネットワークアダプタ26のDMAコントローラ262が、送信ノード1から送信されてきたデータを上書きしてもよいことを示す。   Here, the process on the calculation node 2 side that receives data needs to call a reception function of the communication control software in order to prevent overwriting of necessary data in the reception buffer 27. When the reception function is called, the DMA controller 262 of the network adapter 26 may overwrite the data transmitted from the transmission node 1 in the reception buffer 27.

<計算ノード間でのデータの複製(受信関数に対して送信関数の呼び出しが先行)>
図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 process 18 of the calculation node 1 calls the transmission function 191 and then the process 28 of the calculation node 2 calls the reception function 292 so that the transmission data 17 is transferred to the reception buffer 27 between the calculation nodes. FIG. 10 is an explanatory diagram illustrating an example of a message that is transmitted between the calculation nodes 1 and 2 by the transmission function 191 and the reception function 292 when copying in FIG. This transmission function 191 performs synchronous communication that returns when the reception function 292 is called and the corresponding reception is started.

送信データ17の準備が終わったプロセス18が、送信データ領域のアドレスとサイズを引数で指定して送信関数191を呼び出すと、送信関数191は送信要求の制御メッセージ31を計算ノード2に送出するとともに、送信データ17を通信バッファ190にコピーする。送信要求の制御メッセージ31を受けた計算ノード2のネットワークアダプタ26は、主記憶25上に設けられる制御メッセージの制御用キュー293に送信要求を記録する。   When the process 18 that has completed the preparation of the transmission data 17 calls the transmission function 191 specifying the address and size of the transmission data area with arguments, the transmission function 191 sends a transmission request control message 31 to the calculation node 2. The transmission data 17 is copied to the communication buffer 190. Upon receiving the transmission request control message 31, the network adapter 26 of the computing node 2 records the transmission request in the control message control queue 293 provided on the main memory 25.

次に、受信バッファ27の準備が終わったプロセス28が、受信バッファ27のアドレスとサイズを引数で指定して受信関数292を呼び出すと、受信関数292は受信要求の制御メッセージ32を計算ノード1に送出する。受信要求の制御メッセージ32を受けた計算ノード1のネットワークアダプタ16は、主記憶15上に設けられる制御メッセージの制御用キュー193に受信要求を記録する。   Next, when the process 28 that has completed the preparation of the reception buffer 27 calls the reception function 292 by specifying the address and size of the reception buffer 27 with arguments, the reception function 292 sends the control message 32 of the reception request to the calculation node 1. Send it out. Upon receiving the reception request control message 32, the network adapter 16 of the computing node 1 records the reception request in the control message control queue 193 provided on the main memory 15.

送信関数191は、送信データ17の通信バッファ190へのコピー終了後、制御用キュー193を調べて、送信要求の制御メッセージ31に対応する受信要求の制御メッセージ32が到着しているかどうかを確認する。到着している場合は、通信バッファ190から計算ノード2の通信バッファ290への計算ノード1,2間のデータ転送メッセージ33を、ネットワークアダプタ16に対して起動する。そして、受信完了した時点で、受信完了の制御メッセージ34を計算ノード1に通知する。   After the copy of the transmission data 17 to the communication buffer 190 is completed, the transmission function 191 checks the control queue 193 to confirm whether the reception request control message 32 corresponding to the transmission request control message 31 has arrived. . If it has arrived, a data transfer message 33 between the calculation nodes 1 and 2 from the communication buffer 190 to the communication buffer 290 of the calculation node 2 is activated for the network adapter 16. When the reception is completed, the control node 34 is notified of the reception completion control message 34.

一方、受信要求の制御メッセージ32が到着していない場合は、送信側のプロセス18に対して受信側のプロセス28の実行が遅れていることを意味し、送信関数191が受信要求の制御メッセージ32の到着を確認した時点でリターンする同期型のとき、計算ノード1のプロセッサコア111あるいは112は制御用キュー193をポーリングするループに入り、実質的な演算処理は行われない。   On the other hand, if the reception request control message 32 has not arrived, it means that the execution of the reception side process 28 is delayed with respect to the transmission side process 18, and the transmission function 191 indicates that the reception request control message 32 is delayed. The processor core 111 or 112 of the computation node 1 enters a loop for polling the control queue 193, and no substantial arithmetic processing is performed.

そこで、並列プログラム実行の電力効率を向上するため、送信関数191は、FV制御ユニット10に対し、自らが動作する計算ノード1のプロセッサコア111,112を省電力モードに移行する命令を発行する。ここでは、移行する省電力モードを通信制御ソフトウェアの環境設定として指定可能としてもよく、また、受信要求の制御メッセージ32が到達していないことを確認してから省電力制御を行うまでに一定の待ち時間を設け、この待ち時間を通信制御ソフトウェアの環境設定として指定可能としてもよい。   Therefore, in order to improve the power efficiency of the parallel program execution, the transmission function 191 issues an instruction to the FV control unit 10 to shift the processor cores 111 and 112 of the computation node 1 on which it operates to the power saving mode. Here, the power saving mode to be transferred may be specified as the environment setting of the communication control software, and a certain amount of time from when it is confirmed that the reception request control message 32 has not arrived until the power saving control is performed. A waiting time may be provided, and this waiting time may be designated as an environment setting of the communication control software.

<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 register group 101 that instructs the FV control unit 10 to shift to the power saving mode and the register group 163 that sets the return condition to the normal power mode in the network adapter 16. The FV control unit 10 shifts to the power mode corresponding to the register when the logical block set in the register 102 is written in any of the register groups 101. The power saving control instruction in the FV control unit 10 may be realized by setting an instruction code in one instruction register. Alternatively, a logical block to be controlled may be specified for each register group 101 by a bitmap.

移行する省電力モードが、電源電圧と動作周波数を低下するモード(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 transmission function 191 continues to check the control message 32 of the reception request, and has been confirmed. At this point, an instruction is issued to the FV control unit 10 to return the calculation node 1 to the normal power supply voltage and operating frequency, and then return to continue the execution of the process 18.

移行する省電力モードが、プロセッサコア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 processor cores 111 and 112 is zero (power off) or a mode in which the operating frequency is zero (clock stop), the operation of the transmission function 191 is also stopped. After the conditions necessary for characterizing the control message 32 of the reception request are set in the network adapter 16, the mode shifts to the power saving mode. The network adapter 16 passes a message arriving from the inter-node network 5 to the return determination unit 161, and confirms the arrival of the reception request control message 32 and issues a return command to the normal power mode for the FV control unit 10.

<通常電力モードへの復帰条件設定のレジスタ群>
図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 registers 40 to 49 indicating conditions regarding a plurality of words of the message packet. The register 40 indicating the condition relating to each word is composed of a valid bit 401, a condition number 402, a word number 403, a bit mask 404, and word data 405. The value of the valid bit 401 is 1, and from the head of the message packet As for the word of the message packet whose number of words is the value of the word number 403, it is determined to be true when the data of the bit whose value of the bit mask 404 is 0 matches the value of the word data 405. Similarly, the registers 41 to 49 include valid bits 411 to 491, condition numbers 412 to 492, word numbers 413 to 493, bit masks 414 to 494, and word data 415 to 495.

複数のワードに関する条件を示すレジスタ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 registers 40 to 49 indicating conditions related to a plurality of words is true Issue a return command to power mode. This condition may be a necessary condition that characterizes the reception request control message 32, and it is not necessary to set a necessary and sufficient condition for strictly specifying the reception request control message 32 corresponding to the transmission request control message 31. Good.

また、通常電力モードへの復帰にあたっては、受信要求の制御メッセージ32の到着に伴いネットワークアダプタ16からプロセッサコア111あるいは112へ受信割り込みを発生するようにして、割り込み発生をFV制御ユニット10が監視して、プロセッサコア111,112を通常電力モードへ復帰するように実現してもよい。   Further, when returning to the normal power mode, the FV control unit 10 monitors the occurrence of an interrupt by generating a reception interrupt from the network adapter 16 to the processor core 111 or 112 upon arrival of the reception request control message 32. Thus, the processor cores 111 and 112 may be realized to return to the normal power mode.

<計算ノード間でのデータの複製(送信関数に対して受信関数の呼び出しが先行)>
図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 process 28 of the calculation node 2 calls the reception function 292, and then the process 18 of the calculation node 1 calls the transmission function 191. It is explanatory drawing which shows an example of the message which the function 292 passes between the calculation nodes 1 and 2. FIG. The reception function 292 is of a blocking type that returns when the data received in the reception buffer 27 has been written.

受信バッファ27の準備が終わったプロセス28が、受信バッファのアドレスとサイズを引数で指定して受信関数292を呼び出すと、受信関数292は受信要求の制御メッセージ32を計算ノード1に送出する。   When the process 28 having completed the preparation of the reception buffer 27 calls the reception function 292 by specifying the address and size of the reception buffer with arguments, the reception function 292 sends a control message 32 of the reception request to the calculation node 1.

次に、送信データ17の準備が終わったプロセス18が、送信データ領域のアドレスとサイズを引数で指定して送信関数191を呼び出すと、送信関数191は送信要求の制御メッセージ31を計算ノード2に送出する。送信要求の制御メッセージ31を受けた計算ノード2のネットワークアダプタ26は、主記憶25上に設けられる制御メッセージの制御用キュー293に送信要求を記録する。   Next, when the process 18 that has completed the preparation of the transmission data 17 calls the transmission function 191 specifying the address and size of the transmission data area with arguments, the transmission function 191 sends the control message 31 of the transmission request to the calculation node 2. Send it out. Upon receiving the transmission request control message 31, the network adapter 26 of the computing node 2 records the transmission request in the control message control queue 293 provided on the main memory 25.

送信関数191は、送信データ17の通信バッファ190へのコピー終了後、制御用キュー193を調べて、送信要求の制御メッセージ31に対応する受信要求の制御メッセージ32が到着していることを確認し、通信バッファ190から計算ノード2の通信バッファ290への計算ノード1,2間のデータ転送メッセージ33を、ネットワークアダプタ16に対して起動する。受信関数292は、転送されたデータを通信バッファ290から受信バッファ27へコピーする。   The transmission function 191 checks the control queue 193 after the copy of the transmission data 17 to the communication buffer 190 is completed, and confirms that the reception request control message 32 corresponding to the transmission request control message 31 has arrived. The data transfer message 33 between the calculation nodes 1 and 2 from the communication buffer 190 to the communication buffer 290 of the calculation node 2 is activated to the network adapter 16. The reception function 292 copies the transferred data from the communication buffer 290 to the reception buffer 27.

従って、受信関数292が受信要求の制御メッセージ32を送出した時点で、送信要求の制御メッセージ31が到着していない場合は、受信側のプロセス28に対して送信側のプロセス18の実行が遅れていることを意味し、受信関数292がブロッキング型のとき、計算ノード2のプロセッサコア211あるいは212は制御用キュー293をポーリングするループに入り、実質的な演算処理は行われない。   Accordingly, when the reception request control message 31 has not arrived at the time when the reception function 292 sends out the reception request control message 32, the execution of the transmission side process 18 is delayed with respect to the reception side process 28. When the reception function 292 is a blocking type, the processor core 211 or 212 of the calculation node 2 enters a loop for polling the control queue 293, and no substantial arithmetic processing is performed.

そこで、並列プログラム実行の電力効率を向上するため、受信関数292は、FV制御ユニット20に対し、自らが動作する計算ノード2のプロセッサコア211,212を省電力モードに移行する命令を発行する。ここでは、移行する省電力モードを通信制御ソフトウェアの環境設定として指定可能としてもよく、また、送信要求の制御メッセージ31が到達していないことを確認してから省電力制御を行うまでに一定の待ち時間を設けて、この待ち時間を通信制御ソフトウェアの環境設定として指定可能としてもよい。   Therefore, in order to improve the power efficiency of the parallel program execution, the reception function 292 issues an instruction to the FV control unit 20 to shift the processor cores 211 and 212 of the computation node 2 on which it operates to the power saving mode. Here, the power saving mode to be transferred may be specified as the environment setting of the communication control software, and a certain amount of time is required from when it is confirmed that the transmission request control message 31 has not arrived until the power saving control is performed. A waiting time may be provided, and this waiting time may be designated as an environment setting of the communication control software.

移行する省電力モードが、受信関数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 control message 31 of the transmission request are set as the network adapter. After setting to 26, the mode shifts to the power saving mode. The network adapter 26 passes a message arriving from the inter-node network 5 to the return determination unit 261, confirms the arrival of the transmission request control message 31, and issues a return instruction to the FV control unit 20 to return to the normal power mode.

<集団通信関数>
ところで、プロセスレベルで並列化されたプログラムの多くにおいて、複数のプロセスにまたがってブロードキャスト、全対全通信、総和などの操作を行う、集団通信関数が使用される。集団通信に参加するプロセスグループの全てのプロセスは、送信バッファおよび受信バッファ双方の引数を指定して集団通信関数を呼び出し、集団通信関数の内部において、送信先の計算ノードあるいは受信元の計算ノードを集団通信の種類に応じたパターンで変化させながら、複数回の送信および受信が行われる。
<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 processes 18, 28, 38, and 48 operating in the calculation nodes 1 to 4 when the calculation nodes 1 to 4 are configured in addition to the calculation nodes 1 and 2. FIG. 10 is an explanatory diagram showing an example of use of a transmission function and a reception function by a collective communication function that performs all-to-all communication, which is an operation in which each process sends its own data to all processes. Here, there is a variation in the execution time of each process, and the call times of the collective communication functions 1C, 2C, 3C, and 4C are different. Further, 12S, 13S, 21S, 24S, 34S, 31S, 43S, and 42S indicate transmission functions, and correspond to each, and 12R, 13R, 21R, 24R, 34R, 31R, 43R, and 42R indicate reception functions.

前記全対全通信は、まず、計算ノード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 compute nodes 1 and 2, and between compute nodes 3 and 4, and then between compute nodes 1 and 3 and compute nodes 2 and 4. Is achieved by exchanging data between them. In the process 18 of the calculation node 1, first, the data of the own process is sent to the process 28 by the transmission function 12S to the calculation node 2, and the data of the process 28 is received by the reception function 21R from the calculation node 2. Next, the data of the own process and the process 28 are sent to the process 38 by the transmission function 13S to the calculation node 3, and the data of the processes 38 and 48 are received by the reception function 31R from the calculation node 3.

図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 process 28 is delayed with respect to the process 18, the power saving control described above for the processor core of the calculation node 1 can be applied in the transmission function 12S. Since the execution of the process 38 is delayed with respect to the process 48, the power saving control for the processor core of the calculation node 4 can be applied in the reception function 34R. Further, since the end of data exchange between the calculation nodes 1 and 2 is delayed with respect to the end of data exchange between the calculation nodes 3 and 4, the processor cores of the calculation nodes 3 and 4 in the reception functions 13R and 24R. The power saving control described above can be applied.

2つの計算ノード間でのデータ交換を行う場合に、同期型の送信関数を用いることにより、図6における送信関数12Sおよび受信関数12Rは、プロセス18とプロセス28の実行時間のずれを吸収する。従って、引き続いて行われる逆方向の送信関数21Sおよび受信関数21Rについては、効果の小さい省電力制御を適用しないことにより、実行時間の増大を抑えることができる。   When exchanging data between two computation nodes, the transmission function 12S and the reception function 12R in FIG. 6 absorb the time difference between the execution time of the process 18 and the process 28 by using a synchronous transmission function. Therefore, with respect to the transmission function 21S and the reception function 21R in the reverse direction that are subsequently performed, an increase in execution time can be suppressed by not applying power saving control with a small effect.

同様に、2つの計算ノード間でのデータ交換を行う場合に、ブロッキング型の受信関数を用いることにより、図6における受信関数34Rおよび送信関数34Sが、プロセス38とプロセス48の実行時間のずれは吸収するため、送信関数43Sおよび受信関数43Rについては省電力制御を適用せず、実行時間の増大を抑えることができる。   Similarly, when data is exchanged between two computation nodes, the reception function 34R and the transmission function 34S in FIG. Therefore, power saving control is not applied to the transmission function 43S and the reception function 43R, and an increase in execution time can be suppressed.

<ノンブロッキング型の送信関数と受信関数>
ところで、プロセスレベルで並列化されたプログラムの実行時間を短縮するため、あるいは、各プロセスが非同期に動作する場合に、送信あるいは受信の起動のみを行ってリターンする、ノンブロッキング型の送信関数、受信関数を使用する場合がある。
<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 process 18 operating on the computing node 1 to the process 28 operating on the computing node 2 and a communication example for shortening the execution time by overlapping the arithmetic processing. It is explanatory drawing. Here, 1NS indicates a non-blocking transmission function call, and correspondingly, 1WS indicates a transmission completion function call, and 1ES indicates a transmission completion function return. In addition, 2NR indicates a non-blocking reception function call, and 2WR indicates a reception completion function call, and 2ER indicates a reception completion function return.

図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 process 18 is issued prior to the reception activation by the process 28. The process 18 having completed the preparation of transmission data performs a non-blocking transmission function call 1NS to start transmission. The non-blocking transmission function sends a transmission request control message 31 shown in FIG. 2 to the calculation node 2 and starts copying the transmission data 17 to the communication buffer 190. The network adapter 26 of the computation node 2 that has received the transmission request control message 31 records the transmission request in the control message control queue 293.

ノンブロッキング型の送信関数は、送信データ17のコピー完了を待つことなくリターンし、プロセス18は演算処理を続行した後、送信完了関数の呼出し1WSを行う。   The non-blocking type transmission function returns without waiting for the completion of copying of the transmission data 17, and the process 18 continues the arithmetic processing and then calls the transmission completion function 1WS.

一方、計算ノード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 process 28 of the computation node 2 performs a non-blocking reception function call 2NR and starts reception. The non-blocking type reception function sends the control message 32 of the reception request shown in FIG. 2 to the calculation node 1 and returns, and in parallel with the subsequent data reception by the network adapter 26, the processor core performs arithmetic processing. To continue. Upon receiving the reception request control message 32, the network adapter 16 of the computing node 1 records the reception request in the control message control queue 193.

前記の送信完了関数は、制御用キュー193をポーリングするループに入り、受信要求の制御メッセージ32の到着を待つ。従って、送信完了関数の呼出し1WSから受信要求32の到着までの間、計算ノード1において実質的な演算処理は行われない。   The transmission completion function enters a loop for polling the control queue 193 and waits for the reception request control message 32 to arrive. Therefore, no substantial arithmetic processing is performed in the calculation node 1 from the call 1WS of the transmission completion function to the arrival of the reception request 32.

そこで、送信完了関数は、呼出し1WSにおいて受信要求の制御メッセージ32が未到着の場合、FV制御ユニットに対し、自らが動作する計算ノード1のプロセッサコアを省電力モードに移行する命令を発行する。ここでは、移行する省電力モードを通信制御ソフトウェアの環境設定として指定可能としてもよく、また、受信要求の制御メッセージ32が到達していないことを確認してから省電力制御を行うまでに一定の待ち時間を設けて、この待ち時間を通信制御ソフトウェアの環境設定として指定可能としてもよい。   Therefore, when the reception request control message 32 has not arrived in the call 1WS, the transmission completion function issues an instruction to the FV control unit to shift the processor core of the computing node 1 on which it operates to the power saving mode. Here, the power saving mode to be transferred may be specified as the environment setting of the communication control software, and a certain amount of time from when it is confirmed that the reception request control message 32 has not arrived until the power saving control is performed. A waiting time may be provided, and this waiting time may be designated as an environment setting of the communication control software.

図7(b)は、プロセス28による受信起動が、プロセス28による送信起動に対して先行して発行される場合である。受信バッファを確保したプロセス28は、ノンブロッキング型の受信関数の呼出し2NRを行い、受信を起動する。ノンブロッキング型の受信関数は、図5に示される、受信要求の制御メッセージ32を計算ノード1に送出する。   FIG. 7B shows a case where the reception activation by the process 28 is issued prior to the transmission activation by the process 28. The process 28 that has secured the reception buffer performs a non-blocking reception function call 2NR and starts reception. The non-blocking reception function sends a reception request control message 32 shown in FIG.

ノンブロッキング型の受信関数は、データの受信を待つことなくリターンし、プロセス28は演算処理を続行した後、受信完了関数の呼出し2WRを行う。   The non-blocking reception function returns without waiting for the reception of data, and the process 28 continues the arithmetic processing and then calls the reception completion function 2WR.

一方、計算ノード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 process 18 of the calculation node 1 performs a non-blocking transmission function call 1NS to start transmission. The non-blocking transmission function sends a transmission request control message 31 shown in FIG. The network adapter 26 of the computation node 2 that has received the transmission request control message 31 records the transmission request in the control message control queue 293.

前記の受信完了関数は、制御用キュー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 control message 31 for the transmission request. Therefore, no substantial arithmetic processing is performed in the calculation node 2 from the call 2WR of the reception completion function until the arrival of the transmission request control message 31.

そこで、受信完了関数は、呼出し2WRにおいて送信要求の制御メッセージ31が未到着の場合、FV制御ユニットに対し、自らが動作する計算ノード2のプロセッサコアを省電力モードに移行する命令を発行する。ここでは、移行する省電力モード、あるいは、省電力制御を行うまでの待ち時間を通信制御ソフトウェアの環境設定として指定可能としてもよい。   Therefore, when the transmission request control message 31 has not arrived in the call 2WR, the reception completion function issues an instruction to the FV control unit to shift the processor core of the computation node 2 on which it operates to the power saving mode. Here, the power saving mode to be transferred or the waiting time until the power saving control is performed may be designated as the environment setting of the communication control software.

なお、図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 transmission data 17 is used when the transmission function used is not a synchronous type but a blocking type. However, when the memory copy to the communication buffer 190 is completed and the transmission data area can be overwritten, the process can return without waiting for the start of data transfer to the computation node 2. Since the process 18 can continue the process without depending on the execution status of the process 28 of the remote computing node 2, it is not necessary to shift to the power saving mode.

ノンブロッキング型の送信関数で起動した通信の送信完了関数においても、前記と同じく遠隔の計算ノードの実行状況に依存せずに処理を続行できるため、省電力モードへの移行を行う必要はない。   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 transmission function 191 and the reception function 292, when the amount of data transferred by one transmission and reception is larger than the threshold values 194 and 294, the network adapter 16 directly reads the transmission data 17, It is explanatory drawing which shows the system in which the data transferred to the calculation node 2 writes the data directly to the receiving buffer 27 by the network adapter 26.

このとき、受信関数292の呼出しに対して時間的に先行して呼び出される、ブロッキング型の送信関数191、あるいは、ノンブロッキング型で起動した通信の送信完了関数は、ネットワークアダプタ16が全ての送信データ17を読み出し完了するまで、リターンしない。従って、FV制御ユニットに対し、自らが動作する計算ノード1のプロセッサコアを省電力モードに移行する命令を発行することができる。また、ネットワークアダプタ16が送信データ17の読み出しを行うため、プロセッサコアの省電力モードから通常電力モードへの復帰するタイミングを、送信データ17の読み出し完了時とすることにより、省電力モードの適用時間を延長することができる。   At this time, the blocking type transmission function 191 or the transmission completion function of the communication started in the non-blocking type, which is called in advance with respect to the calling of the reception function 292, is the network adapter 16 that transmits all the transmission data 17. Does not return until the reading is complete. Therefore, it is possible to issue an instruction to shift the processor core of the computation node 1 on which the FV control unit operates to the power saving mode. In addition, since the network adapter 16 reads the transmission data 17, the application time of the power saving mode is determined by setting the timing when the processor core returns from the power saving mode to the normal power mode when the reading of the transmission data 17 is completed. Can be extended.

さらに、受信側の計算ノード2において、ネットワークアダプタ26が受信バッファ27へ書き込みを行うため、プロセッサコアの省電力モードから通常電力モードへの復帰するタイミングを、受信バッファ27への書き込み完了時とすることにより電力効率を向上させることができる。   Furthermore, since the network adapter 26 writes to the reception buffer 27 in the calculation node 2 on the reception side, the timing when the processor core returns from the power saving mode to the normal power mode is the time when the writing to the reception buffer 27 is completed. Thus, power efficiency can be improved.

<本実施の形態の効果>
以上で説明したように、本実施の形態によれば、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 network adapters 16 and 26 and the inter-node network 5 are networks that are not used for communication with an external system and are occupied by the communication function, there is no information to be processed in the network adapter 16 or 26, and a certain period of time. If there is no writing, it shifts itself to the power saving mode, and returns to the normal power mode when information for transmission or reception is written.

主記憶15あるいは25は、通信関数からの制御による、プロセッサコア111,112あるいは211,212に対する省電力制御と合わせて、省電力モードへの移行および通常電力モードへの復帰を行うことができる。   The main memory 15 or 25 can shift to the power saving mode and return to the normal power mode together with the power saving control for the processor cores 111, 112 or 211, 212 by control from the communication function.

図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 level 1 and level 2 cache memories 231, 232 and 24 in the reception side calculation node 2 with respect to the level 1 and level 2 cache memories 131, 132 and 14 of the transmission side calculation node 1 Cache memory 231, 232, and 24 in the calculation node 2 on the receiving side saves the area of the reception buffer 27 in the blocking-type reception function from the cache purge to the return. It is possible to shift to the power mode.

送信データ17が、ローカルメモリ121あるいは122に準備されて、キャッシュメモリとは独立なローカルメモリ間でデータ送信が行われる場合、送信側の計算ノード1におけるキャッシュメモリ131,132および14は、ブロッキング型の送信関数において、計算ノード1から2へのデータ転送を開始してから送信関数がリターンするまでの間、省電力モードへ移行させることができる。   When the transmission data 17 is prepared in the local memory 121 or 122 and data transmission is performed between the local memories independent of the cache memory, the cache memories 131, 132 and 14 in the calculation node 1 on the transmission side are blocked. In this transmission function, it is possible to shift to the power saving mode from the start of data transfer from the calculation nodes 1 to 2 until the transmission function returns.

受信バッファ27が、ローカルメモリ221あるいは222に準備されて、キャッシュメモリとは独立なローカルメモリ間でデータ受信が行われる場合、受信側の計算ノード2におけるキャッシュメモリ231,232および24は、ブロッキング型の受信関数において、計算ノード1から2へのデータ転送が開始されてから受信関数がリターンするまでの間、省電力モードへ移行させることができる。   When the reception buffer 27 is prepared in the local memory 221 or 222 and data is received between the local memories independent of the cache memory, the cache memories 231, 232, and 24 in the calculation node 2 on the reception side are blocking types. In the reception function, it is possible to shift to the power saving mode from when the data transfer from the calculation node 1 to 2 is started until the reception function returns.

<管理者権限とユーザ権限>
ところで、本発明における特徴の一つに、計算ノード内の資源管理を行うオペレーティングシステムが管理者権限で省電力制御を行うのではなく、ユーザ権限で実行される通信関数の内部で省電力制御を行うことがある。省電力モードへの移行を伴うユーザプログラム実行と並行して、オペレーティングシステムが優先度の高い処理を実行している場合には、ユーザ権限での省電力制御に対して管理者権限での省電力制御を優先させる必要がある。
<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 FV control unit 10 is separately provided with a power saving control register 103 that can set a value only in a privilege mode with administrator authority and a register 104 that sets a control target logical block. . Here, when a value is set in the power saving control register 103 by the administrator authority, the power saving control from the user program cannot be performed.

<システムオンチップ>
本発明の実現の一形態として、複数チップを積層する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 multi-core processor chips 51 and 52, the memory chips 61 and 62, and the interface chip 71 are connected by the three-dimensional connection buses 81 to 84. Although not limited thereto, for example, in correspondence with FIG. 1, the multi-core processor chips 51 and 52 are provided with a processor core and a level 1 cache memory, and the memory chips 61 and 62 are provided with main memory and local memory. A level 2 cache memory is provided, and the interface chip 71 is provided with a network adapter and an FV control unit.

キャッシュメモリのコヒーレンス制御が及ぶ適用範囲が、メモリチップ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 memory chips 61 and 62. In the calculation node of FIG. Since the cache memory on the multi-core processor chip 51 is not affected by the main memory access by the core operating in the other multi-core processor chip 52 when the core shifts to the power saving mode in which the operation is stopped, the power-saving mode is not affected. Can be migrated to. For example, when processing other than the communication function performed on the multicore processor chip 52 is not performed, the cache memory on the multicore processor chip 52 may be subjected to coherence control by main memory access of the communication function. While the operation is not stopped, the power saving mode is applied to the cache memory on the multi-core processor chip 51 to stop the operation.

図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 multi-core processor chip 51 or 52 having a processor core and a cache memory associated therewith. The cache memory can be shifted to the power saving mode according to the range covered by.

以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。   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.

本発明の情報処理システムの一実施の形態である並列計算機システムの構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the parallel computer system which is one Embodiment of the information processing system of this invention. 本発明の情報処理システムの一実施の形態において、送信関数の呼び出しが受信関数の呼び出しに対して時間的に先行する場合に計算ノード間で渡されるメッセージの一例を示す説明図である。FIG. 6 is an explanatory diagram illustrating an example of a message passed between calculation nodes when a transmission function call precedes a reception function call in time in an embodiment of the information processing system of the present invention. 本発明の情報処理システムの一実施の形態において、省電力モードへの移行命令および通常電力モードへの復帰条件を設定するレジスタ群の一例を示す構成図である。FIG. 5 is a configuration diagram illustrating an example of a register group that sets a command to shift to a power saving mode and a condition for returning to a normal power mode in an embodiment of the information processing system of the present invention. 本発明の情報処理システムの一実施の形態において、通常電力モードへの復帰条件を設定するレジスタ群の一例を示す構成図である。It is a block diagram which shows an example of the register | resistor group which sets the return conditions to normal power mode in one Embodiment of the information processing system of this invention. 本発明の情報処理システムの一実施の形態において、送信関数の呼び出しに対して受信関数の呼び出しが時間的に先行する場合に計算ノード間で渡されるメッセージの一例を示す説明図である。In one embodiment of the information processing system of this invention, it is explanatory drawing which shows an example of the message passed between calculation nodes when the call of a reception function precedes the call of a transmission function temporally. 本発明の情報処理システムの一実施の形態において、全対全通信を行う集団通信関数による送信関数および受信関数の使用例を示す説明図である。It is explanatory drawing which shows the usage example of the transmission function by the collective communication function which performs all-to-all communication, and the reception function in one Embodiment of the information processing system of this invention. 本発明の情報処理システムの一実施の形態において、演算処理とオーバーラップするノンブロッキング型の通信例(a),(b)を示す説明図である。It is explanatory drawing which shows the non-blocking type | mold communication example (a), (b) which overlaps with a calculation process in one Embodiment of the information processing system of this invention. 本発明の情報処理システムの一実施の形態において、ネットワークアダプタが送信データおよび受信バッファを直接アクセスする方式を示す説明図である。In one embodiment of the information processing system of this invention, it is explanatory drawing which shows the system in which a network adapter directly accesses transmission data and a reception buffer. 本発明の情報処理システムの一実施の形態において、管理者権限でのみセットできるレジスタを分離した省電力制御レジスタの構成の一例を示す構成図である。It is a block diagram which shows an example of a structure of the power saving control register which isolate | separated the register which can be set only with an administrator authority in one Embodiment of the information processing system of this invention. 本発明の情報処理システムの一実施の形態において、マルチコアプロセッサチップとメモリチップを積層したシステムオンチップの一例を示す説明図である。In an embodiment of an information processing system of the present invention, it is an explanatory diagram showing an example of a system-on-chip in which a multi-core processor chip and a memory chip are stacked.

符号の説明Explanation of symbols

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 Calculation nodes 5 Inter-node network 10, 20 FV control unit (frequency / power supply voltage control unit)
101 Register Group 102 Register 103 Power Saving Control Register 104 Register 111, 112, 211, 212 Processor Core 121, 122, 221, 222 Local Memory 131, 132, 231, 232 Level 1 Cache Memory 14, 24 Level 2 Cache Memory 15, 25 Main memory 16, 26 Network adapter 17 Transmission data 27 Reception buffer 161, 261 Return determination unit 162, 262 DMA controller 163 Register group 18, 28, 38, 48 Process 190, 290 Communication buffer 191 Transmission function 292 Reception function 193, 293 Control queue 194, 294 Threshold value 31 Transmission request control message 32 Reception request control message 33 Data transfer message 34 Reception completion control message 0-49 registers 401-491 enable bits 402-492 condition number 404-494 bitmask 405-495 word data 51, 52 multi-core processor chip 61 memory chip 71 interface chip 81 to 84 three-dimensional connection bus

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に記載の情報処理システムにおいて、
前記第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.
請求項2に記載の情報処理システムにおいて、
前記通信制御ソフトウェアは、MPI通信ライブラリであることを特徴とする情報処理システム。
The information processing system according to claim 2,
The information processing system, wherein the communication control software is an MPI communication library.
請求項2に記載の情報処理システムにおいて、
前記送信関数、前記送信完了関数、および、前記集団通信関数の各関数は、プログラム開発者が記述する指示文によって、移行する省電力モードおよび対象ブロックを変更可能であり、プログラムの処理内容に応じて、消費電力の削減量と、省電力モードへの移行および復帰にかかる実行時間の増加を制御することを特徴とする情報処理システム。
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に記載の情報処理システムにおいて、
前記第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.
請求項5に記載の情報処理システムにおいて、
前記周波数・電源電圧制御ユニットは、省電力モードへの移行を制御するレジスタ群を備え、
前記周波数・電源電圧制御ユニットに備える省電力モードへの移行を制御するレジスタ群と、前記ネットワークアダプタに備える通常の電力モードへ復帰する際の条件を設定するレジスタ群とは、前記通信制御ソフトウェアから設定できるレジスタ群と、オペレーティングシステムが特権モードで省電力制御を行うレジスタ群とに分離して備えることを特徴とする情報処理システム。
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の計算ノードは、複数のプロセッサコアと各プロセッサコアに付随するキャッシュメモリと主記憶とを統合して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.
請求項8に記載の情報処理システムにおいて、
前記第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.
請求項9に記載の情報処理システムにおいて、
前記通信制御ソフトウェアは、MPI通信ライブラリであることを特徴とする情報処理システム。
The information processing system according to claim 9,
The information processing system, wherein the communication control software is an MPI communication library.
請求項9に記載の情報処理システムにおいて、
前記受信関数、前記受信完了関数、および、前記集団通信関数の各関数は、プログラム開発者が記述する指示文によって、移行する省電力モードおよび対象ブロックを変更可能であり、プログラムの処理内容に応じて、消費電力の削減量と、省電力モードへの移行および復帰にかかる実行時間の増加を制御することを特徴とする情報処理システム。
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.
請求項8に記載の情報処理システムにおいて、
前記第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.
請求項12に記載の情報処理システムにおいて、
前記周波数・電源電圧制御ユニットは、省電力モードへの移行を制御するレジスタ群を備え、
前記周波数・電源電圧制御ユニットに備える省電力モードへの移行を制御するレジスタ群と、前記ネットワークアダプタに備える通常の電力モードへ復帰する際の条件を設定するレジスタ群とは、前記通信制御ソフトウェアから設定できるレジスタ群と、オペレーティングシステムが特権モードで省電力制御を行うレジスタ群とに分離して備えることを特徴とする情報処理システム。
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.
請求項8に記載の情報処理システムにおいて、
前記第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.
請求項15に記載の情報処理システムにおいて、
前記第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.
請求項16に記載の情報処理システムにおいて、
前記送信関数、前記受信関数、前記送信完了関数、前記受信完了関数、および、前記集団通信関数の各関数は、プログラム開発者が記述する指示文によって、移行する省電力モードおよび対象ブロックを変更可能であり、プログラムの処理内容に応じて、消費電力の削減量と、省電力モードへの移行および復帰にかかる実行時間の増加を制御することを特徴とする情報処理システム。
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.
請求項15に記載の情報処理システムにおいて、
前記第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.
請求項18に記載の情報処理システムにおいて、
前記周波数・電源電圧制御ユニットは、省電力モードへの移行を制御するレジスタ群を備え、
前記周波数・電源電圧制御ユニットに備える省電力モードへの移行を制御するレジスタ群と、前記ネットワークアダプタに備える通常の電力モードへ復帰する際の条件を設定するレジスタ群とは、前記通信制御ソフトウェアから設定できるレジスタ群と、オペレーティングシステムが特権モードで省電力制御を行うレジスタ群とに分離して備えることを特徴とする情報処理システム。
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.
請求項15に記載の情報処理システムにおいて、
前記第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.
JP2008309982A 2008-12-04 2008-12-04 Information processing system Pending JP2010134698A (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (10)

* Cited by examiner, † Cited by third party
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
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
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
Wong et al. Push-Pull Messaging: a high-performance communication mechanism for commodity SMP clusters
US20240160468A1 (en) Server delay control device, server delay control method, and program
WO2023218596A1 (en) Intra-server delay control device, intra-server delay control method, and program
Liu et al. Inter-Core Communication Mechanisms for Microkernel Operating System based on Signal Transmission and Shared Memory
WO2012117445A1 (en) Information processing system