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

Linux通用系統優化大全

日期:2017/2/28 17:26:15   编辑: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