Repository navigation
Add build scripts for CUDA testing on gpuCI #7499
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 8 commits
5a37c20
8845d7c
96557e6
e8c7739
512bdde
c53efdc
15c636b
2129c4e
af2da0c
1d2b545
9d6d940
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,21 @@ | ||
| PYTHON_VER: | ||
| - "3.8" | ||
|
|
||
| CUDA_VER: | ||
| - "11.2" | ||
|
|
||
| CUDA_TOOLKIT_VER: | ||
| - "9.2" | ||
| - "10.0" | ||
| - "10.2" | ||
| - "11.0" | ||
| - "11.2" | ||
| - "11.4" | ||
|
|
||
| LINUX_VER: | ||
| - ubuntu18.04 | ||
|
|
||
| RAPIDS_VER: | ||
| - "21.12" | ||
|
|
||
| excludes: | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Nitpick: what does this do, is it needed?
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This file defines a matrix of configurations that is the cross-product of all the axes, It is documented at: https://github.com/jenkinsci/yaml-axis-plugin/blob/master/README.md#excluding-logic |
||
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,64 @@ | ||||||
| ############################################## | ||||||
| # Numba GPU build and test script for CI # | ||||||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. the final hash
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This is now aligned. |
||||||
| ############################################## | ||||||
| set -e | ||||||
| NUMARGS=$# | ||||||
| ARGS=$* | ||||||
|
|
||||||
| # Arg parsing function | ||||||
| function hasArg { | ||||||
| (( ${NUMARGS} != 0 )) && (echo " ${ARGS} " | grep -q " $1 ") | ||||||
| } | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Dead code?
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Probably, will try removing. |
||||||
|
|
||||||
| # Set path and build parallel level | ||||||
| export PATH=/opt/conda/bin:/usr/local/cuda/bin:$PATH | ||||||
| export PARALLEL_LEVEL=${PARALLEL_LEVEL:-4} | ||||||
|
|
||||||
| # Set home to the job's workspace | ||||||
| export HOME="$WORKSPACE" | ||||||
|
|
||||||
| # Switch to project root; also root of repo checkout | ||||||
| cd "$WORKSPACE" | ||||||
|
|
||||||
| # Determine CUDA release version | ||||||
| export CUDA_REL=${CUDA_VERSION%.*} | ||||||
|
|
||||||
| ################################################################################ | ||||||
| # SETUP - Check environment | ||||||
| ################################################################################ | ||||||
|
|
||||||
| gpuci_logger "Check environment variables" | ||||||
| env | ||||||
|
|
||||||
| gpuci_logger "Check GPU usage" | ||||||
| nvidia-smi | ||||||
|
|
||||||
| gpuci_logger "Create testing env" | ||||||
| . /opt/conda/etc/profile.d/conda.sh | ||||||
| gpuci_mamba_retry create -n numba -y \ | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
suggest using a different env name to the package name as it can help with debugging.
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Good point. |
||||||
| "python=${PYTHON_VER}" \ | ||||||
| "cudatoolkit=${CUDA_TOOLKIT_VER}" \ | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think the Anaconda distro compilers should ideally be used here such that the
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. WIll add the Anaconda compilers. |
||||||
| "numba/label/dev::llvmlite" \ | ||||||
| "numpy" \ | ||||||
| "scipy" \ | ||||||
| "cffi" | ||||||
|
stuartarchibald marked this conversation as resolved.
Resolved
|
||||||
| conda activate numba | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
for consistency with the above suggestion.
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Will change as above. |
||||||
|
|
||||||
| gpuci_logger "Install numba" | ||||||
| python setup.py develop | ||||||
|
|
||||||
| gpuci_logger "Check Python version" | ||||||
| python --version | ||||||
| $CC --version | ||||||
| $CXX --version | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Can probably remove this if the compilers are set from Anaconda distro. Also
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'll remove the Python info, but I'll leave in the compiler checks in case some oddity results in the Anaconda compilers being installed but not used (e.g. in case there's something about the image we run on that is / becomes unanticipated). |
||||||
|
|
||||||
| gpuci_logger "Check conda environment" | ||||||
| conda info | ||||||
| conda config --show-sources | ||||||
| conda list --show-channel-urls | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is this covered by
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes. |
||||||
|
|
||||||
| gpuci_logger "Dump system information from Numba" | ||||||
| python -m numba -s | ||||||
|
|
||||||
| gpuci_logger "Run tests in numba.cuda.tests" | ||||||
| python -m numba.runtests numba.cuda.tests -m | ||||||
Uh oh!
There was an error while loading. Please reload this page.