Skip to content

Commit 5406915

Browse files
authored
release v0.15.0 (#777)
* add wheels config Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> * Update installation.rst Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> --------- Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com>
1 parent c67198d commit 5406915

File tree

10 files changed

+80
-55
lines changed

10 files changed

+80
-55
lines changed

README.md

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -14,34 +14,33 @@ Note that Kaolin library is part of the larger [NVIDIA Kaolin effort](https://de
1414
Starting with v0.12.0, Kaolin supports installation with wheels:
1515
```
1616
# Replace TORCH_VERSION and CUDA_VERSION with your torch / cuda versions
17-
pip install kaolin==0.12.0 -f https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-{TORCH_VERSION}_cu{CUDA_VERSION}.html
17+
pip install kaolin==0.15.0 -f https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-{TORCH_VERSION}_cu{CUDA_VERSION}.html
1818
```
19-
For example, to install kaolin 0.13.0 over torch 1.12.1 and cuda 11.3:
19+
For example, to install kaolin 0.15.0 over torch 1.12.1 and cuda 11.3:
2020
```
21-
pip install kaolin==0.13.0 -f https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-1.12.1_cu113.html
21+
pip install kaolin==0.15.0 -f https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-1.12.1_cu113.html
2222
```
2323

24-
We now support versions 0.12.0 to 0.14.0.
24+
## About the Latest Release (0.15.0)
2525

26-
## About the Latest Release (0.14.0)
26+
In this version we added a [non commercial section](https://kaolin.readthedocs.io/en/latest/modules/kaolin.non_commercial.html) under [NSCL license](LICENSE.NSCL). See [The license section for more info](#Licenses) for more details.
2727

28-
In this version we added a [conversion Op for mesh to SPC](https://kaolin.readthedocs.io/en/latest/modules/kaolin.ops.conversions.html#kaolin.ops.conversions.unbatched_mesh_to_spc),
29-
which allows turning meshes into Structured Point Cloud, our octree based representation.
30-
In addition, [interactive 3D visualizers](https://kaolin.readthedocs.io/en/latest/modules/kaolin.visualize.html) for Jupyter notebooks
31-
and a [SurfaceMesh class](https://kaolin.readthedocs.io/en/latest/modules/kaolin.rep.surface_mesh.html#kaolin-rep-surfacemesh) (see tutorials below).
28+
In this new section we implemented [features for Flexicubes](https://kaolin.readthedocs.io/en/latest/modules/kaolin.non_commercial.html#kaolin.non_commercial.FlexiCubes) a method to extract meshes from scalar fields. See more information in [the official repository](https://github.com/nv-tlabs/FlexiCubes) which is now using Kaolin's implementation.
3229

30+
<a href="https://kaolin.readthedocs.io/en/latest/modules/kaolin.non_commercial.html#kaolin.non_commercial.FlexiCubes"><img src="./assets/flexicubes.png" alt="flexicubes" height="250" /></a>
3331

34-
Check our new tutorials:
32+
In addition we implemented a [GLTF mesh loader](https://kaolin.readthedocs.io/en/latest/modules/kaolin.io.gltf.html) that can be used to load models from [Objaverse](https://objaverse.allenai.org/objaverse-1.0) and [Objaverse-XL](https://objaverse.allenai.org/).
3533

36-
[**Bring any custom renderer** into a Jupyter notebook for debugging. Use Kaolin Camera to navigate:](https://github.com/NVIDIAGameWorks/kaolin/blob/master/examples/tutorial/interactive_visualizer.ipynb)
34+
<a href="https://kaolin.readthedocs.io/en/latest/modules/kaolin.io.gltf.html"><img src="./assets/gltf.png" alt="gltf" height="250" /></a>
3735

38-
<a href="https://github.com/NVIDIAGameWorks/kaolin/blob/master/examples/tutorial/interactive_visualizer.ipynb"><img src="./assets/visualizer.gif" alt="visualizer" height="300" /></a>
3936

40-
[Read and manage **batched mesh attributes** with convenience using SurfaceMesh:](https://github.com/NVIDIAGameWorks/kaolin/blob/master/examples/tutorial/working_with_meshes.ipynb)
37+
Check our new tutorial:
38+
[**Load and render a GLTF file** interactively into a Jupyter notebook:](https://github.com/NVIDIAGameWorks/kaolin/blob/master/examples/tutorial/gltf_viz.ipynb)
39+
In this file we show how to load a gltf file and fully differentiably render it with [nvdiffrast](https://nvlabs.github.io/nvdiffrast/) and [spherical gaussian for diffuse and specular lighting](https://kaolin.readthedocs.io/en/latest/modules/kaolin.render.lighting.html), using displacement mapping and other materials properties from the GLTF file.
4140

42-
<a href="https://github.com/NVIDIAGameWorks/kaolin/blob/master/examples/tutorial/working_with_meshes.ipynb"><img src="./assets/working_with_meshes.png" alt="working_with_meshes" height="250" /></a>
41+
<a href="https://github.com/NVIDIAGameWorks/kaolin/blob/master/examples/tutorial/gltf_viz.ipynb"><img src="./assets/avocado.png" alt="gltf notebook" height="250" /></a>
4342

44-
See [change logs](https://github.com/NVIDIAGameWorks/kaolin/releases/tag/v0.14.0) for details.
43+
See [change logs](https://github.com/NVIDIAGameWorks/kaolin/releases/tag/v0.15.0) for details.
4544

4645
## Contributing
4746

@@ -58,9 +57,12 @@ Please review our [contribution guidelines](CONTRIBUTING.md).
5857
* [Neural Geometric Level of Detail: Real-time Rendering with Implicit 3D Surfaces](https://github.com/nv-tlabs/nglod):
5958
* Use [SPC](https://kaolin.readthedocs.io/en/latest/modules/kaolin.ops.spc.html) conversions and [ray-tracing](https://kaolin.readthedocs.io/en/latest/modules/kaolin.render.spc.html#kaolin.render.spc.unbatched_raytrace), yielding 30x memory and 3x training time reduction.
6059
* [Learning Deformable Tetrahedral Meshes for 3D Reconstruction](https://github.com/nv-tlabs/DefTet):
61-
* Use [Kaolin's DefTet volumetric renderer](https://kaolin.readthedocs.io/en/latest/modules/kaolin.render.mesh.html#kaolin.render.mesh.deftet_sparse_render), [tetrahedral losses](https://kaolin.readthedocs.io/en/latest/modules/kaolin.metrics.tetmesh.html), [camera_functions](https://kaolin.readthedocs.io/en/latest/modules/kaolin.render.camera.html), [mesh operators and conversions](https://kaolin.readthedocs.io/en/latest/modules/kaolin.ops.html), [ShapeNet dataset](https://kaolin.readthedocs.io/en/latest/modules/kaolin.io.shapenet.html#kaolin.io.shapenet.ShapeNetV1), [point_to_mesh_distance](https://kaolin.readthedocs.io/en/latest/modules/kaolin.metrics.trianglemesh.html#kaolin.metrics.trianglemesh.point_to_mesh_distance)and [sided_distance](https://kaolin.readthedocs.io/en/latest/modules/kaolin.metrics.pointcloud.html#kaolin.metrics.pointcloud.sided_distance).
60+
* Use [Kaolin's DefTet volumetric renderer](https://kaolin.readthedocs.io/en/latest/modules/kaolin.render.mesh.html#kaolin.render.mesh.deftet_sparse_render), [tetrahedral losses](https://kaolin.readthedocs.io/en/latest/modules/kaolin.metrics.tetmesh.html), [camera_functions](https://kaolin.readthedocs.io/en/latest/modules/kaolin.render.camera.html), [mesh operators and conversions](https://kaolin.readthedocs.io/en/latest/modules/kaolin.ops.html), [ShapeNet dataset](https://kaolin.readthedocs.io/en/latest/modules/kaolin.io.shapenet.html#kaolin.io.shapenet.ShapeNetV1), [point_to_mesh_distance](https://kaolin.readthedocs.io/en/latest/modules/kaolin.metrics.trianglemesh.html#kaolin.metrics.trianglemesh.point_to_mesh_distance) and [sided_distance](https://kaolin.readthedocs.io/en/latest/modules/kaolin.metrics.pointcloud.html#kaolin.metrics.pointcloud.sided_distance).
6261
* [Text2Mesh](https://github.com/threedle/text2mesh):
6362
* Use [Kaolin's rendering functions](https://kaolin.readthedocs.io/en/latest/modules/kaolin.render.mesh.html#), [camera functions](https://kaolin.readthedocs.io/en/latest/modules/kaolin.render.camera.html), and [obj](https://kaolin.readthedocs.io/en/latest/modules/kaolin.io.obj.html#kaolin.io.obj.import_mesh) and [off](https://kaolin.readthedocs.io/en/latest/modules/kaolin.io.off.html#kaolin.io.off.import_mesh) importers.
63+
* [Flexible Isosurface Extraction for Gradient-Based Mesh Optimization (FlexiCubes)
64+
](https://github.com/nv-tlabs/FlexiCubes):
65+
* Use [Flexicube class](https://kaolin.readthedocs.io/en/latest/modules/kaolin.non_commercial.html#kaolin.non_commercial.FlexiCubes), [obj loader](https://kaolin.readthedocs.io/en/latest/modules/kaolin.io.obj.html), [turntable visualizer](https://kaolin.readthedocs.io/en/latest/modules/kaolin.visualize.html#kaolin.visualize.IpyTurntableVisualizer)
6466

6567
## Licenses
6668

assets/avocado.png

37 KB
Loading

assets/flexicubes.png

262 KB
Loading

assets/gltf.png

6.64 KB
Loading

ci/gitlab_jenkins_templates/core_ci.jenkins

Lines changed: 34 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -70,14 +70,6 @@ def ubuntu_cpuonly_configs = [
7070
// Configs for building python wheels
7171
def ubuntu_for_wheels_configs = [
7272
/*
73-
[
74-
'cudaVer': '11.3.1', 'cudnnVer': '8',
75-
'torchVer': '1.11.0', 'archsToTest': 'MULTI'
76-
],
77-
[
78-
'cudaVer': '11.5.2', 'cudnnVer': '8',
79-
'torchVer': '1.11.0', 'archsToTest': 'MULTI'
80-
],
8173
[
8274
'cudaVer': '11.3.1', 'cudnnVer': '8',
8375
'torchVer': '1.12.0', 'archsToTest': 'MULTI'
@@ -125,20 +117,28 @@ def ubuntu_for_wheels_configs = [
125117
[
126118
'cudaVer': '11.8.0', 'cudnnVer': '8',
127119
'torchVer': '2.0.1', 'archsToTest': 'MULTI'
128-
]
129-
*/
130-
]
131-
132-
def windows_for_wheels_configs = [
133-
/*
120+
],
134121
[
135-
'cudaVer': '11.3', 'cudnnVer': '8',
136-
'torchVer': '1.11.0', 'archsToTest': ''
122+
'cudaVer': '11.8.0', 'cudnnVer': '8',
123+
'torchVer': '2.1.0', 'archsToTest': 'MULTI'
137124
],
138125
[
139-
'cudaVer': '11.5', 'cudnnVer': '8',
140-
'torchVer': '1.11.0', 'archsToTest': ''
126+
'cudaVer': '12.1.0', 'cudnnVer': '8',
127+
'torchVer': '2.1.0', 'archsToTest': 'MULTI'
141128
],
129+
[
130+
'cudaVer': '11.8.0', 'cudnnVer': '8',
131+
'torchVer': '2.1.1', 'archsToTest': 'MULTI'
132+
],
133+
[
134+
'cudaVer': '12.1.0', 'cudnnVer': '8',
135+
'torchVer': '2.1.1', 'archsToTest': 'MULTI'
136+
],
137+
*/
138+
]
139+
140+
def windows_for_wheels_configs = [
141+
/*
142142
[
143143
'cudaVer': '11.3', 'cudnnVer': '8',
144144
'torchVer': '1.12.0', 'archsToTest': ''
@@ -186,6 +186,22 @@ def windows_for_wheels_configs = [
186186
[
187187
'cudaVer': '11.8', 'cudnnVer': '8',
188188
'torchVer': '2.0.1', 'archsToTest': ''
189+
],
190+
[
191+
'cudaVer': '11.8', 'cudnnVer': '8',
192+
'torchVer': '2.1.0', 'archsToTest': ''
193+
],
194+
[
195+
'cudaVer': '12.1', 'cudnnVer': '8',
196+
'torchVer': '2.1.0', 'archsToTest': ''
197+
],
198+
[
199+
'cudaVer': '11.8', 'cudnnVer': '8',
200+
'torchVer': '2.1.1', 'archsToTest': ''
201+
],
202+
[
203+
'cudaVer': '12.1', 'cudnnVer': '8',
204+
'torchVer': '2.1.1', 'archsToTest': ''
189205
]
190206
*/
191207
]

ci/gitlab_jenkins_templates/ubuntu_test_CI.jenkins

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,10 +72,14 @@ spec:
7272
- key: "kubernetes.io/hostname"
7373
operator: "NotIn"
7474
values:${node_blacklist}
75+
- key: "nvidia.com/driver_version"
76+
operator: "NotIn"
77+
values:
78+
- "545.23"
7579
""") {
7680
node(POD_LABEL) {
7781
container("docker") {
78-
timeout(time: 40, unit: 'MINUTES') {
82+
timeout(time: 60, unit: 'MINUTES') {
7983
stage("Install deps") {
8084
sh 'pip install -r /kaolin/tools/ci_requirements.txt'
8185
sh 'apt update && apt install -y unzip && unzip /kaolin/examples/samples/rendered_clock.zip -d /kaolin/examples/samples/'

ci/gitlab_jenkins_templates/windows_build_CI.jenkins

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@ def cuda_version_url = [
1111
'11.5': 'https://developer.download.nvidia.com/compute/cuda/11.5.2/local_installers/cuda_11.5.2_496.13_windows.exe',
1212
'11.6': 'https://developer.download.nvidia.com/compute/cuda/11.6.2/local_installers/cuda_11.6.2_511.65_windows.exe',
1313
'11.7': 'https://developer.download.nvidia.com/compute/cuda/11.7.1/local_installers/cuda_11.7.1_516.94_windows.exe',
14-
'11.8': 'https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_522.06_windows.exe'
14+
'11.8': 'https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_522.06_windows.exe',
15+
'12.1': 'https://developer.download.nvidia.com/compute/cuda/12.1.0/local_installers/cuda_12.1.0_531.14_windows.exe'
1516
]
1617

1718

docs/notes/installation.rst

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@ Requirements
1313
------------
1414

1515
* Linux, Windows, or macOS (CPU-only)
16-
* Python >= 3.7, <= 3.10
16+
* Python >= 3.8, <= 3.10
1717
* `CUDA <https://developer.nvidia.com/cuda-toolkit>`_ >= 10.0 (with 'nvcc' installed) See `CUDA Toolkit Archive <https://developer.nvidia.com/cuda-toolkit-archive>`_ to install older version.
18-
* torch >= 1.8, <= 2.0.1
18+
* torch >= 1.8, <= 2.1.1
1919

2020
Quick Start (Linux, Windows)
2121
----------------------------
@@ -24,7 +24,7 @@ Quick Start (Linux, Windows)
2424
2525
.. code-block:: bash
2626
27-
$ pip install kaolin==0.14.0 -f https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-{TORCH_VER}_cu{CUDA_VER}.html
27+
$ pip install kaolin==0.15.0 -f https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-{TORCH_VER}_cu{CUDA_VER}.html
2828
2929
.. Note::
3030
Replace *TORCH_VER* and *CUDA_VER* with any of the compatible options below.
@@ -33,28 +33,30 @@ Quick Start (Linux, Windows)
3333
.. rst-class:: center-align-center-col
3434

3535
+------------------+-----------+-----------+-----------+-----------+-----------+
36-
| **torch / CUDA** | **cu113** | **cu115** | **cu116** | **cu117** | **cu118** |
36+
| **torch / CUDA** | **cu113** | **cu116** | **cu117** | **cu118** | **cu121** |
3737
+==================+===========+===========+===========+===========+===========+
38-
| **torch-2.0.0** | | | |||
38+
| **torch-2.1.1** | | | |||
3939
+------------------+-----------+-----------+-----------+-----------+-----------+
40-
| **torch-2.0.1** | | | |||
40+
| **torch-2.1.0** | | | |||
4141
+------------------+-----------+-----------+-----------+-----------+-----------+
42-
| **torch-1.13.1** | | ||| |
42+
| **torch-2.0.1** | | ||| |
4343
+------------------+-----------+-----------+-----------+-----------+-----------+
44-
| **torch-1.13.0** | | ||| |
44+
| **torch-2.0.0** | | ||| |
4545
+------------------+-----------+-----------+-----------+-----------+-----------+
46-
| **torch-1.12.1** | | || | |
46+
| **torch-1.13.1** | | || | |
4747
+------------------+-----------+-----------+-----------+-----------+-----------+
48-
| **torch-1.12.0** | | || | |
48+
| **torch-1.13.0** | | || | |
4949
+------------------+-----------+-----------+-----------+-----------+-----------+
50-
| **torch-1.11.0** ||| | | |
50+
| **torch-1.12.1** ||| | | |
5151
+------------------+-----------+-----------+-----------+-----------+-----------+
52-
52+
| **torch-1.12.0** ||| | | |
53+
+------------------+-----------+-----------+-----------+-----------+-----------+
54+
5355
For example, to install kaolin for torch 1.12.1 and CUDA 11.3:
5456

5557
.. code-block:: bash
5658
57-
$ pip install kaolin==0.13.0 -f https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-1.12.1_cu113.html
59+
$ pip install kaolin==0.15.0 -f https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-1.12.1_cu113.html
5860
5961
You can check https://nvidia-kaolin.s3.us-east-2.amazonaws.com/index.html to see all the wheels available.
6062

@@ -66,7 +68,7 @@ Installation from source
6668

6769
.. code-block:: bash
6870
69-
$ conda create --name kaolin python=3.7
71+
$ conda create --name kaolin python=3.8
7072
$ conda activate kaolin
7173
7274
1. Clone Repository
@@ -78,7 +80,7 @@ Clone and optionally check out an `official release <https://github.com/NVIDIAGa
7880
7981
$ git clone --recursive https://github.com/NVIDIAGameWorks/kaolin
8082
$ cd kaolin
81-
$ git checkout v0.13.0 # optional
83+
$ git checkout v0.15.0 # optional
8284
8385
2. Install dependencies
8486
^^^^^^^^^^^^^^^^^^^^^^^
@@ -103,14 +105,14 @@ You can verify that CUDA is properly installed at the desired version with nvcc
103105
^^^^^^^^^^^^^^^^^^
104106

105107
Follow `official instructions <https://pytorch.org>`_ to install PyTorch of a supported version.
106-
Kaolin may be able to work with other PyTorch versions, but we only explicitly test within the version range 1.10.0 to 2.0.0.
108+
Kaolin may be able to work with other PyTorch versions, but we only explicitly test within the version range 1.10.0 to 2.1.1.
107109
See below for overriding PyTorch version check during install.
108110

109111
Here is how to install the latest Pytorch version supported by Kaolin for cuda 11.8:
110112

111113
.. code-block:: bash
112114
113-
$ pip install torch==2.0.1 --extra-index-url https://download.pytorch.org/whl/cu118
115+
$ pip install torch==2.1.1 --extra-index-url https://download.pytorch.org/whl/cu118
114116
115117
116118
4. Optional Environment Variables

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
import warnings
1515

1616
TORCH_MIN_VER = '1.6.0'
17-
TORCH_MAX_VER = '2.1.0'
17+
TORCH_MAX_VER = '2.1.1'
1818
CYTHON_MIN_VER = '0.29.20'
1919
IGNORE_TORCH_VER = os.getenv('IGNORE_TORCH_VER') is not None
2020

version.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
0.15.0a0
1+
0.15.0

0 commit comments

Comments
 (0)