[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <AANLkTingF8jK2Lppng+MCeszB=KFEsqs9uRqBn0Uhdh8@mail.gmail.com>
Date: Fri, 7 Jan 2011 08:00:45 -0500
From: Yuehai Xu <yuehaixu@...il.com>
To: Jens Axboe <axboe@...nel.dk>
Cc: linux-kernel@...r.kernel.org, cmm@...ibm.com, rwheeler@...hat.com,
vgoyal@...hat.com, czoccolo@...il.com, yhxu@...ne.edu
Subject: Re: Who does determine the number of requests that can be serving
simultaneously in a storage?
I add a tracepoint so that I can get nr_sorted and in_flight[0/1] of
request_queue when request is completed, I consider nr_sorted as the
number of pending requests and in_flight[0/1] represent the number
serving in the storage. Does these two parameters stand for what I
mean?
The test benchmark I use is postmark which simulates the email server
system, over 90% requests are small random write. The storage is Intel
M SSD. Generally, I think the number of in_flight[0/1] should be much
greater than 1, but the result shows that this value is almost 1 no
matter what I/O scheduler(CFQ/DEADLINE/NOOP) or
filesystem(EXT4/EXT3/BTRFS) it is. Is it normal?
B.T.W, I only run a process for postmark.
> The driver has to take care of this. Since requests are pulled by the
> driver, it knows when to stop asking for more work.
>
> BTW, your depth of 4 for the HDD seems a bit odd. Typically all SATA
> drives share the same queue depth, limited by what NCQ provides (32).
>
This number is given arbitrary, just for example.
Thanks,
Yuehai
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists