如何创建一个简单的 cpu 基准?

How to create a simple cpu benchmark?

对于一个与我们的 A-Levels 高度相关的学校项目,我们想要超频 Raspberry Pi 的 CPU 并评估 CPU 的性能,先并 post 使用自己编写的基准对其进行超频。

这个基准应该尽可能简单,因为它只代表我们演示文稿的一小部分。

我们认为使用 c++ 作为语言可能是个好主意,因为它使用的资源更少(?)。 对于基准测试本身,我们考虑过使用某种算法来计算 Pi 或素数到特定点并查看需要多长时间。

如何使用多个 cores/a 单核?

是否有 better/simpler 替代我们的想法?

提前致谢。

基准测试可以随心所欲。如果您只想要随时钟速度线性缩放的东西,以下是一个简单的微基准测试:

for(uint64_t i = 0; i< MAX_COUNT ; i++) {}

它只是相对意义上的意思,或者如果您查看编译器生成的 asm。

你必须避免让它优化到什么都没有,例如使用 gcc -O1 或更低编译。

Example

您可以 运行 单线程可执行文件的多个实例,例如在 bash:

for i in {1..4};do ./benchmark & done

启动 4 个后台作业。

– Peter Cordes 的回答。