Skip to content

Conversation

nicogorlo
Copy link

As it stands, nerfstudio is not compatible with Blackwell Nvidia GPU architecture, as the only torch/cuda version supporting sm_120 architectures is 2.8.0+cu128.
Some of the functions used in nerfstudio have been deprecated since torch 2.6. The proposed changes would make nerfstudio compatible with the Blackwell architecture and the latest version of torch while retaining backward compatibility with older torch versions.

Fixes:

  • starting in torch2.6, torch.load(..., weights_only=True) (the new default) will refuse to deserialize any Python globals that arent explicitly allow-listed, thus explicitly setting weights_only=False .
  • torch.cuda.amp.custom_bwd is deprecated. Changes to torch.amp.custom_bwd(device_type='cuda')

@stanlew7531
Copy link

just wanted to add some support to this PR. This functionality would be greatly beneficial, and if I can add resources to help push over the line I'd be happy to do so (bandwidth permitting).

@brentyi brentyi self-assigned this Jun 12, 2025
@brentyi
Copy link
Collaborator

brentyi commented Jun 12, 2025

Hi! I can help get this merged, but we should get the build to pass. It looks like Pyright is complaining about torch.amp.custom_fwd / torch.amp.custom_bwd. This is probably because we're running Python 3.8, which is EOL and not supported by newer PyTorch versions.

Options are:

  • Drop Python 3.8 support. We should update the docs accordingly. To futureproof a bit we could support >=3.9 but recommend 3.12.
  • Add a try/except for the import to keep Python 3.8 support, and relevant type: ignore comments to suppress pyright errors.

I'm learning toward the former, does anybody have time to help?

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.

3 participants