https://github.com/mariosieg/rtml
AI Training and infererence on any device
https://github.com/mariosieg/rtml
Last synced: about 1 year ago
JSON representation
AI Training and infererence on any device
- Host: GitHub
- URL: https://github.com/mariosieg/rtml
- Owner: MarioSieg
- License: other
- Created: 2024-02-28T09:43:07.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-29T12:03:47.000Z (about 2 years ago)
- Last Synced: 2025-03-19T09:15:36.435Z (about 1 year ago)
- Language: C++
- Homepage: https://mariosieg.com
- Size: 2.64 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# RTML: RealTime Machine Learning
## Overview
RTML is a Machine Learning framework designed for both training and inference tasks on any GPU or CPU without vendor specific code such as CUDA.
It leverages the power of Vulkan Compute to enable GPU acceleration across any GPU supported by Vulkan.
Additionally, RTML provides a CPU backend optimized for SIMD operations and multi-threading for devices without a suitable GPU.
With user-friendly Python bindings, RTML simplifies the integration of high-performance machine learning models into a variety of applications.
## Features
* Cross-Platform GPU Support: Utilize any GPU that supports Vulkan for ML computations without needing specific GPU code.
* CPU Backend: Optimized for SIMD and multi-threading for systems without a proper GPU.
* Asynchronous Queues: Leverage Vulkan compute with asynchronous queues for efficient task management.
* Python Bindings: Easy-to-use Python interface for seamless integration into your projects.
* Real-Time Performance: Designed for real-time applications requiring rapid training and inference.
## Tensors in RTML
* Dimensions: Support for 1-4 dimensional tensors.
* Computation Graph: Tensors act as nodes within a Directed Acyclic Graph (DAG).
* JIT Compilation: Graphs can be Just-In-Time compiled for CPU or Vulkan backends.
* Execution: Supports Vulkan synchronization and multithreading.
## Workflow
Generate Computation Graph -> Validate -> Optimize -> Compile -> Execute