可执行文件编译VS 2015比2013慢得多



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

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

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

您是在比较调试版本还是发布版本?假设您正在比较发布版本,最可能的解释是VS2013和VS2015之间不同的编译器优化设置。Visual Studio有相当多的编译器标志会影响性能。查看项目的属性页,特别是Configuration Properties -> C/C++ -> Optimization下的选项,看看是否存在差异。确保您正在比较相同配置的属性(Release vs. Debug)。

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

最新更新