CNDEV
CNDEV.ORG
当前在线
论坛
CBD
程序员情感CBD
程序员见面交流会
CBD开发区
Java/J2ME
.NET/C#
数据库
Delphi/BCB
Visual C
其它
修真养身
中国象棋
纪念日
谈钱太俗,还是投机吧
听音乐
iCosta
资源共享
一隅
好文共赏
看电影看美剧
待定
狗屎
雪域召唤
工作流
专业显摆区
语录
情感
批评与自我批评
爱情故事
发牢骚
看三点区
游戏
CNDEV-CS/WOW
浩宇长空
生活
家有XPH
我爱学英语
美食天地ORG
半调子体育迷
观澳园友邻
搞笑奇文
拍照片
我读书我存在
论坛系统
超级垃圾站
系统建议及BUG
系统测试
中国开发网
: 论坛:
程序员情感CBD
: 贴子 512050
没脾气2x
: 发现 N 值越大,三种方法时间差的百分比越小
[阅读: 405] 2007-05-17 04:02:15
<空>
相关信息:
技术贴:代码优化
(947字)
(
bjwf
[769]
2007-05-17 11:24
)
咯咯,这个问题代码大全里有解释。
(21字)
(
没脾气2x
[535]
2007-05-17 11:29
)
感觉上是在 sum2x2 中用 sum1 和 sum2 两个的话就不需频率折腾寄存器了。另外还有一个问题:
(22字)
(
没脾气2x
[548]
2007-05-17 11:33
)
误导考生用的。
(空) (
pcplayer
[452]
2007-05-17 11:35
)
我开始用的是 + 后来改成 * 的,因为用+ 时间太短了,看不出区别.
(空) (
bjwf
[431]
2007-05-17 11:35
)
为啥第一个方括号是红的,后面的却不红呢?
(空) (
bjwf
[446]
2007-05-17 11:37
)
后面还红,肯定是假处
(空) (
pigprince
[511]
2007-05-17 11:38
)
经验丰富啊
(空) (
coolbjwolf
[367]
2007-05-17 11:42
)
解释不太通,如果data_type换成 int, * 换成+的话,sum2 和sum2x2基本一样快.
(空) (
bjwf
[523]
2007-05-17 11:43
)
把 i+=2 换成 i++,i++ 看看速度有提高吗?
(空) (
没脾气2x
[502]
2007-05-17 11:52
)
没有.
(空) (
bjwf
[411]
2007-05-17 12:02
)
貌似 ++i 比 i++ 效率高
(空) (
jinxintang
[417]
2007-05-17 16:49
)
正在C#实现一个试试。
(空) (
没脾气2x
[416]
2007-05-17 11:43
)
这是在c#下,四次执行的系统时间差异(因为开了很多窗口,所以每次的差别比较大)
(468字)
(
没脾气2x
[609]
2007-05-17 11:47
)
也就是说sum2x2是最慢的?
(空) (
bjwf
[396]
2007-05-17 11:50
)
……,最快的啊,那个数是时间。
(空) (
没脾气2x
[432]
2007-05-17 11:51
)
o,没看到前面还有个01. sum1和sum2在C#里没啥区别?怀疑是c#的编译器自动打开了循环展开编译选项,否则sum2应该比sum1快啊.
(空) (
bjwf
[515]
2007-05-17 11:55
)
代码大全里说:不要想当然的认为哪个快哪个慢,一切以实测为准。
(218字)
(
没脾气2x
[512]
2007-05-17 12:01
)
sum3是指 什么?一个循环里写3条,然后 i+=3 吗?
(空) (
bjwf
[423]
2007-05-17 12:04
)
是的。
(空) (
没脾气2x
[371]
2007-05-17 12:08
)
c# 的 double 类型 sum1 sum2 sum3 的效率差不多(似乎sum2 最快,sum3最慢),int 的话sum3最快,速度差也大了些。
(空) (
没脾气2x
[539]
2007-05-17 12:15
)
类型为 double 时和 data 里面的具体数据也有关系,上面的是随机数的结果,这里是全为 0 的结果
(422字)
(
没脾气2x
[520]
2007-05-17 11:55
)
发现 N 值越大,三种方法时间差的百分比越小
(空) (
没脾气2x
[404]
2007-05-17 12:02
)
不对,N取值为 100, 1000, 10000, 100000时,只有1000的差别最大 -_-(当然,重复处理次数也增加了)
(空) (
没脾气2x
[421]
2007-05-17 12:04
)
data 类型为 int 时的处理时间比较:
(447字)
(
没脾气2x
[545]
2007-05-17 12:08
)
C# 的测试代码。
(3211字)
(
没脾气2x
[661]
2007-05-17 12:24
)
估计,如果是INT,应该加法快吧?
(空) (
mhappy
[417]
2007-05-17 11:53
)
你的机器是双核的吧?两个FPU并行计算吧
(空) (
李战
[508]
2007-05-17 11:57
)
是双核,但在单核上结果也应该是这样的吧.我理解双核只会在多线程时有帮助,单线程没这么智能.
(空) (
bjwf
[516]
2007-05-17 12:01
)
不一定哦,说不定双核CPU内部也会预估指令执行顺序来进行微操作的优化哟
(空) (
李战
[546]
2007-05-17 12:05
)
不会的。AMD曾经想这么干,称之为逆超线程技术,后来放弃了。
(空) (
好望角
[539]
2007-05-17 15:22
)
AMD的CPU中有多个协处理器,可以并行执行浮点计算。
(9字)
(
好望角
[518]
2007-05-17 12:04
)
行家解释啊
(空) (
李战
[418]
2007-05-17 12:06
)
而且你比较一下整数和浮点数的四则运算速度,会有惊喜的。
(空) (
好望角
[569]
2007-05-17 12:08
)
但是不多线程也没办法吧?
(空) (
没脾气2x
[399]
2007-05-17 12:09
)
不需要多线程,寄存器可以动态命名。
(18字)
(
好望角
[531]
2007-05-17 12:11
)
这么NB啊
(空) (
没脾气2x
[416]
2007-05-17 12:14
)
RISC、CISC都有这功能。
(77字)
(
好望角
[478]
2007-05-17 12:30
)
嗯,,sum2x2 的快速真有可能是这种并行浮点运算的事哦~,sum3x3 比 sum2x2 还要快。
(空) (
没脾气2x
[450]
2007-05-17 12:28
)
快多少?
(空) (
好望角
[408]
2007-05-17 12:33
)
3x3 比 2x2 快了 20% 左右,见此贴:
(57字)
(
没脾气2x
[459]
2007-05-17 12:36
)
想不到站街对副业要求也这么高,知道的真多
(空) (
Kaye
[394]
2007-05-17 12:20
)
顺便说点题外话吧,你用的什么C编译器呢?
(52字)
(
好望角
[496]
2007-05-17 12:26
)
vc++,另外,我认为你说的不对.sum2x2比sum2快的原因不是因为协处理的原因,而是
(175字)
(
bjwf
[530]
2007-05-17 12:57
)
怎么个扰乱执行法?听上去感觉和好望脚的并行执行浮点运算差不多呢?
(空) (
没脾气2x
[460]
2007-05-17 12:59
)
乱序执行指令的执行顺序并不一定严格按照指令在程序里的排列顺序,比如CPU一次取好多指令,有8流水线的话,就把8条指令分别放在8条流水线上运行,当然,如果某条指令依赖前一条的话,就不能并行了.
(空) (
bjwf
[884]
2007-05-17 13:01
)
貌似你把流水线的条数和级数弄混了。
(空) (
好望角
[487]
2007-05-17 15:32
)
有点不清,但现在清楚了.
(空) (
bjwf
[402]
2007-05-17 15:32
)
乱序执行就是指CPU可以把后面一定距离的汇编指令提前到前面来执行,而不改变运行结果。
(53字)
(
好望角
[568]
2007-05-17 15:07
)
在PIII上,CPU有8条流水线,所以sum 8X8会最快.P4和core 2 上结果不一定.
(空) (
bjwf
[546]
2007-05-17 12:59
)
8×8肯定速度反而会慢。
(空) (
好望角
[416]
2007-05-17 15:10
)
和我猜测的差不多啊,就是CPU内部有对指令序列的优化和并行处理的能力。这个与应用程序是否多线程无关。
(空) (
李战
[514]
2007-05-17 13:05
)
大哥,这还用猜。乱序执行、多流水线、分支预测好像从奔腾开始就有了。
(空) (
好望角
[544]
2007-05-17 15:09
)
俺最后搞的硬件是80286喔,后来软的喔,哪里懂得这些喔
(空) (
李战
[419]
2007-05-17 15:22
)
俺最后搞硬件的时候还是用的80186呢
(22字)
(
好望角
[393]
2007-05-17 15:26
)
俺对CPU处理的理解停留在6527水平
(空) (
没脾气2x
[479]
2007-05-17 17:34
)
乱序执行只是必要条件
(262字)
(
好望角
[495]
2007-05-17 15:04
)
嗯,这么说好象也有道理
(空) (
bjwf
[430]
2007-05-17 15:32
)
有意思,我也测了下,但是我这里结果差不多,另外使用goto的sum2版本要快那么一些。
(2939字)
(
周星驰
[604]
2007-05-17 13:47
)
哎,哥哥,人家都是end-start,你是start-end,我说结果咋看起来那么怪呢.
(空) (
bjwf
[496]
2007-05-17 14:07
)
噢,这样,看错了
(空) (
周星驰
[375]
2007-05-17 14:15
)
粗心了
(空) (
周星驰
[373]
2007-05-17 14:18
)
此帖应评为今天最有价值帖,建议加精。不过没2X好像没搞精喔
(空) (
李战
[391]
2007-05-17 15:07
)
等你提炼总结后,再加嘛
(空) (
haitao
[417]
2007-05-17 15:24
)
欢迎光临本社区,您还没有登录,不能发贴子。请在
这里登录