我有一個使用visual studio 2005用C++編寫的應用程序。該應用程序有一定的性能問題。我想探索在哪裏。我需要深入瞭解應用程序大部分時間使用的類/方法/行。這可以通過WPA完成嗎?如果是的話,你能給我一個指向文檔的指針嗎?作爲性能分析器的Windows性能分析工具的使用情況
回答
不,WPT利用Windows事件,它只會幫助您診斷問題,當Windows是您的減速的原因。您當然不會爲您的代碼獲取任何診斷信息。你需要的是一個真正的分析器。好的花錢。查詢this thread獲取更多建議。
嘗試YourKit .net profiler。最近我嘗試了這個以及其他幾個,但是這是我設法與我的C++/CLI項目(混合使用託管代碼和非託管代碼)一起工作的唯一一個。
[編輯]糟糕;我將WPA閱讀爲WPF,並假設您想要剖析一些.net代碼。
找出不必要的花費時間的最簡單方法是stackshots,您可以通過Visual Studio中的「暫停」按鈕輕鬆獲得該方法。
你不需要測量;所有你需要做的就是在行爲中捕捉它。如果你發現它在兩個或更多的堆疊照片上做了某些事情,並且這是你可以避免的事情,那麼你將節省大量的時間。而且,你可以重複這個過程,因爲當你消除其他問題時,起初很小的問題會「起泡」。
很好的建議,但不適合我的情況。該應用程序在Windows上運行良好(等待用戶輸入的時間爲99%),性能問題僅在嵌入式系統中可見,處理器速度較慢,而且我根本沒有調試器/分析器。好的分析器可以提供幫助,因爲它可以在0.5%到0.05%的時間間隔內進行。 – danatel 2010-02-01 20:25:23
我在這種情況下做的是在每個UI驅動的處理周圍打包一個循環(10倍或100倍),以便「放大」正在發生的事情。這與減慢處理器的效果相同。調低代碼至最短時間,然後刪除循環。 – 2010-02-02 20:23:11
- 1. 在不使用分析器的情況下測量SQL性能
- 2. 性能分析器
- 3. Python的工具,性能分析
- 4. 好的F#性能分析工具
- 5. 分析SQL Server性能的工具
- 6. 性能分析
- 7. 定量系統性能分析工具?
- 8. Android性能分析和監控工具
- 9. VS 2015:性能嚮導中禁用性能分析工具
- 10. Windows性能分析器崩潰
- 11. 高性能java分析器
- 12. CSS性能分析器?
- 13. Rails性能分析器
- 14. SQL性能分析
- 15. VsInstr性能分析
- 16. OpenMP性能分析
- 17. CSS性能分析
- 18. jmeter性能分析
- 19. JPQL性能分析
- 20. 你能爲PHP推薦性能分析工具嗎?
- 21. KEXT的性能分析
- 22. CouchDB的性能分析
- 23. NET中的性能分析
- 24. HttpHandler的性能分析
- 25. Java性能分析,性能調整和內存分析練習
- 26. 良好的動手與NSight 3.0性能分析器/分析器
- 27. 如何使用儀器分析內存使用情況和性能?
- 28. 性能測試與性能分析
- 29. 性能分析方法性能
- 30. CSV分析器的性能瓶頸
謝謝。我迫切希望強制WPT閱讀我的符號表。 – danatel 2010-02-01 20:20:38