Skip to content

Commit dfecda0

Browse files
committed
Move RTX2080 PR coverage to T4 and L4 runners
1 parent ca19076 commit dfecda0

2 files changed

Lines changed: 26 additions & 20 deletions

File tree

ci/compile_time/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ compile_time:
1212
pull_request:
1313
- id: public-headers-gcc13
1414
name: Public headers compile-time bench
15-
gpu: rtx2080
15+
gpu: t4
1616
launch_args: "--cuda 13.3 --host gcc13"
1717
baseline_ref: origin/main
1818
preset: all-dev

ci/matrix.yaml

Lines changed: 25 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ compile_time:
22
pull_request:
33
- id: public-headers-gcc13
44
name: Public headers compile-time bench
5-
gpu: rtx2080
5+
gpu: t4
66
launch_args: "--cuda 13.3 --host gcc13"
77
baseline_ref: origin/main
88
preset: all-dev
@@ -74,13 +74,14 @@ workflows:
7474
# args: '--preset cub-cpp20 --build-targets "cub.cpp20.test.iterator" --ctest-targets "cub.cpp20.test.iterator"' }
7575
# - { jobs: ['run_cpu'], project: 'target', ctk: ['12.X', '13.X'], cxx: ['gcc', 'clang', 'msvc'],
7676
# args: '--preset libcudacxx --lit-precompile-tests "cuda/utility/basic_any.pass.cpp"' }
77-
# - { jobs: ['run_gpu'], project: 'target', ctk: ['12.X', '13.X'], cxx: ['gcc', 'clang'], gpu: 'rtx2080',
77+
# - { jobs: ['run_gpu'], project: 'target', ctk: ['12.X', '13.X'], cxx: ['gcc', 'clang'], gpu: 't4',
7878
# args: '--preset libcudacxx --lit-tests "cuda/utility/basic_any.pass.cpp"' }
7979
#
8080
# IMPORTANT: Do NOT delete or remove the `override:` key below, even when it is empty.
8181
override:
8282

8383
pull_request:
84+
# Use T4 for SM75 PR coverage; reserve RTX2080 coverage for scheduled workflows.
8485
# Old CTK: Oldest/newest supported host compilers:
8586
- {jobs: ['build'], project: ['libcudacxx', 'thrust'], std: 'minmax', ctk: '12.0', cxx: ['gcc12', 'clang14', 'msvc2019', 'msvc14.39']}
8687
- {jobs: ['build'], project: ['libcudacxx', 'thrust'], std: 'minmax', ctk: '12.0', cxx: 'gcc7'}
@@ -134,7 +135,7 @@ workflows:
134135
- {jobs: ['build'], cpu: 'arm64', project: ['libcudacxx', 'thrust', 'cudax'], std: 'max', cxx: ['gcc', 'clang']}
135136
- {jobs: ['build_nolid', 'build_lid0'], cpu: 'arm64', project: 'cub', std: 'max', cxx: ['gcc', 'clang']}
136137
- {jobs: ['test_gpu'], project: 'thrust', cmake_options: '-DTHRUST_DISPATCH_TYPE=Force32bit', gpu: 'rtx4090'}
137-
- {jobs: ['nvrtc'], project: 'libcudacxx', std: 'all', gpu: 'rtx2080', sm: 'gpu'}
138+
- {jobs: ['nvrtc'], project: 'libcudacxx', std: 'all', gpu: 't4', sm: 'gpu'}
138139
- {jobs: ['verify_codegen'], project: 'libcudacxx'}
139140
# libcu++ Codegen FileCheck: PRs use one GCC host compiler per CTK.
140141
# Suite-specific architectures are added separately.
@@ -150,16 +151,17 @@ workflows:
150151
- {jobs: ['codegen_filecheck'], project: 'libcudacxx', std: 'max', cxx: 'gcc15', codegen_target: 'simd-sass', sm: [103, '120f']}
151152
# c.parallel -- pinned to gcc13 / msvc2022 to match python
152153
- {jobs: ['test'], project: 'cccl_c_parallel', ctk: '12.X', cxx: ['gcc13', 'msvc2022'], gpu: ['t4']}
153-
- {jobs: ['test'], project: 'cccl_c_parallel', ctk: '13.X', cxx: ['gcc13', 'msvc2022'], gpu: ['rtx2080', 'l4', 'h100']}
154+
- {jobs: ['test'], project: 'cccl_c_parallel', ctk: '13.X', cxx: ['gcc13', 'msvc2022'], gpu: ['t4', 'l4', 'h100']}
154155
# RTX PRO 6000 coverage (limited due to small number of runners):
155156
- {jobs: ['test'], project: 'cccl_c_parallel', ctk: '13.X', cxx: ['gcc13'], gpu: ['rtxpro6000']}
156157
# c.parallel v2 (HostJIT-based)
157158
#
158-
# For now, this is a separate job run for Linux/CUDA13.
159+
# For now, this is a separate job run for CUDA13.
159160
# Eventually v2 will replace v1 as the default and run across the
160-
# entire matrix. Currently blocked on libnvfatbin availability on
161-
# Windows containers, and for CUDA <12.4.
162-
- {jobs: ['test'], project: 'cccl_c_parallel_v2', ctk: '13.X', cxx: ['gcc13', 'msvc'], gpu: 'rtx2080'}
161+
# entire matrix. Currently blocked on libnvfatbin availability for CUDA <12.4.
162+
- {jobs: ['test'], project: 'cccl_c_parallel_v2', ctk: '13.X', cxx: 'gcc13', gpu: 't4'}
163+
# Use the established Windows L4 pool for the MSVC lane.
164+
- {jobs: ['test'], project: 'cccl_c_parallel_v2', ctk: '13.X', cxx: 'msvc', gpu: 'l4'}
163165
# Python against c.parallel v2 (HostJIT-based). Single point of coverage
164166
# for the v2 Python path; the main `python` matrix continues to test
165167
# against v1 until v2 replaces it. The minimal row proves the minimal extras
@@ -227,7 +229,7 @@ workflows:
227229
# Used when an upstream project changes to reduce time spent smoke testing dependencies.
228230
pull_request_lite:
229231
# libcudacxx - Specialized, testing default SM
230-
- {project: 'libcudacxx', jobs: ['test'], std: 'max', cxx: ['gcc', 'msvc'], gpu: 'rtx2080', sm: 'gpu'}
232+
- {project: 'libcudacxx', jobs: ['test'], std: 'max', cxx: ['gcc', 'msvc'], gpu: 't4', sm: 'gpu'}
231233
- {project: 'libcudacxx', jobs: ['build'], std: 'max', cxx: 'clang'}
232234
- {project: 'libcudacxx', jobs: ['build'], std: 'max', ctk: 'nvhpc', cxx: 'nvhpc'}
233235
- {project: 'libcudacxx', jobs: ['build'], std: 'max', cudacxx: 'clang', ctk: 'clang-cuda', cxx: 'clang-cuda', sm: '70;80;90;100;120'}
@@ -244,7 +246,7 @@ workflows:
244246
- {project: 'thrust', jobs: ['build'], std: 'max', ctk: 'nvhpc', cxx: 'nvhpc', sm: '75;120'}
245247
- {project: 'thrust', jobs: ['build'], std: 'max', cudacxx: 'clang', ctk: 'clang-cuda', cxx: 'clang-cuda', sm: '75;120'}
246248
# cudax
247-
- {project: 'cudax', jobs: ['test'], std: 'max', cxx: ['gcc', 'msvc'], gpu: 'rtx2080', sm: 'gpu'}
249+
- {project: 'cudax', jobs: ['test'], std: 'max', cxx: ['gcc', 'msvc'], gpu: 't4', sm: 'gpu'}
248250
- {project: 'cudax', jobs: ['build'], std: 'max', cxx: 'clang', sm: '75;120'}
249251
- {project: 'cudax', jobs: ['build'], std: 'max', ctk: 'nvhpc', cxx: 'nvhpc', sm: '75;120'}
250252
# CTK '13.X' build with tile support: default projects
@@ -253,20 +255,20 @@ workflows:
253255
# stdpar
254256
- {project: 'stdpar', jobs: ['build'], std: 'max', ctk: 'nvhpc', cxx: 'nvhpc'}
255257
# Python + support
256-
- {project: 'cccl_c_parallel', jobs: ['test'], ctk: '13.X', cxx: ['gcc13', 'msvc2022'], gpu: 'rtx2080', sm: 'gpu'}
258+
- {project: 'cccl_c_parallel', jobs: ['test'], ctk: '13.X', cxx: ['gcc13', 'msvc2022'], gpu: 't4', sm: 'gpu'}
257259
- {project: 'cccl_c_parallel', jobs: ['test'], ctk: '13.X', cxx: 'gcc13', gpu: 'rtxpro6000', sm: 'gpu'}
258260
- {project: 'cccl_c_stf', jobs: ['test'], ctk: '13.X', cxx: 'gcc13', gpu: 't4', sm: 'gpu'}
259261
- {project: 'python', jobs: ['test'], ctk: '13.X', py_version: '3.14', gpu: 'l4', cxx: ['gcc13', 'msvc2022']}
260262
- {project: 'python', jobs: ['test_headers'], ctk: '13.X', py_version: '3.14', cxx: ['gcc13', 'msvc2022']}
261263
- {project: 'python', jobs: ['test_py_stf'], ctk: '13.X', py_version: '3.14', gpu: 'l4', cxx: 'gcc13'}
262264
# Packaging / install
263-
- {project: 'packaging', jobs: ['test'], ctk: '13.X', cxx: ['gcc', 'clang'], gpu: 'rtx2080', sm: 'gpu'}
265+
- {project: 'packaging', jobs: ['test'], ctk: '13.X', cxx: ['gcc', 'clang'], gpu: 't4', sm: 'gpu'}
264266
- {project: 'packaging', jobs: ['test'], args: '-min-cmake', gpu: 't4', sm: 'gpu'}
265267
- {project: 'packaging', jobs: ['install']}
266268
# NVBench Helper testing:
267-
- {project: 'nvbench_helper', jobs: ['test'], ctk: '13.X', cxx: ['gcc', 'clang'], gpu: 'rtx2080'}
269+
- {project: 'nvbench_helper', jobs: ['test'], ctk: '13.X', cxx: ['gcc', 'clang'], gpu: 't4'}
268270
# c.parallel v2 (HostJIT-based)
269-
- {jobs: ['test'], project: 'cccl_c_parallel_v2', ctk: '13.X', cxx: ['gcc13'], gpu: 'rtx2080'}
271+
- {jobs: ['test'], project: 'cccl_c_parallel_v2', ctk: '13.X', cxx: ['gcc13'], gpu: 't4'}
270272
# Python against c.parallel v2 (HostJIT-based)
271273
- {jobs: ['test'], project: 'python_v2', ctk: '13.X', py_version: '3.14', gpu: 'l4', cxx: 'gcc13'}
272274

@@ -318,7 +320,7 @@ workflows:
318320
- {jobs: ['test'], project: 'libcudacxx', ctk: '13.X', std: 'max', cxx: ['gcc', 'clang', 'msvc'], gpu: 'rtx2080'}
319321
- {jobs: ['test'], project: 'cub', ctk: '13.X', std: 'max', cxx: ['gcc', 'clang', 'msvc'], gpu: 'rtxa6000'}
320322
- {jobs: ['test'], project: 'thrust', ctk: '13.X', std: 'max', cxx: ['gcc', 'clang', 'msvc'], gpu: 'rtx4090'}
321-
- {jobs: ['test'], project: 'cudax', ctk: '13.X', std: 'max', cxx: ['gcc', 'clang', 'msvc'], gpu: 't4'}
323+
- {jobs: ['test'], project: 'cudax', ctk: '13.X', std: 'max', cxx: ['gcc', 'clang', 'msvc'], gpu: ['t4', 'rtx2080']}
322324
- {jobs: ['test'], project: ['libcudacxx', 'cub', 'thrust', 'cudax'], ctk: '13.X', std: 'max', gpu: 'h100' }
323325
# CTK '13.X' testing with tile support:
324326
- {jobs: ['test'], project: 'libcudacxx', ctk: '13.X', std: 20, cxx: ['gcc', 'clang', 'msvc'], gpu: 'rtxa6000', args: '-enable-tile'}
@@ -338,6 +340,8 @@ workflows:
338340
- {jobs: ['limited'], project: 'cub', std: 17, gpu: 'rtx2080'}
339341
# NVRTC tests don't currently support 12.0:
340342
- {jobs: ['nvrtc'], project: 'libcudacxx', ctk: [ '12.X', '13.0', '13.X'], cxx: 'gcc12', std: 'all', gpu: 'rtx2080', sm: 'gpu'}
343+
# Retain the latest-host-compiler RTX2080 NVRTC coverage moved out of PRs.
344+
- {jobs: ['nvrtc'], project: 'libcudacxx', std: 'all', gpu: 'rtx2080', sm: 'gpu'}
341345
- {jobs: ['verify_codegen'], project: 'libcudacxx'}
342346
# libcu++ Codegen FileCheck: nightly covers the GCC and Clang host compilers
343347
# supported by each CTK. Suite-specific architectures are added separately.
@@ -354,6 +358,8 @@ workflows:
354358
# c.parallel -- pinned to gcc13 / msvc2022 to match python
355359
- {jobs: ['test'], project: ['cccl_c_parallel'], ctk: '12.X', cxx: ['gcc13', 'msvc2022'], gpu: ['t4']}
356360
- {jobs: ['test'], project: ['cccl_c_parallel'], ctk: '13.X', cxx: ['gcc13', 'msvc2022'], gpu: ['rtx2080', 'l4', 'h100']}
361+
# Keep HostJIT-based c.parallel v2 RTX2080 coverage in nightly.
362+
- {jobs: ['test'], project: 'cccl_c_parallel_v2', ctk: '13.X', cxx: ['gcc13', 'msvc'], gpu: 'rtx2080'}
357363
# RTX PRO 6000 coverage (limited due to small number of runners):
358364
- {jobs: ['test'], project: 'cccl_c_parallel', ctk: '13.X', cxx: ['gcc13'], gpu: ['rtxpro6000']}
359365
# c.experimental.stf -- pinned to gcc13 to match python
@@ -392,7 +398,7 @@ workflows:
392398
- {jobs: ['test'], project: 'nvbench_helper', ctk: '12.0', cxx: ['gcc10', 'clang14'], gpu: 'rtx2080'}
393399
- {jobs: ['test'], project: 'nvbench_helper', ctk: '12.X', cxx: ['gcc10', 'clang14'], gpu: 't4'}
394400
- {jobs: ['test'], project: 'nvbench_helper', ctk: '13.0', cxx: ['gcc15', 'clang20'], gpu: 'rtx2080'}
395-
- {jobs: ['test'], project: 'nvbench_helper', ctk: '13.X', cxx: ['gcc', 'clang'], gpu: 't4'}
401+
- {jobs: ['test'], project: 'nvbench_helper', ctk: '13.X', cxx: ['gcc', 'clang'], gpu: ['t4', 'rtx2080']}
396402
# NVHPC build
397403
- {jobs: ['build'], cxx: 'nvhpc-prev', ctk: 'nvhpc-prev', std: 'all', project: ['libcudacxx', 'cub', 'thrust', 'cudax', 'stdpar'], cpu: ['amd64', 'arm64']}
398404
- {jobs: ['build'], cxx: 'nvhpc', ctk: 'nvhpc', std: 'all', project: ['libcudacxx', 'cub', 'thrust', 'cudax', 'stdpar'], cpu: ['amd64', 'arm64']}
@@ -882,7 +888,7 @@ projects:
882888
# Use the override workflow and supply arguments via the `args` tag.
883889
# Example:
884890
# override:
885-
# - { jobs: ['run'], project: 'target', ctk: ['12.X', '13.X'], cxx: 'gcc', gpu: 'rtx2080',
891+
# - { jobs: ['run'], project: 'target', ctk: ['12.X', '13.X'], cxx: 'gcc', gpu: 't4',
886892
# args: '--preset cub-cpp20 --build-targets "cub.cpp20.test.iterator" --ctest-targets "cub.cpp20.test.iterator"' }
887893
target:
888894
name: 'Target'
@@ -932,8 +938,8 @@ tags:
932938
ctk: { default: '13.X' }
933939
# CPU architecture
934940
cpu: { default: 'amd64' }
935-
# GPU model
936-
gpu: { default: 'rtx2080' }
941+
# GPU model: implicit PR jobs must not use the scheduled-only RTX2080 pool.
942+
gpu: { default: 't4' }
937943
# Host compiler {name, version, exe}
938944
# See the `host_compilers` map.
939945
cxx: { default: 'gcc' }

0 commit comments

Comments
 (0)