gpt4 book ai didi

performance - 如何测量进程之间的干扰

转载 作者:行者123 更新时间:2023-12-01 16:15:23 25 4
gpt4 key购买 nike

在并行系统中,每个进程都会对其他进程产生影响,因为它们都会争夺一些稀缺资源,例如 CPU 缓存、内存、磁盘 I/O、网络等。

什么方法最适合测量进程之间的干扰?例如进程 A 和 B 都大量访问磁盘。因此,并行运行它们可能会比顺序运行(单独运行时)慢。因为瓶颈是硬盘。

如果我不确切知道进程的行为(磁盘、内存或 CPU 密集型),什么方法最适合对其进行分析?

测量单个运行时间并比较每个并行进程的相对份额?

就像进程 A 平均单独运行 30 秒,与 B 100% 并行时 45 秒,20% 并行时 35 秒..等等??

比较 L1 和 LLC 缓存未命中、页面错误等多个指标是否会更好?

最佳答案

您需要做的是首先确定每个程序的限制因素。如果您想同时运行 CPU 密集型和 IO 密集型,那么影响很小。如果您想同时运行两个 IO 密集型进程,就会出现很多争用。

我写了一个相当详细的答案,关于如何解释“时间[命令]”结果的输出,以了解限制因素是什么。在这里:What caused my elapsed time much longer than user time?

一旦您获得了对程序进行“计时”的输出,您就可以确定哪些程序可能相互冲突,哪些不会。

关于performance - 如何测量进程之间的干扰,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12930276/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com