在并行系统中,每个进程都会对其他进程产生影响,因为它们都在争夺一些稀缺资源,如 CPU 缓存、内存、磁盘 I/O、网络等。
哪种方法最适合测量过程之间的干扰?例如进程 A 和 B 各自重度访问磁盘。因此,并行运行它们可能会比顺序运行(单个运行时)慢。因为瓶颈是硬盘。
如果我不确切知道进程的行为(磁盘密集型、内存密集型或 CPU 密集型),那么哪种方法最适合分析它?
测量单个运行时间并比较每个并行进程的相对份额?
就像进程 A 平均单独运行 30 秒,当 100% 与 B 并行时 45 秒,当 20% 并行时 35 秒 .. 等等 ??
比较 L1 和 LLC 缓存未命中、页面错误等几个指标会更好吗?