Skip to content

Add Pixi project files#3

Draft
S-o-T wants to merge 1 commit into
colmap:mainfrom
S-o-T:pixi_torch-sm120_cudss
Draft

Add Pixi project files#3
S-o-T wants to merge 1 commit into
colmap:mainfrom
S-o-T:pixi_torch-sm120_cudss

Conversation

@S-o-T

@S-o-T S-o-T commented May 31, 2026

Copy link
Copy Markdown

I have failed to run a demo on Blackwell gpu, also the detection of/dispatch into ceres-solver with cuDSS seems to be broken. I had no prior experience with Pixi and this issue appeared as a good opportunity 😄 .

I have checked this changes using gluemap-demo on my own dataset and results seems to be valid (i have not assessed if using the cuDSS does indeed leads to any speedups). Sharing it as a draft for those who might find it useful. If there is an interest to merge this, i can decompose into separate PRs (if necessary)

Add instructions to use pixi project
Use pytorch build with support for sm_120
Build ceres-solver with support for cuDSS
Fix ceres-solver with cuDSS detection
Fix usage of kornia method
Fix mast3r model load call to account for changes in pytorch
target_compile_definitions(pygluemap PRIVATE cxx_std_17)
if (TARGET Ceres::ceres_cuda_kernels)
get_target_property(CERES_INTERFACE_LINK_LIBRARIES Ceres::ceres INTERFACE_LINK_LIBRARIES)
string(FIND "${CERES_INTERFACE_LINK_LIBRARIES}" "cudss" CERES_HAS_CUDA)

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ceres-solver can be compiled with support for cuda implementation of dense linear solvers (this would imply Ceres::ceres_cuda_kernels), but enabling cuda implementation of sparse linear solvers requires cuDSS (thus, checking for Ceres::ceres_cuda_kernels is not enough).

@gpdaniels

gpdaniels commented Jun 2, 2026

Copy link
Copy Markdown

I've just used this branch to get an environement setup 👍

Hit a couple of snags, you're missing ninja and cmake:

pixi add ninja cmake

(and maybe a cxx compiler):

pixi add cxx-compiler

Also I had to pass -DCMAKE_CUDA_ARCHITECTURES=120 to the pixi task configure-colmap to get it to build successfully on my 5090 machine.

Might be worth adding another pixi task to download the model checkpoints too.

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.

2 participants