TornadoVM
onnxruntime
TornadoVM | onnxruntime | |
---|---|---|
22 | 54 | |
1,120 | 12,804 | |
1.4% | 2.7% | |
9.9 | 10.0 | |
1 day ago | about 21 hours ago | |
Java | C++ | |
Apache License 2.0 | MIT License |
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.
TornadoVM
-
Intel Gaudi 3 AI Accelerator
You don't need to use C++ to interface with CUDA or even write it.
A while ago NVIDIA and the GraalVM team demoed grCUDA which makes it easy to share memory with CUDA kernels and invoke them from any managed language that runs on GraalVM (which includes JIT compiled Python). Because it's integrated with the compiler the invocation overhead is low:
https://developer.nvidia.com/blog/grcuda-a-polyglot-language...
And TornadoVM lets you write kernels in JVM langs that are compiled through to CUDA:
https://www.tornadovm.org
There are similar technologies for other languages/runtimes too. So I don't think that will cause NVIDIA to lose ground.
- Java VectorAPI compatiblity with TornadoVM GPU programming framework
- Java GPU pre/post processing with ONNX RT and TornadoVM
- FLaNK Stack 05 Feb 2024
- FLaNK 25 December 2023
- GPU Acceleration for Python, JavaScript, Ruby from Java with Truffle
- TornadoVM v1.0 Released
- TornadoVM 1.0
-
From CPU to GPU and FPGAs: Supercharging Java Applications with TornadoVM [video]
Presented by Juan Fumero, PhD & Research Fellow (The University of Manchester, UK) during the JVM Language Summit 2023 (Santa Clara CA).
More information on TornadoVM can be found at https://www.tornadovm.org/
Tags: #Java #JVMLS #GPU #FPGA #OpenJDK #GraalVM #AI
onnxruntime
-
Machine Learning with PHP
ONNX Runtime: ONNX Runtime: cross-platform, high performance ML inferencing and training accelerator
-
AI Inference now available in Supabase Edge Functions
Embedding generation uses the ONNX runtime under the hood. This is a cross-platform inferencing library that supports multiple execution providers from CPU to specialized GPUs.
-
Deep Learning in JavaScript
tfjs is dead, looking at the commit history. The standard now is to convert PyTorch to onnx, then use onnxruntime (https://github.com/microsoft/onnxruntime/tree/main/js/web) to run the model on the browsdr.
- FLaNK Stack 05 Feb 2024
-
Vcc – The Vulkan Clang Compiler
- slang[2] has the potential, but the meta programming part is not as strong as C++, existing libraries cannot be used.
The above conclusion is drawn from my work https://github.com/microsoft/onnxruntime/tree/dev/opencl, purely nightmare to work with thoes drivers and jit compilers. Hopefully Vcc can take compute shader more seriously.
[1]: https://www.circle-lang.org/
-
Oracle-samples/sd4j: Stable Diffusion pipeline in Java using ONNX Runtime
I did. It depends what you want, for an overview of how ONNX Runtime works then Microsoft have a bunch of things on https://onnxruntime.ai, but the Java content is a bit lacking on there as I've not had time to write much. Eventually I'll probably write something similar to the C# SD tutorial they have on there but for the Java API.
For writing ONNX models from Java we added an ONNX export system to Tribuo in 2022 which can be used by anything on the JVM to export ONNX models in an easier way than writing a protobuf directly. Tribuo doesn't have full coverage of the ONNX spec, but we're happy to accept PRs to expand it, otherwise it'll fill out as we need it.
- Mamba-Chat: A Chat LLM based on State Space Models
-
VectorDB: Vector Database Built by Kagi Search
What about models besides GPT? Most of the popular vector encoding models aren't using this architecture.
If you really didn't want PyTorch/Transformers, you could consider exporting your models to ONNX (https://github.com/microsoft/onnxruntime).
- ONNX runtime: Cross-platform accelerated machine learning
- Onnx Runtime: “Cross-Platform Accelerated Machine Learning”
What are some alternatives?
Aparapi - The New Official Aparapi: a framework for executing native Java and Scala code on the GPU.
onnx - Open standard for machine learning interoperability
openapi4j - OpenAPI 3 parser, JSON schema and request validator.
onnx-tensorrt - ONNX-TensorRT: TensorRT backend for ONNX
GraalVMREPL - REPL (read–eval–print loop) shell built on top of JavaFX and GraalVM stack, incorporating GraalJS, GraalPython, TruffleRuby and FastR
onnx-simplifier - Simplify your onnx model
kattlo-cli - Kattlo CLI Project
ONNX-YOLOv7-Object-Detection - Python scripts performing object detection using the YOLOv7 model in ONNX.
junodb - JunoDB is PayPal's home-grown secure, consistent and highly available key-value store providing low, single digit millisecond, latency at any scale.
onnx-tensorflow - Tensorflow Backend for ONNX
jr - JR: streaming quality random data from the command line
MLflow - Open source platform for the machine learning lifecycle