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.gz
under [releases]. - Start server and worker using
examples/scripts/{server,worker}.sh
or with your own configuration.
Example configurations are inexamples/scripts
. Useclinfo
to verify OpenCL runtime.
§To run a server and worker under Windows:
- Download
libredr_windows_*.zip
under [releases]. - Start server and worker using
examples/scripts/{server,worker}.bat
or with your own configuration.
Example configurations are inexamples/scripts
.
§To run the example Python codes or your own Python code
- Download
libredr-*.whl
under [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.20 | 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.20 | Debian Bullseye Linux 6.7.12+bpo-amd64 | GPU: Hygon DCU Z100L | Hygon Proprietary v25.04 | Tested on opencl_program = source |
🟢v0.0.20 | 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.20 | 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.20 | Debian Bullseye Linux 6.7.12+bpo-amd64 | GPU: Intel UHD Graphics 620 | Intel NEO v22.43.24595.41 | Tested on opencl_program = spirv64 |
🟢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)
- 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
LibreDR
client
Functions§
- py_
libredr - Initialize Python module.