Jiali Duan
		
	
	
		8b8291830e
		
	
	
	
	Marching Cubes cuda extension
		
			
			Summary:
Torch CUDA extension for Marching Cubes
- MC involving 3 steps:
  - 1st forward pass to collect vertices and occupied state for each voxel
  - Compute compactVoxelArray to skip non-empty voxels
  - 2nd pass to genereate interpolated vertex positions and faces by marching through the grid
- In contrast to existing MC:
   - Bind each interpolated vertex with a global edge_id to address floating-point precision
   - Added deduplication process to remove redundant vertices and faces
Benchmarks (ms):
| N / V(^3)      | python          | C++             |   CUDA   | Speedup |
| 2 / 20          |    12176873  |       24338     |     4363   | 2790x/5x|
| 1 / 100          |     -             |    3070511     |   27126   |    113x    |
| 2 / 100          |     -             |    5968934     |   53129   |    112x    |
| 1 / 256          |     -             |  61278092     | 430900   |    142x    |
| 2 / 256          |     -             |125687930     | 856941   |    146x   |
Reviewed By: kjchalup
Differential Revision: D39644248
fbshipit-source-id: d679c0c79d67b98b235d12296f383d760a00042a
		
	
 
		2022-11-15 19:42:04 -08:00
	 
	
	
		 ..
	
	
	
		
			
			
			
			
			
			2022-01-04 11:43:38 -08:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-01-04 11:43:38 -08:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-08-28 11:43:46 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-01-04 11:43:38 -08:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-01-04 11:43:38 -08:00
		 
	
		
			
			
			
			
			
			2022-01-04 11:43:38 -08:00
		 
	
		
			
			
			
			
			
			2022-11-15 19:42:04 -08:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-01-04 11:43:38 -08:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-01-04 11:43:38 -08:00
		 
	
		
			
			
			
			
			
			2022-10-06 06:42:58 -07:00
		 
	
		
			
			
			
			
			
			2022-01-04 11:43:38 -08:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00
		 
	
		
			
			
			
			
			
			2022-05-25 06:16:03 -07:00