我已经从源代码构建了一个开源应用程序。不幸的是,原始可执行文件运行得更快。我试图启用一些编译器优化,但结果不够令人满意。我还需要在Visual Studio 2008中做些什么才能提高可执行性能?
谢谢!
答案 0 :(得分:4)
定义_SECURE_SCL = 0。 http://msdn.microsoft.com/en-us/library/aa985896(VS.80).aspx
答案 1 :(得分:4)
基本上尝试在项目设置中的优化下启用所有内容,然后确保启用链接时间代码生成,启用功能级链接和完整COMDAT折叠(仅减少EXE的大小但可以帮助缓存),并关闭安全功能,例如通过定义_SECURE_SCL = 0。请记住,其中一些设置具有其他含义,尤其是安全性。
答案 2 :(得分:1)
编译时尝试启用SSE指令。另外 - 您可以尝试使用不同的编译器(GNU GCC)进行编译。 +可能启用了一些调试定义,shich也可以降低速度。 +检查,原始.exe与您尝试编译的版本相同。
答案 3 :(得分:0)
使用GNU GCC(Windows上的Mingw)编译的开源预编译二进制文件很可能(知道你正在使用哪个项目)。这可能是它更快的原因。根据{{3}},如果使用VC ++,有些事情会慢得多。