歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux通用系統優化

Linux通用系統優化

日期:2017/2/28 18:02:51   编辑:Linux教程
針對系統的優化工作需要根據不同的系統采用不同的辦法。本文旨在描述通用的優化 Linux 的一些辦法。
一、編譯選項
“etc/profile”文件含有系統大量的環境和啟動程序的配置信息。你在該文件中進行的配置,可以通過申請全局環境變量來實現。因此,在該文件中設置優化標志,是一種明智的選擇。要想使x86程序獲得最佳性能,可以在編譯時,使用最佳的優化選項-O9 。許多程序的“Makefile”文件中已經含有-O2選項,而-O9使編譯器采用最高級別的優化。盡管它將增加最終程序的大小,但這樣可以獲得更高的運行速度。編譯時,使用“-fomit-frame-pointer”選項,程序運行時,訪問變量時將使用堆棧。但是,使用這一選項,生產的代碼將無法調試。使用“-mcpu=cpu_type”和“-march=cpu_type”選項,Gcc將針對這種型號CPU進行專門的優化,但生成的代碼只能在所指定的CPU或更高系列的CPU上運行。當我們采用 -O9來編譯程序時,或許文件字節數是最大的,但是往往其運行速度也是最快的。根據不同的機器架構,你可以把下面的語句加入 /etc/profile 。
對於CPU i686或PentiumPro、Pentium II、Pentium III等:
CFLAGS='-O9 -funroll-loops -ffast-math -malign-double -mcpu=pentiumpro
-march=pentiumpro -fomit-frame-pointer -fno-exceptions'
對於CPU i586或Pentium:
CFLAGS='-O3 -march=pentium -mcpu=pentium -ffast-math -funroll-loops
-fomit-frame-pointer -fforce-mem -fforce-addr -malign-double -fno-exceptions'
對於CPU i486:
FLAGS='-O3 -funroll-all-loops -malign-double -mcpu=i486 -march=i486
-fomit-frame-pointer -fno-exceptions'
在進行完以上設置之後,緊接著把“CFLAGS LANG LESSCHARSET”加入到“etc/profile”文件中的“export”行中:
export PATH PS1 HOSTNAME HISTSIZE HISTFILESIZE USER LOGNAME MAIL INPUTRC CFLAGS
LANG LESSCHARSET
然後,重新登錄,這時,環境變量CFLAGS已經被賦值,編譯器和其它配置工具可以使用它。對Pentium(Pro/II/III)的優化必須使用egcs或pgcc編譯器。Linux的缺省安裝中,已經裝上了egcs,所以無需擔心。
另外,安裝程序時,使用 tarball 格式總要比 RPM 格式來得好,因為, tarball 需要重新編譯,能針對你的機器架構作優化,得到最好的性能。
Copyright © Linux教程網 All Rights Reserved