.NETフレームワークJITおよびブルドーザーの特別な指示
質問
AMD Bulldozerはサーバースペースで成功していますが、デスクトップではあまり機能していません。私が理解しているように、これの主な原因は、デスクトップアプリケーションではまだ使用されていないブルドーザーの特別な指示を使用するようにサーバーアプリケーションが書き直されていることです。 Jurt in Time Compiler(JIT)がこれらを4.5に使用することを期待しますか、それとも4.0に戻ることができますか?
明確化:私の理解では、JITが実行されているマシンのコンパイルをコンパイルし、IL命令にコンパイルされたマシンではありません。このJITアプリケーションのために、実際には通常のコードよりも高いパフォーマンスを持つことができると主張されています。これは、バイナリにまっすぐにリンクされています。
解決
残念ながら、.NET JITは、パフォーマンスに関しては特に洗練されていません。
- サーバーでも、C ++コンパイラが行うような大型の最適化は行われませんが、C ++コンパイラと同じ情報があります。特定のことをしません
- フロートを使用した一部の操作にのみ特別な指示を使用します
- X64には、無効な最適化が行われているという質の高い問題があります
- エスケープ分析のようないくつかの明らかな最適化が欠落しています
JITは特に高い予算で開発されていないようです。ですから、そのような専門的な指示が使用されているのを見るとは思いません。
所属していません StackOverflow