Messages in this thread | | | Date | Tue, 4 Mar 2003 14:50:00 +0100 | From | Jens Axboe <> | Subject | Re: I/O Request [Elevator; Clustering; Scatter-Gather] |
| |
On Tue, Mar 04 2003, David Anderson wrote: > > Hi, I have been going through some documentation that talks of > clustering, scatter-gather and elevator being used to improve > performance. I am confused between these : > > This is what I have understood : Elevator The job of the elevator is > to sort I/O requests to disk drives in such a way that the disk head > moving in the same direction for maximum performance. Have been able > to locate the code for the same. > > Clustering Combines multiple requests to adjecent blocks into a single > request. Have not been able to find the code which carries this out. > Any clue on where this is done in the linux source code ??
Both actions are performed by the elevator in Linux. You did not mention which kernel you are looking at, for 2.4 you need to read drivers/block/ll_rw_blk.c and drivers/block/elevator.c. For 2.5, read the same files and drivers/block/deadline-iosched.c in addition.
> Do Clustering of request and scatter-gather mean the same ?? Confused > to the core... Kindly help me ...
No, the elevator clustering refers to clustering request that are contigious on disk. Scatter-gather may cluster sg entries that are contigious in memory.
-- Jens Axboe
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |