JP6799265B2 - 演算処理装置、情報処理装置及び演算処理装置の制御方法 - Google Patents

演算処理装置、情報処理装置及び演算処理装置の制御方法 Download PDF

Info

Publication number
JP6799265B2
JP6799265B2 JP2017082580A JP2017082580A JP6799265B2 JP 6799265 B2 JP6799265 B2 JP 6799265B2 JP 2017082580 A JP2017082580 A JP 2017082580A JP 2017082580 A JP2017082580 A JP 2017082580A JP 6799265 B2 JP6799265 B2 JP 6799265B2
Authority
JP
Japan
Prior art keywords
unit
communication interface
data request
calculation
arithmetic processing
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.)
Active
Application number
JP2017082580A
Other languages
English (en)
Other versions
JP2018181129A (ja
Inventor
恵美 鵜飼
恵美 鵜飼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017082580A priority Critical patent/JP6799265B2/ja
Priority to US15/950,277 priority patent/US10768688B2/en
Publication of JP2018181129A publication Critical patent/JP2018181129A/ja
Application granted granted Critical
Publication of JP6799265B2 publication Critical patent/JP6799265B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Description

本発明は、演算処理装置、情報処理装置及び演算処理装置の制御方法に関する。
バス転送手段と、データ保管手段と、判断手段と、転送制御手段とを有する画像処理装置が知られている(特許文献1参照)。バス転送手段は、所定の転送先に接続されて、転送先へのデータ転送が無い状態が所定期間継続すると、通常電力状態から省電力状態に移行する。そして、バス転送手段は、省電力状態においてデータ転送依頼が発生すると、省電力状態から通常電力状態に復帰して、転送要求のあったデータを転送先に転送する。データ保管手段は、転送要求のあったデータを一時的に保管する。判断手段は、転送要求のあったデータが転送先の動作制御に関する設定データであるか否か及び所定の特定データであるか否かを判断する。転送制御手段は、転送要求のあったデータが設定データである場合、データをデータ保管手段に保管する。また、転送制御手段は、転送要求のあったデータが設定データ以外のデータ又は特定データである場合、バス転送手段に、データ保管手段に保管されているデータを順次転送させる。その後に、転送制御手段は、転送要求のあったデータを転送させ、データ保管手段のデータが所定の転送開始容量になると、バス転送手段に、データ保管手段に保管されている全てのデータを順次転送させる。
また、データ制御装置から転送されたデータを処理する情報処理装置が知られている(特許文献2参照)。要求手段は、データ制御装置へデータを転送するように要求する。出力手段は、転送されたデータを処理して逐次出力する。算出手段は、転送が完了してから次に転送が開始されるまでの第1の時間を、要求手段により要求されたデータの転送量と、出力手段により出力される出力レートとに基づいて算出する。比較手段は、第1の時間と、データ制御装置と情報処理装置とを接続するチップ間バスを省電力状態へ遷移させるのに要する時間と省電力状態から復帰させるのに要する時間との合計である第2の時間と、を比較する。変更手段は、比較手段により第1の時間が第2の時間よりも長いと判断されると、チップ間バスを省電力状態へ遷移させる。
特開2013−8198号公報 特開2012−190283号公報
上記の従来技術では、転送の無い状態が所定期間継続すると、通常電力状態から省電力状態に移行する。しかし、転送の無い状態が所定期間継続している間は、通常電力状態であり、電力を無駄に消費してしまう。
1つの側面では、本発明の目的は、省電力状態に早期に遷移させることにより、消費電力を従来よりも低減することができる演算処理装置、情報処理装置及び演算処理装置の制御方法を提供することである。
演算処理装置は、データ要求指示をエントリに格納するデータ要求キュー部と、前記データ要求キュー部に格納されたデータ要求指示に対応するデータ要求を送信し、送信したデータ要求に対応するデータを受信する通信インターフェース部と、前記通信インターフェース部が受信したデータを用いた演算を実行する演算部と、前記データ要求キュー部のエントリが空であり、かつ前記演算部が演算の実行中である場合、前記通信インターフェース部を省電力状態に遷移させる判定部とを有する。
1つの側面では、省電力状態に早期に遷移させることにより、消費電力を低減することができる。
図1は、第1の実施形態による情報処理装置の構成例を示す図である。 図2(A)は通信インターフェースの物理層のステートマシンを示す図であり、図2(B)は状態レジスタの構成例を示す図である。 図3は、演算処理装置の制御方法を示すフローチャートである。 図4は、演算コア、論理和演算回路及び状態レジスタを示す図である。 図5は、演算処理装置の制御方法を示すフローチャートである。 図6は、演算コア、論理積演算回路及び状態レジスタを示す図である。 図7は、第2の実施形態による情報処理装置の構成例を示す図である。 図8は、演算処理装置の制御方法を示すフローチャートである。 図9(A)は第3の実施形態による状態遷移判定部の構成例を示す図であり、図9(B)は条件レジスタが記憶する第1〜第3の条件の例を示す図である。
(第1の実施形態)
図1は、第1の実施形態による情報処理装置の構成例を示す図である。情報処理装置は、ホスト処理装置101と、演算処理装置102とを有する。演算処理装置102は、ホスト処理装置101に接続される。また、演算処理装置102は、スイッチを介して、ホスト処理装置101に接続されてもよい。ホスト処理装置101は、例えば中央演算処理装置(CPU)であり、通信インターフェース131を有する。
演算処理装置102は、複数の演算コア(処理部)111と、複数の状態レジスタ112と、通信インターフェース113と、データ受信部114と、データ要求信号生成部115と、データ要求キュー116と、状態遷移判定部117と、割り込み生成部118を有する。通信インターフェース113は、受信制御部121と、送信制御部122とを有する。
通信インターフェース113は、例えばPCI express通信インターフェースであり、トランザクション層と、データリンク層と、物理層とを有し、ホスト処理装置101に対してデータ通信を行う。ホスト処理装置101の通信インターフェース131は、演算処理装置102の通信インターフェース131と同様である。
通信インターフェース113は、物理層では、接続のトレーニングのために、ホスト処理装置101の通信インターフェース131との間で送信及び受信を行うオーダードセット(Ordered Set)を生成する。また、通信インターフェース113は、トランザクション層では、ホスト処理装置101に送信するデータをパケット化する。また、通信インターフェース113は、データリンク層では、ホスト処理装置101との間で送受信するためのクレジット情報、及びデータパケットの送信保証のための認証(Acknowledge)をパケット化する。通信インターフェース113は、物理層のステートマシンにより管理される。
図2(A)は、通信インターフェース113の物理層のステートマシンを示す図である。通信インターフェース113の物理層のステートマシンは、通常状態L0と、省電力状態L1と、リカバリ状態とを有する。通常状態L0では、通信インターフェース113は、消費電力が通常であり、ホスト処理装置101に対して、送信及び受信が可能である。省電力状態L1では、通信インターフェース113は、電気的アイドル状態であり、消費電力が低く、ホスト処理装置101に対して、送信及び受信ができない。
通信インターフェース113は、通常状態L0において、通信を行わない状態になった場合には、省電力状態L1に遷移することにより、消費電力を低減することができる。また、通信インターフェース113は、省電力状態L1において、通信を行う必要性が生じた場合には、リカバリ状態を介して、通常状態L0に遷移する。通信インターフェース113は、リカバリ状態では、ホスト処理装置101の通信インターフェース131に対して、オーダードセットの送信及び受信を行うことにより、通信接続のトレーニングを行い、その後、通常状態L0に遷移する。通信インターフェース113は、通常状態L0で、ホスト処理装置101に対して、送信又は受信を行う。
図2(B)は、図1の状態レジスタ112の構成例を示す図である。状態レジスタ112は、有効(valid)ビット201と、完了ビット202とを有し、演算コア111の状態を記憶する。有効ビット201は、演算コア111の演算が実行中であるか否かを示す。完了ビット202は、演算コア111の演算の実行が完了したか否かを示す。演算コア111が演算を実行していないアイドル状態である場合には、有効ビット201及び完了ビット202が共に0である。演算コア111が演算の実行中である場合には、有効ビット201が1であり、完了ビット202が0である。演算コア111が演算の実行を完了した場合には、有効ビット201及び完了ビット202が共に1である。
なお、状態レジスタ112は、上記のビット構成に限定されない。また、状態レジスタ112は、2ビットで、アイドル状態、演算実行中状態、 演算実行正常終了状態、及び 演算実行異常終了状態の4状態を表現してもよい。
次に、情報処理装置の制御方法を説明する。ここで、通信インターフェース131の物理層は通常状態L0であり、状態レジスタ112は有効ビット201及び完了ビット202が共に0である。
ホスト処理装置101は、通信インターフェース131により、データ要求指示のパケットを演算処理装置102の受信制御部121に送信する。受信制御部121は、ホスト処理装置101が送信したデータ要求指示のパケットを受信し、データ要求指示の信号をデータ受信部114に出力する。データ受信部114は、受信制御部121が出力したデータ要求指示の信号を入力し、データ要求指示をデータ要求キュー116のエントリに格納する。データ要求指示は、そのデータを演算する演算の種類及びその演算を行う演算コア111の情報を含む。
同様に、ホスト処理装置101は、複数のデータ要求指示のパケットを順次送信することができる。データ受信部114は、受信制御部121が受信したデータ要求指示のパケットに応じて、データ要求キュー116の複数のエントリにデータ要求指示を順次格納する。データ要求キュー116は、ファーストインファーストアウトで、データ要求指示を格納する。
次に、データ要求信号生成部115は、データ要求キュー116の先頭のエントリのデータ要求指示を読み出し、データ要求の信号を送信制御部122に出力する。送信制御部122は、データ要求信号生成部115が出力したデータ要求の信号をパケット化し、データ要求のパケットをホスト処理装置101に送信する。
ホスト処理装置101は、通信インターフェース131により、送信制御部122が送信したデータ要求のパケットを受信し、その受信したデータ要求のパケットに対応するデータのパケットを演算処理装置102の受信制御部121に送信する。
受信制御部121は、ホスト処理装置101が送信したデータのパケットを受信し、データをデータ受信部114に出力する。データ受信部114は、上記のデータ要求指示に応じて、受信制御部121が出力したデータを、そのデータを演算する一又は複数の演算コア111に出力する。演算コア111は、データ受信部114からデータを入力し、演算の準備を行う。
次に、データ受信部114は、上記の受信したデータに対応するデータ要求指示をデータ要求キュー116から消去する。すると、送信制御部122は、そのデータ要求指示に対応するデータ要求完了通知のパケットをホスト処理装置101に送信する。
ホスト処理装置101は、通信インターフェース131により、送信制御部122からデータ要求完了通知のパケットを受信すると、そのデータ要求完了通知に対応する演算指示のパケットを演算処理装置102の受信制御部121に送信する。
受信制御部121は、ホスト処理装置101から演算指示のパケットを受信し、演算指示の信号をデータ受信部114に出力する。データ受信部114は、受信制御部121が出力した演算指示の信号を入力し、その演算指示の演算に対応する演算コア111に演算指示を出力する。演算コア111は、演算指示を入力すると、上記の受信したデータを用いた演算の実行を開始する。また、演算コア111は、演算の実行を開始すると、自己に対応する状態レジスタ112の有効ビット201に1をセットする。以下、図3を参照しながら、演算処理装置102の制御方法を説明する。
図3は、演算処理装置102の制御方法を示すフローチャートである。ステップS301では、状態遷移判定部117は、データ要求キュー116のエントリが空であるか否かを判定する。データ要求キュー116のエントリが空である場合には、演算処理装置102は、以後、データ要求指示に対応するデータのパケットをホスト処理装置101から受信することがないし、新たな演算が指示される予定がないことを意味する。状態遷移判定部117は、データ要求キュー116のエントリが空であると判定した場合には、ステップS302に処理を進める。また、状態遷移判定部117は、データ要求キュー116のエントリが空でないと判定した場合には、受信制御部121がデータのパケットを受信するまで待機する必要があるので、通信インターフェース113の物理層の通常状態L0を維持し、ステップS301に処理を戻す。
ステップS302では、状態遷移判定部117は、状態レジスタ112を参照し、上記の演算指示の演算に対応する一又は複数の演算コア111のうちの少なくとも1個の演算コア111が演算の実行中であるか否かを判定する。1個の演算指示に対応して複数の演算コア111が演算を実行する場合には、複数の演算コア111のすべてが同時に演算の実行を開始するとは限らない。少なくとも1個の演算コア111が演算の実行を開始すれば、受信制御部121は、演算指示のパケットをホスト処理装置101から受信済みであり、演算コア111は、長時間の演算実行を開始する。それ以後、演算処理装置102は、ホスト処理装置101に対して、通信を行わないことが分かっている。通信が行われないのであれば、通信インターフェース113の物理層は、通常状態L0から省電力状態L1に遷移し、消費電力を抑制することが好ましい。状態遷移判定部117は、上記の少なくとも1個の演算コア111が演算の実行中であると判定した場合には、ステップS303に処理を進める。また、状態遷移判定部117は、上記の演算コア111のすべてが演算の実行中でないと判定した場合には、受信制御部121が演算指示のパケットを受信するまで待機する必要があるので、通信インターフェース113の物理層の通常状態L0を維持し、ステップS301に処理を戻す。
なお、図4に示すように、1個の演算指示に応じて演算を実行する複数の演算コア101の演算グループ毎に、1個の論理和演算回路(OR回路)401及び1個の状態レジスタ112を設けてもよい。論理和演算回路401は、1個の演算指示に応じて演算を実行する複数の演算コア101のうちの少なくとも1個の演算コア101が演算の実行開始に伴う有効フラグ201のセット信号を出力した場合には、状態レジスタ112の有効フラグ201に1をセットする。ステップS302では、状態遷移判定部117は、その状態レジスタ112を参照し、上記の演算指示の演算に対応する一又は複数の演算コア111のうちの少なくとも1個の演算コア111が演算の実行中であるか否かを判定することができる。
ステップS303では、状態遷移判定部117は、省電力状態L1遷移交渉指示を通信インターフェース113に出力する。省電力状態L1遷移交渉指示は、通信インターフェース113の物理層を通常状態L0から省電力状態L1に遷移させるための指示信号である。
次に、ステップS304では、送信制御部122は、状態遷移判定部117が出力した省電力状態L1遷移交渉指示を入力すると、省電力状態L1遷移交渉のパケットをホスト処理装置101の通信インターフェース131に送信する。ホスト処理装置101は、通信の必要性に応じて、通信インターフェース131の物理層が省電力状態L1になってもよいか否かを判定する。ホスト処理装置101は、通信の予定がない場合には、通信インターフェース131の物理層が省電力状態L1になってもよいと判定し、通信インターフェース131により、省電力状態L1遷移交渉応答のパケットを演算処理装置102の通信インターフェース113に送信する。通信インターフェース113は、ホスト処理装置101が送信した省電力状態L1遷移交渉応答のパケットを受信すると、通信インターフェース113の物理層を通常状態L0から省電力状態L1に遷移させる。同様に、通信インターフェース131は、通信インターフェース131の物理層を通常状態L0から省電力状態L1に遷移させる。
演算コア111は、演算の実行が完了すると、自己に対応する状態レジスタ112の完了ビット202に1をセットする。上記の演算指示に対応する演算が完了した場合、通信インターフェース113は、演算完了通知をホスト処理装置101に送信する必要がある。そのためには、通信インターフェース113は、通信インターフェース113の物理層を省電力状態L1から通常状態L0に遷移させる必要がある。以下、その処理の詳細を、図5を参照しながら説明する。
図5は、演算処理装置102の制御方法を示すフローチャートである。ステップS501では、状態遷移判定部117は、状態レジスタ112を参照し、上記の演算指示の演算に対応する一又は複数の演算コア111のすべての演算の実行が完了したか否かを判定する。1個の演算指示に対応して複数の演算コア111が演算を実行する場合には、複数の演算コア111のすべてが同時に演算の実行を完了するとは限らない。複数の演算コア111のすべての演算の実行が完了すれば、通信インターフェース113は、演算完了通知をホスト処理装置101に送信可能になる。状態遷移判定部117は、上記の一又は複数の演算コア111のすべての演算の実行が完了したと判定した場合には、ステップS502に処理を進める。また、状態遷移判定部117は、上記の一又は複数の演算コア111のすべての演算の実行が完了していないと判定した場合には、その演算の完了を待機する必要があるので、通信インターフェース113の物理層の省電力状態L1を維持し、ステップS501に処理を戻す。
なお、図6に示すように、1個の演算指示に応じて演算を実行する複数の演算コア101の演算グループ毎に、1個の論理積演算回路(AND回路)601及び1個の状態レジスタ112を設けてもよい。論理積演算回路601は、1個の演算指示に応じて演算を実行する複数の演算コア101のすべてが演算の実行完了に伴う完了フラグ202のセット信号を出力した場合には、状態レジスタ112の完了フラグ202に1をセットする。ステップS501では、状態遷移判定部117は、その状態レジスタ112を参照し、上記の演算指示の演算に対応する一又は複数の演算コア111のすべての演算の実行が完了したか否かを判定することができる。
ステップS502では、状態遷移判定部117は、省電力状態L1終了指示を通信インターフェース113に出力する。省電力状態L1終了指示は、通信インターフェース113の物理層を省電力状態L1からリカバリ状態を介して通常状態L0に遷移させるための指示信号である。
次に、ステップS503では、通信インターフェース113は、状態遷移判定部117が出力した省電力状態L1終了指示を入力すると、物理層を省電力状態L1からリカバリ状態に遷移させる。送信制御部122は、接続トレーニングのためのオーダードセットをホスト処理装置101の通信インターフェース131に送信する。ホスト処理装置101の通信インターフェース131は、送信制御部122が送信したオーダードセットを受信すると、物理層を省電力状態L1からリカバリ状態に遷移させ、接続トレーニングのためのオーダードセットを演算処理装置102の通信インターフェース113に送信する。上記のオーダードセットの送信及び受信が繰り返される。通信インターフェース113及び131は、上記の接続トレーニングが終了すると、物理層をリカバリ状態から通常状態L0に遷移させる。
割り込み生成部118は、状態レジスタ112を参照し、上記の演算指示の演算に対応する一又は複数の演算コア111のすべての演算の実行が完了したと判定した場合には、演算完了割り込み信号を通信インターフェース113に出力する。通信インターフェース113がその演算完了割り込み信号を入力すると、送信制御部122は、通信インターフェース113の物理層が通常状態L0に遷移した後、演算完了通知のパケットをホスト処理装置101の通信インターフェース131に送信する。
ホスト処理装置101は、通信インターフェース131により、その演算完了通知のパケットを受信すると、その演算完了通知に対応する演算結果要求のパケットを演算処理装置102の通信インターフェース113に送信する。通信インターフェース113が演算結果要求のパケットを受信すると、送信制御部122は、その演算結果要求に対応する演算コア111の演算結果のデータのパケットをホスト処理装置101の通信インターフェース131に送信する。
上記の図3のように、状態遷移判定部117は、データ要求キュー116のエントリが空であり、かつ1個の演算指示に応じて演算を実行する一又は複数の演算コア111のうちの少なくとも1個の演算コア111が演算の実行中である場合には、省電力状態L1遷移交渉指示を出力する。これにより、通信が行われない場合、通信インターフェース113及び131の物理層は、早期に、通常状態L0から省電力状態L1に移行し、消費電力を低減することができる。
また、上記の図5のように、状態遷移判定部117は、1個の演算指示に応じて演算を実行する一又は複数の演算コア111のすべての演算の実行が完了した場合には、省電力状態L1終了指示を出力する。これにより、通信インターフェース113及び131の物理層は、省電力状態L1からリカバリ状態を介して通常状態L0に移行し、演算完了通知のパケット等の通信を行うことが可能になる。
(第2の実施形態)
図7は、第2の実施形態による情報処理装置の構成例を示す図である。図7の情報処理装置は、図1の情報処理装置に対して、演算指示キュー701及び演算制御部702を追加したものである。以下、本実施形態が第1の実施形態と異なる点を説明する。演算処理装置102は、さらに、演算指示キュー701及び演算制御部702を有する。
第1の実施形態と同様に、ホスト処理装置101は、通信インターフェース131により、送信制御部122からデータ要求完了通知のパケットを受信すると、そのデータ要求完了通知に対応する演算指示のパケットを演算処理装置102の受信制御部121に送信する。
受信制御部121は、ホスト処理装置101から演算指示のパケットを受信し、演算指示の信号をデータ受信部114に出力する。データ受信部114は、受信制御部121が出力した演算指示の信号を入力し、その演算指示を演算指示キュー701のエントリに格納する。
同様に、ホスト処理装置101は、複数の演算指示のパケットを順次送信することができる。データ受信部114は、受信制御部121が受信した演算指示のパケットに応じて、演算指示キュー701の複数のエントリに演算指示を順次格納する。演算指示キュー701は、ファーストインファーストアウトで、演算指示を格納する。
次に、演算制御部702は、演算指示キュー701の先頭のエントリの演算指示を読み出し、その読み出した演算指示の演算に対応する演算コア111に演算指示を出力する。演算コア111は、演算指示を入力すると、上記の受信したデータを用いた演算の実行を開始する。また、演算コア111は、演算の実行を開始すると、自己に対応する状態レジスタ112の有効ビット201に1をセットする。なお、演算制御部702が状態レジスタ112の書き込みを行ってもよい。
図8は、図3に対応し、本実施形態による演算処理装置102の制御方法を示すフローチャートである。図8のフローチャートは、図3のフローチャートに対して、ステップS803を追加したものである。
ステップS801では、状態遷移判定部117は、データ要求キュー116のエントリが空であるか否かを判定する。状態遷移判定部102は、データ要求キュー116のエントリが空であると判定した場合には、ステップS802に処理を進める。また、状態遷移判定部117は、データ要求キュー116のエントリが空でないと判定した場合には、受信制御部121がデータのパケットを受信するまで待機する必要があるので、通信インターフェース113の物理層の通常状態L0を維持し、ステップS801に処理を戻す。
ステップS802では、状態遷移判定部117は、状態レジスタ112を参照し、上記の演算指示の演算に対応する一又は複数の演算コア111のうちの少なくとも1個の演算コア111が演算の実行中であるか否かを判定する。状態遷移判定部117は、上記の少なくとも1個の演算コア111が演算の実行中であると判定した場合には、ステップS803に処理を進める。また、状態遷移判定部117は、上記の演算コア111のすべてが演算の実行中でないと判定した場合には、受信制御部121が演算指示のパケットを受信するまで待機する必要があるので、通信インターフェース113の物理層の通常状態L0を維持し、ステップS801に処理を戻す。
ステップS803では、状態遷移判定部117は、演算指示キュー701のエントリが満杯(フル)であるか否か(すべて使用されているか否か)を判定する。ホスト処理装置101は、演算指示キュー701のエントリ数を把握しており、演算指示キュー701が満杯か否かを判断することができる。そして、ホスト処理装置101は、演算指示キュー701が満杯である場合には、新たなデータ要求指示のパケットを送信せず、演算指示キュー701が満杯でなくなるまで待機する。その待機中には、通信が行われないので、状態遷移判定部117は、通信インターフェース113の物理層を通常状態L0から省電力状態L1に遷移させてもよい。状態遷移判定部117は、演算指示キュー701のエントリが満杯であると判定した場合には、ステップS804に処理を進める。また、状態遷移判定部117は、演算指示キュー701のエントリが満杯でないと判定した場合には、受信制御部121が新たなデータ要求指示のパケットを受信する可能性があるので、通信インターフェース113の物理層の通常状態L0を維持し、ステップS801に処理を戻す。
ステップS804では、状態遷移判定部117は、省電力状態L1遷移交渉指示を通信インターフェース113に出力する。省電力状態L1遷移交渉指示は、通信インターフェース113の物理層を通常状態L0から省電力状態L1に遷移させるための指示信号である。
次に、ステップS805では、送信制御部122は、状態遷移判定部117が出力した省電力状態L1遷移交渉指示を入力すると、省電力状態L1遷移交渉のパケットをホスト処理装置101の通信インターフェース131に送信する。ホスト処理装置101は、通信の予定がない場合には、通信インターフェース131の物理層が省電力状態L1になってもよいと判定し、通信インターフェース131により、省電力状態L1遷移交渉応答のパケットを演算処理装置102の通信インターフェース113に送信する。通信インターフェース113は、ホスト処理装置101が送信した省電力状態L1遷移交渉応答のパケットを受信すると、通信インターフェース113の物理層を通常状態L0から省電力状態L1に遷移させる。同様に、通信インターフェース131は、通信インターフェース131の物理層を通常状態L0から省電力状態L1に遷移させる。
(第3の実施形態)
図9(A)は、第3の実施形態による状態遷移判定部117の構成例を示す図である。以下、本実施形態が第1及び第2の実施形態と異なる点を説明する。状態遷移判定部117は、条件レジスタ901を有する。条件レジスタ901の複数ビットは、それぞれ、複数の条件の有効性を記憶する。ビット値が1である場合には条件の有効を示し、ビット値が0である場合には条件の無効を示す。状態遷移判定部117は、条件レジスタ901の各ビット値を設定することができる。
図9(B)は、条件レジスタ901が記憶する第1〜第3の条件の例を示す図である。第1の条件は、図3のステップS301及び図8のステップS801の判定条件であり、データ要求キュー116が空であることの条件である。第2の条件は、図8のステップS803の判定条件であり、演算指示キュー701が満杯であることの条件である。第3の条件は、図3のステップS302及び図8のステップS802の判定条件であり、演算指示の演算に対応する一又は複数の演算コア111のうちの少なくとも1個の演算コア111が演算の実行中であることの条件である。
条件レジスタ901が、第1及び第3の条件が有効であり、第2の条件が無効である値を記憶している場合、状態遷移判定部117は、図3に示す第1の実施形態の処理を行う。また、条件レジスタ901が、第1〜第3の条件が有効である値を記憶している場合、状態遷移判定部117は、図8に示す第2の実施形態の処理を行う。このように、状態遷移判定部117は、条件レジスタ901に設定されている値に応じて、第1の実施形態の処理又は第2の実施形態の処理を行うことができる。
以上のように、第1〜第3の実施形態によれば、状態遷移判定部117は、通信が行われない場合には、通信インターフェース113の物理層を通常状態L0から省電力状態L1に早期に遷移させることにより、消費電力を低減することができる。また、状態遷移判定部117は、通信が行われる場合には、通信インターフェース113の物理層を省電力状態L1から通常状態L0に早期に遷移させることができる。
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
101 ホスト処理装置
102 演算処理装置
111 演算コア
112 状態レジスタ
113 通信インターフェース
114 データ受信部
115 データ要求信号生成部
116 データ要求キュー
117 状態遷移判定部
118 割り込み生成部
121 受信制御部
122 送信制御部

Claims (18)

  1. データ要求指示をエントリに格納するデータ要求キュー部と、
    前記データ要求キュー部に格納されたデータ要求指示に対応するデータ要求を送信し、送信したデータ要求に対応するデータを受信する通信インターフェース部と、
    前記通信インターフェース部が受信したデータを用いた演算を実行する演算部と、
    前記データ要求キュー部のエントリが空であり、かつ前記演算部が演算の実行中である場合、前記通信インターフェース部を省電力状態に遷移させる判定部と
    を有することを特徴とする演算処理装置。
  2. 前記演算処理装置はさらに、
    演算指示がエントリに格納される演算指示キュー部を有し、
    前記演算部は、前記演算指示キュー部に格納された演算指示に応じて、前記演算の実行を開始することを特徴とする請求項1に記載の演算処理装置。
  3. 前記判定部は、前記データ要求キュー部のエントリが空であり、かつ前記演算部が演算の実行中であり、かつ前記演算指示キュー部の全てのエントリが使用されている場合、前記通信インターフェース部を前記省電力状態に遷移させることを特徴とする請求項2に記載の演算処理装置。
  4. 前記演算処理装置はさらに、
    第1の値又は第2の値を記憶する条件レジスタを有し、
    前記判定部は、
    前記条件レジスタが前記第1の値を記憶する場合に、前記データ要求キュー部のエントリが空であり、かつ前記演算部が演算の実行中であるとき、前記通信インターフェース部を前記省電力状態に遷移させ、
    前記条件レジスタが前記第2の値を記憶する場合に、前記データ要求キュー部のエントリが空であり、かつ前記演算部が演算の実行中であり、かつ前記演算指示キュー部の全てのエントリが使用されているとき、前記通信インターフェース部を前記省電力状態に遷移させることを特徴とする請求項3に記載の演算処理装置。
  5. 前記判定部は、前記演算部の演算の実行が完了した場合、前記通信インターフェース部を前記省電力状態から通常状態に遷移させることを特徴とする請求項1〜4のいずれか1項に記載の演算処理装置。
  6. 前記判定部は、前記演算部の演算の実行が完了した場合、前記通信インターフェース部を前記省電力状態からリカバリ状態を介して前記通常状態に遷移させることを特徴とする請求項5に記載の演算処理装置。
  7. 前記演算部は、1つの演算指示に応じて演算をそれぞれ実行する複数の処理部を有し、
    前記判定部は、前記データ要求キュー部のエントリが空であり、かつ前記複数の処理部のうちの少なくとも1個の処理部が演算の実行中である場合、前記通信インターフェース部を前記省電力状態に遷移させることを特徴とする請求項1〜6のいずれか1項に記載の演算処理装置。
  8. 前記演算部は、1つの演算指示に応じて演算をそれぞれ実行する複数の処理部を有し、
    前記判定部は、前記複数の処理部が実行するすべての演算の実行が完了した場合、前記通信インターフェース部を前記省電力状態から前記通常状態に遷移させることを特徴とする請求項5又は6に記載の演算処理装置。
  9. 前記演算処理装置はさらに、
    前記通信インターフェース部が送信したデータ要求に対応するデータを受信した場合、受信したデータに対応するデータ要求指示を前記データ要求キュー部において当該データ要求指示を格納するエントリから消去する受信部を有することを特徴とする請求項1〜8のいずれか1項に記載の演算処理装置。
  10. 前記受信部は、前記通信インターフェース部がデータ要求指示を受信した場合には、前記受信したデータ要求指示を前記データ要求キュー部のエントリに格納することを特徴とする請求項9に記載の演算処理装置。
  11. 前記通信インターフェース部は、前記演算部の演算の実行が完了し、かつ前記通常状態に遷移した後、演算完了通知を外部に送信することを特徴とする請求項5、6及び8のいずれか1項に記載の演算処理装置。
  12. 前記判定部は、前記通信インターフェース部の物理層を前記省電力状態に遷移させることを特徴とする請求項1〜11のいずれか1項に記載の演算処理装置。
  13. 前記通信インターフェース部は、前記判定部が前記通信インターフェース部を前記省電力状態に遷移させる場合、省電力状態への遷移を交渉する交渉指示を送信し、送信した前記交渉指示に対応する交渉応答を受信した場合、前記省電力状態に遷移することを特徴とする請求項1〜12のいずれか1項に記載の演算処理装置。
  14. 前記通信インターフェース部は、前記判定部が前記通信インターフェース部を前記省電力状態に遷移させる場合、省電力状態への遷移を交渉する交渉指示を送信し、送信した前記交渉指示に対応する交渉応答を受信した場合、前記通信インターフェース部の物理層を前記省電力状態に遷移させることを特徴とする請求項1〜13のいずれか1項に記載の演算処理装置。
  15. 前記通信インターフェース部は、前記判定部が前記通信インターフェース部を前記通常状態に遷移させる場合、前記省電力状態からリカバリ状態に遷移し、トレーニングに用いるオーダードセットの送信及び受信を行い、前記トレーニングに用いるオーダードセットの送信及び受信の後、前記リカバリ状態から前記通常状態に遷移することを特徴とする請求項5、6、8及び11のいずれか1項に記載の演算処理装置。
  16. 前記通信インターフェース部は、前記判定部が前記通信インターフェース部を前記通常状態に遷移させる場合、前記通信インターフェース部の物理層を前記省電力状態からリカバリ状態に遷移させ、トレーニングのためのオーダードセットの送信及び受信を行い、前記トレーニングのためのオーダードセットの送信及び受信の後、前記通信インターフェース部の物理層を前記リカバリ状態から前記通常状態に遷移させることを特徴とする請求項15に記載の演算処理装置。
  17. 演算処理装置と、
    前記演算処理装置に接続するホスト処理装置とを有し、
    前記演算処理装置は、
    データ要求指示がエントリを格納するデータ要求キュー部と、
    前記データ要求キュー部に格納されたデータ要求指示に対応するデータ要求を前記ホスト処理装置に送信し、送信したデータ要求に対応するデータを前記ホスト処理装置から受信する通信インターフェース部と、
    前記通信インターフェース部が受信したデータを用いた演算を実行する演算部と、
    前記データ要求キュー部のエントリが空であり、かつ前記演算部が演算の実行中である場合、前記通信インターフェース部を省電力状態に遷移させる判定部とを有し、
    前記ホスト処理装置は、前記演算処理装置から前記データ要求を受信し、受信した前記データ要求に対応するデータを前記演算処理装置に送信することを特徴とする情報処理装置。
  18. データ要求指示をエントリに格納するデータ要求キュー部を有する演算処理装置の制御方法において、
    前記演算処理装置が有する通信インターフェース部が、前記データ要求キュー部に格納されたデータ要求指示に対応するデータ要求を送信し、
    前記通信インターフェース部が、送信したデータ要求に対応するデータを受信し、
    前記演算処理装置が有する演算部が、前記通信インターフェース部が受信したデータを用いた演算を実行し、
    前記演算処理装置が有する判定部が、前記データ要求キュー部のエントリが空であり、かつ前記演算部が演算の実行中である場合、前記通信インターフェース部を省電力状態に遷移させることを特徴とする演算処理装置の制御方法。
JP2017082580A 2017-04-19 2017-04-19 演算処理装置、情報処理装置及び演算処理装置の制御方法 Active JP6799265B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017082580A JP6799265B2 (ja) 2017-04-19 2017-04-19 演算処理装置、情報処理装置及び演算処理装置の制御方法
US15/950,277 US10768688B2 (en) 2017-04-19 2018-04-11 Arithmetic processing device, information processing apparatus, and method for controlling arithmetic processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017082580A JP6799265B2 (ja) 2017-04-19 2017-04-19 演算処理装置、情報処理装置及び演算処理装置の制御方法

Publications (2)

Publication Number Publication Date
JP2018181129A JP2018181129A (ja) 2018-11-15
JP6799265B2 true JP6799265B2 (ja) 2020-12-16

Family

ID=63853900

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017082580A Active JP6799265B2 (ja) 2017-04-19 2017-04-19 演算処理装置、情報処理装置及び演算処理装置の制御方法

Country Status (2)

Country Link
US (1) US10768688B2 (ja)
JP (1) JP6799265B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4531020B2 (ja) * 2006-08-01 2010-08-25 ルネサスエレクトロニクス株式会社 半導体集積回路
JP5734034B2 (ja) 2011-03-10 2015-06-10 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、およびプログラム
JP5741245B2 (ja) 2011-06-24 2015-07-01 株式会社リコー 画像処理装置、画像処理制御方法及び画像処理制御プログラム
US8995837B2 (en) * 2011-06-29 2015-03-31 Mitsubishi Electric Corporation Subscriber-side optical communication device, communication system, control device, and power-saving control method

Also Published As

Publication number Publication date
US20180307299A1 (en) 2018-10-25
US10768688B2 (en) 2020-09-08
JP2018181129A (ja) 2018-11-15

Similar Documents

Publication Publication Date Title
CN110647480B (zh) 数据处理方法、远程直接访存网卡和设备
TWI610179B (zh) 主機裝置與資料傳輸速率控制方法
CN103942097A (zh) 一种数据处理方法、装置及具备相应装置的计算机
CN112698909A (zh) 用于经由虚拟总线编码传送遥测信息的系统、装置和方法
JP2006293927A (ja) ダイレクトメモリアクセス制御装置及びダイレクトメモリアクセス制御装置を含むシステムlsi
CN102207919A (zh) 加速数据传输的处理单元、芯片、计算设备和方法
JP5499987B2 (ja) 共有キャッシュメモリ装置
JP6799265B2 (ja) 演算処理装置、情報処理装置及び演算処理装置の制御方法
JP5741245B2 (ja) 画像処理装置、画像処理制御方法及び画像処理制御プログラム
CN114902181A (zh) Gpu包聚合系统
JP5734034B2 (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
JP2011065630A (ja) データ転送制御装置及びデータ転送制御方法
JP5893624B2 (ja) マルチコアシステムのためのダイレクトメモリアクセス装置およびその動作方法
JPH10334037A (ja) 通信dma装置
JP7271973B2 (ja) 車両制御装置、動作クロック切換方法
JP4458873B2 (ja) シリアルデータ転送方法とその装置
JP5587530B2 (ja) エンジン・プロセッサ連携システム及び連携方法
JP7087419B2 (ja) データ受信装置、データ送受信システム、及びデータ送受信システムの制御方法
JP5511538B2 (ja) Cpu間通信システム及びcpu間通信方法
JP2002176464A (ja) ネットワークインタフェース装置
JP2009258790A (ja) 制御装置及び制御装置の制御方法
JP6631370B2 (ja) マイクロコンピュータ及び電子制御装置
US20060140122A1 (en) Link retry per virtual channel
JP2000285087A (ja) ノード間データ通信方法
JP6163941B2 (ja) 制御装置及び画像形成装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200930

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201102

R150 Certificate of patent or registration of utility model

Ref document number: 6799265

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150