-
-
Notifications
You must be signed in to change notification settings - Fork 955
Description
Is your feature request related to a problem? Please describe.
When using OpenMVS with NVIDIA's new RTX 5090 (Blackwell architecture, SM 12.0 / Compute Capability 12.0), the following warning appears:
MapSMtoCores for SM 12.0 is undefined; default to use 64 cores/SM
This indicates that the nGpuArchCoresPerSM array in libs/Common/UtilCUDA.cpp doesn't have a mapping for Blackwell GPUs. The RTX 5090 actually has 128 CUDA cores per SM, but it falls back to 64 cores/SM due to the missing entry.
Environment:
- GPU: NVIDIA GeForce RTX 5090 (32GB GDDR7)
- CUDA Compute Capability: 12.0 (sm_120)
- Driver Version: 591.44
- CUDA Version: 13.1
- OpenMVS Version: 2.2.0 (Build date: Aug 19 2025)
Describe the solution you'd like
Add SM 12.0 (Blackwell) support to the nGpuArchCoresPerSM array in libs/Common/UtilCUDA.cpp:
{0xC0, 128}, // Blackwell Generation (SM 12.0) GB202 classThis follows the same pattern used for previous architecture additions (see issue #1130 for SM 8.9/Ada support).
Describe alternatives you've considered
The current fallback mechanism uses a default core count, but this may result in suboptimal CUDA kernel configurations for the new architecture.
Additional context
- NVIDIA RTX 5090 specs: 21,760 CUDA cores, 170 SMs, 128 cores/SM
- The Blackwell architecture (RTX 50 series) was released in January 2025
- Similar updates were needed for Ada Lovelace (SM 8.9) in issue RTX 4060 TI - MapSMtoCores for SM 8.9 is undefined #1130
- This affects users of OpenDroneMap/NodeODM who use the GPU-accelerated Docker image