Skip to content

Commit c359895

Browse files
committed
re-enable other tests in CI
1 parent cb00560 commit c359895

2 files changed

Lines changed: 221 additions & 221 deletions

File tree

.github/workflows/ci.cpu.yml

Lines changed: 156 additions & 156 deletions
Original file line numberDiff line numberDiff line change
@@ -12,162 +12,162 @@ concurrency:
1212

1313
jobs:
1414

15-
# build-cpu:
16-
# runs-on: ubuntu-latest
17-
# name: ${{ matrix.name }}
18-
# strategy:
19-
# fail-fast: false
20-
# matrix:
21-
# include:
22-
# - { name: "CPU (clang 16, Debug)", build: "Debug", tag: llvm16-cuda12.9, cxxstd: "20", cxxflags: "-stdlib=libc++" }
23-
# - { name: "CPU (clang 16, Debug, c++23)", build: "Debug", tag: llvm16-cuda12.9, cxxstd: "23", cxxflags: "-stdlib=libc++" }
24-
# - { name: "CPU (clang 16, Debug, TSAN)", build: "Debug", tag: llvm16-cuda12.9, cxxstd: "20", cxxflags: "-fsanitize=thread" }
25-
# - { name: "CPU (clang 16, Release)", build: "Release", tag: llvm16-cuda12.9, cxxstd: "20", cxxflags: "-stdlib=libc++" }
26-
# - { name: "CPU (clang 16, Release, ASAN)", build: "Release", tag: llvm16-cuda12.9, cxxstd: "20", cxxflags: "-stdlib=libc++ -fsanitize=address -fsanitize-ignorelist=/home/coder/stdexec/sanitizer-ignorelist.txt" }
27-
# - { name: "CPU (gcc 11, Debug)", build: "Debug", tag: gcc11-cuda12.9, cxxstd: "20", cxxflags: "", }
28-
# - { name: "CPU (gcc 11, Release)", build: "Release", tag: gcc11-cuda12.9, cxxstd: "20", cxxflags: "", }
29-
# - { name: "CPU (gcc 11, Release, ASAN)", build: "Release", tag: gcc11-cuda12.9, cxxstd: "20", cxxflags: "-fsanitize=address" }
30-
# - { name: "CPU (gcc 12, Release, TSAN)", build: "Release", tag: gcc12-cuda12.9, cxxstd: "20", cxxflags: "-fsanitize=thread" }
31-
# - { name: "CPU (gcc 13, Debug)", build: "Debug", tag: gcc13-cuda12.9, cxxstd: "20", cxxflags: "", }
32-
# - { name: "CPU (gcc 14, Debug)", build: "Debug", tag: gcc14-cuda12.9, cxxstd: "20", cxxflags: "", }
33-
# - { name: "CPU (gcc 14, Debug, ASAN)", build: "Debug", tag: gcc14-cuda12.9, cxxstd: "20", cxxflags: "-fsanitize=address" }
34-
# - { name: "CPU (gcc 14, Debug, TSAN)", build: "Debug", tag: gcc14-cuda12.9, cxxstd: "20", cxxflags: "-fsanitize=thread" }
35-
# - { name: "CPU (gcc 14, Release, LEAK)", build: "Release", tag: gcc14-cuda12.9, cxxstd: "20", cxxflags: "-fsanitize=leak", }
36-
# - { name: "CPU (gcc 14, Release, c++23)", build: "Release", tag: gcc14-cuda12.9, cxxstd: "23", cxxflags: "", }
37-
# container:
38-
# options: -u root
39-
# image: rapidsai/devcontainers:26.02-cpp-${{ matrix.tag }}
40-
# permissions:
41-
# id-token: write # This is required for configure-aws-credentials
42-
# contents: read # This is required for actions/checkout
43-
# defaults:
44-
# run:
45-
# shell: su coder {0}
46-
# working-directory: /home/coder
47-
# steps:
48-
# - name: Checkout stdexec
49-
# uses: actions/checkout@v4
50-
# with:
51-
# path: stdexec
52-
# persist-credentials: false
53-
# - name: Setup environment
54-
# run: |
55-
# echo "ARTIFACT_PREFIX=${{runner.os}}-${{matrix.tag}}-amd64" >> "${GITHUB_ENV}"
56-
# echo "ARTIFACT_SUFFIX=${{github.run_id}}-${{github.run_attempt}}-$RANDOM" >> "${GITHUB_ENV}"
57-
# - if: github.repository_owner == 'NVIDIA'
58-
# name: Get AWS credentials for sccache bucket
59-
# uses: aws-actions/configure-aws-credentials@v4
60-
# with:
61-
# aws-region: us-east-2
62-
# role-duration-seconds: 28800 # 8 hours
63-
# role-to-assume: arn:aws:iam::279114543810:role/gha-oidc-NVIDIA
64-
# - name: Build and test CPU schedulers
65-
# env:
66-
# ASAN_OPTIONS: alloc_dealloc_mismatch=0
67-
# NVCC_APPEND_FLAGS: "-t=100"
68-
# SCCACHE_BUCKET: "rapids-sccache-devs"
69-
# SCCACHE_DIST_REQUEST_TIMEOUT: "7140"
70-
# SCCACHE_DIST_URL: "https://amd64.linux.sccache.rapids.nvidia.com"
71-
# SCCACHE_IDLE_TIMEOUT: "0"
72-
# SCCACHE_REGION: "us-east-2"
73-
# SCCACHE_S3_KEY_PREFIX: "nvidia-stdexec-dev"
74-
# SCCACHE_S3_PREPROCESSOR_CACHE_KEY_PREFIX: "nvidia-stdexec-dev/preprocessor"
75-
# SCCACHE_S3_USE_PREPROCESSOR_CACHE_MODE: "true"
76-
# SCCACHE_SERVER_LOG: "sccache=debug"
77-
# SCCACHE_SERVER_PORT: "4225"
78-
# run: |
79-
# set -e;
80-
# source /etc/profile
81-
# set -x;
82-
83-
# devcontainer-utils-install-sccache --version rapids;
84-
85-
# devcontainer-utils-init-sccache-dist \
86-
# --enable-sccache-dist - <<< " \
87-
# --auth-type 'token' \
88-
# --auth-token '$( \
89-
# curl -fsSL -H "Authorization: Bearer $( \
90-
# curl -fsSL -H "Authorization: bearer $ACTIONS_ID_TOKEN_REQUEST_TOKEN" \
91-
# "${ACTIONS_ID_TOKEN_REQUEST_URL}&audience=token.rapids.nvidia.com" \
92-
# | jq -r '.value' \
93-
# )" https://token.rapids.nvidia.com/gh/token/exchange \
94-
# | jq -r '.token')' \
95-
# ";
96-
97-
# # Copy source folder into ~/stdexec
98-
# cp -r "${GITHUB_WORKSPACE}"/stdexec ~/;
99-
# chown -R coder:coder ~/stdexec;
100-
# cd ~/stdexec;
101-
102-
# # Configure
103-
# cmake -S . -B build -GNinja \
104-
# -DCMAKE_BUILD_TYPE=${{ matrix.build }} \
105-
# -DCMAKE_CXX_FLAGS="${{ matrix.cxxflags }}" \
106-
# -DSTDEXEC_ENABLE_TBB:BOOL=${{ !contains(matrix.cxxflags, '-fsanitize') }} \
107-
# -DSTDEXEC_ENABLE_ASIO:BOOL=TRUE \
108-
# -DSTDEXEC_ASIO_IMPLEMENTATION:STRING=boost \
109-
# -DCMAKE_CXX_STANDARD=${{ matrix.cxxstd }} \
110-
# -DCMAKE_CXX_EXTENSIONS=OFF \
111-
# ;
112-
113-
# # Compile
114-
# cmake --build build -v -j 512;
115-
116-
# # Print sccache stats
117-
# sccache -s;
118-
119-
# # Tests
120-
# SCCACHE_NO_CACHE=1 SCCACHE_NO_DIST_COMPILE=1 \
121-
# ctest --test-dir build --verbose --output-on-failure --timeout 60;
122-
# - if: ${{ !cancelled() }}
123-
# name: Upload sccache logs
124-
# uses: actions/upload-artifact@v4
125-
# with:
126-
# name: sccache-client-logs-${{env.ARTIFACT_PREFIX}}-${{env.ARTIFACT_SUFFIX}}
127-
# path: /tmp/sccache*.log
128-
# compression-level: 9
129-
130-
# ci-cpu:
131-
# runs-on: ubuntu-latest
132-
# name: CI (CPU)
133-
# needs:
134-
# - build-cpu
135-
# steps:
136-
# - run: echo "CI (CPU) success"
137-
138-
# build-cpu-windows:
139-
# runs-on: windows-2022
140-
# name: ${{ matrix.name }}
141-
# strategy:
142-
# fail-fast: false
143-
# matrix:
144-
# include:
145-
# - { compiler: "cl", build: "Debug", name: "CPU (Windows) (msvc, Debug)" }
146-
# - { compiler: "cl", build: "Release", name: "CPU (Windows) (msvc, Release)" }
147-
# #- { compiler: "clang++", build: "Debug", name: "CPU (Windows) (clang, Debug)" }
148-
# #- { compiler: "clang++", build: "Release", name: "CPU (Windows) (clang, Release)" }
149-
# #- { compiler: "clang-cl", build: "Debug", name: "CPU (Windows) (clang-cl, Debug)" }
150-
# #- { compiler: "clang-cl", build: "Release", name: "CPU (Windows) (clang-cl, Release)" }
151-
152-
# steps:
153-
# - name: Checkout stdexec (Windows)
154-
# uses: actions/checkout@v4
155-
# with:
156-
# persist-credentials: false
157-
158-
# - name: Build and test CPU schedulers (Windows)
159-
# shell: pwsh
160-
# run: |
161-
# docker pull rapidsai/devcontainers:26.02-cuda12.9-cl14.43
162-
# docker run --isolation=process -v "$(pwd):C:/stdexec" rapidsai/devcontainers:26.02-cuda12.9-cl14.43 powershell C:/stdexec/.github/workflows/test-windows.ps1 -Compiler '${{ matrix.compiler }}' -Config '${{ matrix.build }}'
163-
164-
# ci-cpu-windows:
165-
# runs-on: windows-latest
166-
# name: CI (CPU) (Windows)
167-
# needs:
168-
# - build-cpu-windows
169-
# steps:
170-
# - run: echo "CI (CPU) (Windows) success"
15+
build-cpu:
16+
runs-on: ubuntu-latest
17+
name: ${{ matrix.name }}
18+
strategy:
19+
fail-fast: false
20+
matrix:
21+
include:
22+
- { name: "CPU (clang 16, Debug)", build: "Debug", tag: llvm16-cuda12.9, cxxstd: "20", cxxflags: "-stdlib=libc++" }
23+
- { name: "CPU (clang 16, Debug, c++23)", build: "Debug", tag: llvm16-cuda12.9, cxxstd: "23", cxxflags: "-stdlib=libc++" }
24+
- { name: "CPU (clang 16, Debug, TSAN)", build: "Debug", tag: llvm16-cuda12.9, cxxstd: "20", cxxflags: "-fsanitize=thread" }
25+
- { name: "CPU (clang 16, Release)", build: "Release", tag: llvm16-cuda12.9, cxxstd: "20", cxxflags: "-stdlib=libc++" }
26+
- { name: "CPU (clang 16, Release, ASAN)", build: "Release", tag: llvm16-cuda12.9, cxxstd: "20", cxxflags: "-stdlib=libc++ -fsanitize=address -fsanitize-ignorelist=/home/coder/stdexec/sanitizer-ignorelist.txt" }
27+
- { name: "CPU (gcc 11, Debug)", build: "Debug", tag: gcc11-cuda12.9, cxxstd: "20", cxxflags: "", }
28+
- { name: "CPU (gcc 11, Release)", build: "Release", tag: gcc11-cuda12.9, cxxstd: "20", cxxflags: "", }
29+
- { name: "CPU (gcc 11, Release, ASAN)", build: "Release", tag: gcc11-cuda12.9, cxxstd: "20", cxxflags: "-fsanitize=address" }
30+
- { name: "CPU (gcc 12, Release, TSAN)", build: "Release", tag: gcc12-cuda12.9, cxxstd: "20", cxxflags: "-fsanitize=thread" }
31+
- { name: "CPU (gcc 13, Debug)", build: "Debug", tag: gcc13-cuda12.9, cxxstd: "20", cxxflags: "", }
32+
- { name: "CPU (gcc 14, Debug)", build: "Debug", tag: gcc14-cuda12.9, cxxstd: "20", cxxflags: "", }
33+
- { name: "CPU (gcc 14, Debug, ASAN)", build: "Debug", tag: gcc14-cuda12.9, cxxstd: "20", cxxflags: "-fsanitize=address" }
34+
- { name: "CPU (gcc 14, Debug, TSAN)", build: "Debug", tag: gcc14-cuda12.9, cxxstd: "20", cxxflags: "-fsanitize=thread" }
35+
- { name: "CPU (gcc 14, Release, LEAK)", build: "Release", tag: gcc14-cuda12.9, cxxstd: "20", cxxflags: "-fsanitize=leak", }
36+
- { name: "CPU (gcc 14, Release, c++23)", build: "Release", tag: gcc14-cuda12.9, cxxstd: "23", cxxflags: "", }
37+
container:
38+
options: -u root
39+
image: rapidsai/devcontainers:26.02-cpp-${{ matrix.tag }}
40+
permissions:
41+
id-token: write # This is required for configure-aws-credentials
42+
contents: read # This is required for actions/checkout
43+
defaults:
44+
run:
45+
shell: su coder {0}
46+
working-directory: /home/coder
47+
steps:
48+
- name: Checkout stdexec
49+
uses: actions/checkout@v4
50+
with:
51+
path: stdexec
52+
persist-credentials: false
53+
- name: Setup environment
54+
run: |
55+
echo "ARTIFACT_PREFIX=${{runner.os}}-${{matrix.tag}}-amd64" >> "${GITHUB_ENV}"
56+
echo "ARTIFACT_SUFFIX=${{github.run_id}}-${{github.run_attempt}}-$RANDOM" >> "${GITHUB_ENV}"
57+
- if: github.repository_owner == 'NVIDIA'
58+
name: Get AWS credentials for sccache bucket
59+
uses: aws-actions/configure-aws-credentials@v4
60+
with:
61+
aws-region: us-east-2
62+
role-duration-seconds: 28800 # 8 hours
63+
role-to-assume: arn:aws:iam::279114543810:role/gha-oidc-NVIDIA
64+
- name: Build and test CPU schedulers
65+
env:
66+
ASAN_OPTIONS: alloc_dealloc_mismatch=0
67+
NVCC_APPEND_FLAGS: "-t=100"
68+
SCCACHE_BUCKET: "rapids-sccache-devs"
69+
SCCACHE_DIST_REQUEST_TIMEOUT: "7140"
70+
SCCACHE_DIST_URL: "https://amd64.linux.sccache.rapids.nvidia.com"
71+
SCCACHE_IDLE_TIMEOUT: "0"
72+
SCCACHE_REGION: "us-east-2"
73+
SCCACHE_S3_KEY_PREFIX: "nvidia-stdexec-dev"
74+
SCCACHE_S3_PREPROCESSOR_CACHE_KEY_PREFIX: "nvidia-stdexec-dev/preprocessor"
75+
SCCACHE_S3_USE_PREPROCESSOR_CACHE_MODE: "true"
76+
SCCACHE_SERVER_LOG: "sccache=debug"
77+
SCCACHE_SERVER_PORT: "4225"
78+
run: |
79+
set -e;
80+
source /etc/profile
81+
set -x;
82+
83+
devcontainer-utils-install-sccache --version rapids;
84+
85+
devcontainer-utils-init-sccache-dist \
86+
--enable-sccache-dist - <<< " \
87+
--auth-type 'token' \
88+
--auth-token '$( \
89+
curl -fsSL -H "Authorization: Bearer $( \
90+
curl -fsSL -H "Authorization: bearer $ACTIONS_ID_TOKEN_REQUEST_TOKEN" \
91+
"${ACTIONS_ID_TOKEN_REQUEST_URL}&audience=token.rapids.nvidia.com" \
92+
| jq -r '.value' \
93+
)" https://token.rapids.nvidia.com/gh/token/exchange \
94+
| jq -r '.token')' \
95+
";
96+
97+
# Copy source folder into ~/stdexec
98+
cp -r "${GITHUB_WORKSPACE}"/stdexec ~/;
99+
chown -R coder:coder ~/stdexec;
100+
cd ~/stdexec;
101+
102+
# Configure
103+
cmake -S . -B build -GNinja \
104+
-DCMAKE_BUILD_TYPE=${{ matrix.build }} \
105+
-DCMAKE_CXX_FLAGS="${{ matrix.cxxflags }}" \
106+
-DSTDEXEC_ENABLE_TBB:BOOL=${{ !contains(matrix.cxxflags, '-fsanitize') }} \
107+
-DSTDEXEC_ENABLE_ASIO:BOOL=TRUE \
108+
-DSTDEXEC_ASIO_IMPLEMENTATION:STRING=boost \
109+
-DCMAKE_CXX_STANDARD=${{ matrix.cxxstd }} \
110+
-DCMAKE_CXX_EXTENSIONS=OFF \
111+
;
112+
113+
# Compile
114+
cmake --build build -v -j 512;
115+
116+
# Print sccache stats
117+
sccache -s;
118+
119+
# Tests
120+
SCCACHE_NO_CACHE=1 SCCACHE_NO_DIST_COMPILE=1 \
121+
ctest --test-dir build --verbose --output-on-failure --timeout 60;
122+
- if: ${{ !cancelled() }}
123+
name: Upload sccache logs
124+
uses: actions/upload-artifact@v4
125+
with:
126+
name: sccache-client-logs-${{env.ARTIFACT_PREFIX}}-${{env.ARTIFACT_SUFFIX}}
127+
path: /tmp/sccache*.log
128+
compression-level: 9
129+
130+
ci-cpu:
131+
runs-on: ubuntu-latest
132+
name: CI (CPU)
133+
needs:
134+
- build-cpu
135+
steps:
136+
- run: echo "CI (CPU) success"
137+
138+
build-cpu-windows:
139+
runs-on: windows-2022
140+
name: ${{ matrix.name }}
141+
strategy:
142+
fail-fast: false
143+
matrix:
144+
include:
145+
- { compiler: "cl", build: "Debug", name: "CPU (Windows) (msvc, Debug)" }
146+
- { compiler: "cl", build: "Release", name: "CPU (Windows) (msvc, Release)" }
147+
#- { compiler: "clang++", build: "Debug", name: "CPU (Windows) (clang, Debug)" }
148+
#- { compiler: "clang++", build: "Release", name: "CPU (Windows) (clang, Release)" }
149+
#- { compiler: "clang-cl", build: "Debug", name: "CPU (Windows) (clang-cl, Debug)" }
150+
#- { compiler: "clang-cl", build: "Release", name: "CPU (Windows) (clang-cl, Release)" }
151+
152+
steps:
153+
- name: Checkout stdexec (Windows)
154+
uses: actions/checkout@v4
155+
with:
156+
persist-credentials: false
157+
158+
- name: Build and test CPU schedulers (Windows)
159+
shell: pwsh
160+
run: |
161+
docker pull rapidsai/devcontainers:26.02-cuda12.9-cl14.43
162+
docker run --isolation=process -v "$(pwd):C:/stdexec" rapidsai/devcontainers:26.02-cuda12.9-cl14.43 powershell C:/stdexec/.github/workflows/test-windows.ps1 -Compiler '${{ matrix.compiler }}' -Config '${{ matrix.build }}'
163+
164+
ci-cpu-windows:
165+
runs-on: windows-latest
166+
name: CI (CPU) (Windows)
167+
needs:
168+
- build-cpu-windows
169+
steps:
170+
- run: echo "CI (CPU) (Windows) success"
171171

172172
build-cpu-macos:
173173
runs-on: macos-26-large

0 commit comments

Comments
 (0)