[lkml]   [2001]   [Nov]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [Ext2-devel] disk throughput
    On Mon, 5 Nov 2001, Alexander Viro wrote:

    > find(1). Stuff that runs every damn night. We end up doing getdents() +
    > bunch of lstat() on the entries we had found. And that means access to
    > inodes refered from them. Try that on a large directory with child
    > inodes spread all over the disk.

    Part of the problem is that, as far as I know, there is no sane way to
    request the kernel to execute a number of lstat-s or similar calls
    in the order that would be convenient to the system (I do not consider
    creating threads for this purpose a sane way).
    If a program (say find, or tar, or anything) needs an information from
    5000 lstats of fstats or reads, it has to specify them one-by-one in some
    order, without knowledge which order would be best.
    If we had a call to execute a vector of lstats, or open, or reads (from
    different handles), program which would use such calls would allow kernel
    to take decision what is the best order or individual operations.

    I remember that using similar 'vector' functions in old days on IBM OS/MVT
    gave dramatical performance improvements (maybe for different
    reasons; machine memories were often half a megabyte, so opening a file
    required the system to read and execute several modules loaded from system
    disks; when opening 10 files each of the modules had to be loaded once
    rather than 10 times).

    Would it be possible and a good idea to add such 'vector' operations to
    the Linux kernel?

    Best regards,

    Wojtek Pilorz

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 13:12    [W:0.022 / U:112.480 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site