LinuxSir.cn,穿越时空的Linuxsir!

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

我的cpu的march该选什么?

[复制链接]
发表于 2009-9-28 09:42:56 | 显示全部楼层 |阅读模式
[wu@myhost ~]$ cat  /proc/cpuinfo
processor        : 0
vendor_id        : GenuineIntel
cpu family        : 6
model                : 15
model name        : Genuine Intel(R) CPU           T1600  @ 1.66GHz
stepping        : 13
cpu MHz                : 1666.511
cache size        : 1024 KB
physical id        : 0
siblings        : 1
core id                : 0
cpu cores        : 1
apicid                : 0
initial apicid        : 0
fpu                : yes
fpu_exception        : yes
cpuid level        : 10
wp                : yes
flags                : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni dtes64 monitor ds_cpl tm2 ssse3 cx16 xtpr pdcm lahf_lm
bogomips        : 3334.89
clflush size        : 64
cache_alignment        : 64
address sizes        : 36 bits physical, 48 bits virtual
power management:
-----------------------------------
下面的摘自LFS6.4;第一遍
由于 Glibc 不再支持 i386,Glibc 的开发者提示在为 X86 机器构建时使用编译选项 -march=i486,尽管其他方法也能做到,但是测试显示,最好的办法是将它传递给参数“CFLAGS”。为了不完全覆盖 Glibc 内部构建系统使用的 CFLAGS,使用特殊文件 configparms 将所需新选项附加到其原内容之后。由于设置了参数 -march,参数 -mtune 也会发生改变,使用 -mtune=native 将其设置为一个合理的值。

echo "CFLAGS += -march=i486 -mtune=native" > configparms
接下来,配置 Glibc 为编译做准备:

../glibc-2.8-20080929/configure --prefix=/tools \
    --disable-profile --enable-add-ons \
    --enable-kernel=2.6.0 --with-binutils=/tools/bin \
    --without-gd --with-headers=/tools/include \
    --without-selinux[wu@myhost ~]$
发表于 2009-9-28 09:53:12 | 显示全部楼层
这个是Atom么?

应该是x86和x86_64(amd64)都行,看到flags中的lm了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-9-28 09:59:46 | 显示全部楼层
是神舟的本子
上面写:因特尔赛扬双核处理器T1600
CPU的类型我不熟悉。
我试过x86-64,
试试你的:
x86_64
回复 支持 反对

使用道具 举报

发表于 2009-9-28 10:02:57 | 显示全部楼层
就是e2160的缩水版,或是赛扬420的双核版,-march=core
回复 支持 反对

使用道具 举报

发表于 2009-9-29 11:21:31 | 显示全部楼层
-march=native 目前是适合所有 x86 平台CPU的。不用考虑太多。

有了native选项,其实今后只有针对 arm/mips 等架构的时候才需要考虑这个问题。
回复 支持 反对

使用道具 举报

发表于 2009-9-30 16:16:51 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2009-10-1 09:15:33 | 显示全部楼层
Atom 性能本来就差,跑 x86_64 还得去翻译代码来执行,真的 #@$%$#\!

据闻下版 gcc-4.5 将有针对性的 -march 供此鸡肋 U 用。
回复 支持 反对

使用道具 举报

发表于 2009-10-3 19:51:10 | 显示全部楼层
同问:
我的笔记本CPU是 CORE DUO T2350,gcc 中好象并没有这个选项,显然不能够用 CORE2,所以为了谨慎每次编译都是用的
-march=pentium-m
谁知道有更好的选择吗?因为这个U应该是支持 SSE3 的,用PENTIUM-M差别较大了。
回复 支持 反对

使用道具 举报

发表于 2009-10-4 12:55:46 | 显示全部楼层
pentium4 应该比 pentium-m 好一点吧

如果支持 sse3 应该可以选 -march=prescott

这些在 6 楼的连结已有详细说明
回复 支持 反对

使用道具 举报

发表于 2009-10-4 23:55:26 | 显示全部楼层
Post by d00m3d;2032892
pentium4 应该比 pentium-m 好一点吧

如果支持 sse3 应该可以选 -march=prescott

这些在 6 楼的连结已有详细说明


看到那个信息了,看起来确实应当用 prescott 。不过在内核编译的架构选项中,还是只有pentium-m,而没有 prescott 或者 core,不清楚为什么。
回复 支持 反对

使用道具 举报

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

本版积分规则

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