我試圖使用NGen來查看我的應用程序的本機圖像是否比.NET的運行得更好。但是,我在確定要做什麼時遇到了一些麻煩。ngen和剖析
我的應用程序被稱爲MyApp.exe它有幾個依賴DLL。
我打開了VS 2010命令提示符,運行:遇到了
ngen install MyApp.exe /Profile
命令輸出沒有提出任何問題。
然後我去C:\ Windows \ assembly嘗試運行EXE,但是我找不到它(我在Windows 7上)。有點挖掘告訴我使用命令提示符瀏覽到C:\ Windows \ assembly \ NativeImages_v4.0.30319_32。我最終巧妙地找到MyApp.ni.exe,但當然無法在資源管理器中打開包含文件夾。
我試圖運行程序,它告訴我:
「C:\ WINDOWS \裝配\ NativeImages_v4.0.30319_32 ... \ MyApp.ni.exe不是有效的Win32應用程序」
命令輸出說訪問被拒絕。
我有兩個問題:
- 我怎樣才能運行這個程序,這樣我可以執行原生版本。
- 我將如何去分析它?看起來我無法從VS2010探查器中找到該文件夾,因爲它無法在資源管理器中看到。
謝謝。
注NGEN只是取代了JIT一步 - 它仍然是一個管理應用程序等。如果您有冷啓動性能問題,這可能幫助,但在大多數情況下,NGEN不會提供幫助。它不會讓你的循環等更快。 –
應用程序本身非常大,所以我只是想弄清楚如何使它更具性能。在NGEN實際上沒有幫助的情況下,這非常好,但我只是想盡我所能去做。首先配置文件 – sohum
(你的應用程序,現在,沒有NGEN)。 *然後*(並且只有這樣)行動。否則,你正在浪費時間,可以更快地使它更快。我真的不希望NGEN會在這裏幫助很多。 –