0

人々はコンパイラでの動的最適化について話しています.それはどういう意味ですか? 誰かが私にそれについて公正な考えを与えることができますか?

4

1 に答える 1

0

静的最適化は、プログラムコード自体に基づいています。または、動的最適化はコード実行結果に基づいています。たとえば、C / C ++で長いswitchステートメントがある場合、case演算子の順序を変更することで最適化できます。これを行うには、プログラムを何度も実行し、このスイッチオペレータの統計を保持する必要があります。

最近のコンパイラの中には、プログラムを実行して実行時の統計を保存できる最適化フレームワークが含まれているものがあります。次に、この統計を使用してプログラムコードが最適化されます。

たとえば、VC ++プロファイルガイド付き最適化を参照してください:http: //msdn.microsoft.com/en-us/library/e7k32f4k.aspx

于 2011-06-18T06:23:21.727 に答える