Update cuSPARSE usage for CUDA 12.0#90765
Closed
IvanYashchuk wants to merge 3 commits intopytorch:masterfrom
Closed
Update cuSPARSE usage for CUDA 12.0#90765IvanYashchuk wants to merge 3 commits intopytorch:masterfrom
IvanYashchuk wants to merge 3 commits intopytorch:masterfrom
Conversation
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/90765
Note: Links to docs will display an error until the docs builds have been completed. ❌ 2 FailuresAs of commit b7393a2: The following jobs have failed:
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
cpuhrsch
approved these changes
Dec 13, 2022
Contributor
|
Thank you! @pytorchbot merge |
Collaborator
Merge startedYour change will be merged once all checks pass (ETA 0-4 Hours). Learn more about merging in the wiki. Questions? Feedback? Please reach out to the PyTorch DevX Team |
Collaborator
Merge failedReason: The following mandatory check(s) failed (Rule Dig deeper by viewing the failures on hud Details for Dev Infra teamRaised by workflow job |
Contributor
|
@pytorchbot merge -f "Unrelated failure" |
Collaborator
Merge startedYour change will be merged immediately since you used the force (-f) flag, bypassing any CI checks (ETA: 1-5 minutes). Learn more about merging in the wiki. Questions? Feedback? Please reach out to the PyTorch DevX Team |
pytorchmergebot
pushed a commit
that referenced
this pull request
Dec 15, 2022
…#90897) [CUDA 12] Fix the endif guard position for cusparse const descriptors Related #90765 Pull Request resolved: #90897 Approved by: https://github.com/IvanYashchuk
5 tasks
jeffdaily
pushed a commit
to ROCm/pytorch
that referenced
this pull request
Jun 1, 2023
cuSPARSE v12.0 has started to use const pointers for the descriptors, from `cusparse.h` (documentation is incorrect): ```cpp typedef struct cusparseSpVecDescr const* cusparseConstSpVecDescr_t; typedef struct cusparseDnVecDescr const* cusparseConstDnVecDescr_t; typedef struct cusparseSpMatDescr const* cusparseConstSpMatDescr_t; typedef struct cusparseDnMatDescr const* cusparseConstDnMatDescr_t; ``` Changing also the function signature for the corresponding destructors to accept a const pointer. This PR adds `ConstCuSparseDescriptorDeleter` working with `cusparseStatus_t (*destructor)(const T*)`. Some algorithm enums were deprecated during CUDA 11 and removed in CUDA 12, I replaced the following occurences ``` CUSPARSE_CSRMM_ALG1 -> CUSPARSE_SPMM_CSR_ALG1 CUSPARSE_COOMM_ALG1 -> CUSPARSE_SPMM_COO_ALG1 CUSPARSE_COOMM_ALG2 -> CUSPARSE_SPMM_COO_ALG2 ``` Pull Request resolved: pytorch#90765 Approved by: https://github.com/cpuhrsch
jeffdaily
pushed a commit
to ROCm/pytorch
that referenced
this pull request
Jun 1, 2023
…pytorch#90897) [CUDA 12] Fix the endif guard position for cusparse const descriptors Related pytorch#90765 Pull Request resolved: pytorch#90897 Approved by: https://github.com/IvanYashchuk
jeffdaily
added a commit
to ROCm/pytorch
that referenced
this pull request
Jun 1, 2023
…, backport to release/1.13 (#1233) * Update cuSPARSE usage for CUDA 12.0 (pytorch#90765) cuSPARSE v12.0 has started to use const pointers for the descriptors, from `cusparse.h` (documentation is incorrect): ```cpp typedef struct cusparseSpVecDescr const* cusparseConstSpVecDescr_t; typedef struct cusparseDnVecDescr const* cusparseConstDnVecDescr_t; typedef struct cusparseSpMatDescr const* cusparseConstSpMatDescr_t; typedef struct cusparseDnMatDescr const* cusparseConstDnMatDescr_t; ``` Changing also the function signature for the corresponding destructors to accept a const pointer. This PR adds `ConstCuSparseDescriptorDeleter` working with `cusparseStatus_t (*destructor)(const T*)`. Some algorithm enums were deprecated during CUDA 11 and removed in CUDA 12, I replaced the following occurences ``` CUSPARSE_CSRMM_ALG1 -> CUSPARSE_SPMM_CSR_ALG1 CUSPARSE_COOMM_ALG1 -> CUSPARSE_SPMM_COO_ALG1 CUSPARSE_COOMM_ALG2 -> CUSPARSE_SPMM_COO_ALG2 ``` Pull Request resolved: pytorch#90765 Approved by: https://github.com/cpuhrsch * [CUDA 12] Fix the endif guard position for cusparse const descriptors (pytorch#90897) [CUDA 12] Fix the endif guard position for cusparse const descriptors Related pytorch#90765 Pull Request resolved: pytorch#90897 Approved by: https://github.com/IvanYashchuk * [CUDA12] Clean up deprecated APIs (pytorch#91050) See pytorch#91122 Summary: Some APIs are deprecated in newer version of CUDA. * cudaGraphInstantiate: From: ``` cudaGraphInstantiate ( cudaGraphExec_t* pGraphExec, cudaGraph_t graph, cudaGraphNode_t* pErrorNode, char* pLogBuffer, size_t bufferSize ) ``` To ``` __host__cudaError_t cudaGraphInstantiate ( cudaGraphExec_t* pGraphExec, cudaGraph_t graph, unsigned long long flags = 0 ) ``` * cudaProfilerInitialize: deprecated in cuda 11 and removed in cuda 12 Test Plan: GH CI Differential Revision: D41469051 Pull Request resolved: pytorch#91050 Approved by: https://github.com/jianyuh * conditionally enable hipsparse const descriptors for version >= 2.4.0 (#1217) * conditionally enable hipsparse const descriptors * update hipsparse const API version condition to 2.4.0 --------- Co-authored-by: Ivan Yashchuk <[email protected]> Co-authored-by: Xiao Wang <[email protected]> Co-authored-by: Xiaodong Wang <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
cuSPARSE v12.0 has started to use const pointers for the descriptors, from
cusparse.h(documentation is incorrect):Changing also the function signature for the corresponding destructors to accept a const pointer. This PR adds
ConstCuSparseDescriptorDeleterworking withcusparseStatus_t (*destructor)(const T*).Some algorithm enums were deprecated during CUDA 11 and removed in CUDA 12, I replaced the following occurences
cc @nikitaved @pearu @cpuhrsch @amjames @bhosmer @ngimel