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

Optix 8 abi bump #1480

Merged
merged 8 commits into from
Feb 6, 2025
Merged

Optix 8 abi bump #1480

merged 8 commits into from
Feb 6, 2025

Conversation

njroussel
Copy link
Member

@njroussel njroussel commented Jan 30, 2025

Description

This PR is part of a series to upgrade to OptiX 8.0:

It introduces the following changes:

  • Update of OptiX interfaces and structs
  • Reduce programs to OptiX pipeline
  • Changes to OptixDenoiser interface

⚠️ NOTE: The resources/data submodule must be updated prior to merging this PR.

Testing

No new tests were added. Tests for OptixDenoiser were updated due to the new interface.

@njroussel njroussel added the enhancement New feature or request label Jan 30, 2025
@merlinND
Copy link
Member

Hi @njroussel,

Does this API bump change the minimum supported driver version? (Just to make sure that it is documented and checked at runtime).

@wjakob
Copy link
Member

wjakob commented Jan 31, 2025

Just to make sure that it is documented and checked at runtime

There is an error message in Dr.Jit-Core when OptiX is first used. But the Mitsuba documentation likely needs an update.

@wjakob
Copy link
Member

wjakob commented Jan 31, 2025

This looks great. For posterity, can you explain the simplification?

Simplification to submission of programs to OptiX pipeline

@njroussel
Copy link
Member Author

This looks great. For posterity, can you explain the simplification?

Simplification to submission of programs to OptiX pipeline

I can't even tell what I originally wanted to write, that's just a typo mess.

This is the relevant commit: 3a6aa70
In short, OptiX validation now raises errors when it sees programs in the pipeline that are unused. So now, there's a filtering step to make sure we only include the different programs of shapes that are in the scene.

Does this API bump change the minimum supported driver version? (Just to make sure that it is documented and checked at runtime).

I didn't think to check the Mitsuba docs, there were a few places that mentioned the required driver version. I pushed a commit to update those.

The previous code would submit them all even if the pipeline only used a subset of them. In theory, that should not matter. However, OptiX 8.0 flags that as a potential issue when the validation layer is enabled.
This commit also update the `resources/data` submodule which holds the references for the OptiX denoiser tests
@njroussel njroussel merged commit 733f8af into master Feb 6, 2025
0 of 5 checks passed
@njroussel njroussel deleted the optix_8_abi_bump branch February 6, 2025 16:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants