[CentOS] Finding i/o bottleneck

Mon Sep 26 19:12:24 UTC 2011
Les Mikesell <lesmikesell at gmail.com>

On Mon, Sep 26, 2011 at 2:02 PM, Nicolas Ross
<rossnick-lists at cybercat.ca> wrote:
>>>> Not sure what those do, but lsof should show what files are open, and
>>>> 'strace -p process_id' would show the system calls issued by a
>>>> process.
>>>
>>> Thanks, that might be usefull. I'ill just have to find a way to strace
>>> multiple process at once and find the usefull info among that load of
>>> data...
>>
>> Note that if what is really happening is that different processes are
>> frequently accessing the same disk in different locations (a fairly
>> likely scenario) the time will be mostly taken by the head seeks in
>> between and may be hard to pin down.
>
> I found the -f option to strace is able to attach to the forked child of a
> parent process, so I will be using that in my debuging in conjunction
> witgh -e to filter out only the calls I want to see...
>
> But indeed, that might be hard to find. In one case, I want to see what
> files are opened / accessed on a gfs2 volume over a fiber channel link to a
> raid-1 array, and the controler is supposed to intelligent enough to
> distribute the read access across the 2 disks. And in the other case, it's
> an ssd, so seek time should be 0.

Not sure how gfs2 deals with client caching, but in other scenarios
it's probably easier to just throw a lot of ram in the system and let
the filesystem cache do its job.  You still have to deal with
applications that need to fsync(), though.

-- 
  Les Mikesell
    lesmikesell at gmail.com