Skip to content
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

Have conda-build test cuml installation #764

Merged
merged 42 commits into from
Mar 27, 2023
Merged
Show file tree
Hide file tree
Changes from 23 commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
afb72e8
reorg
cwharris Feb 16, 2023
66993e6
add pytest-kafka installation script and VAULT_HOST env variable
cwharris Feb 16, 2023
1cb3f84
rename pytest-kafka installation script
cwharris Feb 16, 2023
af6d829
move .conda folder to parent dir
cwharris Feb 17, 2023
084c70d
Merge branch 'branch-23.03' of github.com:nv-morpheus/Morpheus into d…
cwharris Feb 17, 2023
4c9cfcf
move gdb pretty print files
cwharris Feb 23, 2023
d798d59
add x11 mount
cwharris Feb 23, 2023
62d96d1
add x-server related env variables and binds to devcontainer
cwharris Feb 23, 2023
b15e6ba
move devcontainer vscode settings to new location
cwharris Feb 23, 2023
6a0f93c
Merge branch 'branch-23.03' of github.com:nv-morpheus/Morpheus into d…
cwharris Feb 24, 2023
a3a1f59
Merge branch 'branch-23.03' of github.com:nv-morpheus/Morpheus into d…
cwharris Feb 27, 2023
04de58f
Merge branch 'branch-23.03' of github.com:nv-morpheus/Morpheus into d…
cwharris Mar 7, 2023
4af3619
address review feedback
cwharris Mar 7, 2023
6aa526b
make devcontainer conda mounts more resilient
cwharris Mar 8, 2023
67f6836
update to cuda 11.8
cwharris Mar 8, 2023
2ccbb44
Merge branch 'branch-23.03' of github.com:nv-morpheus/Morpheus into c…
cwharris Mar 8, 2023
b6a347c
Merge branch 'branch-23.03' of github.com:nv-morpheus/Morpheus into c…
cwharris Mar 13, 2023
564c593
conda build fixes for devcontainer
cwharris Mar 14, 2023
39b20c0
Merge branch 'branch-23.03' of github.com:nv-morpheus/Morpheus into c…
cwharris Mar 15, 2023
c69762b
add comments
cwharris Mar 15, 2023
9871d12
add cuda-11.8.0 label back
cwharris Mar 15, 2023
1146fb0
install cuda-compiler for dev and release container builds
cwharris Mar 15, 2023
2d241bd
Merge branch 'branch-23.03' of github.com:nv-morpheus/Morpheus into c…
cwharris Mar 20, 2023
ca92c7f
Removing `morpheus._lib` from the conda build tests since that requir…
mdemoret-nv Mar 22, 2023
470f3ac
Setting RAPIDS_NO_INITIALIZE=1 to allow import tests to work
mdemoret-nv Mar 22, 2023
e0a3463
Removing GPU libraries from import
mdemoret-nv Mar 22, 2023
5a656ce
Test removing cusolver and cusparse
mdemoret-nv Mar 22, 2023
c1a30a2
Switching to use run_constrained
mdemoret-nv Mar 22, 2023
9add0cd
Minor tweaks to dockerfile and add dependencies to export set
mdemoret-nv Mar 23, 2023
efa6193
Merge branch 'branch-23.03' into conda-build-fixes
dagardner-nv Mar 27, 2023
bd95575
Merge branch 'branch-23.03' of github.com:nv-morpheus/Morpheus into c…
cwharris Mar 27, 2023
5259261
Merge branch 'conda-build-fixes' of github.com:cwharris/Morpheus into…
cwharris Mar 27, 2023
8399992
reorder apt installs
cwharris Mar 27, 2023
3ac7943
Merge branch 'conda-build-fixes' of github.com:cwharris/Morpheus into…
dagardner-nv Mar 27, 2023
f3c9e3f
add copyright header
cwharris Mar 27, 2023
6c5a65a
remove run_test.py and fix typo
cwharris Mar 27, 2023
daa9a13
make CUDAToolkit find_package REQUIRED
cwharris Mar 27, 2023
77db009
Fix placement of the end of the apt command
dagardner-nv Mar 27, 2023
81bfb17
Merge branch 'conda-build-fixes' of github.com:cwharris/Morpheus into…
dagardner-nv Mar 27, 2023
474fae3
Merge branch 'branch-23.03' of github.com:nv-morpheus/Morpheus into c…
cwharris Mar 27, 2023
a96bb54
Merge branch 'conda-build-fixes' of github.com:cwharris/Morpheus into…
cwharris Mar 27, 2023
2768f20
Merge branch 'branch-23.03' of github.com:nv-morpheus/Morpheus into c…
cwharris Mar 27, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .devcontainer/initialize-command.sh
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@
docker network inspect morpheus >/dev/null 2>&1 || docker network create morpheus

# create the parent conda folder so it's found when mounting
mkdir -p ../.conda
mkdir -p .cache/conda/envs
mkdir -p ../.conda/pkgs

# create a config directory if it does not exist so it's found when mounting
mkdir -p ../.config
14 changes: 7 additions & 7 deletions ci/conda/recipes/morpheus/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ outputs:
- scikit-build >=0.12
- versioneer-518
run:
# Runtime only requirements. This + setup.y is the definitive runtime requirement list
# Runtime only requirements. This + setup.py is the definitive runtime requirement list
- click >=8
- configargparse 1.5.*
- cuda-python <=11.7.0 # Needed to ensure cudatoolkit and not cuda-toolkit is installed
Expand Down Expand Up @@ -99,6 +99,11 @@ outputs:
- pytest
- pytest-cov
- pytest-benchmark
# test that cuml can be installed in the env
# https://docs.rapids.ai/notices/rsn0026/ for libcusolver & libcusparse
- cuml {{ rapids_version }}
- libcusolver<=11.4.1.48
- libcusparse<12
source_files:
# - .git/*
- docker/conda/environments/*
Expand All @@ -109,12 +114,7 @@ outputs:
- morpheus
- morpheus._lib
commands:
# Install dependencies that are pip-only
- mamba env update --prefix ${CONDA_PREFIX} --file docker/conda/environments/cuda{{ cuda_version }}_runtime.yml
# Ensure the test data is downloaded
- ./scripts/fetch_data.py fetch tests
# Run pytest
- pytest
- echo # make sure test requirements get installed

about:
home: https://github.com/nv-morpheus/Morpheus
Expand Down
1 change: 1 addition & 0 deletions ci/conda/recipes/morpheus/morpheus_build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ CMAKE_ARGS="-DMORPHEUS_PYTHON_BUILD_WHEEL=ON ${CMAKE_ARGS}"
CMAKE_ARGS="-DCMAKE_BUILD_RPATH_USE_ORIGIN=ON ${CMAKE_ARGS}"
CMAKE_ARGS="-DCMAKE_CUDA_ARCHITECTURES=${CMAKE_CUDA_ARCHITECTURES=-"all"} ${CMAKE_ARGS}"
CMAKE_ARGS="-DPython_EXECUTABLE=${PYTHON} ${CMAKE_ARGS}"
CMAKE_ARGS="-DPYTHON_EXECUTABLE=${PYTHON} ${CMAKE_ARGS}" # for pybind11

if [[ "${USE_SCCACHE}" == "1" ]]; then
CMAKE_ARGS="-DCCACHE_PROGRAM_PATH=$(which sccache) ${CMAKE_ARGS}"
Expand Down
1 change: 1 addition & 0 deletions ci/conda/recipes/run_conda_build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,7 @@ CONDA_ARGS_ARRAY+=("--variants" "{python: 3.8}")
# And default channels (with optional channel alias)
CONDA_ARGS_ARRAY+=("-c" "${CONDA_CHANNEL_ALIAS:+"${CONDA_CHANNEL_ALIAS%/}/"}rapidsai")
CONDA_ARGS_ARRAY+=("-c" "${CONDA_CHANNEL_ALIAS:+"${CONDA_CHANNEL_ALIAS%/}/"}nvidia")
CONDA_ARGS_ARRAY+=("-c" "${CONDA_CHANNEL_ALIAS:+"${CONDA_CHANNEL_ALIAS%/}/"}nvidia/label/cuda-11.8.0")
CONDA_ARGS_ARRAY+=("-c" "${CONDA_CHANNEL_ALIAS:+"${CONDA_CHANNEL_ALIAS%/}/"}nvidia/label/dev")
CONDA_ARGS_ARRAY+=("-c" "conda-forge")

Expand Down
7 changes: 4 additions & 3 deletions docker/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,7 @@ RUN apt update && \
cuda-cupti-dev-${CUDA_MAJOR_VER}-${CUDA_MINOR_VER} \
cuda-nvml-dev-${CUDA_MAJOR_VER}-${CUDA_MINOR_VER} \
cuda-nvtx-${CUDA_MAJOR_VER}-${CUDA_MINOR_VER} \
cuda-compiler-${CUDA_MAJOR_VER}-${CUDA_MINOR_VER} \
libcufft-dev-${CUDA_MAJOR_VER}-${CUDA_MINOR_VER} \
libcurand-dev-${CUDA_MAJOR_VER}-${CUDA_MINOR_VER} \
libcusolver-dev-${CUDA_MAJOR_VER}-${CUDA_MINOR_VER} \
Expand All @@ -161,7 +162,7 @@ RUN --mount=type=cache,id=workspace_cache,target=/workspace/.cache,sharing=locke
source activate base &&\
# Need to get around recent versions of git locking paths until they are deemed safe
git config --global --add safe.directory "*" &&\
MORPHEUS_PYTHON_BUILD_STUBS=OFF CONDA_BLD_PATH=/opt/conda/conda-bld CONDA_ARGS="--no-test" ./ci/conda/recipes/run_conda_build.sh morpheus
MORPHEUS_PYTHON_BUILD_STUBS=OFF CONDA_BLD_PATH=/opt/conda/conda-bld ./ci/conda/recipes/run_conda_build.sh morpheus

# sid_visualization is a submodule we need to init
RUN git submodule update --init --recursive
Expand All @@ -178,7 +179,7 @@ RUN --mount=type=bind,from=conda_bld_morpheus,source=/opt/conda/conda-bld,target
--mount=type=cache,id=conda_pkgs,target=/opt/conda/pkgs,sharing=locked \
source activate morpheus &&\
# Install morpheus
CONDA_ALWAYS_YES=true /opt/conda/bin/mamba install -n morpheus -c local -c rapidsai -c nvidia -c nvidia/label/dev -c conda-forge morpheus &&\
CONDA_ALWAYS_YES=true /opt/conda/bin/mamba install -n morpheus -c local -c rapidsai -c nvidia -c nvidia/label/cuda-11.8.0 -c nvidia/label/dev -c conda-forge morpheus &&\
# Install runtime dependencies that are pip-only
/opt/conda/bin/mamba env update -n morpheus --file docker/conda/environments/cuda${CUDA_MAJOR_VER}.${CUDA_MINOR_VER}_runtime.yml &&\
# Clean and activate
Expand Down Expand Up @@ -213,6 +214,7 @@ RUN apt update && \
cuda-cudart-dev-${CUDA_MAJOR_VER}-${CUDA_MINOR_VER} \
cuda-cupti-dev-${CUDA_MAJOR_VER}-${CUDA_MINOR_VER} \
cuda-nvtx-${CUDA_MAJOR_VER}-${CUDA_MINOR_VER} \
cuda-compiler-${CUDA_MAJOR_VER}-${CUDA_MINOR_VER} \
libcufft-dev-${CUDA_MAJOR_VER}-${CUDA_MINOR_VER} \
libcurand-dev-${CUDA_MAJOR_VER}-${CUDA_MINOR_VER} \
libcusolver-dev-${CUDA_MAJOR_VER}-${CUDA_MINOR_VER} \
Expand Down Expand Up @@ -245,7 +247,6 @@ ARG MORPHEUS_USER="root"
RUN source activate morpheus \
&& MORPHEUS_ROOT=/workspace \
CONDA_BLD_PATH=/opt/conda/conda-bld \
CONDA_ARGS="--no-test" \
./ci/conda/recipes/run_conda_build.sh pydebug \
&& ./ci/conda/recipes/python_dbg_install.sh \
-s $( ls /opt/conda/conda-bld/src_cache/Python-${PYTHON_VER}*.tar.xz ) \
Expand Down
1 change: 1 addition & 0 deletions docker/conda/environments/cuda11.8_dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ name: morpheus
channels:
- rapidsai
- nvidia
- nvidia/label/cuda-11.8.0
- nvidia/label/dev # For pre-releases of MRC. Should still default to full releases if available
- conda-forge
dependencies:
Expand Down