Skip to content

Releases: hhu-bsinfo/hadroNIO

v0.3.3 - Minor release:

04 Aug 11:42
Compare
Choose a tag to compare
-Update dependencies (JUCX 1.13.0)
-WrappingSocket: Log a warning instead of throwing an exception, when an unsupported method is called
-example: Remove netty hello demo
-example: Add gRPC demos (echo, benchmark and a simple key-value store with a YCSB-binding)

v0.3.2 - Minor release:

22 Apr 12:20
Compare
Choose a tag to compare
-Update dependencies (JUCX 1.12.1)
-example: Add result to combiner before closing a channel to avoid lost results
-example: Combine message count for multi-threaded benchmarks
-example: Fix netty throughput benchmark hanging on last messages for odd message counts
-example: Add option to pin threads in netty benchmarks
-example: Adapt netty worker threads to connection count

v0.3.1 - Minor release:

11 Mar 09:01
Compare
Choose a tag to compare
example: Support multi-threading in netty latency benchmark
example: Add option to write CSV formatted benchmark results to a file
example: Add option to disable hadroNIO via an environment variable
example: Add automated benchmark scripts

v0.3.0 - Third release:

09 Mar 10:29
Compare
Choose a tag to compare
-Refactor interfaces for UCX bindings
-Improve error handling: Errors occuring inside a UCX binding are escalated to the Selector, which handles the errors or throws appropriate exceptions
-SocketChannel: Fix flush not being handled properly by write (Fixes possible receive side overload, which can result in high memory usage by UCX)
-SocketChannel: Reimplement gathering write (Buffers are now merged to drastically improve perfomance for small messages)
-SocketChannel: Verify tags using checksums
-SocketChannel: Fix possible hangup during tag exchange
-example: Gather messages in throughput benchmarks (Maximum amount of gathered messages can be configured via a new parameter)
-example: Support multi-threading in netty throughput benchmark
-example: Add warmup to benchmarks
-Add initial support for infinileap (not stable yet)

v0.2.0: Second release:

10 Nov 14:36
Compare
Choose a tag to compare
-SocketChannel: Use one worker per channel to avoid race conditions in UCX and events being detected by wrong selectors
-Selector: Use busy polling to adapt to the new worker setup (temporary solution until epoll based polling is implemented)
-Selector: Implement timeout
-JucxWorker: Do not synchronize calls to progress() anymore, since it is no longer necessary
-ServerSocketChannel: Fix possible NullPointerException, when calling accept() without any pending connection requests
-Configuration: Update default configuration to use 8 MiB buffers with 64 KiB slices
-Example: Implement test applications based on netty

v0.1.2 - Minor release:

19 Oct 12:46
Compare
Choose a tag to compare
-Selector: Fix select() possibly returning, although no keys have been selected
-Selector: Fix wakeup()
-Selector: Add debug log messages
-JucxWorker: Synchronize calls to progress() as a workaround for crashes in progressWorkerNative(), when multiple threads operate on the same worker instance

v0.1.1 - Minor release:

07 Oct 12:58
Compare
Choose a tag to compare
-Implement Socket and ServerSocket as wrapper classes -> Calls to socket() are now working
-SocketChannel: Do not report as connected until finishConnect() has been called (non-blocking mode only)
-SocketChannel: Return -1 in read() if underlying channel implementation has lost connection
-JucxSocketChannel: Close channel if remote endpoint becomes unreachable
-Based on JUCX 1.11.2

v0.1.0 - First release:

09 Sep 12:06
Compare
Choose a tag to compare
-Acceleration for blocking and non-blocking socket channels is supported
-Java 8+ is supported
-Based on JUCX 1.11.0