2
私は以下の質問をしています:NGEN x86対.NET実行可能ファイルを含むx64
私の.NETアセンブリはx86モードでコンパイルされています。 x64 WindowsシステムでNGENのパフォーマンス上の利点を引き続き活用できますか? x86アセンブリはx64でネイティブコードにコンパイルされますか?
私は以下の質問をしています:NGEN x86対.NET実行可能ファイルを含むx64
私の.NETアセンブリはx86モードでコンパイルされています。 x64 WindowsシステムでNGENのパフォーマンス上の利点を引き続き活用できますか? x86アセンブリはx64でネイティブコードにコンパイルされますか?
x86でコンパイルされたアセンブリは、64ビットシステムでiwow64を実行しますが、NGCPに関係なく、AnyCPUでコンパイルされたアセンブリはネイティブで実行されます。 x86用にコンパイルされたアセンブリは、64ビットシステム上で32ビットアセンブリをロードでき、AnyCPU用にコンパイルされたコードは32ビットのDLLをロードしません。
NGENを使用すると、アセンブリのJITコンパイルが回避され、x64システムでもx86でコンパイルされるとアセンブリはネイティブx86コードになります。
特定のターゲットプラットフォームでNGENを実行する必要がありますが、どうしてですか?注:NGENはJITを減らすだけです...それはいくつかの場合に役立ちますが、魔法のパフォーマンスの弾丸ではありません。 –
アーキテクチャに応じて異なるNGENバージョンを実行する必要がありますか?それとも普遍的なものがありますか? – SharpAffair
正直言って、分かりません。 –