QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1719|回复: 17

求助如何让GCC编译器根据CPU类型优化代码

[复制链接]
发表于 2006-6-12 18:48:47 | 显示全部楼层 |阅读模式
求助如何让GCC编译器根据CPU类型优化代码
看过篇文章说在/etc/make.conf里面写入cpu类型代码就可以针对优化........但是后面跟贴的说只有某个发行版(不记得是哪个了)才会去读make.conf.
所以想请问一下 在.configure的时候能不能就告诉gcc cpu类型针对优化~~~~~~~~~~~~~~~~~~~~~~~~~~~~
瞎想~~~不知道行不行~~~~~~~~~~求助~~~谢谢~~~~~~~~~


反正都进来了不如帮我顶一下~~~~~~~~~~~~一个人顶被叫灌水就不好拉~~~~~~~~~~~~~~~~~~~ :D  :D  :D
 楼主| 发表于 2006-6-12 18:50:03 | 显示全部楼层
另外还有的就是~~我在/etc/make.conf里面写入cpu类型~~在编译make 的时候会自己重启...........不知道是什么问题~~~~~移除调make.conf就没事~~~~~~~
回复

使用道具 举报

发表于 2006-6-12 18:57:11 | 显示全部楼层
针对CPU的优化,GCC已经帮你做了判断并优化了,你只要用几个参数就行了
具体要查一下它的帮助,几千个参数
回复

使用道具 举报

发表于 2006-6-12 18:59:47 | 显示全部楼层
http://www.linuxsky.net/viewarticle.php?id=378
回复

使用道具 举报

 楼主| 发表于 2006-6-12 19:06:49 | 显示全部楼层
[quote:266c53deae="fox_eagle2003"]针对CPU的优化,GCC已经帮你做了判断并优化了,你只要用几个参数就行了
具体要查一下它的帮助,几千个参数 [/quote]

-_- 我就是./configure --help过 被吓死........才跑上来问的...............gcc实在是太伟大了~~~~~~~~~~~
回复

使用道具 举报

发表于 2006-6-12 19:09:31 | 显示全部楼层
GCC把鸡杀好了,煮好了,就等你放作料了,当然不放也行,也能吃,这个比喻能听懂吧?

你是什么cpu?我问的是核心?
2.2G?
2200+?
回复

使用道具 举报

 楼主| 发表于 2006-6-12 19:14:54 | 显示全部楼层
barton 2500+ oc 3200+
频率2200,. so 2.2G~~~~
参数太多了拉~~vc那个参数都是从ide里面找出来的~~
回复

使用道具 举报

 楼主| 发表于 2006-6-12 19:16:01 | 显示全部楼层
[quote:c442af1d4a="fox_eagle2003"]GCC把鸡杀好了,煮好了,就等你放作料了,当然不放也行,也能吃,这个比喻能听懂吧?

你是什么cpu?我问的是核心?
2.2G?
2200+?[/quote]

2200+..........我还不至于这么白~~~~不太喜欢amd的pr值~~感觉很虚~~~~~~~~~~ :D  :D  :D  :D
回复

使用道具 举报

发表于 2006-6-12 19:19:46 | 显示全部楼层
3000+才1.83G
所以我看你的cpu够劲啊
对了,找到合适的参数没有?
回复

使用道具 举报

 楼主| 发表于 2006-6-12 19:19:49 | 显示全部楼层
[quote:2883f59417="hew"]http://www.linuxsky.net/viewarticle.php?id=378[/quote]

太谢谢拉~~~~~~~~~~~~~~~~~~~~ :D  :D  :D
回复

使用道具 举报

 楼主| 发表于 2006-6-12 19:24:05 | 显示全部楼层
[quote:5d33b0da3f="fox_eagle2003"]3000+才1.83G
所以我看你的cpu够劲啊
对了,找到合适的参数没有?[/quote]

3000+ 1.83? 你的是A64 k8吧?~~~
k7 barton 2500+才1.83呀~~~
我妈的k8 oc 2.1G就比我的2.2G 快N多了~~


正在眼花缭乱的看参数~~~~~```````` :D  :D
回复

使用道具 举报

 楼主| 发表于 2006-6-12 19:25:32 | 显示全部楼层
Pentium III (Intel) CHOST="i686-pc-linux-gnu"
CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer"
CXXFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer"

昏了~~怎么跟写在make.conf原来的一样.........
回复

使用道具 举报

 楼主| 发表于 2006-6-12 19:28:52 | 显示全部楼层
还有个问题...........编译gcc是不是要很久很久很久才行的?....那台机子两个Pemtium3 800 512M 内存..................搞了N久都没有完
回复

使用道具 举报

发表于 2006-6-12 19:47:22 | 显示全部楼层
看程序本身的
特别和编写的人的水平有关系

你查这个,还不如超频,让CPU快点--来得实在呢
回复

使用道具 举报

发表于 2006-6-12 19:50:43 | 显示全部楼层
优化选项及注意事项参见 magic linux 开发培训区的置顶帖:
RPM 建包 (GCC) 优化选项

真是不可理解,为什么以讹传讹如此严重,看下面最后一行:
-fomit-frame-pointer
Don't keep the frame pointer in a register for functions that don't need one. This avoids the instructions to save, set up and restore frame pointers; it also makes an extra register available in many functions. It also makes debugging impossible on some machines.
On some machines, such as the VAX, this flag has no effect, because the standard calling sequence automatically handles the frame pointer and nothing is saved by pretending it doesn't exist. The machine-description macro "FRAME_POINTER_REQUIRED" controls whether a target machine supports this flag.
Enabled at levels -O, -O2, -O3, -Os.

-fomit-frame-pointer 明明已经默认包含于 -O, -O2, -O3, -Os 各个优化级,为什么网上那么多人还要脱裤子放屁,在 -O3 后面还加上 -fomit-frame-pointer?
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-9-22 21:28 , Processed in 0.049135 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

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