一个可以使CPU饱和的程序的简单想法

时间:2016-10-30 11:57:13

标签: algorithm benchmarking

我正在寻找一个能够通过计算使CPU饱和的程序的简单想法。目前,我唯一的想法是使用素数生成器,随着素数中的位数增加,生成一个数字的难度呈指数增长。还有其他类型的算法可以做同样的事情吗?

1 个答案:

答案 0 :(得分:0)

  • 您不应该关心CPU正在执行的操作类型,只要它是CPU操作。

    std::atomic<bool> flag_exit;
    int a = 1;
    int b = 1;
    while(!flag_exit)
    b = a + b;
    }
    cout << b; // using 'b' just to make sure it isn't optimized away.

  • 您可能需要考虑将工作分散到所有核心上 虽然您可以尝试使用超标量无序执行(感谢Peter Cordes)来分割不相关的指令,但我建议每个核心创建一个单独的线程。