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

How to handle CUDA dependency #127

Closed
paskino opened this issue Jun 24, 2019 · 4 comments
Closed

How to handle CUDA dependency #127

paskino opened this issue Jun 24, 2019 · 4 comments
Assignees
Labels

Comments

@paskino
Copy link
Contributor

paskino commented Jun 24, 2019

So far the only package depending on CUDA is the regularisation. Currently we rely on the host to have CUDA installed.
Jenkins doesn’t build for CUDA, though I seem to remember we used to do that.

At any rate, the question is: how do we handle CUDA dependency?

  • Build : CUDA must be present on the machine. Jenkins can have CUDA 8, 9 or 10. At the moment Jenkins does not have a GPU and cannot run tests. I seem to remember that we addressed this and the tests are just skipped.

  • Runtime: CUDA must be present on the machine. If we build with CUDA 8, the package should work on any machine with CUDA >= 8.

All this is not documented in the package.

There is another way to do this and it would be to depend on the package cudatoolkit from conda. In this way we can just add cudatoolkit in the dependency in the meta.yaml and any machine to install the package will have the CUDA toolkit even if there’s no GPU on the machine.

I suppose this would be the default for the conda package?

Comments?

@paskino
Copy link
Contributor Author

paskino commented Jun 24, 2019

Astra 1.8.3 (which isn't a dependency here but that we use in other repos) lists cudatoolkit in the conda package.

This is astra current master

Therefore I'd suggest to add cudatoolkit to the build variants.

@dkazanc
Copy link
Collaborator

dkazanc commented Jun 24, 2019

OK, so if we take cudatoolkit from conda as a dependency then can we use it to build the package? If we can then I'd guess it is the preferred way. It also helps to cover for different versions of cudatoolkit?

@paskino
Copy link
Contributor Author

paskino commented Feb 16, 2020

I'll look into it

paskino added a commit that referenced this issue Jan 22, 2021
* added ACE as external project
* do not build ACE if USE_SYSTEM_ACE
* Add FindACE.cmake from gadgetron, added license and origin of the file
* compiles HDF5_DL_LIB if CUDA is found

partially closes #127
@dkazanc
Copy link
Collaborator

dkazanc commented Jun 10, 2024

I guess this is obsolete now...

@dkazanc dkazanc closed this as completed Jun 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants