Skip to content

Conversation

@1div0
Copy link
Contributor

@1div0 1div0 commented May 9, 2024

Description

This is intended to add support of R3D CUDA based decoder, which is much faster than R3D CPU only decoder.

RED One clips are handled by the CPU.

Tests

Checklist:

  • I have read the contribution guidelines.
  • I have updated the documentation, if applicable.
  • I have ensured that the change is tested somewhere in the testsuite
    (adding new test cases if necessary).
  • If I added or modified a C++ API call, I have also amended the
    corresponding Python bindings (and if altering ImageBufAlgo functions, also
    exposed the new functionality as oiiotool options).
  • My code follows the prevailing code style of this project. If I haven't
    already run clang-format before submitting, I definitely will look at the CI
    test that runs clang-format and fix anything that it highlights as being
    nonconforming.

1div0 added 2 commits May 6, 2024 21:23
Signed-off-by: Peter Kovář <[email protected]>
Signed-off-by: Peter Kovář <[email protected]>
@1div0
Copy link
Contributor Author

1div0 commented May 9, 2024

//Flags used by the linker during the creation of shared libraries
// during all build types.
CMAKE_SHARED_LINKER_FLAGS:STRING=-L/usr/local/cuda -lcudart

@1div0
Copy link
Contributor Author

1div0 commented May 8, 2025

There is still needed to add:

CMAKE_SHARED_LINKER_FLAGS -lcudart

Comment on lines 12 to 13
#define GPU
#define CUDA
Copy link
Collaborator

Choose a reason for hiding this comment

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

I'm concerned about setting these unconditionally.
Does every system that would have R3DSDK always have the CUDA SDK available?

We already have a CMake variable called OIIO_USE_CUDA to enable CUDA at build time, and when that is enabled and the CUDA SDK is found, it will define the C++ preprocessor symbol OIIO_USE_CUDA, so you should use that rather than making new symbols.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes, indeed. These definitions do belong to the build configuration settings. Will modify ASAP.

Within the R3DSDK there are four options: CPU only decoding, nVIDIA CUDA, OpenCL and 🍏Metal.

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