LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 12948|回复: 38

如何让你的FreeBSD系统达到最优化?

[复制链接]
发表于 2003-9-4 22:54:54 | 显示全部楼层 |阅读模式
一个最重要的答案就是:运行针对你cpu型号编译的程序!
我们知道,FreeBSD中大部分软件都在ports下编译。如何设定编译时的参数呢?就是/etc/make.conf这个配置文件!
打开/etc/make.conf这个文件,找到这两行:
#CFLAGS= -O -pipe


#CXXFLAGS+= -fmemoize-lookups -fsave-memoized


怎么改?就改CFLAGS与CXXFLAGS参数!首先把前面的“#”号去掉,然后再参照下面的表:
CFLAGS= -march=i386 -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=i386 -O3 -pipe -fomit-frame-pointer

i486 (Intel):


CFLAGS= -march=i486 -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=i486 -O3 -pipe -fomit-frame-pointer

Pentium 1 (Intel)


CFLAGS= -march=pentium -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=pentium -O3 -pipe -fomit-frame-pointer

Pentium MMX (Intel)


CFLAGS= -march=pentium-mmx -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=pentium-mmx -O3 -pipe -fomit-frame-pointer

Pentium PRO (Intel)


CFLAGS= -march=pentiumpro -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=pentiumpro -O3 -pipe -fomit-frame-pointer

Pentium II (Intel)


CFLAGS= -march=pentium2 -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=pentium2 -O3 -pipe -fomit-frame-pointer

Celeron (Mendocino), aka Celeron1 (Intel)


CFLAGS= -march=pentium2 -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=pentium2 -O3 -pipe -fomit-frame-pointer

Pentium III (Intel)


CFLAGS= -march=pentium3 -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=pentium3 -O3 -pipe -fomit-frame-pointer

Celeron (Coppermine) aka Celeron2 (Intel)


CFLAGS= -march=pentium3 -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=pentium3 -O3 -pipe -fomit-frame-pointer

Celeron (Willamette?) (Intel)


CFLAGS= -march=pentium4 -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=pentium4 -O3 -pipe -fomit-frame-pointer

Pentium 4 (Intel)


CFLAGS= -march=pentium4 -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=pentium4 -O3 -pipe -fomit-frame-pointer

Eden C3/Ezra (Via)


CFLAGS= -march=i586 -m3dnow -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=i586 -m3dnow -O3 -pipe -fomit-frame-pointer

K6 (AMD)


CFLAGS= -march=k6 -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=k6 -O3 -pipe -fomit-frame-pointer

K6-2 (AMD)


CFLAGS= -march=k6-2 -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=k6-2 -O3 -pipe -fomit-frame-pointer

K6-3 (AMD)


CFLAGS= -march=k6-3 -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=k6-3 -O3 -pipe -fomit-frame-pointer

Athlon (AMD)


CFLAGS= -march=athlon -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=athlon -O3 -pipe -fomit-frame-pointer

Athlon-tbird, aka K7 (AMD)


CFLAGS= -march=athlon-tbird -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=athlon-tbird -O3 -pipe -fomit-frame-pointer

Athlon-tbird XP (AMD)


CFLAGS= -march=athlon-xp -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=athlon-xp -O3 -pipe -fomit-frame-pointer

Athlon 4(AMD)


CFLAGS= -march=athlon-4 -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=athlon-4 -O3 -pipe -fomit-frame-pointer

Athlon XP (AMD)


CFLAGS= -march=athlon-xp -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=athlon-xp -O3 -pipe -fomit-frame-pointer

Athlon MP (AMD)


CFLAGS= -march=athlon-mp -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=athlon-mp -O3 -pipe -fomit-frame-pointer

根据你cpu的型号选择。好了,就这样。
Good luck!
发表于 2003-9-4 22:59:54 | 显示全部楼层
这个好象看到过多次了,跟linux的差不多,始终不赶试试

不知道使用会不会引起系统不稳定的状态,还有原来听 DimAngel兄讲他用过-03优化,但编译内核后系统就挂了,不知道哈兄用过没,会出现这样的问题嘛,
发表于 2003-9-4 23:04:32 | 显示全部楼层
奇怪,我怎么没有/etc/make.conf,看得很清楚了。:ask :ask
发表于 2003-9-5 00:16:09 | 显示全部楼层
我的也没有,只在
/etc/deafults/make.conf
有一个
 楼主| 发表于 2003-9-5 06:42:44 | 显示全部楼层
可以把/etc/default/make.conf拷至/etc目录
我的是intel c3 cpu,则采用以下参数:
CFLAGS= -march=pentium3 -O3 -pipe -fomit-frame-pointer
CXXFLAGS+= -march=pentium3 -O3 -pipe -fomit-frame-pointer
ports中用gcc3编译的软件都是用这个参数,至目前也没发现什么异常.
发表于 2003-9-5 06:49:48 | 显示全部楼层
我现在用的gcc是2.9.3好像,看来要先升级一下了.
发表于 2003-9-29 19:54:56 | 显示全部楼层
我的etc/make.conf是有的,不过只有下面几行
  1. # -- use.perl generated deltas -- #
  2. # Created: Sat Sep 20 14:57:34 2003
  3. # Setting to use base perl from ports:
  4. PERL_VER=5.6.1
  5. PERL_VERSION=5.6.1
  6. PERL_ARCH=mach
  7. NOPERL=yo
  8. NO_PERL=yo
  9. NO_PERL_WRAPPER=yo
复制代码

这个怎么设置呢?

我用的是FreeBSD5.1 release, KDE3.1.2
发表于 2003-9-29 20:00:02 | 显示全部楼层
#cp /etc/defaults/make.conf /etc
发表于 2003-9-29 20:32:42 | 显示全部楼层
/etc/defaults/下没有make.conf, 晕倒

root@hero:/%162>cd /etc/defaults/
root@hero:/etc/defaults%163>ls
at              pccard.conf     periodic.conf   rc.conf

咋办泥?
发表于 2003-9-29 20:36:53 | 显示全部楼层
自己建立一个
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表