[lkml]   [2009]   [Mar]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: Linux 2.6.29

    On Mon, 30 Mar 2009, Ric Wheeler wrote:
    > A modern S-ATA drive has up to 32MB of write cache. If you lose power or
    > suffer a sudden reboot (that can reset the bus at least), I am pretty sure
    > that your above assumption is simply not true.

    At least traditionally, it's worth to note that 32MB of on-disk cache is
    not the same as 32MB of kernel write cache.

    The drive caches tend to be more like track caches - you tend to have a
    few large cache entries (segments), not something like a sector cache. And
    I seriously doubt the disk will let you fill them up with writes: it
    likely has things like the sector remapping tables in those caches too.

    It's hard to find information about the cache organization of modern
    drives, but at least a few years ago, some of them literally had just a
    single segment, or just a few segments (ie a "8MB cache" might be eight
    segments of one megabyte each).

    The reason that matters is that those disks are very good at linear

    The latency for writing out eight big segments is likely not really
    noticeably different from the latency of writing out eight single sectors
    spread out across the disk - they both do eight operations, and the
    difference between an op that writes a big chunk of a track and writing a
    single sector isn't necessarily all that noticeable.

    So if you have a 8MB drive cache, it's very likely that the drive can
    flush its cache in just a few seeks, and we're still talking milliseconds.
    In contrast, even just 8MB of OS caches could have _hundreds_ of seeks and
    take several seconds to write out.


     \ /
      Last update: 2009-03-30 18:27    [W:0.023 / U:27.676 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site