TOP特許意匠商標
特許ウォッチ Twitter
10個以上の画像は省略されています。
公開番号2024157581
公報種別公開特許公報(A)
公開日2024-11-08
出願番号2023071975
出願日2023-04-26
発明の名称分岐履歴記録システム、分岐履歴記録方法、及び分岐制御プログラム
出願人富士通株式会社
代理人個人,個人,個人
主分類G06F 11/34 20060101AFI20241031BHJP(計算;計数)
要約【課題】プログラムの実行時における分岐履歴を容易に記録する。
【解決手段】第1演算処理部は、書き込みプログラムを実行することで、書き込みプログラムの実行時に発生する分岐動作の分岐元命令アドレスと分岐先命令アドレスとの組を含む分岐情報を、記憶部に書き込む。第2演算処理部は、分岐制御プログラムを実行することで、記憶部から分岐情報を読み出し、分岐制御プログラムに含まれる複数のコードブロックのうち、分岐情報に対応するコードブロックへ分岐する、処理を実行する。取得部は、分岐制御プログラムの実行時に、実行された命令の命令アドレスを取得し、実行された命令の命令アドレスを含む動作情報を記録する。
【選択図】図5
特許請求の範囲【請求項1】
記憶部と、
書き込みプログラムを実行することで、前記書き込みプログラムの実行時に発生する分岐動作の分岐元命令アドレスと分岐先命令アドレスとの組を含む分岐情報を、前記記憶部に書き込む第1演算処理部と、
分岐制御プログラムを実行することで、前記記憶部から前記分岐情報を読み出し、前記分岐制御プログラムに含まれる複数のコードブロックのうち、前記分岐情報に対応するコードブロックへ分岐する、処理を実行する第2演算処理部と、
前記分岐制御プログラムの実行時に、実行された命令の命令アドレスを取得し、前記実行された命令の命令アドレスを含む動作情報を記録する取得部と、
を備えることを特徴とする分岐履歴記録システム。
続きを表示(約 1,600 文字)【請求項2】
前記第2演算処理部は、前記分岐情報のハッシュ値を計算し、複数のハッシュ値それぞれを前記複数のコードブロックの何れかに対応付けるハッシュテーブルを用いて、前記分岐情報のハッシュ値に対応付けられたコードブロックを、前記分岐情報に対応するコードブロックとして特定することを特徴とする請求項1記載の分岐履歴記録システム。
【請求項3】
前記第2演算処理部は、前記分岐情報に対応するコードブロックが前記分岐制御プログラムに含まれていない場合、前記分岐制御プログラムに含まれているコードブロックをコピーすることで、前記分岐情報に対応するコードブロックを生成し、前記分岐情報に対応するコードブロックを前記分岐情報のハッシュ値と対応付けて前記ハッシュテーブルに登録することを特徴とする請求項2記載の分岐履歴記録システム。
【請求項4】
前記書き込みプログラムは、前記分岐情報を前記記憶部に書き込むコードを解析対象プログラムに埋め込むことで生成され、
前記分岐元命令アドレスは、前記解析対象プログラムにおける分岐元命令アドレスであり、
前記分岐先命令アドレスは、前記書き込みプログラムにおける分岐先命令アドレスであり、
前記第2演算処理部は、前記分岐情報に対応するコードブロックが前記分岐制御プログラムに含まれていない場合、前記分岐情報に対応するコードブロックのアドレスを、前記分岐情報と対応付けてコードブロック情報に記録し、
前記分岐履歴記録システムは、前記コードブロック情報と、前記分岐先命令アドレスを前記解析対象プログラムにおける分岐先命令アドレスに対応付けるアドレス対応情報とに基づいて、前記動作情報を分岐履歴情報に変換する変換部をさらに備え、
前記分岐履歴情報は、前記分岐元命令アドレスと前記解析対象プログラムにおける分岐先命令アドレスとの組を含むことを特徴とする請求項3記載の分岐履歴記録システム。
【請求項5】
前記記憶部は、複数の記憶領域を含むサイクリックバッファであり、
前記第1演算処理部は、前記複数の記憶領域のうちライトポインタが示す記憶領域に、前記分岐情報を書き込み、
前記第2演算処理部は、前記複数の記憶領域のうちリードポインタが示す記憶領域から、前記分岐情報を読み出すことを特徴とする請求項1乃至4の何れか1項に記載の分岐履歴記録システム。
【請求項6】
書き込みプログラムの実行時に発生する分岐動作の分岐元命令アドレスと分岐先命令アドレスとの組を含む分岐情報を、記憶部から読み出し、
複数のコードブロックのうち前記分岐情報に対応するコードブロックへ分岐する、
処理をコンピュータに実行させ、
前記分岐情報は、前記書き込みプログラムを実行することで前記記憶部に書き込まれ、
前記処理の実行時に、実行された命令の命令アドレスが取得され、前記実行された命令の命令アドレスを含む動作情報が記録されることを特徴とする分岐制御プログラム。
【請求項7】
コンピュータが、
書き込みプログラムを実行することで、前記書き込みプログラムの実行時に発生する分岐動作の分岐元命令アドレスと分岐先命令アドレスとの組を含む分岐情報を、記憶部に書き込み、
分岐制御プログラムを実行することで、前記記憶部から前記分岐情報を読み出し、前記分岐制御プログラムに含まれる複数のコードブロックのうち、前記分岐情報に対応するコードブロックへ分岐する、処理を実行し、
前記分岐制御プログラムの実行時に、実行された命令の命令アドレスを取得し、
前記実行された命令の命令アドレスを含む動作情報を記録する、
ことを特徴とする分岐履歴記録方法。

発明の詳細な説明【技術分野】
【0001】
本発明は、分岐履歴記録技術に関する。
続きを表示(約 1,000 文字)【背景技術】
【0002】
コンパイラにおける最適化方式として、PGO(Profile-Guided binary Optimization)と呼ばれる方式が知られている。PGOでは、実行ファイルの実行時における性能プロファイルに基づいて、実行ファイルが最適化される。PGOは、フィードバック駆動最適化(feedback-driven optimization)と呼ばれることもある。
【0003】
PGOによれば、実行時における分岐命令の分岐確率に基づいて、プログラムの基本ブロック(Basic Block,BB)を再配置することで、分岐ミス及び命令キャッシュミスを抑えることができる。BBは、コンパイラが扱うプログラム断片の基本単位である。BBの再配置は、性能改善効果が高い。
【0004】
コンパイラにおける最適化方式に関して、処理時間を短縮し、迅速に実行形式プログラムを生成することができるコンパイル処理装置が知られている(例えば、特許文献1を参照)。
【先行技術文献】
【特許文献】
【0005】
特開2000-81984号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
CPU(Central Processing Unit)にLBR(Last Branch Record)が実装されていない場合、分岐確率の計算に用いられる分岐履歴の情報を収集することが難しい。
【0007】
なお、かかる問題は、PGOを実施する場合に限らず、様々な目的のために分岐履歴の情報を収集する場合において生ずるものである。
【0008】
1つの側面において、本発明は、プログラムの実行時における分岐履歴を容易に記録することを目的とする。
【課題を解決するための手段】
【0009】
1つの案では、分岐履歴記録システムは、記憶部、第1演算処理部、第2演算処理部、及び取得部を含む。
【0010】
第1演算処理部は、書き込みプログラムを実行することで、書き込みプログラムの実行時に発生する分岐動作の分岐元命令アドレスと分岐先命令アドレスとの組を含む分岐情報を、記憶部に書き込む。
(【0011】以降は省略されています)

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

関連特許

個人
認証システム
7日前
個人
保証金管理システム
1日前
個人
鑑定証明システム
7日前
株式会社MRC
集客システム
1日前
個人
技術マッチングシステム
13日前
株式会社ネットブリッジ
展示販売装置
8日前
トヨタ自動車株式会社
分析装置
1日前
個人
文字入力方法、文字入力プログラム
14日前
ミサワホーム株式会社
プログラム
7日前
トヨタ自動車株式会社
部品管理装置
7日前
トヨタ自動車株式会社
作業評価装置
20日前
トヨタ自動車株式会社
車載機
7日前
個人
後払いポイントシステム「先用後利」
8日前
株式会社インザック
コンピュータシステム
13日前
株式会社LIFE
送迎管理システム
今日
株式会社デンソー
操作装置
8日前
株式会社日立国際電気
営業支援システム
20日前
株式会社リンクウェイ
情報処理システム
1日前
樋口工業有限会社
求人情報提供システム
14日前
株式会社スマイルリンク
報酬分配システム
7日前
株式会社シンミドウ
就職辞退対策システム
20日前
トヨタ自動車株式会社
工程表作成支援装置
今日
日本電気株式会社
情報処理方法および装置
20日前
日本電気株式会社
情報処理方法および装置
20日前
富士通株式会社
プロセッサパッケージ
7日前
メイビスデザイン株式会社
相互接続制御回路
20日前
株式会社デンソー
電子制御装置
今日
株式会社デンソー
電子制御装置
今日
株式会社ITP
仮想空間展示システム
20日前
個人
情報処理システム、情報処理方法及びプログラム
今日
個人
個人サポートシステム
20日前
トヨタ車体株式会社
車載機器の操作装置
20日前
個人
生産管理システム及び生産管理方法
20日前
日本圧着端子製造株式会社
読取システム
20日前
キヤノン株式会社
システム及び方法
今日
日本放送協会
情報処理装置及びプログラム
今日
続きを見る