LinuxSir.cn,穿越时空的Linuxsir!

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

AMD 3000+该如何选CFLAGS呢?

[复制链接]
发表于 2008-5-31 16:28:59 | 显示全部楼层 |阅读模式
我的CPU是
AMD Athlon(tm) 64 Processor 3000+
该如何选择CFLAGS呢?

我现在的是:CFLAGS="-march=athlon64 -O2 -pipe -fomit-frame-pointer"
这样选择有没有问题呢?

emerge --info

  1. pjq@localhost ~ $ emerge --info
  2. Portage 2.1.4.4 (default/linux/x86/2008.0/desktop, gcc-4.1.2, glibc-2.6.1-r0, 2.6.24-gentoo-r8 i686)
  3. =================================================================
  4. System uname: 2.6.24-gentoo-r8 i686 AMD Athlon(tm) 64 Processor 3000+
  5. Timestamp of tree: Sat, 31 May 2008 03:48:01 +0000
  6. ccache version 2.4 [enabled]
  7. app-shells/bash:     3.2_p33
  8. dev-java/java-config: 1.3.7, 2.1.6
  9. dev-lang/python:     2.4.4-r13, 2.5.1-r5
  10. dev-python/pycrypto: 2.0.1-r6
  11. dev-util/ccache:     2.4-r7
  12. sys-apps/baselayout: 2.0.0
  13. sys-apps/openrc:     0.2.2
  14. sys-apps/sandbox:    1.2.18.1-r2
  15. sys-devel/autoconf:  2.13, 2.61-r1
  16. sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1
  17. sys-devel/binutils:  2.18-r1
  18. sys-devel/gcc-config: 1.4.0-r4
  19. sys-devel/libtool:   1.5.26
  20. virtual/os-headers:  2.6.23-r3
  21. ACCEPT_KEYWORDS="x86"
  22. CBUILD="i686-pc-linux-gnu"
  23. CFLAGS="-march=athlon64 -O2 -pipe -fomit-frame-pointer"
  24. CHOST="i686-pc-linux-gnu"
  25. CONFIG_PROTECT="/etc /var/bind"
  26. CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
  27. CXXFLAGS="-march=athlon64 -O2 -pipe -fomit-frame-pointer"
  28. DISTDIR="/usr/portage/distfiles"
  29. FEATURES="ccache distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"
  30. GENTOO_MIRRORS="http://61.135.158.199"
  31. LANG="en_US.UTF-8"
  32. LDFLAGS="-Wl,-O1,--as-needed"
  33. LINGUAS="zh_CN"
  34. MAKEOPTS="-j2"
  35. PKGDIR="/usr/portage/packages"
  36. PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
  37. PORTAGE_TMPDIR="/var/tmp"
  38. PORTDIR="/usr/portage"
  39. PORTDIR_OVERLAY="/usr/portage/local/myebuilds"
  40. SYNC="rsync://61.135.158.199/gentoo-portage"
  41. USE="3dnow 3dnowext X aac acl acpi alsa apache2 avahi avi bash-completion berkdb bluetooth branding bzip2 cairo cdr cjk cli cracklib crypt dbus dri dvd dvdr dvdread emboss encode esd evo fam firefox gdbm gif gnome gpm gstreamer gtk hal hda-intel iconv isdnlog jpeg kerberos ldap libnotify mad midi mikmod mms mmx mmxext mp3 mpd mpeg mudflap ncurses nls nptl nptlonly nv nvidia ogg opengl openmp pam pcre pdf perl png ppds pppd python qq qt3support quicktime readline real reflection rtsp sdl session spell spl sse sse2 ssl startup-notification svg tcpd tiff truetype unicode vorbis wav win32codecs wma wmv x86 xml xorg xv xvmc zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="zh_CN" USERLAND="GNU" VIDEO_CARDS="nvidia"
  42. Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS


复制代码
发表于 2008-5-31 16:59:37 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-31 17:10:16 | 显示全部楼层
最接近的信息,看来应该去掉64了?
  1. Athlon 64 (AMD)
  2. 32 bit
  3. CHOST="i686-pc-linux-gnu"
  4. CFLAGS="-march=athlon -O2 -pipe -fomit-frame-pointer"
  5. CXXFLAGS="${CFLAGS}"
  6. 64 bit
  7. cpu family  :15
  8. model  :4
  9. model name  :AMD Athlon(tm) 64 Processor 3200+
  10. stepping  :8
  11. CHOST="x86_64-pc-linux-gnu"
  12. CFLAGS="-march=k8 -O2 -pipe"
  13. CXXFLAGS="${CFLAGS}"
  14. # cat /proc/cpuinfo
  15. processor       : 0
  16. vendor_id       : AuthenticAMD
  17. cpu family      : 15
  18. model           : 63
  19. model name      : AMD Athlon(tm) 64 Processor 3200+
  20. stepping        : 2
  21. cpu MHz         : 1999.821
  22. cache size      : 512 KB
  23. fpu             : yes
  24. fpu_exception   : yes
  25. cpuid level     : 1
  26. wp              : yes
  27. flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt lm 3dnowext 3dnow pni lahf_lm
  28. bogomips        : 4001.79
  29. TLB size        : 1024 4K pages
  30. clflush size    : 64
  31. cache_alignment : 64
  32. address sizes   : 40 bits physical, 48 bits virtual
  33. power management: ts fid vid ttp
复制代码
回复 支持 反对

使用道具 举报

发表于 2008-5-31 18:16:03 | 显示全部楼层
恩,看起来安全的选择是去掉64.我没有这个芯片。所以不是很清楚。
回复 支持 反对

使用道具 举报

发表于 2008-6-1 08:45:36 | 显示全部楼层
顺便问一下。双核是不是比单内核cpu编译速度要快?
回复 支持 反对

使用道具 举报

发表于 2008-6-1 09:17:26 | 显示全部楼层
Post by 小楼东风;1857494
顺便问一下。双核是不是比单内核cpu编译速度要快?


要在make.conf加上MAKEOPTS="-j3"
很多包在双核情况下可以并行编译,速度会快很多。
回复 支持 反对

使用道具 举报

发表于 2008-6-1 13:32:05 | 显示全部楼层
athlon64 改为k8
回复 支持 反对

使用道具 举报

发表于 2008-6-1 14:48:36 | 显示全部楼层
Post by Tinow;1857500
要在make.conf加上MAKEOPTS="-j3"
很多包在双核情况下可以并行编译,速度会快很多。

是说同时开2个emerge吗?还是说编译单个软件速度会大大加快,比如emerge -e world的时候。那样我好像等4核降价再升级更好,那好像比2核更快了。
回复 支持 反对

使用道具 举报

发表于 2008-6-1 18:16:47 | 显示全部楼层
Post by 小楼东风;1857631
是说同时开2个emerge吗?还是说编译单个软件速度会大大加快,比如emerge -e world的时候。那样我好像等4核降价再升级更好,那好像比2核更快了。

不是说同时开 2 个 emerge。是说单个速度加快。4 核猜测是比 2 核快,但我没有用过,不确定。之前有一个讨论 Openoffice 编译的讨论,如果您有兴趣可以看看。
回复 支持 反对

使用道具 举报

发表于 2008-6-4 20:43:53 | 显示全部楼层
[edit] Intel Core 2 Duo/Quad / Xeon 51xx/53xx, Pentium Dual-Core Exxxx

32 bit profile (x86)

CHOST="i686-pc-linux-gnu"
CFLAGS="-march=prescott -O2 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
64 bit profile (amd64)

CHOST="x86_64-pc-linux-gnu"
CFLAGS="-march=nocona -O2 -pipe"
CXXFLAGS="${CFLAGS}"

32位用-march=nocona 不好吗?我记得gcc4.2最接近的就是nocona 。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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