2011-06-24 113 views
6

我試圖使用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應用程序」

命令輸出說訪問被拒絕。

我有兩個問題:

  1. 我怎樣才能運行這個程序,這樣我可以執行原生版本。
  2. 我將如何去分析它?看起來我無法從VS2010探查器中找到該文件夾​​,因爲它無法在資源管理器中看到。

謝謝。

+1

注NGEN只是取代了JIT一步 - 它仍然是一個管理應用程序等。如果您有冷啓動性能問題,這可能幫助,但在大多數情況下,NGEN不會提供幫助。它不會讓你的循環等更快。 –

+0

應用程序本身非常大,所以我只是想弄清楚如何使它更具性能。在NGEN實際上沒有幫助的情況下,這非常好,但我只是想盡我所能去做。首先配置文件 – sohum

+0

(你的應用程序,現在,沒有NGEN)。 *然後*(並且只有這樣)行動。否則,你正在浪費時間,可以更快地使它更快。我真的不希望NGEN會在這裏幫助很多。 –

回答