编程前,关于时间的想法2
2008-11-10 15:13
239 查看
采用release编译模式、和debug模式比较起来,时间相差太恐怖了!
#include <windows.h>
#include <iostream>
using namespace std;
inline void func()
{
int j = 0;
for (int i=0;i<3000000000;i++)
{
j++;
}
}
void main()
{
SYSTEMTIME time1,time2;
GetSystemTime(&time1);
func();
GetSystemTime(&time2);
cout<<time2.wSecond - time1.wSecond<<endl;
}
同样一段代码,debug下10秒,release0秒。
inline函数优化、代码优化,果然不同凡响——在编写多目标程序的时候,大可以先编译、再release运行。
高效的函数计算,比如计算f(x),有没有比C库函数中更快速的方法?(在精度允许的情况下)如果有的话,哪怕是每次计算节省几毫秒,也能让我实验速度快上很多呢!
build->set active configuration 选择win32 Release ,在debug模式下,inline是不打开的。
在debug模式下,CTP2多目标函数,在达到到1千万次的计算量时,就显得很慢了;但是在release模式下,至少可以达到上亿次的运算量(优化效果不错),达到10亿次,还能够接受;到达百亿次,也变得很慢了:26min5秒。
你有没有考虑过,每进行一轮信息素的调整,花费的时间,能够进行多少次的运算?如果信息素的调整,不能带来解的改进,那么就是浪费运算时间。
为了进一步加快我们的运算速度,是不是应该开启多线程?
#include <windows.h>
#include <iostream>
using namespace std;
inline void func()
{
int j = 0;
for (int i=0;i<3000000000;i++)
{
j++;
}
}
void main()
{
SYSTEMTIME time1,time2;
GetSystemTime(&time1);
func();
GetSystemTime(&time2);
cout<<time2.wSecond - time1.wSecond<<endl;
}
同样一段代码,debug下10秒,release0秒。
inline函数优化、代码优化,果然不同凡响——在编写多目标程序的时候,大可以先编译、再release运行。
高效的函数计算,比如计算f(x),有没有比C库函数中更快速的方法?(在精度允许的情况下)如果有的话,哪怕是每次计算节省几毫秒,也能让我实验速度快上很多呢!
build->set active configuration 选择win32 Release ,在debug模式下,inline是不打开的。
在debug模式下,CTP2多目标函数,在达到到1千万次的计算量时,就显得很慢了;但是在release模式下,至少可以达到上亿次的运算量(优化效果不错),达到10亿次,还能够接受;到达百亿次,也变得很慢了:26min5秒。
你有没有考虑过,每进行一轮信息素的调整,花费的时间,能够进行多少次的运算?如果信息素的调整,不能带来解的改进,那么就是浪费运算时间。
为了进一步加快我们的运算速度,是不是应该开启多线程?
相关文章推荐
- 编程前,关于时间的想法
- 关于一些编程的想法
- 关于编程入门书籍选择的想法
- 关于学习编程的一点想法
- 关于互联网编程的若干想法
- 关于做指定时间进行显示倒计时的一些想法
- 【编程之旅】关于传输剩余时间估算那些事儿
- 编程菜鸟关于硬件、OS、和JAVA的关系想法(初级)
- 关于Linux下时间编程的问题
- Java网络编程(二)关于Socket的一些个人想法
- 关于对渣打编程马拉松 2013 的样题的一些想法
- Linux下关于时间概念的C语言编程
- 关于alarmmanager.set() or .setExact() 任务启动时间不准的一点想法(未实现)
- 关于时间复杂度和空间复杂度的一些想法
- 五分钟或更短时间熟悉SQLite--关于SQLite编程的快速简介
- 脱不花:关于时间管理的几个想法
- Linux下C语言编程入门-7关于时间的操作
- 编程:关于程序的时间复杂度
- 关于量子编程中主函数的的优化之减少中断时间:qvanilla
- Linux下关于时间概念的C语言编程