Re: [RFC] [PATCH 0/3] ioat: DMA engine support

From: Benjamin LaHaise (bcrl_at_kvack.org)
Date: 11/24/05

  • Next message: Greg Kroah-Hartman: "[patch 14/22] USB: SN9C10x driver - bad page state fix"
    Date:	Wed, 23 Nov 2005 19:17:01 -0500
    To: Andi Kleen <ak@suse.de>
    
    

    On Wed, Nov 23, 2005 at 11:30:08PM +0100, Andi Kleen wrote:
    > The main problem I see is that it'll likely only pay off when you can keep
    > the queue of copies long (to amortize the cost of
    > talking to an external chip). At least for the standard recvmsg
    > skb->user space, user space-> skb cases these queues are
    > likely short in most cases. That's because most applications
    > do relatively small recvmsg or sendmsgs.

    Don't forget that there are benefits of not polluting the cache with the
    traffic for the incoming skbs.

    > Longer term the right way to handle this would be likely to use
    > POSIX AIO on sockets. With that interface it would be easier
    > to keep long queues of data in flight, which would be best for
    > the DMA engine.

    Yes, that's something I'd like to try soon.

    > But it's not clear it's a good idea: a lot of these applications prefer to
    > have the target in cache. And IOAT will force it out of cache.

    In the I/O AT case it might make sense to do a few prefetch()es of the
    userland data on the return-to-userspace code path. Similarly, we should
    make sure that network drivers prefetch the header at the earliest possible
    time, too.

    > I remember the registers in the Amiga Blitter for this and I'm
    > still scared... Maybe it's better to keep it simple.

    *grin* but you could use it for such cool tasks as MFM en/decoding! =-)

                    -ben

    -- 
    "Time is what keeps everything from happening all at once." -- John Wheeler
    Don't Email: <dont@kvack.org>.
    -
    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/
    

  • Next message: Greg Kroah-Hartman: "[patch 14/22] USB: SN9C10x driver - bad page state fix"

    Relevant Pages

    • Re[2]: How does disk caching work?
      ... >> While you are correct that when cache is emtry kenrel will dip into the inactive queue. ... Pages on the cache queue still have the association. ... > You may want to study the kernel sources some more, ...
      (freebsd-performance)
    • Re: sched_yield() makes OpenLDAP slow
      ... > That also makes our sched_yieldbehaviour correct. ... In the OpenLDAP bug discussion, ... Pushing the process far behind in the queue, ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)
    • Re: allow the load to grow upto its cpu_power (was Re: [Patch] dont kick ALB in the presence of pinn
      ... we will move the excess load from that group to some ... but I'll queue it to send to Andrew after it ... Send instant messages to your online friends http://au.messenger.yahoo.com ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)
    • Re: Best database for implementing a cache
      ... However i need to limit the size of the cache so that it may not grow ... metric for evicting existing stored images. ... simply rebuilding meta data at startup (list all files on disk ... with a file and the priority queue will implement file aviction ...
      (comp.lang.java.programmer)
    • Re: [RFC] Add support for semaphore-like structure with support for asynchronous I/O
      ... Plenty of comments added that will hopefully clarify what is going ... That will enable me to queue up the NFSv4 patches that depend on it ... since it is a waitqueue notification function. ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)