1. 31 Jan, 2024 1 commit
  2. 16 Nov, 2022 1 commit
    • Jiali Duan's avatar
      Marching Cubes cuda extension · 8b829183
      Jiali Duan authored
      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
      8b829183
  3. 06 Oct, 2022 2 commits
    • Jiali Duan's avatar
      Marching Cubes C++ torch extension · 0d8608b9
      Jiali Duan authored
      Summary:
      Torch C++ extension for Marching Cubes
      
      - Add torch C++ extension for marching cubes. Observe a speed up of ~255x-324x speed up (over varying batch sizes and spatial resolutions)
      
      - Add C++ impl in existing unit-tests.
      
      (Note: this ignores all push blocking failures!)
      
      Reviewed By: kjchalup
      
      Differential Revision: D39590638
      
      fbshipit-source-id: e44d2852a24c2c398e5ea9db20f0dfaa1817e457
      0d8608b9
    • Gavin Peng's avatar
      Multithread CPU naive mesh rasterization · 6471893f
      Gavin Peng authored
      Summary:
      Threaded the for loop:
      ```
      for (int yi = 0; yi < H; ++yi) {...}
      ```
      in function `RasterizeMeshesNaiveCpu()`.
      Chunk size is approx equal.
      
      Reviewed By: bottler
      
      Differential Revision: D40063604
      
      fbshipit-source-id: 09150269405538119b0f1b029892179501421e68
      6471893f
  4. 28 Aug, 2022 1 commit
    • Jiali Duan's avatar
      Benchmark Cameras · 03562d87
      Jiali Duan authored
      Summary: Address comments to add benchmarkings for cameras and the new fisheye cameras. The dependency functions in test_cameras have been updated in Diff 1. The following two snapshots show benchmarking results.
      
      Reviewed By: kjchalup
      
      Differential Revision: D38991914
      
      fbshipit-source-id: 51fe9bb7237543e4ee112c9f5068a4cf12a9d482
      03562d87
  5. 25 May, 2022 2 commits
    • Jeremy Reizenstein's avatar
      move targets · 34f648ed
      Jeremy Reizenstein authored
      Summary: Move testing targets from pytorch3d/tests/TARGETS to pytorch3d/TARGETS.
      
      Reviewed By: shapovalov
      
      Differential Revision: D36186940
      
      fbshipit-source-id: a4c52c4d99351f885e2b0bf870532d530324039b
      34f648ed
    • Krzysztof Chalupka's avatar
      SplatterPhongShader Benchmarks · 7c25d34d
      Krzysztof Chalupka authored
      Summary:
      Benchmarking. We only use num_faces=2 for splatter, because as far as I can see one would never need to use more. Pose optimization and mesh optimization experiments (see next two diffs) showed that Splatter with 2 faces beats Softmax with 50 and 100 faces in terms of accuracy.
      
      Results: We're slower at 64px^2. At 128px and 256px, we're slower than Softmax+50faces, but faster than Softmax+100faces. We're also slower at 10 faces/pix, but expectation as well as results show that more then 2 faces shouldn't be necessary. See also more results in .https://fburl.com/gdoc/ttv7u7hp
      
      Reviewed By: jcjohnson
      
      Differential Revision: D36210575
      
      fbshipit-source-id: c8de28c8a59ce5fe21a47263bd43d2757b15d123
      7c25d34d
  6. 12 May, 2022 1 commit
    • John Reese's avatar
      formatting changes from black 22.3.0 · bef959c7
      John Reese authored
      Summary:
      Applies the black-fbsource codemod with the new build of pyfmt.
      
      paintitblack
      
      Reviewed By: lisroach
      
      Differential Revision: D36324783
      
      fbshipit-source-id: 280c09e88257e5e569ab729691165d8dedd767bc
      bef959c7
  7. 24 Jan, 2022 2 commits
    • Jeremy Reizenstein's avatar
      use workaround for points_normals · c2862ff4
      Jeremy Reizenstein authored
      Summary:
      Use existing workaround for batched 3x3 symeig because it is faster than torch.symeig.
      
      Added benchmark showing speedup. True = workaround.
      ```
      Benchmark                Avg Time(μs)      Peak Time(μs) Iterations
      --------------------------------------------------------------------------------
      normals_True_3000            16237           17233             31
      normals_True_6000            33028           33391             16
      normals_False_3000        18623069        18623069              1
      normals_False_6000        36535475        36535475              1
      ```
      
      Should help https://github.com/facebookresearch/pytorch3d/issues/988
      
      Reviewed By: nikhilaravi
      
      Differential Revision: D33660585
      
      fbshipit-source-id: d1162b277f5d61ed67e367057a61f25e03888dce
      c2862ff4
    • Jeremy Reizenstein's avatar
      New raysamplers · 3eb42338
      Jeremy Reizenstein authored
      Summary: New MultinomialRaysampler succeeds GridRaysampler bringing masking and subsampling. Correspondingly, NDCMultinomialRaysampler succeeds NDCGridRaysampler.
      
      Reviewed By: nikhilaravi, shapovalov
      
      Differential Revision: D33256897
      
      fbshipit-source-id: cd80ec6f35b110d1d20a75c62f4e889ba8fa5d45
      3eb42338
  8. 04 Jan, 2022 2 commits
    • Jeremy Reizenstein's avatar
      More company name & License · 741777b5
      Jeremy Reizenstein authored
      Summary: Manual adjustments for license changes.
      
      Reviewed By: patricklabatut
      
      Differential Revision: D33405657
      
      fbshipit-source-id: 8a21735726f3aece9f9164da9e3b272b27db8032
      741777b5
    • Jeremy Reizenstein's avatar
      Update license for company name · 9eeb456e
      Jeremy Reizenstein authored
      Summary: Update all FB license strings to the new format.
      
      Reviewed By: patricklabatut
      
      Differential Revision: D33403538
      
      fbshipit-source-id: 97a4596c5c888f3c54f44456dc07e718a387a02c
      9eeb456e
  9. 07 Dec, 2021 1 commit
    • Jeremy Reizenstein's avatar
      move benchmarks to separate directory · a0e2d2e3
      Jeremy Reizenstein authored
      Summary: Move benchmarks to a separate directory as tests/ is getting big.
      
      Reviewed By: nikhilaravi
      
      Differential Revision: D32885462
      
      fbshipit-source-id: a832662a494ee341ab77d95493c95b0af0a83f43
      a0e2d2e3