tree 42a465df27252e06b3123e4d7856e1a8669f1416
parent cddcd5b2eac99a0f6407bab3347e4c61fc6f3cb7
author Scott Todd <scott.todd0@gmail.com> 1722554097 -0700
committer GitHub <noreply@github.com> 1722554097 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJmrBbxCRC1aQ7uu5UhlAAAYIsQAJDb/6esGiCOLah+JCB7kJtr
 76a+vRq1+WqaQxe+JBCaETefdazeBpl7dx1AFlANGCxBI+vJ1UEvpft2gCs+UzXs
 6H/7ZsZvHNmUzzfPeqTKzW9zBDCIZ8TKSIb6gFs50WsX0kkfxb158FkpxtsHz7z4
 uSoyTv6zOSK3ankYvLCjW2t1WZiLOxSxRLVTHBIaXsuPpyJRewFEZJzb8M5QSq/Y
 r7zRgMyiP1c5329yxw3Tf8bVy96n81hemE/O8m6tF3jg/pxfwJWr5IHYrtb4bEN4
 JQpH6491YERMnbHOmzuZBgE8w/zJmFp7eLN+xNzdflGL5gDJqVO5ThiscwJ9ByE4
 OGQZmJ5RZtRItVSqGn+vaLA5/PonKLK1Z30YzhOsZbgSoA2xR961x5RW5cUP3upm
 lvQG8U/0L9TcxJo9bMEYAXk9ySf2meNMZ17ogjQm1nzRwtCmNF6VMibnMT+oNpPz
 o2eUJ2ZGbQeahO7xmOR55HFBJmTCEylUYfexuwd+cbAsVR5UPhk7cu499e2vXCCy
 0dKBBKgQqs5R9f7tWPeLqOaO1D1gojUNCImyGPl+ObjBvb5m5jWQBDXmSXBg16zd
 JDJWSsYPBinq8zAUptRu8KesMgGOrbC4GQvmzO1F3/SwDNu6Sv9cioJDI2jbdKq7
 JcCG5NulqgFmq1HKbJQb
 =d0m4
 -----END PGP SIGNATURE-----
 

Use ccache in runtime builds. (#18089)

This uses https://github.com/hendrikmuhs/ccache-action to set up
https://ccache.dev/ together with
https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/caching-dependencies-to-speed-up-workflows
to create cache entries at
https://github.com/iree-org/iree/actions/caches and then pull them down
at the start of each build job.

* Right now the cache keys are just `${{ github.job }}-${{ matrix.name
}}`, which will create entries named like
`ccache-build_test_runtime-ubuntu-20.04-2024-08-01T22:19:46.787Z`.
* We can turn off the timestamps with `append-timestamp: false` if we
find that our 10GB cache limit gets overrun enough to have workflows get
cache misses (PkgCI already produces 800MB cache entries, so we're
always floating way over that limit and old entries continually get
evicted).
* We could do something more sophisticated like put the LLVM commit hash
in the cache entry name, but that shouldn't matter for runtime builds 🤞
* The Windows build in particular has large binaries (mainly HAL CTS
tests). Reducing the size there will speed up link time during building
and hopefully also trim the cache size.
* I'm matching the `write-caches` logic we have in other workflows for
now, which should maintain cache integrity (only reviewed + merged code
writes to the cache) while also limiting the number of entries we
generate.

## Sample job run


https://github.com/ScottTodd/iree/actions/runs/10206588680/job/28239799198

* Load from cache:

![image](https://github.com/user-attachments/assets/62fca6d6-c45a-4efd-8628-558096dcf643)

* Save to cache:

![image](https://github.com/user-attachments/assets/bfac1b30-2c3c-40a4-89b1-05b334a5d4f9)

* View cache files
(https://github.com/ScottTodd/iree/actions/caches?query=key%3Accache):

![image](https://github.com/user-attachments/assets/a51bc82b-6778-41fc-9d5d-76df0beace39)

---

Also
* dropped support for using Docker containers in the build/test runtime
jobs - just install and configure clang etc. as needed
* enabled LLD for linking

ci-exactly: build_test_runtime