C中的一个好程序可以certificate不同Linux调度程序(noop,CFS,截止date)的优缺点?

我试图find一种方法来演示不同的调度程序如何影响程序的运行时间。 到目前为止,我只使用linux上的时间函数来尝试使用noop,CFS和截止date调度程序来查看可衡量的差异,但是我没有任何运气。 对于testing程序,我只写了一堆基本上循环和计数的C程序。

我想,也许如果我开始一个进程数到更高的数字,然后开始第二个进程不算很高, 使用最后期限调度程序,第二个过程可能会更快完成,因为这是一个资源占用较less的工作。 不过,在调度程序之间我没有看到任何区别。 我想知道如果也许我对调度程序的理解是有点瑕疵? 有没有更适当的types的程序,我可以尝试用来演示一些这些概念?

任何人都可以给我一些提示,build议或类似的东西?

在围绕着科利瓦斯码的时候,我偶然发现了Interbench 。

这个基准测试应用程序旨在对Linux中的交互性进行基准测试。 请参阅包含的readme.interactivity文件以获取简要的定义。

它旨在衡量Linux内核设计或系统配置更改(如cpu,I / O调度程序和文件系统更改和选项)中更改的效果。 通过仔细的基准测试,可以比较不同的硬件。

另一个可以派上用场的工具是来自Con Kolivas,被称为ConTest 。

此程序旨在通过在许多不同的负载条件下运行内核编译来测试系统响应性。 它旨在比较不同的内核,而不是不同的机器。 它使用真正的工作负载,您期望在每天的机器中短时间内找到它们,但在内核编译期间维持它们以提高信噪比。

所以也许你可以通过使用不同的调度程序来准备两个内核来使用它。