#ray-tracing #differentiation #renderer #libre-dr #client-server #node

app libredr-worker

LibreDR is an open-source ray-tracing differentiable renderer

11 releases

0.0.21 Jun 24, 2025
0.0.19 Sep 5, 2024
0.0.18 Apr 12, 2024
0.0.17 Feb 18, 2024
0.0.14 Nov 3, 2023

#33 in Graphics APIs

Download history 29/week @ 2025-05-10 99/week @ 2025-05-24 33/week @ 2025-05-31 6/week @ 2025-06-07 3/week @ 2025-06-14 111/week @ 2025-06-21 19/week @ 2025-06-28

139 downloads per month

AGPL-3.0-or-later

150KB
3K SLoC

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:

  1. Download libredr_linux_*.tar.gz under [releases].
  2. Start server and worker using examples/scripts/{server,worker}.sh or with your own configuration.
    Example configurations are in examples/scripts. Use clinfo to verify OpenCL runtime.

To run a server and worker under Windows:

  1. Download libredr_windows_*.zip under [releases].
  2. Start server and worker using examples/scripts/{server,worker}.bat or with your own configuration.
    Example configurations are in examples/scripts.

To run the example Python codes or your own Python code

  1. Download libredr-*.whl under [releases] and install using pip install, or install from [PyPI].
  2. 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.

Dependencies

~33–46MB
~799K SLoC