Zum Inhalt springenZur Suche springen

DXNet

DXNet: Event-Driven High Performance Messaging for Java Applications

DXNet is a Java open-source network library positioned between RMI and MPI. DXNet provides a high performance event-driven message passing system for Java applications but differs from MPI by also providing a custom very fast parallel serialization for Java objects, automatic connection management, and a very efficient event-driven message receiving approach including a concurrent deserialization. DXNet does not support MPI's  communication routines like scatter or gather but offers high throughput asynchronous message passing as well as synchronous request/response communication with single digit microsecond RTT.

DXNet provided native support for reliable InfiniBand verbs and socket-based TCP through Java NIO. DXNet achieves high performance and low latency by using lock-free data structures, zero-copy and zero-allocation. The outgoing ring buffer and queue structures are complemented by different thread parking strategies guarantying low latency by avoiding CPU overload.

Ibdxnet: InfiniBand subsystem and interface for DXNet/DXRAM
Ibdxnet directly uses the ibverbs library to implement a core InfiniBand subsystem in C++ as well as the JNI library Ibdxnet which is used as a transport by DXNet an event-driven messaging network subsystem.

DXNet was developed for the distributed key-value storage DXRAM but can also be used as a library by other projects.

DXNet is available at Github here.

Contacts: 
Prof. Dr. Michael Schöttner
Dr. Kevin Beineke (replication, parallel recovery, network)
Dr. Stefan Nothaas (Infiniband, memory management)
Christian Gesse (thread management)

Publications:
See here

Verantwortlichkeit: