【发布时间】:2011-05-10 15:13:52
【问题描述】:
由使用 VS2005 构建的 C# 和 C++ 项目组成的 VS 解决方案优于转换为 VS2008(发布模式)的相同解决方案。我已经仔细检查了设置未正确转换的已知错误的优化设置。 虽然性能差异不大,但仍然值得注意。任何想法可能导致性能差异的原因是什么? 提前感谢您的任何回复!
【问题讨论】:
标签: performance visual-studio-2008 visual-studio-2005
由使用 VS2005 构建的 C# 和 C++ 项目组成的 VS 解决方案优于转换为 VS2008(发布模式)的相同解决方案。我已经仔细检查了设置未正确转换的已知错误的优化设置。 虽然性能差异不大,但仍然值得注意。任何想法可能导致性能差异的原因是什么? 提前感谢您的任何回复!
【问题讨论】:
标签: performance visual-studio-2008 visual-studio-2005
如果不知道代码是什么以及发送到编译器的开关是什么,就无法完全回答。
不应该仅仅通过使用不同版本的 VS 重新编译来改变 C# 性能。如果两者都在同一台机器上,它们将使用相同版本的 .NET Framework 来执行。
就 C++ 而言,VS 版本之间的编译器会发生变化,因此性能不会总是相同。他们很有可能对优化器进行了更改,恰好在您的代码上执行得更差,但对大多数其他代码执行得更好。他们还可以调整编译器的指令调度程序以适应更现代的“平均”CPU。 VS2008 还带来了许多 C++ 合规性修复 - 可能有一个减少了编译器必须优化的空间。
【讨论】: