-
Notifications
You must be signed in to change notification settings - Fork 2.3k
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
CI/CD Pipeline Overhaul 2022 #6445
Labels
Comments
feisuzhu
added
enhancement
Make existing things or codebases better
discussion
Welcome discussion!
ci
labels
Oct 26, 2022
Dapper now provides Go SDK, dev may use Go to describe its CICD |
According to the document, containerization w/ GPU on Windows is non-feasible now(requires CUDA & OpenGL). |
feisuzhu
added a commit
that referenced
this issue
Nov 30, 2022
Issue: #6445 ### Brief Summary This PR addresses quirks in `sccache` distributed compiling: 1. `sccache` would run preprocessing locally (`clang -E`) first and then send the expanded code to remote build server. This can trigger false warnings not present when compiling locally. 2. Compile host and target can be different, `--target=` must be send to remote build server. Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
This was referenced Dec 23, 2022
quadpixels
pushed a commit
to quadpixels/taichi
that referenced
this issue
May 13, 2023
Issue: taichi-dev#6445 ### Brief Summary
quadpixels
pushed a commit
to quadpixels/taichi
that referenced
this issue
May 13, 2023
Issue: taichi-dev#6445 ### Brief Summary
quadpixels
pushed a commit
to quadpixels/taichi
that referenced
this issue
May 13, 2023
Issue: taichi-dev#6445 ### Brief Summary This PR addresses quirks in `sccache` distributed compiling: 1. `sccache` would run preprocessing locally (`clang -E`) first and then send the expanded code to remote build server. This can trigger false warnings not present when compiling locally. 2. Compile host and target can be different, `--target=` must be send to remote build server. Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
quadpixels
pushed a commit
to quadpixels/taichi
that referenced
this issue
May 13, 2023
Issue: taichi-dev#6445 ### Brief Summary
quadpixels
pushed a commit
to quadpixels/taichi
that referenced
this issue
May 13, 2023
Issue: taichi-dev#6445 ### Brief Summary
quadpixels
pushed a commit
to quadpixels/taichi
that referenced
this issue
May 13, 2023
Issue: taichi-dev#6445 ### Brief Summary
quadpixels
pushed a commit
to quadpixels/taichi
that referenced
this issue
May 13, 2023
Issue: taichi-dev#6445 ### Brief Summary
quadpixels
pushed a commit
to quadpixels/taichi
that referenced
this issue
May 13, 2023
Issue: taichi-dev#6445 ### Brief Summary
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
This is an on-going work primarily to reduce CI/CD build time and improve maintainability.
Discussions and feature requests are welcome.
The status quo
Buildbots
Pipeline
release.yml
: Build nightly wheels, run complete tests, upload to pypi. GA releases also goes here.testing.yml
: Build PR and master, run partial or complete tests.perf.yml
: Performance monitoring, only run on master.Problems
Code & logic duplication
release.yml
is largely the same withtesting.yml
except publishing and different build matrix.Slow build
Latency !
Wasted cycles & bandwidth on same things
Perf Monitoring
andAndroid Demo
needs to compile taichi binary separately.ti.init()
dominates test case time consumptionBuildbot cluster of a low capacity
Under-utilized buildbot cluster
Strong coupling with GitHub Actions
Non-reproducible building environment (partially addressed)
Minor mess
Proposed changes
Cluster shared caching mechanism
sccache
running at cluster scaleccache
becausesccache
can't recognize a particular compiler option.apt & pip caching proxy
Home grown git clone caching proxy
soft2d
as well.Adding new buildbots
Go distributed
Distributed compiling
sccache
running at cluster scale (sccache
can do both caching and distributed compiling)Distributed testing
Runner roles
Migrate to dagger (or other similar solutions)
Drop github hosted runners
Infrastructure states condense into ansible code
sccache
andredis
infrastructuresContainerize all the things !
sickcodes/Docker-OSX
Miscellaneous
Non-goals
Virtualization &&/|| Kubernetes integration
The text was updated successfully, but these errors were encountered: