diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index a76d7904..7219dbcc 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -60,6 +60,7 @@ jobs: TAG=${TAG/11-2-2/11.2.2} TAG=${TAG/11-4-3/11.4.3} TAG=${TAG/12-2-0/12.2.0} + TAG=${TAG/12-9-0/12.9.0} docker run \ --name test-container \ "lifflander1/vt:wf-$TAG" \ diff --git a/ci/config.yaml b/ci/config.yaml index 76704cb2..b84c0085 100644 --- a/ci/config.yaml +++ b/ci/config.yaml @@ -179,6 +179,14 @@ setup: <<: *amd64-ubuntu-20_04-gcc-9-cuda-12_2_0-cpp label: nvidia cuda 11.2.2, gcc-9, ubuntu, mpich + amd64-ubuntu-24.04-gcc-13-cuda-12.9.0-cpp: + label: nvidia cuda 12.9.0, gcc-13, ubuntu, mpich + env: { <<: *env, CC: gcc-13, CXX: nvcc_wrapper } + deps: + cmake: ['3.23.4'] + mpich: { env: { CC: gcc-13, CXX: g++-13 }, args: ['4.0.2', '-j4'] } + nvcc_wrapper: ~ + # ubuntu / clang amd64-ubuntu-20.04-clang-9-cpp: label: clang-9, ubuntu, mpich @@ -302,7 +310,7 @@ setup: cmake: ['3.23.4'] mpich: { env: { CC: icc, CXX: icpc }, args: ['4.0.2', '-j4'] } - amd64-ubuntu-20.04-icpx-cpp: + amd64-ubuntu-24.04-icpx-cpp: <<: *amd64-ubuntu-20_04-icpc-icpc-cpp label: intel icpx, ubuntu, mpich env: @@ -402,6 +410,13 @@ images: base: nvidia/cuda:11.2.2-devel-ubuntu20.04 setup: amd64-ubuntu-20.04-gcc-9-cuda-11.2.2-cpp + - + repository: *docker-repository + tag: wf-amd64-ubuntu-24.04-gcc-13-cuda-12.9.0-cpp + arch: linux/amd64 + base: nvidia/cuda:12.9.0-devel-ubuntu24.04 + setup: amd64-ubuntu-24.04-gcc-13-cuda-12.9.0-cpp + # ubuntu / clang - repository: *docker-repository @@ -497,10 +512,10 @@ images: - repository: *docker-repository - tag: wf-amd64-ubuntu-20.04-icpx-cpp + tag: wf-amd64-ubuntu-24.04-icpx-cpp arch: linux/amd64 - base: intel/oneapi:os-tools-ubuntu20.04 - setup: amd64-ubuntu-20.04-icpx-cpp + base: intel/oneapi:2026.0.0-devel-ubuntu24.04 + setup: amd64-ubuntu-24.04-icpx-cpp # List of test configurations available to the CI runners/agents runners: @@ -529,8 +544,8 @@ runners: - type: *runner-types - runs-on: ubuntu-20.04 - image: { repository: *docker-repository, tag: wf-amd64-ubuntu-20.04-icpx-cpp } + runs-on: ubuntu-24.04 + image: { repository: *docker-repository, tag: wf-amd64-ubuntu-24.04-icpx-cpp } # ubuntu / gcc - @@ -589,6 +604,11 @@ runners: runs-on: ubuntu-20.04 image: { repository: *docker-repository, tag: wf-amd64-ubuntu-20.04-gcc-9-cuda-11.2.2-cpp } + - + type: *runner-types + runs-on: ubuntu-24.04 + image: { repository: *docker-repository, tag: wf-amd64-ubuntu-24.04-gcc-13-cuda-12.9.0-cpp } + # ubuntu / clang - type: *runner-types diff --git a/ci/shared/matrix/azure.json b/ci/shared/matrix/azure.json index 2a2a9ad3..c9d99808 100644 --- a/ci/shared/matrix/azure.json +++ b/ci/shared/matrix/azure.json @@ -25,11 +25,11 @@ "image": "lifflander1/vt:wf-amd64-ubuntu-20.04-icpc-cpp", "name": "wf-amd64-ubuntu-20.04-icpc-cpp" }, - "wf-amd64-ubuntu-20-04-icpx-cpp": { + "wf-amd64-ubuntu-24-04-icpx-cpp": { "label": "intel icpx, ubuntu, mpich", - "vmImage": "ubuntu-20.04", - "image": "lifflander1/vt:wf-amd64-ubuntu-20.04-icpx-cpp", - "name": "wf-amd64-ubuntu-20.04-icpx-cpp" + "vmImage": "ubuntu-24.04", + "image": "lifflander1/vt:wf-amd64-ubuntu-24.04-icpx-cpp", + "name": "wf-amd64-ubuntu-24.04-icpx-cpp" }, "wf-amd64-ubuntu-20-04-gcc-9-cpp": { "label": "gcc-9, ubuntu, mpich", @@ -97,6 +97,12 @@ "image": "lifflander1/vt:wf-amd64-ubuntu-20.04-gcc-9-cuda-11.2.2-cpp", "name": "wf-amd64-ubuntu-20.04-gcc-9-cuda-11.2.2-cpp" }, + "wf-amd64-ubuntu-24-04-gcc-13-cuda-12-9-0-cpp": { + "label": "nvidia cuda 12.9.0, gcc-13, ubuntu, mpich", + "vmImage": "ubuntu-24.04", + "image": "lifflander1/vt:wf-amd64-ubuntu-24.04-gcc-13-cuda-12.9.0-cpp", + "name": "wf-amd64-ubuntu-24.04-gcc-13-cuda-12.9.0-cpp" + }, "wf-amd64-ubuntu-20-04-clang-9-cpp": { "label": "clang-9, ubuntu, mpich", "vmImage": "ubuntu-20.04", diff --git a/ci/shared/matrix/github.json b/ci/shared/matrix/github.json index a16c52f0..193d8cb8 100644 --- a/ci/shared/matrix/github.json +++ b/ci/shared/matrix/github.json @@ -27,9 +27,9 @@ }, { "label": "intel icpx, ubuntu, mpich", - "runs-on": "ubuntu-20.04", - "image": "lifflander1/vt:wf-amd64-ubuntu-20.04-icpx-cpp", - "name": "wf-amd64-ubuntu-20.04-icpx-cpp" + "runs-on": "ubuntu-24.04", + "image": "lifflander1/vt:wf-amd64-ubuntu-24.04-icpx-cpp", + "name": "wf-amd64-ubuntu-24.04-icpx-cpp" }, { "label": "gcc-9, ubuntu, mpich", @@ -97,6 +97,12 @@ "image": "lifflander1/vt:wf-amd64-ubuntu-20.04-gcc-9-cuda-11.2.2-cpp", "name": "wf-amd64-ubuntu-20.04-gcc-9-cuda-11.2.2-cpp" }, + { + "label": "nvidia cuda 12.9.0, gcc-13, ubuntu, mpich", + "runs-on": "ubuntu-24.04", + "image": "lifflander1/vt:wf-amd64-ubuntu-24.04-gcc-13-cuda-12.9.0-cpp", + "name": "wf-amd64-ubuntu-24.04-gcc-13-cuda-12.9.0-cpp" + }, { "label": "clang-9, ubuntu, mpich", "runs-on": "ubuntu-20.04", diff --git a/docker-bake.hcl b/docker-bake.hcl index 46bd7112..f4f4054a 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -99,6 +99,17 @@ function "distro-version" { result = lookup(item, "distro_version", DISTRO_VERSION) } +function "setup-distro-version" { + params = [item] + result = lookup( + item, + "setup_distro_version", + equal(distro(item), "nvidia/cuda") || equal(distro(item), "intel/oneapi") ? + "ubuntu-20.04" : + "${distro(item)}-${distro-version(item)}" + ) +} + function "compiler" { params = [item] result = lookup(item, "compiler", COMPILER) @@ -167,9 +178,7 @@ function "setup-id" { params = [item] result = join("-", [ arch(item), - equal(distro(item), "nvidia/cuda") || equal(distro(item), "intel/oneapi") ? - "ubuntu-20.04" : - "${distro(item)}-${distro-version(item)}", + setup-distro-version(item), compiler(item), equal(variant(item), "") ? "cpp" : "${variant(item)}-cpp" ]) @@ -439,6 +448,7 @@ target "build-all" { compiler = "gcc-13" distro = "nvidia/cuda" distro_version = "12.9.0-devel-ubuntu24.04" + setup_distro_version = "ubuntu-24.04" path_prefix = "/opt/nvcc_wrapper/build:" variant = "cuda-12.9.0" deps = <