TOP特許意匠商標
特許ウォッチ Twitter
10個以上の画像は省略されています。
公開番号2024100561
公報種別公開特許公報(A)
公開日2024-07-26
出願番号2023004654
出願日2023-01-16
発明の名称パイプライン数縮退コンパイラおよびパイプライン数縮退方法
出願人富士通株式会社
代理人個人
主分類G06F 8/41 20180101AFI20240719BHJP(計算;計数)
要約【課題】プログラムの性能低下を防ぎつつ、電力効率を高めること。
【解決手段】情報処理装置101は、プログラムコード110から抽出したループ処理111について、エコモードがONの場合に対応するパイプライン数およびデコード幅に基づくスケジューリングを行って、スケジューリング後のループ処理111の実行にかかる第1のサイクル数C1を算出する。情報処理装置101は、ループ処理111について、エコモードをOFFの場合に対応するパイプライン数およびデコード幅に基づくスケジューリングを行って、スケジューリング後のループ処理111の実行にかかる第2のサイクル数C2を算出する。情報処理装置101は、第1のサイクル数C1が第2のサイクル数C2以下の場合、プログラムコード110における、ループ処理111の直前にON命令112を挿入し、ループ処理111の直後にOFF命令113を挿入する。
【選択図】図1
特許請求の範囲【請求項1】
プログラムコードから所定の処理を抽出し、
抽出した前記所定の処理について、パイプライン数を制限するエコモードがONの場合に対応するパイプライン数およびデコード幅に基づくスケジューリングを行って、スケジューリング後の前記所定の処理の実行にかかる第1のサイクル数を算出し、
前記所定の処理について、前記エコモードがOFFの場合に対応するパイプライン数およびデコード幅に基づくスケジューリングを行って、スケジューリング後の前記所定の処理の実行にかかる第2のサイクル数を算出し、
算出した前記第1のサイクル数が前記第2のサイクル数以下の場合、前記プログラムコードにおける、前記所定の処理の直前に前記エコモードをONに切り替えるON命令を挿入するとともに、前記所定の処理の直後に前記エコモードをOFFに切り替えるOFF命令を挿入する、
処理をコンピュータに実行させることを特徴とするパイプライン数縮退コンパイラ。
続きを表示(約 1,400 文字)【請求項2】
前記所定の処理は、ループ処理である、ことを特徴とする請求項1に記載のパイプライン数縮退コンパイラ。
【請求項3】
前記プログラムコードから、前記ON命令が直前に挿入され、かつ、前記OFF命令が直後に挿入された第1のループ処理を抽出し、
前記プログラムコードから、前記第1のループ処理に隣接するループ処理であって、前記ON命令が直前に挿入され、かつ、前記OFF命令が直後に挿入された第2のループ処理を抽出し、
抽出した前記第1のループ処理と前記第2のループ処理との間に存在する非ループ処理について、前記エコモードがONの場合に対応するパイプライン数およびデコード幅に基づくスケジューリングを行って、スケジューリング後の前記非ループ処理の実行にかかる第3のサイクル数を算出し、
前記非ループ処理について、前記エコモードがOFFの場合に対応するパイプライン数およびデコード幅に基づくスケジューリングを行って、スケジューリング後の前記非ループ処理の実行にかかる第4のサイクル数を算出し、
算出した前記第3のサイクル数から前記第4のサイクル数を減算した値が、前記エコモードの切り替えにかかるサイクル数以下の場合、前記第1のループ処理と前記第2のループ処理との間に挿入された前記ON命令および前記OFF命令を削除する、
処理を前記コンピュータに実行させることを特徴とする請求項2に記載のパイプライン数縮退コンパイラ。
【請求項4】
前記非ループ処理は、他の処理を呼び出さない非ループ処理である、ことを特徴とする請求項3に記載のパイプライン数縮退コンパイラ。
【請求項5】
前記第1のサイクル数を算出する処理は、
前記所定の処理について、前記エコモードがONの場合に対応するパイプライン数、デコード幅、および、当該パイプライン数分のパイプラインそれぞれが実行可能な演算の種類に基づくスケジューリングを行って、前記第1のサイクル数を算出し、
前記第2のサイクル数を算出する処理は、
前記所定の処理について、前記エコモードがOFFの場合に対応するパイプライン数、デコード幅、および、当該パイプライン数分のパイプラインそれぞれが実行可能な演算の種類に基づくスケジューリングを行って、前記第2のサイクル数を算出する、
ことを特徴とする請求項1~4のいずれか一つに記載のパイプライン数縮退コンパイラ。
【請求項6】
プログラムコードから所定の処理を抽出し、
抽出した前記所定の処理について、パイプライン数を制限するエコモードがONの場合に対応するパイプライン数およびデコード幅に基づくスケジューリングを行って、スケジューリング後の前記所定の処理の実行にかかる第1のサイクル数を算出し、
前記所定の処理について、前記エコモードがOFFの場合に対応するパイプライン数およびデコード幅に基づくスケジューリングを行って、スケジューリング後の前記所定の処理の実行にかかる第2のサイクル数を算出し、
算出した前記第1のサイクル数が前記第2のサイクル数以下の場合、前記プログラムコードにおける、前記所定の処理の直前に前記エコモードをONに切り替えるON命令を挿入するとともに、前記所定の処理の直後に前記エコモードをOFFに切り替えるOFF命令を挿入する、
処理をコンピュータが実行することを特徴とするパイプライン数縮退方法。

発明の詳細な説明【技術分野】
【0001】
本発明は、パイプライン数縮退コンパイラおよびパイプライン数縮退方法に関する。
続きを表示(約 2,000 文字)【背景技術】
【0002】
従来、CPU(Central Processing Unit)における電力削減手法として、整数・浮動小数点演算処理装置のパイプライン数を削減するものがある。例えば、パイプライン数を縮退することで、電力効率を高める機能(エコモード)が搭載されたCPUがある。
【0003】
先行技術としては、コードにおける複数の区間の各々について、動作する演算器の数を決定する処理において、動作する演算器の数が或る数である場合における区間の実行時間より、動作する演算器の数が或る数より1少ない数である場合における区間の実行時間が長い場合、動作する演算器の数を或る数に決定するものがある。
【先行技術文献】
【特許文献】
【0004】
特開2016-212743号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来技術では、プログラム中のエコモードを適用する箇所を判断することが難しく、プログラムの性能低下を防ぎつつ、電力効率を高めることができない場合がある。
【0006】
一つの側面では、本発明は、プログラムの性能低下を防ぎつつ、電力効率を高めることができるパイプライン数縮退コンパイラおよびパイプライン数縮退方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
1つの実施態様では、プログラムコードから所定の処理を抽出し、抽出した前記所定の処理について、パイプライン数を制限するエコモードがONの場合に対応するパイプライン数およびデコード幅に基づくスケジューリングを行って、スケジューリング後の前記所定の処理の実行にかかる第1のサイクル数を算出し、前記所定の処理について、前記エコモードがOFFの場合に対応するパイプライン数およびデコード幅に基づくスケジューリングを行って、スケジューリング後の前記所定の処理の実行にかかる第2のサイクル数を算出し、算出した前記第1のサイクル数が前記第2のサイクル数以下の場合、前記プログラムコードにおける、前記所定の処理の直前に前記エコモードをONに切り替えるON命令を挿入するとともに、前記所定の処理の直後に前記エコモードをOFFに切り替えるOFF命令を挿入する、パイプライン数縮退コンパイラが提供される。
【発明の効果】
【0008】
本発明の一側面によれば、プログラムの性能低下を防ぎつつ、電力効率を高めることができるという効果を奏する。
【図面の簡単な説明】
【0009】
図1は、実施の形態1にかかるパイプライン数縮退方法の一実施例を示す説明図である。
図2は、情報処理装置101のハードウェア構成例を示すブロック図である。
図3は、実施の形態2にかかる情報処理装置101の機能的構成例を示すブロック図である。
図4は、制御フローグラフの具体例を示す説明図である。
図5は、エコモードのON命令およびOFF命令の削除例を示す説明図である。
図6は、実施の形態2にかかる情報処理装置101の第1の最適化処理手順の一例を示すフローチャートである。
図7は、情報処理装置101の第2の最適化処理手順の一例を示すフローチャート(その1)である。
図8は、情報処理装置101の第2の最適化処理手順の一例を示すフローチャート(その2)である。
図9は、情報処理装置101のパイプライン数縮退処理の適用箇所の一例を示す説明図である。
図10は、ソースプログラムの具体例を示す説明図である。
図11は、アセンブラの具体例を示す説明図である。
図12は、エコモードOFFの場合のスケジューリング結果の一例を示す説明図である。
図13は、エコモードONの場合のスケジューリング結果の一例を示す説明図である。
図14は、デコード幅が異なる場合のスケジューリング結果の一例を示す説明図(その1)である。
図15は、デコード幅が異なる場合のスケジューリング結果の一例を示す説明図(その2)である。
図16は、アドレス計算パイプラインを考慮しない場合のスケジューリング結果の一例を示す説明図である。
図17は、アドレス計算パイプラインを考慮する場合のスケジューリング結果の一例を示す説明図である。
【発明を実施するための形態】
【0010】
以下に図面を参照して、本発明にかかるパイプライン数縮退コンパイラおよびパイプライン数縮退方法の実施の形態を詳細に説明する。
(【0011】以降は省略されています)

この特許をJ-PlatPatで参照する

関連特許

富士通株式会社
プロセッサ
28日前
富士通株式会社
光半導体デバイス
18日前
富士通株式会社
目標確定方法と装置
7日前
富士通株式会社
試験装置および試験方法
3日前
富士通株式会社
光受信機及び光受信方法
3日前
富士通株式会社
光伝送装置及び光伝送方法
11日前
富士通株式会社
無線通信装置及び推定方法
17日前
富士通株式会社
演算処理装置及び演算処理方法
28日前
富士通株式会社
探索プログラムおよび探索方法
8日前
富士通株式会社
時系列カテゴリデータの動的分類
11日前
富士通株式会社
運転者上下車状態判断方法と装置
7日前
富士通株式会社
動作認識装置と方法及び電子機器
7日前
富士通株式会社
動作認識装置と方法及び電子機器
7日前
富士通株式会社
物品認識装置、方法及び電子機器
7日前
富士通株式会社
3点サポートイベント検出方法と装置
7日前
富士通株式会社
表示制御プログラム、方法、及び装置
3日前
富士通株式会社
ネットワーク装置及びモデル学習方法
3日前
富士通株式会社
フォークリフト状態の検出装置及び方法
7日前
富士通株式会社
プロセッサパッケージ及び情報処理装置
14日前
富士通株式会社
化合物半導体増幅器及び回路モジュール
8日前
富士通株式会社
評価プログラム、評価装置及び評価方法
8日前
富士通株式会社
モデル生成方法及びモデル生成プログラム
11日前
富士通株式会社
基板集積導波管アンテナ及びアレイアンテナ
7日前
富士通株式会社
制御プログラム、制御方法及び情報処理装置
3日前
富士通株式会社
訓練データ生成プログラム、方法、及び装置
18日前
富士通株式会社
評価プログラム,評価方法及び情報処理装置
8日前
富士通株式会社
機械学習のためのグラフセット分析及び可視化
3日前
富士通株式会社
プログラム、情報処理方法および情報処理装置
21日前
富士通株式会社
光送信装置、遅延制御回路、及び遅延制御方法
7日前
富士通株式会社
多層基板および多層基板の配線設計プログラム
8日前
富士通株式会社
検証プログラム、検証方法、および情報処理装置
8日前
富士通株式会社
撮影角度決定方法および撮影角度決定プログラム
7日前
富士通株式会社
管理プログラム、管理方法、および情報処理装置
28日前
富士通株式会社
トランス接続相判定プログラム、方法、及び装置
18日前
富士通株式会社
撮影角度決定方法および撮影角度決定プログラム
7日前
富士通株式会社
窒化物半導体装置及び窒化物半導体装置の製造方法
18日前
続きを見る