Name | drjit JSON |
Version |
1.0.1
JSON |
| download |
home_page | None |
Summary | Dr.Jit: A Just-In-Time Compiler for Differentiable Rendering |
upload_time | 2024-11-22 23:21:10 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.8 |
license | None |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
Dr.Jit — A Just-In-Time-Compiler for Differentiable Rendering
=============================================================
.. image:: https://github.com/mitsuba-renderer/drjit-core/raw/master/resources/drjit-logo-dark.svg
:alt: Dr.Jit logo
:align: center
About this project
------------------
**Dr.Jit** is a *just-in-time* (JIT) compiler for ordinary and differentiable
computation. It was originally created as the numerical foundation of `Mitsuba
3 <https://github.com/mitsuba-renderer/mitsuba3>`_, a differentiable `Monte
Carlo <https://en.wikipedia.org/wiki/Monte_Carlo_method>`_ renderer. However,
*Dr.Jit* is a general-purpose tool that can also help with various other types
of embarrassingly parallel computation.
*Dr.Jit* helps with three steps:
- **Vectorization and tracing**: When *Dr.Jit* encounters an operation (e.g. an
addition ``a + b``) it does not execute it right away: instead, it remembers
that an addition will be needed at some later point by recording it into a
graph representation (this is called *tracing*). Eventually, it will
*just-in-time* (JIT) compile the recorded operations into a *fused* kernel
using either `LLVM <https://en.wikipedia.org/wiki/LLVM>`_ (when targeting the
CPU) or `CUDA <https://en.wikipedia.org/wiki/CUDA>`_ (when targeting the
GPU). The values ``a`` and ``b`` will typically be arrays with many elements,
and the system parallelizes their evaluation using multi-core parallelism and
vector instruction sets like `AVX512
<https://en.wikipedia.org/wiki/AVX-512>`_ or `ARM Neon
<https://developer.arm.com/architectures/instruction-sets/simd-isas/neon>`_.
Dr.Jit works particular well for Monte Carlo methods, which performs the
same computation on for millions of random samples. Dr.Jit dynamically
generates specialized parallel code for the target platform. As a fallback,
Dr.Jit can also be used without JIT-compilation, which turns the project into
a header-only vector library without external dependencies.
- **Differentiation**: If desired, Dr.Jit can compute derivatives using
*automatic differentiation* (AD), using either `forward or reverse-mode
accumulation <https://en.wikipedia.org/wiki/Automatic_differentiation>`_.
Differentiation and tracing go hand-in-hand to produce specialized derivative
evaluation code.
- **Python**: Dr.Jit types are accessible within C++17 and Python. Code can be
developed in either language, or even both at once. Combinations of Python
and C++ code can be jointly traced and differentiated.
Dr.Jit handles large programs with custom data structures, side effects, and
polymorphism. It includes a mathematical support library including
transcendental functions and types like vectors, matrices, complex numbers,
quaternions, etc.
Difference to machine learning frameworks
-----------------------------------------
Why did we create Dr.Jit, when dynamic derivative compilation is already
possible using Python-based ML frameworks like `JAX
<https://github.com/google/jax>`_, `Tensorflow <https://www.tensorflow.org>`_,
and `PyTorch <https://github.com/pytorch/pytorch>`_ along with backends like
`XLA <https://www.tensorflow.org/xla>`_ and `TorchScript
<https://pytorch.org/docs/stable/jit.html>`_?
The reason is related to the typical workloads: machine learning involves
smallish computation graphs that are, however, made of arithmetically intense
operations like convolutions, matrix multiplications, etc. The application
motivating *Dr.Jit* (differentiable rendering) creates giant and messy
computation graphs consisting of 100K to millions of "trivial" nodes
(elementary arithmetic operations). In our experience, ML compilation backends
use internal representations and optimization passes that are *too rich* for
this type of input, causing them to crash or time out during compilation. If
you have encountered such issues, you may find *Dr.Jit* useful.
Cloning
-------
Dr.Jit recursively depends on two other repositories: `nanobind
<https://github.com/wjakob/nanobind>`_ for Python bindings, and `drjit-core
<https://github.com/mitsuba-renderer/drjit-core>`_ providing core components of
the JIT-compiler.
To fetch the entire project including these dependencies, clone the project
using the ``--recursive`` flag as follows:
.. code-block:: bash
$ git clone --recursive https://github.com/mitsuba-renderer/drjit
Documentation
-------------
Please see Dr.Jit's page on `readthedocs.io <https://drjit.readthedocs.io>`_
for example code and reference documentation.
References, citations
---------------------
Please see the paper `Dr.Jit: A Just-In-Time Compiler for Differentiable
Rendering <https://rgl.epfl.ch/publications/Jakob2022DrJit>`_ for the
nitty-gritty details and details on the problem motivating this project. There
is also a `video presentation
<https://rgl.s3.eu-central-1.amazonaws.com/media/papers/Jakob2022DrJit.mp4>`_
explaining the design decisions at a higher level.
If you use *Dr.Jit* in your own research, please cite it using the following
BibTeX entry:
.. code-block:: bibtex
@article{Jakob2022DrJit,
author = {Wenzel Jakob and S{\'e}bastien Speierer and Nicolas Roussel and Delio Vicini},
title = {Dr.Jit: A Just-In-Time Compiler for Differentiable Rendering},
journal = {Transactions on Graphics (Proceedings of SIGGRAPH)},
volume = {41},
number = {4},
year = {2022},
month = jul,
doi = {10.1145/3528223.3530099}
}
Logo and history
----------------
The *Dr.Jit* logo was generously created by `Otto Jakob
<https://ottojakob.com>`_. The "*Dr*." prefix simultaneously abbreviates
*differentiable rendering* with the stylized partial derivative *D*, while also
conveying a medical connotation that is emphasized by the `Rod of Asclepius
<https://en.wikipedia.org/wiki/Rod_of_Asclepius>`_. Differentiable rendering
algorithms are growing beyond our control in terms of conceptual and
implementation-level complexity. A doctor is a person, who can offer help in
such a time of great need. *Dr.Jit* tries to fill this role to to improve the
well-being of differentiable rendering researchers.
*Dr.Jit* is the successor of the `Enoki
<https://github.com/mitsuba-renderer/enoki>`_ project, and its high-level API
still somewhat resembles that of Enoki. The system evolved towards a different
approach and has an all-new implementation, hence the decision to switch to a
different project name.
Raw data
{
"_id": null,
"home_page": null,
"name": "drjit",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": null,
"author": null,
"author_email": "Wenzel Jakob <wenzel.jakob@epfl.ch>, =?utf-8?q?S=C3=A9bastien_Speierer?= <sebastien.speierer@epfl.ch>, Nicolas Roussel <nicolas.roussel@epfl.ch>, Delio Vicini <delio.vicini@epfl.ch>",
"download_url": null,
"platform": null,
"description": "Dr.Jit \u2014 A Just-In-Time-Compiler for Differentiable Rendering\n=============================================================\n\n.. image:: https://github.com/mitsuba-renderer/drjit-core/raw/master/resources/drjit-logo-dark.svg\n :alt: Dr.Jit logo\n :align: center\n\nAbout this project\n------------------\n\n**Dr.Jit** is a *just-in-time* (JIT) compiler for ordinary and differentiable\ncomputation. It was originally created as the numerical foundation of `Mitsuba\n3 <https://github.com/mitsuba-renderer/mitsuba3>`_, a differentiable `Monte\nCarlo <https://en.wikipedia.org/wiki/Monte_Carlo_method>`_ renderer. However,\n*Dr.Jit* is a general-purpose tool that can also help with various other types\nof embarrassingly parallel computation.\n\n*Dr.Jit* helps with three steps:\n\n- **Vectorization and tracing**: When *Dr.Jit* encounters an operation (e.g. an\n addition ``a + b``) it does not execute it right away: instead, it remembers\n that an addition will be needed at some later point by recording it into a\n graph representation (this is called *tracing*). Eventually, it will\n *just-in-time* (JIT) compile the recorded operations into a *fused* kernel\n using either `LLVM <https://en.wikipedia.org/wiki/LLVM>`_ (when targeting the\n CPU) or `CUDA <https://en.wikipedia.org/wiki/CUDA>`_ (when targeting the\n GPU). The values ``a`` and ``b`` will typically be arrays with many elements,\n and the system parallelizes their evaluation using multi-core parallelism and\n vector instruction sets like `AVX512\n <https://en.wikipedia.org/wiki/AVX-512>`_ or `ARM Neon\n <https://developer.arm.com/architectures/instruction-sets/simd-isas/neon>`_.\n\n Dr.Jit works particular well for Monte Carlo methods, which performs the\n same computation on for millions of random samples. Dr.Jit dynamically\n generates specialized parallel code for the target platform. As a fallback,\n Dr.Jit can also be used without JIT-compilation, which turns the project into\n a header-only vector library without external dependencies.\n\n- **Differentiation**: If desired, Dr.Jit can compute derivatives using\n *automatic differentiation* (AD), using either `forward or reverse-mode\n accumulation <https://en.wikipedia.org/wiki/Automatic_differentiation>`_.\n Differentiation and tracing go hand-in-hand to produce specialized derivative\n evaluation code.\n\n- **Python**: Dr.Jit types are accessible within C++17 and Python. Code can be\n developed in either language, or even both at once. Combinations of Python\n and C++ code can be jointly traced and differentiated.\n\nDr.Jit handles large programs with custom data structures, side effects, and\npolymorphism. It includes a mathematical support library including\ntranscendental functions and types like vectors, matrices, complex numbers,\nquaternions, etc.\n\nDifference to machine learning frameworks\n-----------------------------------------\n\nWhy did we create Dr.Jit, when dynamic derivative compilation is already\npossible using Python-based ML frameworks like `JAX\n<https://github.com/google/jax>`_, `Tensorflow <https://www.tensorflow.org>`_,\nand `PyTorch <https://github.com/pytorch/pytorch>`_ along with backends like\n`XLA <https://www.tensorflow.org/xla>`_ and `TorchScript\n<https://pytorch.org/docs/stable/jit.html>`_?\n\nThe reason is related to the typical workloads: machine learning involves\nsmallish computation graphs that are, however, made of arithmetically intense\noperations like convolutions, matrix multiplications, etc. The application\nmotivating *Dr.Jit* (differentiable rendering) creates giant and messy\ncomputation graphs consisting of 100K to millions of \"trivial\" nodes\n(elementary arithmetic operations). In our experience, ML compilation backends\nuse internal representations and optimization passes that are *too rich* for\nthis type of input, causing them to crash or time out during compilation. If\nyou have encountered such issues, you may find *Dr.Jit* useful.\n\nCloning\n-------\n\nDr.Jit recursively depends on two other repositories: `nanobind\n<https://github.com/wjakob/nanobind>`_ for Python bindings, and `drjit-core\n<https://github.com/mitsuba-renderer/drjit-core>`_ providing core components of\nthe JIT-compiler.\n\nTo fetch the entire project including these dependencies, clone the project\nusing the ``--recursive`` flag as follows:\n\n.. code-block:: bash\n\n $ git clone --recursive https://github.com/mitsuba-renderer/drjit\n\nDocumentation\n-------------\n\nPlease see Dr.Jit's page on `readthedocs.io <https://drjit.readthedocs.io>`_\nfor example code and reference documentation.\n\nReferences, citations\n---------------------\n\nPlease see the paper `Dr.Jit: A Just-In-Time Compiler for Differentiable\nRendering <https://rgl.epfl.ch/publications/Jakob2022DrJit>`_ for the\nnitty-gritty details and details on the problem motivating this project. There\nis also a `video presentation\n<https://rgl.s3.eu-central-1.amazonaws.com/media/papers/Jakob2022DrJit.mp4>`_\nexplaining the design decisions at a higher level.\n\nIf you use *Dr.Jit* in your own research, please cite it using the following\nBibTeX entry:\n\n.. code-block:: bibtex\n\n @article{Jakob2022DrJit,\n author = {Wenzel Jakob and S{\\'e}bastien Speierer and Nicolas Roussel and Delio Vicini},\n title = {Dr.Jit: A Just-In-Time Compiler for Differentiable Rendering},\n journal = {Transactions on Graphics (Proceedings of SIGGRAPH)},\n volume = {41},\n number = {4},\n year = {2022},\n month = jul,\n doi = {10.1145/3528223.3530099}\n }\n\nLogo and history\n----------------\n\nThe *Dr.Jit* logo was generously created by `Otto Jakob\n<https://ottojakob.com>`_. The \"*Dr*.\" prefix simultaneously abbreviates\n*differentiable rendering* with the stylized partial derivative *D*, while also\nconveying a medical connotation that is emphasized by the `Rod of Asclepius\n<https://en.wikipedia.org/wiki/Rod_of_Asclepius>`_. Differentiable rendering\nalgorithms are growing beyond our control in terms of conceptual and\nimplementation-level complexity. A doctor is a person, who can offer help in\nsuch a time of great need. *Dr.Jit* tries to fill this role to to improve the\nwell-being of differentiable rendering researchers.\n\n*Dr.Jit* is the successor of the `Enoki\n<https://github.com/mitsuba-renderer/enoki>`_ project, and its high-level API\nstill somewhat resembles that of Enoki. The system evolved towards a different\napproach and has an all-new implementation, hence the decision to switch to a\ndifferent project name.\n",
"bugtrack_url": null,
"license": null,
"summary": "Dr.Jit: A Just-In-Time Compiler for Differentiable Rendering",
"version": "1.0.1",
"project_urls": {
"Homepage": "https://github.com/mitsuba-renderer/drjit"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8da6661bdeb14bedc14360dcbed301c3276f9289f8378e15b139c8953a76dac1",
"md5": "de3ad894b69d6761036875c1e87b53ac",
"sha256": "93b7206e3f190dd4d39caf7436ac1c8db4df282facc2ccc270abbfdf0d12ce42"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp310-cp310-macosx_10_14_x86_64.whl",
"has_sig": false,
"md5_digest": "de3ad894b69d6761036875c1e87b53ac",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 3325162,
"upload_time": "2024-11-22T23:21:10",
"upload_time_iso_8601": "2024-11-22T23:21:10.145717Z",
"url": "https://files.pythonhosted.org/packages/8d/a6/661bdeb14bedc14360dcbed301c3276f9289f8378e15b139c8953a76dac1/drjit-1.0.1-cp310-cp310-macosx_10_14_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0b180bd89ef9568e3ccac17c5ff61d308df1bb6cf7fe64c190b69c688b0ee66c",
"md5": "7ebf5cf870d4741997b3fc6e50ab6bf0",
"sha256": "9a8e1007e9701ce304044c8051b5ffaa0ddb2e04238b911299cc53a2bbd5d7e7"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "7ebf5cf870d4741997b3fc6e50ab6bf0",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 2874017,
"upload_time": "2024-11-22T23:21:13",
"upload_time_iso_8601": "2024-11-22T23:21:13.005057Z",
"url": "https://files.pythonhosted.org/packages/0b/18/0bd89ef9568e3ccac17c5ff61d308df1bb6cf7fe64c190b69c688b0ee66c/drjit-1.0.1-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4cb5805400a01172b70774d264801b968205ee6b8e4c55bc7b6aa9a9ef43ad46",
"md5": "2f6d6029c8952a9a6b0d06a0d646a83e",
"sha256": "e2d7ab308d72ec71eac3a0e9d036951cb16e38a08f144210541c50f5dd9fe3d6"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "2f6d6029c8952a9a6b0d06a0d646a83e",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 4291830,
"upload_time": "2024-11-22T23:21:15",
"upload_time_iso_8601": "2024-11-22T23:21:15.135613Z",
"url": "https://files.pythonhosted.org/packages/4c/b5/805400a01172b70774d264801b968205ee6b8e4c55bc7b6aa9a9ef43ad46/drjit-1.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "267eb764ed1fc56691f805efe83111a3cb44ab1900d54fa2d92a48eb629a47fa",
"md5": "00f4e369708f0692adf3b8c467a20789",
"sha256": "24a01fe4f2be4dae1ebba6006f39fc6e5f5f7564b969b19470c39f8a0b9e7b48"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "00f4e369708f0692adf3b8c467a20789",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 3442780,
"upload_time": "2024-11-22T23:21:16",
"upload_time_iso_8601": "2024-11-22T23:21:16.606019Z",
"url": "https://files.pythonhosted.org/packages/26/7e/b764ed1fc56691f805efe83111a3cb44ab1900d54fa2d92a48eb629a47fa/drjit-1.0.1-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2e8cbe57ba495736d5917acf3e0aa62fb466826e5dc0befce05150d238e7e122",
"md5": "51d48209107d2610be9f756b667985d6",
"sha256": "1b147ff151792ffc060c0dcb45660c67760f2cf2d39b1304e9c314251782d3be"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp311-cp311-macosx_10_14_x86_64.whl",
"has_sig": false,
"md5_digest": "51d48209107d2610be9f756b667985d6",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 3338015,
"upload_time": "2024-11-22T23:21:18",
"upload_time_iso_8601": "2024-11-22T23:21:18.149096Z",
"url": "https://files.pythonhosted.org/packages/2e/8c/be57ba495736d5917acf3e0aa62fb466826e5dc0befce05150d238e7e122/drjit-1.0.1-cp311-cp311-macosx_10_14_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ecf38bf2c20f920858eff0ae9da42d8ece234a123044d7ea78f05aa200c9a83a",
"md5": "a18553578c4d6d8835ea4512c28004a7",
"sha256": "979788831dcf785932126c70870f75683616048f93c30b9713c1c9be9eb7e1a0"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "a18553578c4d6d8835ea4512c28004a7",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 2874025,
"upload_time": "2024-11-22T23:21:20",
"upload_time_iso_8601": "2024-11-22T23:21:20.137461Z",
"url": "https://files.pythonhosted.org/packages/ec/f3/8bf2c20f920858eff0ae9da42d8ece234a123044d7ea78f05aa200c9a83a/drjit-1.0.1-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e72755a44fe2eb67ec900e630154c0fb682b73cfc75b84de682f0863d40f2fe5",
"md5": "63a6c6e2738d635a0c53450042152935",
"sha256": "74804ead1131b5929a687016cd9f4f107e227b3e52c71923b658bd770f48d652"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "63a6c6e2738d635a0c53450042152935",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 4291743,
"upload_time": "2024-11-22T23:21:21",
"upload_time_iso_8601": "2024-11-22T23:21:21.573608Z",
"url": "https://files.pythonhosted.org/packages/e7/27/55a44fe2eb67ec900e630154c0fb682b73cfc75b84de682f0863d40f2fe5/drjit-1.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "637b77397ba795f6903b44c84fade9aab15a3e92126afa0dd0f58ad2add7cb60",
"md5": "accbe173e9b00bf80b870c241c0afb58",
"sha256": "2c136db765adf713fb1d13c49f55fcf22d36e6195ffbba438a75ae80917001ca"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "accbe173e9b00bf80b870c241c0afb58",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 3442852,
"upload_time": "2024-11-22T23:21:22",
"upload_time_iso_8601": "2024-11-22T23:21:22.864327Z",
"url": "https://files.pythonhosted.org/packages/63/7b/77397ba795f6903b44c84fade9aab15a3e92126afa0dd0f58ad2add7cb60/drjit-1.0.1-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5cdb67255ca31de07e0a73d6290f371cde01e958f34bc1c95d9aa154a648b31c",
"md5": "922a95d4c4bf6f451c5200b16f578aa8",
"sha256": "e7cd6034ed21ac975510baa6b5c3d0515c2330e57e99d0c5012d998407a24225"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp312-abi3-macosx_10_14_x86_64.whl",
"has_sig": false,
"md5_digest": "922a95d4c4bf6f451c5200b16f578aa8",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 3317993,
"upload_time": "2024-11-22T23:21:24",
"upload_time_iso_8601": "2024-11-22T23:21:24.940978Z",
"url": "https://files.pythonhosted.org/packages/5c/db/67255ca31de07e0a73d6290f371cde01e958f34bc1c95d9aa154a648b31c/drjit-1.0.1-cp312-abi3-macosx_10_14_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "df1f00103a8e4833ad5e1b6259c1f0266a952b8bd71a5a0947a2ddb8d6134239",
"md5": "fd7d3f2b7ee1c9a5b7999dc31289ab3d",
"sha256": "e31552fbe5b3dba0431ff47f8c68873e1c918ca7fe2281acc1d6bcf241469034"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp312-abi3-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "fd7d3f2b7ee1c9a5b7999dc31289ab3d",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 2864403,
"upload_time": "2024-11-22T23:21:26",
"upload_time_iso_8601": "2024-11-22T23:21:26.264597Z",
"url": "https://files.pythonhosted.org/packages/df/1f/00103a8e4833ad5e1b6259c1f0266a952b8bd71a5a0947a2ddb8d6134239/drjit-1.0.1-cp312-abi3-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d739789367bff565223a4e32372e9864684bd664ea811e79edbbc9874579f45e",
"md5": "36345cd34d41ac6e8208a3b79ab1c4a9",
"sha256": "e1baa21326d3e4885052fd2ed006175cd881e71ab5751eab77e9d91d45e3d966"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "36345cd34d41ac6e8208a3b79ab1c4a9",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 4291975,
"upload_time": "2024-11-22T23:21:27",
"upload_time_iso_8601": "2024-11-22T23:21:27.629085Z",
"url": "https://files.pythonhosted.org/packages/d7/39/789367bff565223a4e32372e9864684bd664ea811e79edbbc9874579f45e/drjit-1.0.1-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ab4b0e8c8ed211829c6e895683cd1c5a30379a282fe2ab3250888a0863871b94",
"md5": "fa803fe069bfeb73cd4b916e8d47c17b",
"sha256": "9dd86cb01fc12a29ef751ed5a7b9c99a7d14ca1d13807bdc61277e805ef18149"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp312-abi3-win_amd64.whl",
"has_sig": false,
"md5_digest": "fa803fe069bfeb73cd4b916e8d47c17b",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 3457646,
"upload_time": "2024-11-22T23:21:29",
"upload_time_iso_8601": "2024-11-22T23:21:29.983107Z",
"url": "https://files.pythonhosted.org/packages/ab/4b/0e8c8ed211829c6e895683cd1c5a30379a282fe2ab3250888a0863871b94/drjit-1.0.1-cp312-abi3-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ce035cdfd07831c7aa29b121681cf772558323217f52ff0115707e103eaefbe5",
"md5": "0704e4a693d9f9ee28a231dbc95ab48a",
"sha256": "138af8f42fe56397f43f51c071a41e5e66572ce20709de58271eedb140f4c132"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp312-cp312-macosx_10_14_x86_64.whl",
"has_sig": false,
"md5_digest": "0704e4a693d9f9ee28a231dbc95ab48a",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 3338698,
"upload_time": "2024-11-22T23:21:31",
"upload_time_iso_8601": "2024-11-22T23:21:31.369333Z",
"url": "https://files.pythonhosted.org/packages/ce/03/5cdfd07831c7aa29b121681cf772558323217f52ff0115707e103eaefbe5/drjit-1.0.1-cp312-cp312-macosx_10_14_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4f3f8f80b65e1ff418eb26812d3cda77c3a5eaa091eec2d6e5a5a93159e2915c",
"md5": "07c7ab5699b9f450bbcdacd542e5b37d",
"sha256": "274527a36b7935352d18dc7fce4baaeddac05a2e1145178ebf19ce59ef9b4ab8"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "07c7ab5699b9f450bbcdacd542e5b37d",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 2872270,
"upload_time": "2024-11-22T23:21:32",
"upload_time_iso_8601": "2024-11-22T23:21:32.734614Z",
"url": "https://files.pythonhosted.org/packages/4f/3f/8f80b65e1ff418eb26812d3cda77c3a5eaa091eec2d6e5a5a93159e2915c/drjit-1.0.1-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4b8c297995ed250d8e1b01c33e16a42e751d40873b9b3493e9ffb6b90a9cb527",
"md5": "3aec1c8dd234019c0e5bb642505c5fb3",
"sha256": "1c6ba2f5aa0f9ba0ad1d75bf749dd39ed9055f7e319d831ab1f2c8f4fcbc5c7c"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "3aec1c8dd234019c0e5bb642505c5fb3",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 4291961,
"upload_time": "2024-11-22T23:21:34",
"upload_time_iso_8601": "2024-11-22T23:21:34.444331Z",
"url": "https://files.pythonhosted.org/packages/4b/8c/297995ed250d8e1b01c33e16a42e751d40873b9b3493e9ffb6b90a9cb527/drjit-1.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "09419d39eec8f562b8dbcc37ff7b72e951de384559fa9357dc2ac3cd92e0bfc0",
"md5": "c8ee38e64b303d3b2af7d4bb165f45eb",
"sha256": "88d5c9b50045a6611f0bb0b5895e68186b0242e588f24606de0b769dab82e3f6"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "c8ee38e64b303d3b2af7d4bb165f45eb",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 3446817,
"upload_time": "2024-11-22T23:21:35",
"upload_time_iso_8601": "2024-11-22T23:21:35.818859Z",
"url": "https://files.pythonhosted.org/packages/09/41/9d39eec8f562b8dbcc37ff7b72e951de384559fa9357dc2ac3cd92e0bfc0/drjit-1.0.1-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3a114dd159a2b5196f072597e5b6a1e7c230b42824a44cdbe557e6ff7151227b",
"md5": "15ae3d7fd0af0aa3703eee624d7ee032",
"sha256": "7e310000df31b88499cbe47b1ad0b678cd0bd3613601d1b348bc995c7728b891"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp313-cp313-macosx_10_14_x86_64.whl",
"has_sig": false,
"md5_digest": "15ae3d7fd0af0aa3703eee624d7ee032",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.8",
"size": 3338654,
"upload_time": "2024-11-22T23:21:37",
"upload_time_iso_8601": "2024-11-22T23:21:37.830825Z",
"url": "https://files.pythonhosted.org/packages/3a/11/4dd159a2b5196f072597e5b6a1e7c230b42824a44cdbe557e6ff7151227b/drjit-1.0.1-cp313-cp313-macosx_10_14_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0911f1db3f7e8293e545eee95e4e13751dfc249feea59cf1087319af1e52a141",
"md5": "7380e0886f8449745c8d10d8e9648523",
"sha256": "30654651e46107467db934b949367e3fdd044e91c4db01ece6f4cc91d2251205"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp313-cp313-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "7380e0886f8449745c8d10d8e9648523",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.8",
"size": 2872159,
"upload_time": "2024-11-22T23:21:39",
"upload_time_iso_8601": "2024-11-22T23:21:39.850810Z",
"url": "https://files.pythonhosted.org/packages/09/11/f1db3f7e8293e545eee95e4e13751dfc249feea59cf1087319af1e52a141/drjit-1.0.1-cp313-cp313-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "602eb216cf8c84e474eeb0df99956d6b9211e93aa557c7b3d62fb7faa38c41bd",
"md5": "e36a450af36efd018da61ce3b4377bca",
"sha256": "b63a18f748829ed5b003284d9468c34acbf04db1719402dc5340b0d79fed85e5"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "e36a450af36efd018da61ce3b4377bca",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.8",
"size": 4291913,
"upload_time": "2024-11-22T23:21:41",
"upload_time_iso_8601": "2024-11-22T23:21:41.298763Z",
"url": "https://files.pythonhosted.org/packages/60/2e/b216cf8c84e474eeb0df99956d6b9211e93aa557c7b3d62fb7faa38c41bd/drjit-1.0.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "026de294fb995a0851c9abb03452b3619819ddb7cf0996a983783df0d589492b",
"md5": "ab3b4c4eff0514011cfba1724f4fac4d",
"sha256": "90b259da370b175ec779512ff9b6ab81f45f73b6c41837f57d71187a1aafb3f1"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp313-cp313-win_amd64.whl",
"has_sig": false,
"md5_digest": "ab3b4c4eff0514011cfba1724f4fac4d",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.8",
"size": 3446822,
"upload_time": "2024-11-22T23:21:43",
"upload_time_iso_8601": "2024-11-22T23:21:43.252334Z",
"url": "https://files.pythonhosted.org/packages/02/6d/e294fb995a0851c9abb03452b3619819ddb7cf0996a983783df0d589492b/drjit-1.0.1-cp313-cp313-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c1b72c2cb7aa9e9ea0d0bc5e7b87de57a0cb1e3c5ab832843e07a683f895815b",
"md5": "2509f8e26bd2a22dc856a1a2b99fa4fb",
"sha256": "d0d06f2cf5b229622e1c2b261d0922617def2903d3121b48ae484c3928834dab"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp38-cp38-macosx_10_14_x86_64.whl",
"has_sig": false,
"md5_digest": "2509f8e26bd2a22dc856a1a2b99fa4fb",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 3321963,
"upload_time": "2024-11-22T23:21:45",
"upload_time_iso_8601": "2024-11-22T23:21:45.296583Z",
"url": "https://files.pythonhosted.org/packages/c1/b7/2c2cb7aa9e9ea0d0bc5e7b87de57a0cb1e3c5ab832843e07a683f895815b/drjit-1.0.1-cp38-cp38-macosx_10_14_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6b60ae35c6a084ec691246d2992aeea759d13ea081043b27163c914c634edc4f",
"md5": "c3457e7f2a233273672d81fcb08a2265",
"sha256": "c20940eca0efdccba75a40e27fc5a8acc11376d1381b2e642f37a075a8fa4115"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "c3457e7f2a233273672d81fcb08a2265",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 4275549,
"upload_time": "2024-11-22T23:21:47",
"upload_time_iso_8601": "2024-11-22T23:21:47.298707Z",
"url": "https://files.pythonhosted.org/packages/6b/60/ae35c6a084ec691246d2992aeea759d13ea081043b27163c914c634edc4f/drjit-1.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "af9934fb5f9a1de6bd0c28906ce479a7319b33450466420ec716fd99faf9076f",
"md5": "5c8064b18ca03512c01a7fb8b06c1e2c",
"sha256": "65dd16d689563fbc542afd64eacf010bce6e1c707a43140c3522f2c92ab6c08f"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp38-cp38-win_amd64.whl",
"has_sig": false,
"md5_digest": "5c8064b18ca03512c01a7fb8b06c1e2c",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 3427558,
"upload_time": "2024-11-22T23:21:48",
"upload_time_iso_8601": "2024-11-22T23:21:48.679310Z",
"url": "https://files.pythonhosted.org/packages/af/99/34fb5f9a1de6bd0c28906ce479a7319b33450466420ec716fd99faf9076f/drjit-1.0.1-cp38-cp38-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b2cb152f70eb740d500f67820da35f6f7c5b86f9769c92f8666dfdaf5e9f30f3",
"md5": "d612a40ef62ec73d41ef73a50b399ba1",
"sha256": "f990811a8e3c626b5ea3ead4de4399e315534ff43e5fe0ed14a3420869f889ca"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp39-cp39-macosx_10_14_x86_64.whl",
"has_sig": false,
"md5_digest": "d612a40ef62ec73d41ef73a50b399ba1",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 3333160,
"upload_time": "2024-11-22T23:21:50",
"upload_time_iso_8601": "2024-11-22T23:21:50.492898Z",
"url": "https://files.pythonhosted.org/packages/b2/cb/152f70eb740d500f67820da35f6f7c5b86f9769c92f8666dfdaf5e9f30f3/drjit-1.0.1-cp39-cp39-macosx_10_14_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f527be7edc05c73015119af72ee15189e000d528cf8c5b77c5e0b0dd210c838f",
"md5": "db9b7e71a9e788043646df491c2387c9",
"sha256": "2069d6140bf1b3b1073c8f87bcefdd6b9f3696b0d1af95f99e83356682d2e0b0"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp39-cp39-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "db9b7e71a9e788043646df491c2387c9",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 2874985,
"upload_time": "2024-11-22T23:21:51",
"upload_time_iso_8601": "2024-11-22T23:21:51.852104Z",
"url": "https://files.pythonhosted.org/packages/f5/27/be7edc05c73015119af72ee15189e000d528cf8c5b77c5e0b0dd210c838f/drjit-1.0.1-cp39-cp39-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1d865a8717e20671553f5822f6755ed9ef32ecba9e8c2210bd8930c2fd03e150",
"md5": "fb9091b8ec2078e2819c6bd53235ce0c",
"sha256": "af73b6e587e8d3ed2fa4fbc1102804f00aa73670ad7d2115290d6d5b445c1795"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "fb9091b8ec2078e2819c6bd53235ce0c",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 4292583,
"upload_time": "2024-11-22T23:21:53",
"upload_time_iso_8601": "2024-11-22T23:21:53.319489Z",
"url": "https://files.pythonhosted.org/packages/1d/86/5a8717e20671553f5822f6755ed9ef32ecba9e8c2210bd8930c2fd03e150/drjit-1.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d76418dae4fa8acf65a7a5337c190e1016d2de924688f15c05612aa06a50b60f",
"md5": "08b40089cfee0a96b549c4e9a419058d",
"sha256": "2d1a82b47cd369d146b7e8e6484e2588e59569c39c51cc57b476243e428dd197"
},
"downloads": -1,
"filename": "drjit-1.0.1-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "08b40089cfee0a96b549c4e9a419058d",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 3443871,
"upload_time": "2024-11-22T23:21:54",
"upload_time_iso_8601": "2024-11-22T23:21:54.858681Z",
"url": "https://files.pythonhosted.org/packages/d7/64/18dae4fa8acf65a7a5337c190e1016d2de924688f15c05612aa06a50b60f/drjit-1.0.1-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-22 23:21:10",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "mitsuba-renderer",
"github_project": "drjit",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "drjit"
}