5050 persist-credentials : false
5151 - name : Setup environment
5252 run : |
53- echo "ARTIFACT_PREFIX=${{runner.os}}-${{matrix.tag}}-${{matrix.arch}} " >> "${GITHUB_ENV}"
53+ echo "ARTIFACT_PREFIX=${{runner.os}}-${{matrix.tag}}-amd64 " >> "${GITHUB_ENV}"
5454 echo "ARTIFACT_SUFFIX=${{github.run_id}}-${{github.run_attempt}}-$RANDOM" >> "${GITHUB_ENV}"
55+ - id : sccache-preprocessor-cache
56+ name : Setup sccache preprocessor cache
57+ uses : actions/cache@v4
58+ with :
59+ path : /home/coder/.cache/sccache/preprocessor
60+ restore-keys : sccache-preprocessor-cache-${{env.ARTIFACT_PREFIX}}
61+ key : sccache-preprocessor-cache-${{env.ARTIFACT_PREFIX}}-${{env.ARTIFACT_SUFFIX}}
62+ - id : sccache-dist-toolchains-cache
63+ name : Setup sccache-dist client toolchains cache
64+ uses : actions/cache@v4
65+ with :
66+ path : /home/coder/.cache/sccache-dist-client
67+ restore-keys : sccache-toolchains-cache-${{env.ARTIFACT_PREFIX}}
68+ key : sccache-toolchains-cache-${{env.ARTIFACT_PREFIX}}-${{env.ARTIFACT_SUFFIX}}
5569 - if : github.repository_owner == 'NVIDIA'
5670 name : Get AWS credentials for sccache bucket
5771 uses : aws-actions/configure-aws-credentials@v4
@@ -60,18 +74,35 @@ jobs:
6074 role-duration-seconds : 28800 # 8 hours
6175 role-to-assume : arn:aws:iam::279114543810:role/gha-oidc-NVIDIA
6276 - name : Build and test CPU schedulers
77+ env :
78+ NVCC_APPEND_FLAGS : " -t=100"
79+ SCCACHE_DIST_URL : " https://amd64.linux.sccache.rapids.nvidia.com"
80+ SCCACHE_DIST_CONNECT_TIMEOUT : " 30"
81+ SCCACHE_DIST_FALLBACK_TO_LOCAL_COMPILE : " true"
82+ SCCACHE_DIST_KEEPALIVE_ENABLED : " true"
83+ SCCACHE_DIST_KEEPALIVE_INTERVAL : " 20"
84+ SCCACHE_DIST_KEEPALIVE_TIMEOUT : " 600"
85+ SCCACHE_DIST_MAX_RETRIES : " 2"
86+ SCCACHE_DIST_REWRITE_INCLUDES_ONLY : ${{ contains(matrix.tag, 'llvm') && 'true' || 'false' }}
87+ SCCACHE_DIST_REQUEST_TIMEOUT : " 7140"
88+ SCCACHE_IDLE_TIMEOUT : " 7200"
6389 run : |
6490 set -ex;
6591
6692 devcontainer-utils-install-sccache --repo rapidsai/sccache --version rapids;
67- devcontainer-utils-start-sccache;
93+ devcontainer-utils-init-sccache-dist \
94+ --enable-sccache-dist - <<< " \
95+ --auth-type 'token' \
96+ --auth-token '${{ secrets.STDEXEC_BUILD_CLUSTER_SECRET }}' \
97+ ";
6898
6999 # Copy source folder into ~/stdexec
70100 cp -r "${GITHUB_WORKSPACE}"/stdexec ~/;
71101 chown -R coder:coder ~/stdexec;
72102 cd ~/stdexec;
73103
74104 # Configure
105+ SCCACHE_NO_DIST_COMPILE=1 \
75106 cmake -S . -B build -GNinja \
76107 -DCMAKE_BUILD_TYPE=${{ matrix.build }} \
77108 -DCMAKE_CXX_FLAGS="${{ matrix.cxxflags }}" \
@@ -81,13 +112,13 @@ jobs:
81112 ;
82113
83114 # Compile
84- cmake --build build -v -j 64 ;
115+ cmake --build build -v -j 512 ;
85116
86117 # Print sccache stats
87118 sccache -s;
88119
89120 # Tests
90- ctest --test-dir build --verbose --output-on-failure --timeout 60 ;
121+ ctest --test-dir build --verbose --output-on-failure --timeout 300 ;
91122 - if : ${{ !cancelled() }}
92123 name : Upload sccache logs
93124 uses : actions/upload-artifact@v4
0 commit comments