JP6073955B2 - 複数の論理コアの実装を可能にするマイクロプロセッサのスタンバイの管理を最適化するための方法およびそのような方法を実行するコンピュータプログラム - Google Patents
複数の論理コアの実装を可能にするマイクロプロセッサのスタンバイの管理を最適化するための方法およびそのような方法を実行するコンピュータプログラム Download PDFInfo
- Publication number
- JP6073955B2 JP6073955B2 JP2015078235A JP2015078235A JP6073955B2 JP 6073955 B2 JP6073955 B2 JP 6073955B2 JP 2015078235 A JP2015078235 A JP 2015078235A JP 2015078235 A JP2015078235 A JP 2015078235A JP 6073955 B2 JP6073955 B2 JP 6073955B2
- Authority
- JP
- Japan
- Prior art keywords
- logical
- logical cores
- standby
- microprocessor
- cores
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/329—Power saving characterised by the action undertaken by task scheduling
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Power Sources (AREA)
- Hardware Redundancy (AREA)
Description
に高性能計算の関連において、例えば同時マルチスレッディングという名称で知られる技
術を実装するマイクロプロセッサなど、複数の論理コアの実装を可能にするマイクロプロ
セッサのスタンバイの管理を最適化する方法、ならびにそのような方法を実行するコンピ
ュータプログラムに関する。
野において、大学および産業界における研究などのために開発されている。モデル化およ
びシミュレーションが、特により信頼できかつ消費するエネルギーも少ない革新的な製品
の開発コストの削減および商品化を迅速にすることを可能にする。研究技術者にとって、
高性能計算は、不可欠の研究手段となっている。
ラスタは、典型的には、相互接続されたノードの組を備えている。いくつかのノード(計
算ノード)は、計算タスクの実行に使用され、別のノード(ストレージノード)は、デー
タの記憶に使用され、他の1つ以上のノード(管理ノード)が、クラスタを管理する。各
々のノードは、例えばLinux(登録商標)などのオペレーティングシステムを実行す
るサーバである。ノード間の接続は、例えばEthernet(登録商標)またはInf
inibandのリンク(Infinibandは商標である)を使用して行なわれる。
の概略図である。クラスタが、ノード(大まかに105で指し示されている)の組を備え
ている。組110に属するノードが、ここでは計算ノードである一方で、組115のノー
ドは、サービスノード(ストレージノードおよび管理ノード)である。計算ノードを、計
算アイランドと称される下位の組120にグループ化でき、組115は、サービスアイラ
ンドと称される。
が第1のレベルのスイッチ125へと接続され、第1のレベルのスイッチ125が、第2
のレベルのスイッチ130へと接続され、次いで第2のレベルのスイッチ130が、第3
のレベルのスイッチ135へと接続されている。
カルメモリ、および通信インターフェイスを備えている。より具体的には、ここでは、ノ
ード200が通信バス202を備えており、
中央演算ユニット(CPU)またはマイクロプロセッサ204、
プログラムの実行時に生成および変更される変数およびパラメータを記録するように構
成されたレジスタを備えるランダムアクセスメモリ(RAM)206の構成要素(図示の
ように、各々のランダムアクセスメモリ構成要素をマイクロプロセッサに組み合わせるこ
とができる)、ならびに
データの送信および受信を行なうように構成された通信インターフェイス208が通信
バス202へと接続されている。
ハードディスクなどの内部ストレージ手段212をさらに有している。
要素の間の通信および相互運用を可能にしている。マイクロプロセッサ204が、1つ以
上のプログラムのソフトウェアコードの各部のインストラクションの実行を制御および指
揮する。起動時に、例えばハードディスクなどの不揮発メモリに保存された1つ以上のプ
ログラムが、ランダムアクセスメモリ206へと転送される。
合にマルチコアのマイクロプロセッサであり、すなわち並行して使用することができる複
数のコアを備えるマイクロプロセッサである。
が、複数の論理コアを実装するように構成されている。同時マルチスレッディング(ある
いは、Intel(Intelは商標である)の実装によれば、ハイパースレッディング
)と呼ばれるこの技術は、マイクロプロセッサの物理コアにおいて複数の基本プロセス(
スレッドと呼ばれる)を実質的に並列に実行することを可能にする(実行コンテキストが
同時にロードされ、スレッドが実行カーネルを共有する)。したがって、この技術を実装
する物理コアは、通常は物理コアを利用する論理層によってデュアルコアとして認識され
る。
に特有のリソースとを含む。共有されるリソースは、典型的には、実行ユニット、キャッ
シュメモリ、およびバスインターフェイスである。特有のリソースは、特に論理コアのデ
ータおよびインストラクション、セグメント、および制御のためのレジスタ、ならびに割
り込みコントローラ(アドバンスト・プログラマブル・インターラプト・コントローラ(
Advanced Programmable Interrupt Controll
er)を略してAPICと呼ばれる)である。
能の著しい向上を可能にできる一方で、他の用途(特に、科学計算の用途)においては、
性能がほんのわずかしか向上せず、低下することさえあることが明らかになっている。し
たがって、高性能計算に使用されるクラスタにおいては、クラスタのリソースを可能な限
り利用するようにクラスタを最適化するという原理に逆らい、通常は無効にされている。
なくとも2つの論理コアを実装することができ、該少なくとも2つの論理コアに共通の少
なくとも1つのリソースをスタンバイさせるための手段を備えている少なくとも1つのマ
イクロプロセッサに関し、該マイクロプロセッサの少なくとも一部のスタンバイの管理を
最適化するために、前記コンピュータの論理層において実行される方法であって、
前記少なくとも2つの論理コアの各々の所望のスタンバイ状態を決定するステップと、
前記少なくとも2つの論理コアのうちの1つの論理コアの前記所望のスタンバイ状態を
、前記少なくとも2つの論理コアのうちの残りの論理コアの前記所望のスタンバイ状態と
比較するステップと、
前記比較に応答して、前記スタンバイを準備し、さらには/あるいはスタンバイの期間
の後の前記少なくとも2つの論理コアのうちの前記1つの論理コアの復帰を可能にするイ
ンストラクションを開始するステップと
を含む方法に関する。
装することを、マイクロプロセッサの特定のリソースをスタンバイにする機能が使用され
るときの当該マイクロプロセッサの性能を知覚できるほどには低下させずに可能にする。
前記少なくとも2つの論理コアの各々の前記所望のスタンバイ状態に従って、前記マイ
クロプロセッサのスタンバイ状態を推定するステップと、
前記マイクロプロセッサの前記推定したスタンバイ状態を、前記少なくとも2つの論理
コアのうちの前記1つの論理コアの前記所望のスタンバイ状態と比較するステップと
を含んでおり、
前記スタンバイを準備し、さらには/あるいは前記少なくとも2つの論理コアのうちの
前記1つの論理コアの復帰を可能にする前記インストラクションが、前記マイクロプロセ
ッサの前記推定されたスタンバイ状態が前記少なくとも2つの論理コアのうちの前記1つ
の論理コアの前記推定されたスタンバイ状態に一致する場合に開始される。
理コアが実装される場合に抑制される。
理コアの所望のスタンバイ状態の変化を検出するステップをさらに含み、前記比較するス
テップおよび前記インストラクションを開始するステップが、前記少なくとも2つの論理
コアのうちの前記少なくとも1つの論理コアの所望のスタンバイ状態の変化が検出された
場合に限って実行される。この検出ステップは、好ましくは前記論理層が属するオペレー
ティングシステムによって直接実行される。
のマイクロプロセッサであり、前記少なくとも2つの論理コアが、同じ物理コア内に実装
されている。したがって、本発明による方法を、特に高性能計算の関連に適合した高性能
のマイクロプロセッサにおいて実行することができる。
の前記1つの論理コアの前記所望のスタンバイ状態を送信するステップをさらに含み、該
送信するステップが、前記インストラクションを開始するステップの後で実行される。し
たがって、本発明による方法の実施に、使用されるプロセッサのいかなる変更も必要でな
い。
属する。
モードが有効であることを確認する最初のステップを含む。したがって、本発明による方
法が、適切なときにしか実行されない。
モードにもとづく。
るように構成されたインストラクションを含んでいるコンピュータプログラム、ならびに
コンピュータまたはマイクロプロセッサによって部分的または完全に読み取ることができ
、取り外し可能、あるいは取り外し可能ではない、上述の方法の各ステップを実行するた
めのコンピュータプログラムのコードインストラクションを含んでいる情報記憶手段に関
する。
た利点と同様である。
として添付の図面に関連して提示される以下の詳細な説明から、明らかになるであろう。
プロセッサが、論理コアの生成を可能にする同時マルチスレッディング(あるいは、In
tel(Intelは商標である)の実装によれば、ハイパースレッディング)と呼ばれ
る技術を実装している。これらのマイクロプロセッサが使用されるとき、この技術を有効
にでき、あるいは無効にすることができる。
であり、ここではマイクロプロセッサが、それぞれが2つの論理コアを実装する2つの物
理コアを備えており、すなわち高性能計算のアプリケーションの実行において、マイクロ
プロセッサの同時マルチスレッディングが有効にされている。ここでは、各々の物理コア
が、各々の物理コアに実装された異なる実行ユニットのおかげで、同じサイクルにおいて
最大4つのインストラクションを実行することができる。すなわち、2つの論理コアの各
々が、他方のコアによってなされる使用に応じて、最大4つのインストラクションを実行
することができる。コンフリクトの場合には、コンフリクト解決機構が、該当のリソース
を各々の論理コアに交互に帰属させる。
接続されており、システムバス305には、特に通信インターフェイスおよびメモリを接
続することができる。各々の物理コアが、論理コア間で共有される実行ユニットと、各々
の論理コアに特有のインストラクションレジスタとを備えている。
00−1の第1の論理コアへと接続されたインストラクションレジスタ315−11およ
び物理コア300−1の第2の論理コアへと接続されたインストラクションレジスタ31
5−12を備えている。同様に、物理コア300−2が、実行ユニットの組310−2な
らびに物理コア300−2の第1の論理コアへと接続されたインストラクションレジスタ
315−21および物理コア300−2の第2の論理コアへと接続されたインストラクシ
ョンレジスタ315−22を備えている。
のアプリケーションに関するインストラクションの実行へと割り当てられる一方で、同じ
物理コアの他方の論理コアが、好都合には一般的にデーモンと称されるオペレーティング
システムの補助的タスクの実行に関連付けられることに、注意すべきである。結果として
、論理コアへの負荷が、同じ物理コアの他方の論理コアへの負荷よりもはるかに大きくな
る。したがって、典型的には、論理コアへの負荷が100パーセントに近付く一方で、同
じ物理コアの他方の論理コアへの負荷は、およそ5%である。
、高性能計算のアプリケーションが実行されるとき、クラスタの性能が低下することが明
らかになっている。この現象を分析したところ、この性能の低下が、特にプロセッサの特
定の構成要素をスタンバイにする機能の管理に関係していることを示している。本発明は
、それらの機能を改良し、この性能の問題を軽減することを目的とする。
ッサが、それらのリソースの使用に応じて、プロセッサの性能を一時的に大きく低下させ
ることなく一部のリソースを停止させることができるスタンバイ機能を備えていることを
思い出すべきである(一般に、使用されておらず、あるいは少ししか使用されていないリ
ソースだけが該当する)。マイクロプロセッサのコアのスタンバイ状態は、一般に「C状
態(C−state)」と呼ばれ、Ciによって表わされ、ここでiは、ゼロからnまで
変化する指数であり、nは典型的には8に等しい。状態C0において、コアならびにコア
に接続されたすべてのリソースがアクティブである一方で、状態C8においては、コアが
完全なスタンバイにある。中間の状態は、中間的なスタンバイの状態に相当する。例とし
て、物理コアのレベル1のキャッシュメモリ(キャッシュL1と称される)は、物理コア
がスタンバイの状態C3にあるときにスタンバイとなる。
れ、物理コアを備えるマイクロプロセッサへと送信される。次いで、マイクロプロセッサ
が、該当のリソースのスタンバイへの移行を管理し、あるいは対照的に、該当のリソース
のスタンバイの解除を管理する。さらに、マイクロプロセッサに物理コアに関するスタン
バイ状態を送信する前に、オペレーティングシステムは、スタンバイを準備し、さらには
/あるいはスタンバイの終わりにおける物理コアの復帰を可能にするインストラクション
を開始することができる。したがって、例えば、コアがスタンバイ状態C2からスタンバ
イ状態C3へと移行しなければならないとき、該当するレベル1のキャッシュメモリ(キ
ャッシュL1)の中身が、別のメモリ(典型的には、関連のレベル2のキャッシュメモリ
)へとコピーされる。物理コアは、このコピー作業の後でなければ、状態C3へと移行さ
れない。物理コアが状態C3から状態C2へと移行した後で、レベル1のキャッシュメモ
リの中身が、アプリケーションが該当のデータにアクセスするときに徐々に回復される。
き、所望のスタンバイ状態がオペレーティングシステムによって各々の論理コアに組み合
わせられる。この所望のスタンバイ状態は、オペレーティングシステムによって決定され
、マイクロプロセッサへと送信され、次いでマイクロプロセッサが、受信した所望のスタ
ンバイの状態に応じて、特定のリソースをスタンバイに移行させることができる。論理コ
アの所望のスタンバイ状態が、別の論理コアの所望のスタンバイ状態とは異なる場合、マ
イクロプロセッサによって物理コアへと適用されるスタンバイ状態は、最も多くのリソー
スがアクティブとなるスタンバイ状態である。換言すると、2つの論理コアを備える物理
コアのスタンバイ状態Ciは、2つの論理コアの所望のスタンバイ状態がそれぞれCjお
よびCkであるとき、以下の方法で決定される。
の所望のスタンバイ状態に起因して変化することがなくても、スタンバイへの移行を準備
し、さらには/あるいは倫理コアの復帰を可能にするインストラクションを、スタンバイ
への移行に先立って実行することができる。この現象は、論理コアの所望のスタンバイ状
態がオペレーティングシステムによって決定される場合に、物理コアの状態を変化させる
決定が、物理コアを備えるマイクロプロセッサによって、オペレーティングシステムとは
無関係に行なわれるということに起因する。さらに、スタンバイへの移行を準備し、さら
には/あるいは論理コアの後の復帰を可能にするためのインストラクションの実行が、物
理コアを妨げる。したがって、例えば論理コアの所望のスタンバイ状態がC2からC3へ
と移行するとき、レベル1のキャッシュメモリの中身が別のメモリへとコピーされるが、
これが、このレベル1のキャッシュメモリを使用する他の論理コアに関して、レベル1の
キャッシュメモリを妨げる。これが、これらの論理コアの性能の低下につながる。
コアの復帰を可能にするインストラクションを、物理コアの推定されるスタンバイ状態の
みに応じて開始することからなり、すなわち該当の論理コアの所望のスタンバイ状態だけ
によるのではなく、物理コアの各々の論理コアの所望のスタンバイ状態に応じて開始する
ことからなる。換言すると、本発明は、物理コアに実装された論理コアの所望のスタンバ
イ状態に応じた物理コアのスタンバイへの移行の決定のための機構を、オペレーティング
システムにおいて模擬することを目的とする。
るマイクロプロセッサの物理コアを、当該物理コアに実装された各々の論理コアに関する
所望のスタンバイ状態に従ってスタンバイさせるためのプロセスを制御するために、オペ
レーティングシステムによって実行され、あるいはより一般的にはコンピュータの論理層
によって実行されるアルゴリズムの例を示している。
る場合に限って実行されることに、注意すべきである。したがって、最初のステップ(図
示されていない)は、当該モードが有効であることを確認することからなる。
ステップ400)した後で、その所望のスタンバイ状態が、Cj(t−1)(CLr)と
称される先の時刻(t−1)における当該論理コアの所望のスタンバイ状態に対して変化
したか否かを判断するために、試験が実行される(ステップ405)。所望のスタンバイ
状態を見積もり、所望のスタンバイ状態の変化を判断するこれらのステップは、従来から
のシステムにおいて実行されるステップと同様である。それらは、特に、該当の論理コア
によって実行されるべきインストラクションの分析にもとづく。
装される物理コアCPtのスタンバイ状態が推定される(ステップ410)。例として、
推定される物理コアCLtのスタンバイ状態Ci(CPt)は、最も多くのリソースが活
動するスタンバイ状態に相当し、すなわちこの物理コアに実装された論理コアの所望のス
タンバイ状態C0,・・・,nのうちで、指数が最も小さいスタンバイ状態に相当する。
当然ながら、物理コアのスタンバイ状態を推定するためのモデルは、物理コアそのものに
実際に実装されたものに一致していなければならない。
アCPtのスタンバイ状態と同じであるか否かを判断し、すなわち指数iおよびjが同じ
であるかを判断するための試験が実行される(ステップ415)。結果が肯定であり、論
理コアCLrをそれまでのスタンバイ状態よりも深いスタンバイ状態へと移行させるべき
場合、オペレーティングシステム(または、論理層)は、スタンバイを準備し、さらには
/あるいはスタンバイの終了時の論理コアの後の復帰を可能にするためのインストラクシ
ョンを開始する(ステップ420)。このステップは、例えばレジスタの中身をコピーす
る動作を開始させることからなる。その後に、所望のスタンバイ状態Cj(CLr)がプ
ロセッサへと送信され(ステップ425)、プロセッサが、物理コアCPt上に実装され
た残りの論理コアの所望のスタンバイ状態に応じて、この物理コアのスタンバイ状態を変
更し、あるいは変更しない。
のスタンバイ状態と同じでない場合、スタンバイを準備し、さらには/あるいはスタンバ
イの終了時の論理コアCLrの復帰を可能にするためのインストラクションは、マイクロ
プロセッサへと送信されない。しかしながら、図4に示されるとおり、それでもなお論理
コアCLrの所望のスタンバイ状態Cj(CLr)をマイクロプロセッサへと送信するこ
とができるが、このステップは、新たな所望のスタンバイ状態が該当の物理コアのスタン
バイ状態を変更しない場合には不要である。
など、使用されるオペレーティングシステムのカーネルにおいて実行することができる。
このように、論理コアのスタンバイ状態のマイクロプロセッサへの伝達機能を傍受するこ
とによって、当該論理コアを実装する物理コアの推定したスタンバイ状態に応じて、スタ
ンバイを準備し、さらには/あるいは論理コアの復帰を可能にするためのインストラクシ
ョンを、開始したり、あるいは開始しないようにすることができる。推定は、当該物理コ
アに実装されるすべての論理コアの状態にもとづいて行なわれる。
、この論理コアを実装する論理コアの推定によるスタンバイ状態と比較することを目的と
するが、同等の方法で、同じ物理コア上に実装された論理コアの所望のスタンバイ状態同
士を比較して、スタンバイを準備し、さらには/あるいは論理コアの後の復帰を可能にす
るためのインストラクションを、実行すべきか否かを判断することも可能である。
スタンバイ状態が、第2の論理コアの所望のスタンバイ状態と比較される。このようにし
て、第1の論理コアのスタンバイ状態および所望のスタンバイ状態がC1であり、第2の
論理コアのスタンバイ状態がC1であり、第2の論理コアの所望のスタンバイ状態がC2
である場合に、第2の論理コアのスタンバイを準備し、さらには/あるいは後の復帰を可
能にするためのインストラクションは、これらの論理コアが実装される物理コアのスタン
バイ状態が変更されないため、実行されない。対照的に、第1および第2の論理コアのス
タンバイ状態がC1であり、第1および第2の論理コアの所望のスタンバイ状態がC2で
ある場合には、第1および第2の論理コアのスタンバイを準備し、さらには/あるいは後
の復帰を可能にするためのインストラクションが、これらの論理コアが実装される物理コ
アのスタンバイ状態が変更されるため、実行される。
ことができるであろう。
Claims (9)
- コンピュータにおいて、前記コンピュータのマイクロプロセッサであって、少なくとも2つの論理コアを実装することができ、前記少なくとも2つの論理コアに共通の少なくとも1つの物理リソースのスタンバイ及び/又はスタンバイからの復帰を実行するための手段を備えている少なくとも1つのマイクロプロセッサに関し、該マイクロプロセッサの少なくとも一部のスタンバイの管理を最適化するために、前記コンピュータによって、前記コンピュータの論理層において実行される方法であって、
前記少なくとも2つの論理コアの各々のスタンバイ状態に関して所望の状態を決定するステップ(400)と、
前記手段が前記物理リソースのスタンバイ及び/又はスタンバイからの復帰を実行するか否かを推定するために、前記少なくとも2つの論理コアのうちの1つの論理コアの前記所望の状態を、前記少なくとも2つの論理コアのうちの残りの論理コアの前記所望の状態と比較するステップと、
前記比較した結果に応答して、前記少なくとも2つの論理コアに共通の少なくとも一つの物理リソースの前記スタンバイに対しての準備、及び/又は前記少なくとも2つの論理コアに共通の少なくとも一つの物理リソースのスタンバイの期間の後の前記少なくとも2つの論理コアのうちの前記1つの論理コアの復帰に対しての準備をするインストラクションを開始するステップ(420)と
を含み、
前記比較するステップが、
前記少なくとも2つの論理コアの各々の前記所望の状態に従って、前記マイクロプロセッサのスタンバイ状態を推定するステップ(410)と、
前記マイクロプロセッサの前記推定したスタンバイ状態を、前記少なくとも2つの論理コアのうちの前記1つの論理コアの前記所望の状態と比較するステップ(415)と
を含んでおり、
前記スタンバイを準備し、さらには/あるいはスタンバイの期間の後の前記少なくとも2つの論理コアのうちの前記1つの論理コアの復帰を可能にする前記インストラクションが、前記マイクロプロセッサの前記推定したスタンバイ状態が前記少なくとも2つの論理コアのうちの前記1つの論理コアの前記推定されたスタンバイ状態に一致する場合に開始(420)されることを特徴とする方法。 - 前記少なくとも2つの論理コアのうちの少なくとも1つの論理コアの所望の状態の変化を検出するステップ(405)
をさらに含んでおり、
前記比較するステップおよび前記インストラクションを開始するステップが、前記少なくとも2つの論理コアのうちの前記少なくとも1つの論理コアの所望の状態の変化が検出される場合に限って実行される、請求項1に記載の方法。 - 前記少なくとも1つのマイクロプロセッサが、マルチコアのマイクロプロセッサであり、前記少なくとも2つの論理コアが同じ物理コア内に実装されている、請求項1または2に記載の方法。
- 前記少なくとも2つの論理コアのうちの前記1つの論理コアの前記所望の状態を前記マイクロプロセッサのスタンバイ機能を有する部分に送信するステップ(425)
をさらに含んでおり、
前記送信するステップが、前記インストラクションを開始するステップの後で実行される、請求項3に記載の方法。 - 前記論理層が、前記コンピュータに実装されたオペレーティングシステムに属する、請求項1から4のいずれか一項に記載の方法。
- 前記マイクロプロセッサにおける論理コアの実装を可能にするモードが有効であることを確認する最初のステップを含む、請求項1から5のいずれか一項に記載の方法。
- 前記少なくとも2つの論理コアの実装が、同時マルチスレッディングと呼ばれるモードにもとづいている、請求項1から6のいずれか一項に記載の方法。
- 請求項1から7のいずれか一項に記載の方法の各ステップをコンピュータに実行させるためのインストラクションを含んでいるコンピュータプログラム。
- コンピュータまたはマイクロプロセッサによって部分的または完全に読み取ることができ、取り外し可能、あるいは取り外し可能ではない、請求項1から7のいずれか一項に記載の方法の各ステップをコンピュータに実行させるためのコンピュータプログラムのコードインストラクションを含んでいる情報記憶手段。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1002102 | 2010-05-19 | ||
FR1002102A FR2960314B1 (fr) | 2010-05-19 | 2010-05-19 | Procede d'optimisation de gestion de veille d'un microprocesseur permettant la mise en oeuvre de plusieurs coeurs logiques et programme d'ordinateur mettant en oeuvre un tel procede |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013510656A Division JP2013531836A (ja) | 2010-05-19 | 2011-05-13 | 複数の論理コアの実装を可能にするマイクロプロセッサのスタンバイの管理を最適化するための方法およびそのような方法を実行するコンピュータプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015158932A JP2015158932A (ja) | 2015-09-03 |
JP6073955B2 true JP6073955B2 (ja) | 2017-02-01 |
Family
ID=43416801
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013510656A Pending JP2013531836A (ja) | 2010-05-19 | 2011-05-13 | 複数の論理コアの実装を可能にするマイクロプロセッサのスタンバイの管理を最適化するための方法およびそのような方法を実行するコンピュータプログラム |
JP2015078235A Expired - Fee Related JP6073955B2 (ja) | 2010-05-19 | 2015-04-07 | 複数の論理コアの実装を可能にするマイクロプロセッサのスタンバイの管理を最適化するための方法およびそのような方法を実行するコンピュータプログラム |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013510656A Pending JP2013531836A (ja) | 2010-05-19 | 2011-05-13 | 複数の論理コアの実装を可能にするマイクロプロセッサのスタンバイの管理を最適化するための方法およびそのような方法を実行するコンピュータプログラム |
Country Status (6)
Country | Link |
---|---|
US (1) | US9910474B2 (ja) |
EP (1) | EP2572253B1 (ja) |
JP (2) | JP2013531836A (ja) |
BR (1) | BR112012027176A2 (ja) |
FR (1) | FR2960314B1 (ja) |
WO (1) | WO2011144847A1 (ja) |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6665791B1 (en) * | 2000-03-30 | 2003-12-16 | Agere Systems Inc. | Method and apparatus for releasing functional units in a multithreaded VLIW processor |
US6779065B2 (en) * | 2001-08-31 | 2004-08-17 | Intel Corporation | Mechanism for interrupt handling in computer systems that support concurrent execution of multiple threads |
US7152169B2 (en) * | 2002-11-29 | 2006-12-19 | Intel Corporation | Method for providing power management on multi-threaded processor by using SMM mode to place a physical processor into lower power state |
US7219241B2 (en) * | 2002-11-30 | 2007-05-15 | Intel Corporation | Method for managing virtual and actual performance states of logical processors in a multithreaded processor using system management mode |
JP2005182473A (ja) * | 2003-12-19 | 2005-07-07 | Toshiba Corp | 周波数制御方法および情報処理装置 |
US7966511B2 (en) * | 2004-07-27 | 2011-06-21 | Intel Corporation | Power management coordination in multi-core processors |
US7426648B2 (en) * | 2004-09-30 | 2008-09-16 | Intel Corporation | Global and pseudo power state management for multiple processing elements |
US7600135B2 (en) * | 2005-04-14 | 2009-10-06 | Mips Technologies, Inc. | Apparatus and method for software specified power management performance using low power virtual threads |
US8140885B2 (en) * | 2007-02-14 | 2012-03-20 | International Business Machines Corporation | Accounting for microprocessor resource consumption |
US8402290B2 (en) * | 2008-10-31 | 2013-03-19 | Intel Corporation | Power management for multiple processor cores |
US8700943B2 (en) * | 2009-12-22 | 2014-04-15 | Intel Corporation | Controlling time stamp counter (TSC) offsets for mulitple cores and threads |
-
2010
- 2010-05-19 FR FR1002102A patent/FR2960314B1/fr active Active
-
2011
- 2011-05-13 WO PCT/FR2011/051079 patent/WO2011144847A1/fr active Application Filing
- 2011-05-13 US US13/698,631 patent/US9910474B2/en active Active
- 2011-05-13 EP EP11725170.2A patent/EP2572253B1/fr active Active
- 2011-05-13 BR BR112012027176A patent/BR112012027176A2/pt not_active Application Discontinuation
- 2011-05-13 JP JP2013510656A patent/JP2013531836A/ja active Pending
-
2015
- 2015-04-07 JP JP2015078235A patent/JP6073955B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP2572253A1 (fr) | 2013-03-27 |
JP2013531836A (ja) | 2013-08-08 |
WO2011144847A1 (fr) | 2011-11-24 |
US9910474B2 (en) | 2018-03-06 |
FR2960314A1 (fr) | 2011-11-25 |
JP2015158932A (ja) | 2015-09-03 |
BR112012027176A2 (pt) | 2016-07-19 |
FR2960314B1 (fr) | 2012-07-27 |
US20130091368A1 (en) | 2013-04-11 |
EP2572253B1 (fr) | 2017-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI742032B (zh) | 用於使用者等級執行緒暫止的方法、設備及指令 | |
CN100422940C (zh) | 在数据处理系统中仲裁线程访问共享资源的系统和方法 | |
US20170329635A1 (en) | Systems and methods for distributed computing | |
US9098302B2 (en) | System and apparatus to improve boot speed in serial peripheral interface system using a baseboard management controller | |
CN109997113B (zh) | 用于数据处理的方法和装置 | |
US9378069B2 (en) | Lock spin wait operation for multi-threaded applications in a multi-core computing environment | |
JP2003131900A (ja) | サーバシステム運用管理方式 | |
US8464269B2 (en) | Handling and reporting of object state transitions on a multiprocess architecture | |
US20110131425A1 (en) | Systems and methods for power management in a high performance computing (hpc) cluster | |
US9715403B2 (en) | Optimized extended context management for virtual machines | |
US11537429B2 (en) | Sub-idle thread priority class | |
EP3662376B1 (en) | Reconfigurable cache architecture and methods for cache coherency | |
US11061840B2 (en) | Managing network interface controller-generated interrupts | |
US10289306B1 (en) | Data storage system with core-affined thread processing of data movement requests | |
CN113946445A (zh) | 一种基于asic的多线程模块及多线程控制方法 | |
US11243800B2 (en) | Efficient virtual machine memory monitoring with hyper-threading | |
US11093332B2 (en) | Application checkpoint and recovery system | |
WO2012014287A1 (ja) | マルチコアプロセッサシステム、制御プログラム、および制御方法 | |
US20180143828A1 (en) | Efficient scheduling for hyper-threaded cpus using memory monitoring | |
JP6073955B2 (ja) | 複数の論理コアの実装を可能にするマイクロプロセッサのスタンバイの管理を最適化するための方法およびそのような方法を実行するコンピュータプログラム | |
JP2013534670A (ja) | 複数の論理コアを備えるマイクロプロセッサにおけるアプリケーション実行再開時のメモリアクセス最適化方法および該方法を実行するコンピュータプログラム | |
WO2012101759A1 (ja) | プロセッサ処理方法、およびプロセッサシステム | |
US9652296B1 (en) | Efficient chained post-copy virtual machine migration | |
US20230237010A1 (en) | Power efficient memory value updates for arm architectures | |
US20180060097A1 (en) | Hyper-threading based host-guest communication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160527 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160628 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160927 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20161206 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170105 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6073955 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |