Skip to content

Fix prune #3237

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

Merged
merged 2 commits into from
Mar 31, 2022
Merged

Fix prune #3237

merged 2 commits into from
Mar 31, 2022

Conversation

umar456
Copy link
Member

@umar456 umar456 commented Mar 27, 2022

Fix pruning option and set to off by default because of some failures in some combination of compute capabilities and cuda toolkits

Description

list(APPEND ...) in CMake cannot use the PARENT_SCOPE attribute. This caused an error when setting the cuda_pruned_library_targets variable which didn't propagate to the parent scope.

This PR also makes pruning optional because it fails for some compute capabilities and cuda toolkits. For example, it seemed to be working fine with 11.5 and compute capability 7.0 but not 7.5. It was failing for both computes in CUDA toolkit 10.2. It would be difficult to maintain and test all toolkits and compute combinations so I am setting it to off by default.

Changes to Users

N/A

Checklist

  • Rebased on latest master
  • Code compiles
  • Tests pass
  • [ ] Functions added to unified API
  • [ ] Functions documented

umar456 added 2 commits March 27, 2022 11:52
…scope

The cuda_prune_library_targets was not being exposed in the parent
scope because it was used in a list. This commit changes the list
to a set to append the targets to that CMake variable which allows
us to use PARENT_SCOPE in the command.
Make pruning CUDA static libraries optional for static CUDA libraries
because nvprune seems to fail for some combination of CUDA toolkits
and compute capabilities.
@umar456 umar456 merged commit c696425 into arrayfire:master Mar 31, 2022
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