プロシージャー間の最適化を使用してパフォーマンスを向上する

コンパイラーは、ソース行の境界を越えて最適化できる場合、インライン展開などの追加の最適化を実行することができます。インライン展開は、-ipo オプションで有効になります。

-ipo オプションを使用してプログラムを再コンパイルし、プロシージャー間の最適化を有効にします。

icc -std=c99 -vec-report2 -DNOALIAS -DALIGNED -ipo Multiply.c Driver.c -o MatVector

ベクトル化メッセージは Driver.c (行 155) のインライン展開の場所を示していることに注目してください。

Driver.c(145) (列 2): リマーク: ループはベクトル化されませんでした: 内部ループではありません。
Driver.c(155) (列 3): リマーク: ループはベクトル化されませんでした: 内部ループではありません。
Driver.c(155) (列 3): リマーク: ループがベクトル化されました。
Driver.c(164) (列 2): リマーク: ループがベクトル化されました。
Driver.c(54) (列 2): リマーク: ループはベクトル化されませんでした: 内部ループではありません。
Driver.c(55) (列 3): リマーク: ループはベクトル化されませんでした: ベクトル化は可能ですが非効率です。
Driver.c(60) (列 3): リマーク: ループがベクトル化されました。
Driver.c(69) (列 2): リマーク: ループはベクトル化されませんでした: ベクトル化は可能ですが非効率です。

ここで、実行ファイルを開始して、実行時間を記録してください。

戻る: データのアライメントによりパフォーマンスを向上する 次へ: 追加の演習


このヘルプについてのフィードバックを送信

© 2010 Intel Corporation. 無断での引用、転載を禁じます。