由于在相关文献中看见的程序多是linux下的gcc编译,为了能更合理地作出比较,于是这一阵子都在学习linux和gcc相关的东西。把代码稍作修改移到gcc下面编译,一跑,结果还挺出乎我意料的,总的来说,win7+vc编译器完胜,linux+gcc编译出来的程序运行时间大约是win7+vc的两倍。
具体来说,VC用的是Visual Studio 2008,跑程序的时候用上了Profile Guided Optimization,这东西是啥我不是很清楚,但用起来也没什么难,反正在VC里就按一按钮而已,程序马上就变快很多。gcc的优化选项我不会,只是普通地用上了-O3,另外似乎gcc下也是有PGO的,但我按网上资料说的弄也没弄出明显变快的结果。我的程序就是猛算,应该主要是整数运算吧,浮点也不少,具体哪个多我真不清楚,说不定在我不知道的什么地方整数都变成了浮点也未可知……
当然我并不是要挑gcc的什么刺,这样比较显然会有各种各样不公平的地方,只是在看看哪个平台更适合我现在的需要。另外,很残念的是,因此之前的结论就变得没什么意义了……
2 条评论:
生命不息折腾不止啊
留个言还要翻墙
发表评论