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

Move ASan and TSan jobs to their own workflows. #18003

Merged
merged 1 commit into from
Jul 24, 2024

Conversation

ScottTodd
Copy link
Member

Progress on #17957.

This moves the ASan (Address Sanitizer) and TSan (Thread Sanitizer) jobs into their own workflows, so they can run based on independent triggers and can be individually enabled/disabled as needed.

For now these are the triggers:

  • ASan runs on pull_request and push events, similar to how it ran as part of ci.yml
  • TSan runs on a nightly schedule and on-demand using workflow_dispatch. We can add other ways to trigger it like via pull request labels or git trailers as needed.

Both of these jobs need more disk space than GitHub's standard runners have, so they are running on larger self-hosted runners. If we have enough runner capacity then both jobs could run on every commit (pull_request and push). I think ASan is valuable enough for that but TSan is more situational.


For more information about these sanitizers, see

Copy link
Collaborator

@benvanik benvanik left a comment

Choose a reason for hiding this comment

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

nice improvement! asan is super useful every PR but tsan rarely triggers (but when it does it can save days to weeks to time, so still useful to have)

@ScottTodd ScottTodd marked this pull request as ready for review July 24, 2024 20:39
@ScottTodd ScottTodd enabled auto-merge (squash) July 24, 2024 20:40
@ScottTodd ScottTodd merged commit 52eff2d into iree-org:main Jul 24, 2024
46 checks passed
@ScottTodd ScottTodd deleted the infra-split-workflows-3 branch July 24, 2024 20:43
LLITCHEV pushed a commit to LLITCHEV/iree that referenced this pull request Jul 30, 2024
Progress on iree-org#17957.

This moves the ASan (Address Sanitizer) and TSan (Thread Sanitizer) jobs
into their own workflows, so they can run based on independent triggers
and can be individually enabled/disabled as needed.

For now these are the triggers:
* ASan runs on `pull_request` and `push` events, similar to how it ran
as part of `ci.yml`
* TSan runs on a nightly `schedule` and on-demand using
`workflow_dispatch`. We can add other ways to trigger it like via pull
request labels or git trailers as needed.

Both of these jobs need more disk space than GitHub's standard runners
have, so they are running on larger self-hosted runners. If we have
enough runner capacity then both jobs could run on every commit
(`pull_request` and `push`). I think ASan is valuable enough for that
but TSan is more situational.

---

For more information about these sanitizers, see
* https://iree.dev/developers/debugging/sanitizers/
* https://github.com/google/sanitizers
* https://clang.llvm.org/docs/AddressSanitizer.html
* https://clang.llvm.org/docs/ThreadSanitizer.html
* https://clang.llvm.org/docs/MemorySanitizer.html

Signed-off-by: Lubo Litchev <[email protected]>
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