這幾天使用Performance Wizard搞了一下我的那個東西,結果發現瓶頸在一個很不可思議的地方,當然總的原因是因為虛函數調太多了,所以得修改修改。不過還好,還是有不破壞設計的辦法的。
Performance Wizard是Visual Studio自帶的一個工具。使用的時候很簡單,首先找Analyze -> Launch Performance Wizard...,出來一個向導。第一個頁面選你要做檢查的工程,第二個頁面在Sampling和Instrumentation之間作選擇(我一般選擇后面的),完成了之后就會出來一個叫Performance Explorer的窗口,里面有建立好的性能檢測文件,當然是不保存的,一般來說也不用保存。Performance Explorer的根節點跟你的解決方案同名,右鍵選擇Properties,在Sampling的Sample Event里面選擇Performance Counter,好了大功告成。
想啟動很簡單,首先將你的編譯指向Release,然后選擇Performance Explorer根節點下面Targets目錄下面的一個跟工程同名的節點,點擊Performance Explorer工具欄上有綠色箭頭的按鈕,然后就開始了。上面的配置將性能分析指到了最精確的一種方法,因此運行的時候慢,而且產生的文件特別大,建議在超級好的機器上使用。不然的話就只好使用Sampling而不是Instrumentation了。這個時候Performance Wizard會編譯你的工程然后執行一直到結束,執行的過程中記錄下很多信息。注意在Vista或以上操作系統,Visual Studio要用管理員權限打開才能正常使用Performance Wizard。
之后就一直等,完了就會有一張超級詳細的報表出來,這個時候切換到“Call Tree”報表,上面一個火苗樣子的工具欄按鈕按下去就自定尋找性能瓶頸并定位。這個Call Tree就是Call Stack在整個程序執行過程中的變化情況,附加信息非常詳細,非常好用。
慢慢享受吧,啊哈哈。
posted on 2010-04-16 20:42
陳梓瀚(vczh) 閱讀(3106)
評論(10) 編輯 收藏 引用 所屬分類:
VL++3.0開發紀事