[CI] PR Regressions Slow (~30 Minutes) due to GCC Debug
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 2.2k
- Forks
- 524
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 46
Description
The GCC Debug build on the per-PR regressions seem pretty slow. (I've qualitatively felt like this was the case for a while...)
The most egregious issue seems to be that it takes about ~17 minutes to link `handshake-runner`. 🤔
```
2021-09-08T04:58:03.8991892Z [ 65%] Linking CXX executable ../../bin/handshake-runner
...
2021-09-08T05:04:57.3577410Z [100%] Linking CXX executable ../../bin/circt-opt
2021-09-08T05:05:04.3093298Z [100%] Built target circt-opt
2021-09-08T05:15:42.1373633Z [100%] Built target handshake-runner
```
LLVM seems to link this almost instantaneously.
```
2021-09-08T04:52:30.3095758Z [ 64%] Linking CXX executable ../../bin/handshake-runner
2021-09-08T04:52:30.6339054Z [ 64%] Built target handshake-runner
```
A full log is here: https://pipelines.actions.githubusercontent.com/wi15O7TotuPkwX6KT6ySaHTeiMJbgCxjibAprAeUXSFaISA8Od/_apis/pipelines/1/runs/7358/signedlogcontent/19?urlExpires=2021-09-08T05%3A17%3A02.9519975Z&urlSigningMethod=HMACV1&urlSignature=TjtedMpsblZy%2FdplCpO5BGARST96LwoxIVr%2F6kSLF2w%3D
Maybe there's a strategy to speed this up by using `gold` or `lld` for the GCC link. Alternatively, `handshake-runner` may be doing something wonky.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by comparing the GCC Debug and LLVM link steps in the supplied full log, focusing on handshake-runner and circt-opt. Investigate whether using gold or lld, or an issue specific to handshake-runner, explains the delay; done means the per-PR GCC Debug build no longer has the roughly 17-minute handshake-runner link.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- build-system, ci-cd, performance
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100