DragonFly BSD
DragonFly kernel List (threaded) for 2003-07
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: MESI Caching work start (was Re: caching and userapi)

From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Fri, 18 Jul 2003 11:42:15 -0700 (PDT)

:>     Ah.  Oh.  *THAT* caching.  *THAT* caching is the MESI caching model
:>     for object data!  It's pretty sophisticated but as a first incremental
:>     step it represents implementing shared/exclusive ranged offset 'locks'
:>     on VM Objects, like this (this is just my guess at the initial API,
:>     all comments, ideas, and discussion is welcome!):
:I may be taking this a step too far, but I had a random thought ...
:At least on the surface, one of the major challenges of a clustered file
:system performance is buffer cache coherency. Do you think that the
:dragonfly model of cache coherency could cleanly extend to that?
:					-Kip

    Absolutely.  That's the ultimate goal.  I see nothing preventing us
    from extending it to the buffer cache (actually the VM page cache is
    what it would be extended to).  We might not be able to extend it all
    the way to mmap() but we could get close enough that another model
    could take over for mmap().

    That's the carrot.  If one can make mmap() fully cache coherent between
    machines one would be able to run just about any multi-threaded program
    in a clustered environment without the need for special libraries or 
    hacks.  Of course, it might not be *efficient*, it would depend on how
    the program was written, but it would be almost entirely transparent.

    And if we could make the mechanism robust that sort of clustering could
    be made to work across internet links, in a large scale WAN environment.
    Supercomputing power cheap!

    Not a bad goal, eh?

					Matthew Dillon 

[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]