Skip to content

Commit

Permalink
Refactor CI matrix. (#1844)
Browse files Browse the repository at this point in the history
* Remove the os-map from the matrix.

We no longer need this to lookup images.

* Migrate `cxx`.

* Migrate devcontainer ver and all stds list.

* Migrate ctk version info.

* Migrate device compiler.

* Refactor cxx handling to reuse string parser.

* Migrate GPU tables.

* Migrate project tables.

* Migrate job tables.

* Migrate tag tables.

* Fix exclusion handling.

* Update devcontainers to remove OS info.

* Bump devcontainer version to access os-less images.

* It's that time again.

New version of gcc struggles with replace.cu.

* Fix typo.

* Resolve merge issue in matrix.yaml

* Fix MSVC version for cudax

* Remove duplicate build job from cudax matrix.

* Fix bad syntax in asynchronous_operations.rst.

* Update devcontainers for cudax.
  • Loading branch information
alliepiper committed Jun 15, 2024
1 parent 1b75250 commit 701b50d
Show file tree
Hide file tree
Showing 40 changed files with 666 additions and 639 deletions.
2 changes: 1 addition & 1 deletion .devcontainer/cuda11.1-gcc6/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc6-cuda11.1-ubuntu18.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc6-cuda11.1",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda11.1-gcc7/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc7-cuda11.1-ubuntu18.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc7-cuda11.1",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda11.1-gcc8/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc8-cuda11.1-ubuntu18.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc8-cuda11.1",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda11.1-gcc9/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc9-cuda11.1-ubuntu18.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc9-cuda11.1",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda11.1-llvm9/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm9-cuda11.1-ubuntu18.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm9-cuda11.1",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda11.8-gcc11/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc11-cuda11.8-ubuntu22.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc11-cuda11.8",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.0-gcc10/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc10-cuda12.0-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc10-cuda12.0",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.0-gcc11/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc11-cuda12.0-ubuntu22.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc11-cuda12.0",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.0-gcc12/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc12-cuda12.0-ubuntu22.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc12-cuda12.0",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.0-gcc9/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc9-cuda12.0-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc9-cuda12.0",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.0-llvm10/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm10-cuda12.0-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm10-cuda12.0",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.0-llvm11/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm11-cuda12.0-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm11-cuda12.0",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.0-llvm12/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm12-cuda12.0-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm12-cuda12.0",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.0-llvm13/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm13-cuda12.0-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm13-cuda12.0",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.0-llvm14/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm14-cuda12.0-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm14-cuda12.0",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.0-llvm9/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm9-cuda12.0-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm9-cuda12.0",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-gcc10/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc10-cuda12.4-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc10-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-gcc11/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc11-cuda12.4-ubuntu22.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc11-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-gcc12/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc12-cuda12.4-ubuntu22.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc12-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-gcc13/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc13-cuda12.4-ubuntu22.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc13-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-gcc7/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc7-cuda12.4-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc7-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-gcc8/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc8-cuda12.4-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc8-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-gcc9/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc9-cuda12.4-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc9-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-llvm10/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm10-cuda12.4-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm10-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-llvm11/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm11-cuda12.4-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm11-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-llvm12/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm12-cuda12.4-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm12-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-llvm13/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm13-cuda12.4-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm13-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-llvm14/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm14-cuda12.4-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm14-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-llvm15/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm15-cuda12.4-ubuntu22.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm15-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-llvm16/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm16-cuda12.4-ubuntu22.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm16-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-llvm17/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm17-cuda12.4-ubuntu22.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm17-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
51 changes: 0 additions & 51 deletions .devcontainer/cuda12.4-llvm18/devcontainer.json

This file was deleted.

2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-llvm9/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-llvm9-cuda12.4-ubuntu20.04",
"image": "rapidsai/devcontainers:24.08-cpp-llvm9-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cuda12.4-oneapi2023.2.0/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-oneapi2023.2.0-cuda12.4-ubuntu22.04",
"image": "rapidsai/devcontainers:24.08-cpp-oneapi2023.2.0-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"shutdownAction": "stopContainer",
"image": "rapidsai/devcontainers:24.06-cpp-gcc13-cuda12.4-ubuntu22.04",
"image": "rapidsai/devcontainers:24.08-cpp-gcc13-cuda12.4",
"hostRequirements": {
"gpu": "optional"
},
Expand Down
13 changes: 5 additions & 8 deletions .devcontainer/make_devcontainers.sh
Original file line number Diff line number Diff line change
Expand Up @@ -28,15 +28,14 @@ update_devcontainer() {
local compiler_name="$5"
local compiler_exe="$6"
local compiler_version="$7"
local os="$8"
local devcontainer_version="$9"
local devcontainer_version="$8"

local IMAGE_ROOT="rapidsai/devcontainers:${devcontainer_version}-cpp-"
local image="${IMAGE_ROOT}${compiler_name}${compiler_version}-cuda${cuda_version}-${os}"
local image="${IMAGE_ROOT}${compiler_name}${compiler_version}-cuda${cuda_version}"

jq --arg image "$image" --arg name "$name" \
--arg cuda_version "$cuda_version" --arg compiler_name "$compiler_name" \
--arg compiler_exe "$compiler_exe" --arg compiler_version "$compiler_version" --arg os "$os" \
--arg compiler_exe "$compiler_exe" --arg compiler_version "$compiler_version" \
'.image = $image | .name = $name | .containerEnv.DEVCONTAINER_NAME = $name |
.containerEnv.CCCL_BUILD_INFIX = $name |
.containerEnv.CCCL_CUDA_VERSION = $cuda_version | .containerEnv.CCCL_HOST_COMPILER = $compiler_name |
Expand Down Expand Up @@ -103,10 +102,9 @@ readonly DEFAULT_CUDA=$(echo "$NEWEST_GCC_CUDA_ENTRY" | jq -r '.cuda')
readonly DEFAULT_COMPILER_NAME=$(echo "$NEWEST_GCC_CUDA_ENTRY" | jq -r '.compiler_name')
readonly DEFAULT_COMPILER_EXE=$(echo "$NEWEST_GCC_CUDA_ENTRY" | jq -r '.compiler_exe')
readonly DEFAULT_COMPILER_VERSION=$(echo "$NEWEST_GCC_CUDA_ENTRY" | jq -r '.compiler_version')
readonly DEFAULT_OS=$(echo "$NEWEST_GCC_CUDA_ENTRY" | jq -r '.os')
readonly DEFAULT_NAME=$(make_name "$DEFAULT_CUDA" "$DEFAULT_COMPILER_NAME" "$DEFAULT_COMPILER_VERSION")

update_devcontainer ${base_devcontainer_file} "./temp_devcontainer.json" "$DEFAULT_NAME" "$DEFAULT_CUDA" "$DEFAULT_COMPILER_NAME" "$DEFAULT_COMPILER_EXE" "$DEFAULT_COMPILER_VERSION" "$DEFAULT_OS" "$DEVCONTAINER_VERSION"
update_devcontainer ${base_devcontainer_file} "./temp_devcontainer.json" "$DEFAULT_NAME" "$DEFAULT_CUDA" "$DEFAULT_COMPILER_NAME" "$DEFAULT_COMPILER_EXE" "$DEFAULT_COMPILER_VERSION" "$DEVCONTAINER_VERSION"
mv "./temp_devcontainer.json" ${base_devcontainer_file}

# Create an array to keep track of valid subdirectory names
Expand All @@ -121,13 +119,12 @@ for combination in $combinations; do
compiler_name=$(echo "$combination" | jq -r '.compiler_name')
compiler_exe=$(echo "$combination" | jq -r '.compiler_exe')
compiler_version=$(echo "$combination" | jq -r '.compiler_version')
os=$(echo "$combination" | jq -r '.os')

name=$(make_name "$cuda_version" "$compiler_name" "$compiler_version")
mkdir -p "$name"
new_devcontainer_file="$name/devcontainer.json"

update_devcontainer "$base_devcontainer_file" "$new_devcontainer_file" "$name" "$cuda_version" "$compiler_name" "$compiler_exe" "$compiler_version" "$os" "$DEVCONTAINER_VERSION"
update_devcontainer "$base_devcontainer_file" "$new_devcontainer_file" "$name" "$cuda_version" "$compiler_name" "$compiler_exe" "$compiler_version" "$DEVCONTAINER_VERSION"
echo "Created $new_devcontainer_file"

# Add the subdirectory name to the valid_subdirs array
Expand Down
Loading

0 comments on commit 701b50d

Please sign in to comment.