[BIT] Add not support enforce for lu big tensor #73657
Merged
+17 −0
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.
PR Category
Execute Infrastructure
PR Types
Improvements
Description
为 paddle.linalg.lu 添加显式不支持大 tensor 检查,目前的 paddle.linalg.lu 调用 cusolver 库 32 位表示矩阵大小的 api: cusolverDnSgetrf / cusolverDnDgetrf 有以下情况:
在实验分支下换用 cusolver 64 位表示矩阵大小的 api: cusolverDnXgetrf 后(commit: f33fd4c),仍有以上的情况,故添加 PADDLE_ENFORCE_* 检查,显式不支持大 tensor。cusolverDnXgetrf 依赖 cuda toolkit >= 11.01。
torch 对应 api:torch.lu 使用 magma 线性代数库,与 paddle 不同(cusolver 线性代数库),面对大 tensor case 同样会出现 cuda error 700。