1.優化概述
設計調優是對系統在巨集觀層面上「質」的優化。
**優化,jvm優化都是對系統微層面上「量」的優化。
設計優化的乙個顯著特點是,它可以規避某乙個元件的效能問題,而非改良該元件的實現。
比如:系統在元件a需要等待某事件e才能觸發乙個行為。如果元件a通過迴圈監控不斷檢測事件e是否發生,
其監控行為必須會占用部分系統資源,因此,開發人員必須在檢測頻率和資源消耗間取得平衡。
如果檢測頻率太低,雖然減少了資源消耗,但是系統實時反應性就會降低。如果進行**層的調優,就需要
優化檢測方法的實現以及求得乙個最為恰當的檢測頻率。
而若將此問題預留在設計層解決,便可以使用事件通知的方式將系統行為進行倒置。
在進行優化前,必須要有明確的已知問題和效能目標,決不能為了優化而優化。
在動手前,必須知道自己要幹什麼。任何優化都是為了解決具體的軟體問題。
優化程式效能(1)
我們知道,大多數編譯器,包括gcc,向使用者提供了一些對他們所使用的優化的控制,最簡單的控制就是指定優化級別。例如,命令列選項 og 呼叫是讓gcc使用一組基本的優化 以選項 o1 或更高 如 o2 或 o3 呼叫gcc會讓它使用更大量的優化。但是,優化編譯器存在著侷限性 編譯器必須很小心地對程式只...
Java程式效能優化20
確定 stringbuffer的容量 stringbuffer的構造器會建立乙個預設大小 通常是16 的字元陣列。在使用中,如果超出這個大小,就會重新分配記憶體,建立乙個更大的陣列,並將原先的陣列複製過來,再丟棄舊的陣列。在大多數情況下,你可以在建立stringbuffer的時候指定大小,這樣就避免...
優化程式效能
編寫高效程式需要兩個活動 第一,我們必須選擇一組最好的演算法和資料結構 第二,我們必須編寫出編譯器能夠有效優化以轉換成高效可執行 的源 這裡,我們主要講述後者。首先,我們討論一下為什麼要編寫高效程式。不難想象,如果本來要用 天執行完的程式,經過優化只需要 天就可執行完,這是一件多麼令人振奮的 事啊。...