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
[OpenMP] kernel performance regression on AMDGPU #60300
Closed
Comments
Adding |
@llvm/issue-subscribers-openmp |
@jhuber6 will fix this and backport it. |
/branch llvm/llvm-project-release-prs/issue60300 |
llvmbot
pushed a commit
to llvm/llvm-project-release-prs
that referenced
this issue
Jan 26, 2023
The `OpenMPOpt` pass is pivotal to the performance of many OpenMP offloading programs. When we perform non-LTO builds with OpenMP we used to link the OpenMP deviceRTL individually for each TU. This lead to us getting an additional attributor run on the combined runtime and user code. When we used LTO we lost a run and suffered a large performance degradation. This patch simply adds in the extra `OpenMPOpt` pass that we miss into the LTO pipeline. This patch fixes the performance regression shown in applications that used OpenMP offloading in LTO mode. Previously, this wasn't legal to do as we could emit new runtime calls into the module. That was fixed by D142646. Depends on D142646 Fixes llvm/llvm-project#60300 Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D142650 (cherry picked from commit 6185246)
/pull-request llvm/llvm-project-release-prs#239 |
CarlosAlbertoEnciso
closed this as completed
in
Jan 27, 2023
SNSystems/llvm-debuginfo-analyzer@f5d8d17
tstellar
pushed a commit
to llvm/llvm-project-release-prs
that referenced
this issue
Jan 28, 2023
The `OpenMPOpt` pass is pivotal to the performance of many OpenMP offloading programs. When we perform non-LTO builds with OpenMP we used to link the OpenMP deviceRTL individually for each TU. This lead to us getting an additional attributor run on the combined runtime and user code. When we used LTO we lost a run and suffered a large performance degradation. This patch simply adds in the extra `OpenMPOpt` pass that we miss into the LTO pipeline. This patch fixes the performance regression shown in applications that used OpenMP offloading in LTO mode. Previously, this wasn't legal to do as we could emit new runtime calls into the module. That was fixed by D142646. Depends on D142646 Fixes llvm/llvm-project#60300 Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D142650 (cherry picked from commit 6185246)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
regression caused by 5d1dc9f
Using https://github.com/ye-luo/miniqmc testing commit 6f526b6062682ec892fb02d2919484c8b4db0875
time 320975426 is much larger than previous one 192408385
The text was updated successfully, but these errors were encountered: