10. 関連情報と参考資料のご紹介
© 2014 XLsoft Corporation. *その他の社名、製品名などは、一般に各社の表示、商標または登録商標です
31
プログラムのデバッグ(1)
ブレークポイント(赤丸で表示)の挿入:
動作を確かめたい行の左端をクリック
“Debug” 構成で [ リビルド ] して [ デバッグ開始 ] l デバッグ実行( Visual Studio デバッガー)
“Debug”
構成では、通常
/debug:fullが使用される。
© 2014 XLsoft Corporation. *その他の社名、製品名などは、一般に各社の表示、商標または登録商標です
32
プログラムのデバッグ(2)
デバッグを開始すると
[デバッグ
(D)]メニューの項目などが表示される(後述)
ブレークポイントの行で実行が止まり、1行
(1ステップ)ごとに進めることができる
関数に入った/出た後の変数値や条件分岐など
の挙動を確認し、バグとなっている記述を探す
© 2014 XLsoft Corporation. *その他の社名、製品名などは、一般に各社の表示、商標または登録商標です
33
プログラムのデバッグ(3)
[
デバッグ
(D)]メニュー
続行:次のブレークポイントまで処理を進める ステップイン:関数内の処理に移る
ステップオーバー:次の行に処理を進める
ステップアウト:関数から抜けるまで処理を進める
追加のウィンドウ
ローカル:現在の関数内の変数の型や値を表示
ウォッチ:任意の変数について型と値を表示
変数名を入れると、現時点での値を表示
© 2014 XLsoft Corporation. *その他の社名、製品名などは、一般に各社の表示、商標または登録商標です
34
ランタイム(実行中)エラー検出機能
/traceback
オプション:
致命的なエラーが発生した際に、問題のファイル名 やルーチン名、ソースコードの行番号を表示
/check:
オプション:
割付け可能配列の誤使用や配列範囲外へのアクセス、
未初期化変数へのアクセスなどプログラム実行中に
発生する問題をチェック
35
〜 内容 〜
1. 製品概要
2. インストールについて 3. ビルドと開発環境
4. コマンドラインからのビルド手順
5. Visual Studio からのビルドおよび実行手順
6. Visual Studio からのデバッグ方法 7. 最適化オプションと使用方法
‐ 自動ベクトル化 ‐ 自動並列化
8. Compaq Visual Fortran からの移行に関して
9. Visual Studio ソースエディター拡張機能
10. 関連情報と参考資料のご紹介
© 2014 XLsoft Corporation. *その他の社名、製品名などは、一般に各社の表示、商標または登録商標です
36
主要機能オプション一覧
機能項目
Windows Linux / Mac OSハイレベルな最適化(
HLO)
/O3 -O3プロシージャ―間の最適化(
IPO)
/Qipo -ipoプロファイルに基づく最適化(
PGO)
/Qprof-gen/Qprof-use -prof-gen -prof-use
自動ベクトル化
/arch:code/Qxcode /Qaxcode
-mcode -xcode -axcode
自動並列化
/Qparallel -parallelガイド付き自動並列化(
GAP)
/Qguide[n] -guide[n]関数
/ループ・プロファイラー
/Qprofile-functions/Qprofile-loops:<arg> -profile-functions -profile-loops=<arg>
スタティック解析(
SA)
/Qdiag-enable:sc[n] -diag-enable sc[n]浮動小数点演算の制御
/fp:keyword -fp-model keyword© 2014 XLsoft Corporation. *その他の社名、製品名などは、一般に各社の表示、商標または登録商標です
37
自動ベクトル化
ベクトル化とは・・・?
スカラー演算から SIMD(Single Instruction Multiple Data) 演算に変換して 処理効率の良いコードを実装する技術です。
+
a(i)
b(i) c(i)
+
c(i+7) c(i+6) c(i+5) c(i+4) c(i+3) c(i+2) c(i+1) c(i+0)
b(i+7) b(i+6) b(i+5) b(i+4) b(i+3) b(i+2) b(i+1) b(i+0) a(i+7) a(i+6) a(i+5) a(i+4) a(i+3) a(i+2) a(i+1) a(i+0) a
b c
+
[