# vosen/ZLUDA

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/vosen-zluda).**

13,945 stars · 896 forks · Rust · apache-2.0

## Links

- GitHub: https://github.com/vosen/ZLUDA
- Homepage: https://vosen.github.io/ZLUDA/
- awesome-repositories: https://awesome-repositories.com/repository/vosen-zluda.md

## Topics

`cuda` `rust`

## Description

ZLUDA is a middleware and translation engine designed to enable the execution of unmodified proprietary compute binaries on non-native graphics hardware. It functions as a compatibility layer that bridges vendor-specific compute interfaces with open standards, allowing software originally restricted to a single hardware ecosystem to operate on alternative graphics processing units.

The project achieves this through a combination of dynamic library interception and runtime instruction translation. By replacing standard system libraries and mapping proprietary compute calls to open standards, the software facilitates cross-vendor GPU compute without requiring modifications to the original application source code.

The system incorporates a hardware abstraction layer and just-in-time kernel compilation to manage the translation of compute instructions into native machine code. This infrastructure ensures that vendor-locked applications can maintain compatibility and performance across diverse hardware architectures.

## Tags

### Hardware & IoT

- [GPU & Performance](https://awesome-repositories.com/f/hardware-iot/integration-performance/gpu-performance.md) — Provides a runtime translation engine that enables high-performance execution of vendor-locked graphics applications on non-native hardware.
- [Cross-Vendor Compute Engines](https://awesome-repositories.com/f/hardware-iot/integration-performance/gpu-performance/gpu-computations/cross-vendor-compute-engines.md) — Enables high-performance compute applications to execute on diverse hardware by translating proprietary instructions at runtime.
- [GPU Computations](https://awesome-repositories.com/f/hardware-iot/integration-performance/gpu-performance/gpu-computations.md) — Converts proprietary compute commands into open standards to allow binary applications to function on alternative hardware.

### Operating Systems & Systems Programming

- [Compute Compatibility Layers](https://awesome-repositories.com/f/operating-systems-systems-programming/compute-compatibility-layers.md) — Runs software designed for proprietary compute platforms on different graphics processing units without source code modifications.
- [Dynamic Binary Translators](https://awesome-repositories.com/f/operating-systems-systems-programming/instruction-translation-accelerators/dynamic-binary-translators.md) — Translates proprietary compute instructions into compatible formats at runtime to execute unmodified binaries on non-NVIDIA hardware. ([source](https://cdn.jsdelivr.net/gh/vosen/ZLUDA@master/README.md))
- [Binary Translation Layers](https://awesome-repositories.com/f/operating-systems-systems-programming/virtualization-emulation/virtualization-platforms/virtualization-platforms/cross-architecture-virtualization/binary-translation-layers.md) — Executes unmodified proprietary compute binaries on alternative graphics hardware by mapping vendor-specific interfaces to open standards.

### Graphics & Multimedia

- [Graphics API Translators](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/graphics-apis-bindings/graphics-rendering-apis/graphics-api-translators.md) — Maps proprietary compute interface calls to open standard commands to maintain software compatibility.

### Software Engineering & Architecture

- [Architecture Translation Layers](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/application-integration/architecture-translation-layers.md) — Acts as a translation layer allowing software designed for specific hardware ecosystems to run on different graphics architectures.
- [Hardware Abstraction Layers](https://awesome-repositories.com/f/software-engineering-architecture/hardware-abstraction-layers.md) — Provides a unified interface that abstracts vendor-specific hardware differences for binary applications.
- [Software Portability Layers](https://awesome-repositories.com/f/software-engineering-architecture/software-portability-layers.md) — Enables the use of specialized graphics and compute applications on diverse hardware ecosystems to avoid vendor lock-in.

### Development Tools & Productivity

- [API Interception Proxies](https://awesome-repositories.com/f/development-tools-productivity/development-environment-management/cloud-service-emulation-interception/api-interception-proxies.md) — Intercepts and redirects proprietary graphics driver calls to local open-source implementations for compatibility.

### Programming Languages & Runtimes

- [Just-In-Time Compilers](https://awesome-repositories.com/f/programming-languages-runtimes/runtime-execution-environments/runtime-environments/execution-engines/just-in-time-compilers.md) — Compiles intermediate compute representations into optimized hardware-specific instructions at runtime.
