Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cuda bindings (MVS, SIFT GPU) #57

Merged
merged 11 commits into from
Apr 20, 2022
Merged

Cuda bindings (MVS, SIFT GPU) #57

merged 11 commits into from
Apr 20, 2022

Conversation

Phil26AT
Copy link
Collaborator

@Phil26AT Phil26AT commented Apr 6, 2022

  • Adds CUDA support when COLMAP was built with CUDA_ENABLED
    • use pycolmap.has_cuda in python to check for GPU support
    • device argument in functions to specify whether to use CPU ("cpu"), GPU ("cuda"), or "auto" for GPU if available else CPU.
    • all functions except for patch_match_stereo can be used when built w/o CUDA_ENABLED.
  • Reorganized pipeline functions (see pipeline/)
  • SIFT feature extractor and matcher (exhaustive, sequential, spatial, vocabtree) + options
  • Dense MVS reconstruction pipeline (undistort_images,patch_match_stereo, stereo_fusion) + options
  • SIFT GPU on numpy image (see sift.cc), both byte and float images supported
  • Allow interrupting long c++ functions via KeyboardInterrupt

@sarlinpe sarlinpe merged commit b974ced into master Apr 20, 2022
@sarlinpe sarlinpe deleted the cuda-bindings branch April 20, 2022 21:33
@julien-blanchon
Copy link

Did you have a prebuild weel with cuda ?

@sarlinpe
Copy link
Collaborator

sarlinpe commented Sep 27, 2023

We don't but any help is very much appreciated. Some pointers:

  • We'd need to install the Cuda toolkit in the CenOS manylinux image, either through yum (here is a good starting point) or via pip (described here)
  • It would be nice to not package the Cuda libs in the wheel and instead depend on Cuda pip packages - we'd need to add these requirements to the pycolmap wheels.
  • I don't know whether we need to build a separate wheel for each version of Cuda

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants