[Cbe-oss-dev] elaboration of Axon driver?
Arnd Bergmann
arnd at arndb.de
Sat Dec 13 04:52:11 EST 2008
On Thursday 11 December 2008, Marcus G. Daniels wrote:
> I've been using the Axon driver on Roadrunner IBM triblades and I'm
> wondering if any thought has been given to supporting DAPL? In
> particular, I'm interested in marshaling function calls with complex
> types as arguments, perhaps with RDMA/RPC. Since most of the numerics
> work on Roadrunner is done on the SPUs of the Cell processors, and is
> very specialized for performance, it's appealing to me keep the Opteron
> side of the code relatively abstract. An Axon implementation of MPI
> would be another option, although the use case I have in mind is
> factoring monolithic codes to run on multiple tiers of the system, with
> MPI on the outside (across the cluster). Also, simple message passing
> can be done reasonably well with DaCS anyway. I'd like to be able to
> break up codes such that some pieces could be RPCed to the PPU of the
> Cell.
>
> Wondering if anyone has thought about these issues.
My current plan is to retire the current driver on the long run, and
move to the standard ib-verbs interface with a new device driver
implementation that also supports other systems than just the triblade.
You can see my presentation slides about my ideas at
http://userweb.kernel.org/%7Earnd/papers/plumbers08/plumbers-slides.pdf .
IFAICT, DAPL is basically dead for new development, but there is already
experimental DaCS code on top of ib-verbs. The ib-verbs interface in turn
is supported all current infiniband and ethernet/iWarp implementations,
and it can be used in all current MPI libraries.
When we have a device driver library that supports ibverbs on top of
generic shared-memory interconnects (PCI, PCIe, IOIF, RapidIO, ...),
we can use the dma-engine interface in Linux in order to speed up
transfers on the Axon implementation. The same driver layer will also
provide a virtio abstraction, so that we can use virtio high-level
drivers (e.g. virtio-net, virtio-block, 9p file system, ...) directly
on the interconnect, potentially across larger switched fabrics than
just the point-to-point connections in Triblade.
Arnd <><
More information about the cbe-oss-dev
mailing list