我有一堆IO密集型工作,为了提高性能,我只在计算服务器中安装了两个SSD,一个作为暂存文件系统,另一个作为交换。 运行一段时间后,我的所有进程都处于“D”状态,不消耗CPU,系统报告空闲67%,等待33%。 一个iostat显示没有磁盘活动正在进行,系统会以其他方式响应,包括相关的文件系统。 在进程中附加“strace”不会产生任何输出。
查看/ proc /(pid)/ fd,我发现所有进程正在使用(读取)一个通用文件。 我看不出有什么理由为什么会导致问题,但是我replace了文件,终止了进程,并让所有内容都继续(即新进程将启动)。 我们会看看是否有新的文件,不同的文件卡住,或者 – 理想情况下 – 一点都不: – )
我也在kern.log中发现了一些:
BUG: unable to handle kernel paging request at ffffeb8800096e5c
很多其他的信息,但我不知道如何解读 – 除了它是指我的进程的PID和名称。
任何想法发生在这里,或如何解决它? 这是在Ubuntu 12.04 LTS上,带有RocketRaid磁盘控制器和btrfs文件系统的戴尔机箱。
这似乎可能是一个内存问题。 启动memtest并检查你的内存。