哪些文件占用了我进程的大部分I/O时间?

1 投票
1 回答
501 浏览
提问于 2025-04-16 02:34

我有一个比较大的Python程序,它在磁盘上进行很多读写操作(在top命令中,%wa的值可以高达80,而iotop显示我的程序是罪魁祸首)。

造成这种情况的原因有很多——我在写多个日志文件,并且在多个地方将缓存的结果保存到磁盘,所以我现在不太清楚应该把注意力放在哪个地方。

有没有什么Linux工具或者Python的小技巧,可以让我看到哪个部分在进行最多的读写操作呢?

1 个回答

1

你可以看看SystemTap。它是一个非常强大的工具,可以用来追踪和分析Linux系统调用的情况:http://sourceware.org/systemtap/wiki

我相信可以准确追踪到哪个文件描述符导致了输入输出的负载,不过一开始使用SystemTap可能会有点复杂。

撰写回答