I am now managing a computer cluster for scientific computing. Some processes in the cluster need heavy io usage. Now I find such a process:
- Its state changes rapidly between DOWN and RUN and its cpu usage changes rapidly between 1% and 100%.
- In
top
output, iowait is 0% and idle is about 90%
I think this process may have some problems, but process owner claims that it is running properly in that it is still writing data to disks.
More Info:
- The process is writing data to a remote disk mounted on /home
- The process is based on slightly modified code. The original software is capable of multi-threading but needs huge amount of memory. The modified code use more disk and less memory but the one who modifies the code do not know anything about multi-threading.
- Small tests show that the code can give the correct result
Questions:
- why the process is not using 100% percent of cpu and if that is because of waiting for io why iowait is 0%?
- How to judge whether the process have any problems and what type of problems is that?