Expand description
§LibreDR is an open-source ray-tracing differentiable renderer
[Codeberg Repo] [API Document]
LibreDR uses client-server-worker structure to better utilize multiple GPUs (or even multiple nodes on a cluster). 
Some code examples are under the examples/ directory.
§To run server and worker under Linux:
- Download 
libredr_linux_*.tar.gzunder [releases]. - Start server and worker using 
examples/scripts/{server,worker}.shor with your own configuration.
Example configurations are inexamples/scripts. Useclinfoto verify OpenCL runtime. 
§To run a server and worker under Windows:
- Download 
libredr_windows_*.zipunder [releases]. - Start server and worker using 
examples/scripts/{server,worker}.bator with your own configuration.
Example configurations are inexamples/scripts. 
§To run the example Python codes or your own Python code
- Download 
libredr-*.whlunder [releases] and install usingpip install, or install from [PyPI]. - Run Python example codes 
examples/scripts/run_example.{sh,bat}or your own client codes. 
§All the examples are tested on the following platforms:
| Version | OS | Device | Driver | Note | 
|---|---|---|---|---|
| 🟢v0.0.21 | Debian Bookworm Linux 6.7.12+bpo-amd64 | CPU: Intel Core i7-8550U | PoCL v3.1 | Tested on both opencl_program = source and spirv64 | 
| 🟢v0.0.21 | Debian Bullseye Linux 6.7.12+bpo-amd64 | GPU: Hygon DCU Z100L | Hygon Proprietary v25.04 | Tested on opencl_program = source | 
| 🟢v0.0.21 | Debian Bullseye Linux 6.7.12+bpo-amd64 | GPU: NVIDIA GeForce RTX 3090 | NVIDIA Proprietary v535.216.01 | Tested on opencl_program = source | 
| 🟢v0.0.21 | Debian Bullseye Linux 6.7.12+bpo-amd64 | GPU: AMD Radeon RX 6700 XT | AMD ROCm AOMP v19.0-3 | Tested on opencl_program = source | 
| 🟢v0.0.21 | Debian Bullseye Linux 6.7.12+bpo-amd64 | GPU: Intel UHD Graphics 620 | Intel NEO v22.43.24595.41 | Tested on opencl_program = spir64 and spirv64 | 
| 🟢v0.0.21 | Ubuntu 18.04.2 LTS Linux 4.4.179 | GPU: ARM Mali-T860 | ARM Proprietary v1.r14p0-01rel0-git | Tested on opencl_program = source | 
| 🟢v0.0.20 | Windows 10 21H2 (OS Build 19044.5608) | GPU: AMD Radeon RX 6700 XT | AMD Proprietary v24.12.1 | Unix socket and spir* are not available | 
| 🟢v0.0.20 | Windows 10 21H2 (OS Build 19044.5608) | GPU: Moore Threads MTT S80 | Moore Threads Proprietary v290.100.1 | Tested on OpenCLOn12 v1.2404.1.0 ⚠️ with performance issue | 
To build from source codes for Linux, check the build scripts in examples/scripts_unix/build/. Docker is used to
build manylinux-compatible wheels. For Windows, check examples/scripts_windows/build/.
Copyright (c) 2022-2025 Bohan Yu. All rights reserved. 
LibreDR is free software licensed under the GNU Affero General Public License, version 3 or any later version.
Modules§
- camera
 - All camera models (Rust and Python)
 - client 🔒
 - light_
source  - All light source models (Rust and Python)
 
Structs§
- Geometry
 - Rust interface for Geometry
 - LibreDR
 - Rust interface for LibreDR client
 - PyGeometry
 - Python interface for 
Geometry - PyLibreDR
 - Python interface for 
LibreDRclient 
Statics§
- RUNTIME 🔒
 
Functions§
- init_
static 🔒 - py_
libredr  - Initialize Python module.