summaryrefslogtreecommitdiffstats
path: root/docs/ci.md
diff options
context:
space:
mode:
authorEllie Hermaszewska <ellieh@nvidia.com>2024-10-18 15:49:56 +0800
committerGitHub <noreply@github.com>2024-10-18 15:49:56 +0800
commitc7584b29f9999744fe4f37e62c021d3e229dcfba (patch)
tree307f113f388456b3203664b4b6d738ae1803f7df /docs/ci.md
parent12e891ed9ac934adbcc4160da6a05938cc38b529 (diff)
Remove sccache (#5206)
* Remove sccache * CI docs
Diffstat (limited to 'docs/ci.md')
-rw-r--r--docs/ci.md28
1 files changed, 23 insertions, 5 deletions
diff --git a/docs/ci.md b/docs/ci.md
index bfb101dff..fb4c7e68b 100644
--- a/docs/ci.md
+++ b/docs/ci.md
@@ -1,18 +1,36 @@
# Our CI
-There are github actions for testing building and testing slang.
+There are github actions for building and testing slang.
## Tests
-Most configurations run a restricted set of tests, however on some self hosted runners we run the full test suite, as well as running Falcor's test suite with the new slang build.
+Most configurations run a restricted set of tests, however on some self hosted
+runners we run the full test suite, as well as running Falcor's test suite with
+the new slang build.
## Building LLVM
-We require a static build of LLVM for building slang-llvm, we build and cache this in all workflow runs. Since this changes infrequently, the cache is almost always hit. A cold build takes about an hour on the slowest platform. The cached output is a few hundred MB, so conceivably if we add many more platforms we might be caching more than the 10GB github allowance, which would necessitate being a bit more complicated in building and tracking outputs here.
+We require a static build of LLVM for building slang-llvm, we build and cache
+this in all workflow runs. Since this changes infrequently, the cache is almost
+always hit. A cold build takes about an hour on the slowest platform. The
+cached output is a few hundred MB, so conceivably if we add many more platforms
+we might be caching more than the 10GB github allowance, which would
+necessitate being a bit more complicated in building and tracking outputs here.
-For slang-llvm, this is handled the same as any other dependency, except on Windows Debug builds, where we are required by the differences in Debug/Release standard libraries to always make a release build, this is noted in the ci action yaml file.
+For slang-llvm, this is handled the same as any other dependency, except on
+Windows Debug builds, where we are required by the differences in Debug/Release
+standard libraries to always make a release build, this is noted in the ci
+action yaml file.
+
+Note that we don't use sccache while building LLVM, as it changes very
+infrequently. The caching of LLVM is done by caching the final build product
+only.
## sccache
-The CI actions use sccache, keyed on compiler and platform, this runs on all configurations and significantly speeds up small source change builds. This cache can be safely missed without a large impact on build times.
+> Due to reliability issues, we are not currently using sccache, this is
+> historical/aspirational.
+The CI actions use sccache, keyed on compiler and platform, this runs on all
+configurations and significantly speeds up small source change builds. This
+cache can be safely missed without a large impact on build times.