使用VS 2015编译的可执行文件比2013年慢得多

时间:2015-09-03 00:07:32

标签: c++ performance visual-studio sdl

我正在使用SDL2编写图形应用程序。我在VS 2013中启动了这个项目,它以大约30 fps的速度运行。现在使用VS 2015中完全相同的代码我只能得到8 - 10 fps。

为了确保它不是由于将解决方案移动到较新版本的IDE而导致的,我创建了一个全新的项目,并且只复制了源文件。我甚至在VS 2015中编译了SDL库,但速度要慢得多。

我可以做些什么来获得更好的性能,还是我必须使用VS 2013?

1 个答案:

答案 0 :(得分:1)

您在比较Debug或Release版本吗?假设您正在比较Release版本,最可能的解释是VS2013和VS2015之间的编译器优化设置不同。 Visual Studio具有相当多的可能影响性能的编译器标志。查看项目的属性页面,尤其是function toObject(arr) { var a =[]; for (var i = 0; i < arr.length; ++i) { a.push({ data: arr[i] }); } return a; } 下的选项,看看是否存在差异。确保您要比较相同配置的属性(Release与Debug)。

如果发现Debug构建速度慢得多,则可能在VS2015解决方案中启用了额外的安全/调试检查,这些检查未在VS2013下启用。比较Configuration Properties -> C/C++ -> Optimization下的其他设置,看看是否可以识别出任何差异。

相关问题