效能評估與效能剖析

改善程式效能時的進行方式,下列何者最適當?

  1. A先測量以找出花費時間的地方,改善該處,改善後再測量一次以確認效果
  2. B推測看起來慢的地方,不經測量就改寫
  3. C對所有函式都進行相同程度的最佳化
查看答案與解析

正確答案:A. 先測量以找出花費時間的地方,改善該處,改善後再測量一次以確認效果

對於哪裡慢的推測,即使是有經驗的人也常常猜錯。應先以剖析器或效能計數器測量,查明花費大量時間的地方及其原因(運算、記憶體、分支、輸入輸出等)。加入改善後,再以相同條件測量一次,確認是否真的變快,以及其他部分是否變慢。這樣的反覆過程,就是確實提升效能的方法。

  • A. 正確。反覆進行測量、改善、確認。
  • B. 推測常常會猜錯。
  • C. 將沒有花費時間的部分最佳化是沒有效果的。
練習這個領域 前往領域頁面

效能評估與效能剖析的其他題目

  1. 在處理大量資料的程式中,最有可能得到最大加速的改善是下列何者?
  2. 在軟體開發中,每次變更都自動執行基準測試並記錄結果,其目的下列何者正確?
  3. 在筆記型電腦上測量基準測試,結果發現即使是同一個程式,每次的結果也有很大的變動。下列關於CPU方面可能原因與其對策的組合,何者正確?
  4. 在多核心或NUMA系統上測量效能時,有時會將執行緒固定在特定的核心上(設定親和性,affinity),其理由下列何者正確?
  5. 分析使用GPU的程式效能時,最先該確認的事項,下列何者最適當?