This is an automated email from the ASF dual-hosted git repository. apitrou pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/arrow.git
The following commit(s) were added to refs/heads/master by this push: new 7b2fc0d051 ARROW-16464: [C++][CI][GPU] Add CUDA CI (#14497) 7b2fc0d051 is described below commit 7b2fc0d05108f068d227fa5bbc35a6726f837c99 Author: Jacob Wujciak-Jens <ja...@wujciak.de> AuthorDate: Wed Oct 26 18:03:18 2022 +0200 ARROW-16464: [C++][CI][GPU] Add CUDA CI (#14497) Authored-by: Jacob Wujciak-Jens <ja...@wujciak.de> Signed-off-by: Antoine Pitrou <anto...@python.org> --- dev/tasks/docker-tests/github.cuda.yml | 52 ++++++++++++++++++++++++++++++++++ dev/tasks/tasks.yml | 14 +++++++++ docker-compose.yml | 6 ++-- 3 files changed, 68 insertions(+), 4 deletions(-) diff --git a/dev/tasks/docker-tests/github.cuda.yml b/dev/tasks/docker-tests/github.cuda.yml new file mode 100644 index 0000000000..0828403dec --- /dev/null +++ b/dev/tasks/docker-tests/github.cuda.yml @@ -0,0 +1,52 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +{% import 'macros.jinja' as macros with context %} + +{{ macros.github_header() }} + +jobs: + test: + name: | + Docker Test {{ flags|default("") }} {{ image }} {{ command|default("") }} + runs-on: ['self-hosted', 'cuda'] +{{ macros.github_set_env(env) }} + steps: + {{ macros.github_checkout_arrow(fetch_depth=fetch_depth|default(1))|indent }} + # python 3.8 is installed on the runner, no need to install + - name: Install archery + run: python -m pip install -e arrow/dev/archery[docker] + - name: Execute Docker Build + shell: bash + env: + # The CUDA image has to match the runner image 1:1 to work + # so these values are hardcoded to override any changes to .env + CUDA: "11.4.2" + UBUNTU: "20.04" + {{ macros.github_set_sccache_envvars()|indent(8) }} + run: | + archery docker run \ + -e SETUPTOOLS_SCM_PRETEND_VERSION="{{ arrow.no_rc_version }}" \ + {{ flags|default("") }} \ + {{ image }} \ + {{ command|default("") }} + {% if arrow.is_default_branch() %} + {{ macros.github_login_dockerhub()|indent }} + - name: Push Docker Image + shell: bash + run: archery docker push {{ image }} + {% endif %} diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml index 8ab21dbbe9..0609436ca2 100644 --- a/dev/tasks/tasks.yml +++ b/dev/tasks/tasks.yml @@ -1473,6 +1473,20 @@ tasks: artifacts: - docs.tar.gz + ############################## CUDA tests ################################# + + test-cuda-cpp: + ci: github + template: docker-tests/github.cuda.yml + params: + image: ubuntu-cuda-cpp + + test-cuda-python: + ci: github + template: docker-tests/github.cuda.yml + params: + image: ubuntu-cuda-python + ############################## Fuzz tests ################################# test-build-cpp-fuzz: diff --git a/docker-compose.yml b/docker-compose.yml index 72f9055651..66068a39d2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -469,11 +469,9 @@ services: # Usage: # docker-compose build cuda-cpp # docker-compose run --rm cuda-cpp - # Also need to edit the host docker configuration as follows: - # https://github.com/docker/compose/issues/6691#issuecomment-561504928 # Parameters: # ARCH: amd64 - # CUDA: 9.1, 10.0, 10.1 + # CUDA: <depends on your nvidia driver, should match system CUDA> image: ${REPO}:${ARCH}-ubuntu-${UBUNTU}-cuda-${CUDA}-cpp build: context: . @@ -788,7 +786,7 @@ services: # docker-compose run --rm cuda-python # Parameters: # ARCH: amd64 - # CUDA: 8.0, 10.0, ... + # CUDA: <depends on your nvidia driver, should match system CUDA> image: ${REPO}:${ARCH}-ubuntu-${UBUNTU}-cuda-${CUDA}-python-3 build: context: .