Aparapi
Agrona
Our great sponsors
Aparapi | Agrona | |
---|---|---|
4 | 5 | |
459 | 2,739 | |
1.7% | 0.6% | |
0.0 | 8.4 | |
over 1 year ago | about 1 month ago | |
Java | Java | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Aparapi
-
WritableImage and real-time ray-tracing. I need help!
That already looks much better. Too bad you're limited to no external dependencies. This could be a nice test project for aparapi (e.g. https://foojay.io/today/high-performance-rendering-in-javafx/).
-
What are some new or upcoming Java projects or advancements that excite you the most?
That might be Aparapi; the original version created by AMD was abandoned but there is a community-driven version that is still maintained.
-
Scala on the GPU?
There's aparapi: https://github.com/Syncleus/aparapi which support OpenCL.
-
Minecraft Snapshot 21w19a - Now Uses Java 16
The closest I know of: https://github.com/Syncleus/aparapi
Agrona
-
Any library you would like to recommend to others as it helps you a lot? For me, mapstruct is one of them. Hopefully I would hear some other nice libraries I never try.
Aeron for low latency apps and Agrona is you're using Aeron for data structures
-
Need help navigating the Java ecosystem (coming from C++)
Martin Thompson is one of the leaders in that space: his blog is a really great place to start. His Agrona library is a bunch of high-performance data structures, which you can use directly, but which can also serve as examples of writing such code.
-
WritableImage and real-time ray-tracing. I need help!
ByteBuffer methods have quite a bit of overhead. You could further try to (1) writing to a byte[] first and then using the put(byte[]) method, or (2) use sun.misc.Unsafe::putByte (maybe try with Agrona's DirectBuffer and copy the necessary lines if need be).
- Are you interested in learning about low latency zero allocation programming?
What are some alternatives?
KonaBess - A GPU overclock & undervolt tool for various Snapdragon chips
Disruptor - High Performance Inter-Thread Messaging Library
TornadoVM - TornadoVM: A practical and efficient heterogeneous programming framework for managed languages
fastutil - fastutil extends the Java™ Collections Framework by providing type-specific maps, sets, lists and queues.
cache2k - Lightweight, high performance Java caching
Chronicle Queue - Micro second messaging that stores everything to disk
wasmer-java - ☕ WebAssembly runtime for Java
Eclipse Collections - Eclipse Collections is a collections framework for Java with optimized data structures and a rich, functional and fluent API.
TLS Channel - A Java library that implements a ByteChannel interface over SSLEngine, enabling easy-to-use (socket-like) TLS for Java applications.
JCTools
netlib - An high-performance, hardware-accelerated implementation of Netlib in Java
Koloboke - Java Collections till the last breadcrumb of memory and performance