C++ 应用程序执行时间

标签 c++ performance

我有一个来 self 遇到的特定情况的一般性问题。

一般问题:在 MinGW 编译器下,什么决定了在 Windows 上用 C++ 编写的应用程序的运行时间(计算时间、执行时间)?

具体情况:我最近买了一台新电脑。在运行和测试我在旧机器上编写的相同程序时,我发现不仅没有加速,而且性能下降。两者都运行 Windows 7 操作系统。

较旧的工作站:i7-3770 Core 4 核处理器、8 GB RAM 和硬盘驱动器。

较新的设置:e5-2660 v3 Xeon 10 核处理器、32 GB 内存和硬盘。

没有完全加速可能是因为没有 SSD 内存类型,但这仍然不能解释为什么新计算机比旧计算机。我进行了 passmark 分数测试,在所有类别中,新计算机的性能都优于旧计算机。不过,我自己的 C++ 程序和一些第三方应用程序在新机器上运行速度都比较慢。怎么会这样?我应该检查一些特定的软件类型限制吗?

我也欢迎就性能主题提出任何建议,因为我计划运行计算密集型、多线程应用程序,因此性能是一个重要问题。

最佳答案

应用程序使用 cpu、内存和磁盘,所有这些都会影响应用程序的执行速度。

在您的情况下,您从具有 4 个快速内核的 4 核 CPU 更改为具有 10 个但速度较慢的内核的 10 核 CPU,从而有效地降低了每线程的执行速度。

取决于你做什么,例如如果计算/内存压力的比率朝向计算端,您会看到速度变慢。

关于C++ 应用程序执行时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30029431/

相关文章:

未按需要调用 C++ 虚拟方法

c++ 为什么 std::async 比顺序执行慢

c++ - 使用 gcc 编译的静态库中未解析的符号

html - 在 Chrome 上将 drawImage 与 Canvas 一起使用非常慢

python - 如何优化在 `django-mptt` 中添加新节点?

PostgreSQL 12 : performance issue with overlap operator and join on very same table

c++ - C++ 中的 new Bytef[int] 是什么?

c++ - 转换为 std::string 并在一行中获取 const char *

python - 有没有比 np.diff 更快的替代品?

sql-server - 索引 View : How to choose the Clustered Index?