[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 03/25 05:01 / Filesize : 224 KB / Number-of Response : 1044
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Visual Studio 2015 Part7



716 名前:デフォルトの名無しさん mailto:sage [2016/12/13(火) 19:06:35.31 ID:Lu9RYSaI.net]
VC++のPGOビルドについてどなたかお詳しい方いませぬか?

PGOビルドのためのテスト実行を毎回行いたくありません。
テスト実行して収集したpgcファイルまたはそれをマージしたpgdファイルを使いまわすことはできないのでしょうか?

ttps://msdn.microsoft.com/ja-jp/library/ms235569.aspx
PGO Manager は、古いプロファイル データでは使用できません。 .pgc ファイルを .pgd ファイルにマージするには、その .pgc ファイルが、.pgd ファイルを生成したのと同じリンク呼び出しで作成された実行可能ファイルによって生成される必要があります。

とあります。
確かに、古いpgcをバックアップしておき、意図的にそれを配置してビルドしてみると以下のように怒られました。
PGOMGR : 警告 PG1052: インストルメンテーション データ ファイル '....MFCApplication1\Release\MFCApplication1!1.pgc' は異なるプロファイル データベースに属しています。

なのでpgcだけ退避しておいて再利用するというのは難しそうですね。
ということでマージ済みpgdを再利用する方向を考えます。

最適化設定のビルド構成をリビルドしようとするとpgdファイルが無いので怒られます。
そこで
クリーン → 予め退避しておいたマージ済みpgdを配置 → ビルド
とやってみたところ、問題なくリンクされました。

これは危険なお作法でしょうか?
バイナリ内のクラスや関数設計が変わったりしたとき、pgdが古いことによる弊害が起こりうるんでしょうか?

或いは、そもそも思想が間違ってますでしょうか?
(PGOビルドのためには毎回テスト実行が必要という考え方が一般的?)


ソリューション構成を以下の2つに分けてGUIから検証しています。
・テスト実行用ビルド(pgd付き)
・pgcとpgdに基づいた最適化ビルド

よろしくお願いします。






[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<224KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef