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

LLVM_ENABLE_RUNTIMES=flang-rt for flang-runtime-cuda-* #393

Merged
merged 1 commit into from
Mar 6, 2025

Conversation

Meinersbur
Copy link
Member

@Meinersbur Meinersbur commented Feb 25, 2025

Add depends_on_projects=['flang-rt'] to the flang-runtime-cuda-gcc and flang-runtime-cuda-clang builders. This prepares the removal of the "projects" build of the flang runtime in llvm/llvm-project#124126.

Split off from #333

Affected builders:

  • flang-runtime-cuda-gcc
    This previously only built the runtime using the top-level CMakeLists.txt in flang/runtime/CMakeLists.txt. This is going to be replaced with the "standalone runtimes build", with the top-level runtimes/CMakeLists.txt. This still needs Flang to successed, hence replacing with a bootstrap-build where the FLANG_RT_* options are internally forwarded to the runtimes build.
  • flang-runtime-cuda-clang
    This is a manual bootstrapping build which first compiles Clang, then the runtime out-of-tree. This is replaced with a standalone runtimes build as described above. Because it needs Flang, also adding Flang to the enabled projects of the stage1 build.

Neither build runs the check-* targets, probably due to the lack of actual CUDA hardware which running the runtime unittests require.

Affected workers:

  • as-builder-7

Admins listed for those workers:

@Meinersbur Meinersbur force-pushed the flang_runtime_flang-runtime-cuda branch from c424475 to 0097624 Compare February 26, 2025 08:34
@Meinersbur Meinersbur marked this pull request as ready for review February 26, 2025 08:34
@vzakhari
Copy link
Contributor

Thank you, Michael! For flang-runtime-cuda-gcc build, does it imply that flang will be always rebuilt? If yes, then we will need to decide what to do about the increased time required by the build. I think there is some limit, but I do not know for sure.

@Meinersbur
Copy link
Member Author

Meinersbur commented Feb 26, 2025

Thank you, Michael! For flang-runtime-cuda-gcc build, does it imply that flang will be always rebuilt?

Yes, but it uses ccache so re-builds usually don't take the maximum time.

If yes, then we will need to decide what to do about the increased time required by the build. I think there is some limit, but I do not know for sure.

LLVM's Buildbot is configured without absolute timeout. There are much slower workers in labs.llvm.org, taking up 16 hours to build.

If the as-builder-7 is becoming too slow1, I can combine flang-runtime-cuda-gcc and flang-runtime-cuda-clang so Flang is built only once. For Polly builders, I tricked it to use the same ccache cache for all builders.

Footnotes

  1. as-builder-7 is also building llvm-nvptx-nvidia-ubuntu and llvm-nvptx64-nvidia-ubuntu.

@vzakhari
Copy link
Contributor

Thanks for the explanation, Michael! It looks good to me, but I am not the one to approve it.

@Meinersbur Meinersbur requested a review from vvereschaka March 4, 2025 17:01
Copy link
Contributor

@vvereschaka vvereschaka left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@Meinersbur Meinersbur merged commit 17c126f into llvm:main Mar 6, 2025
2 checks passed
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.

3 participants