Skip to content
Snippets Groups Projects
Commit 96e4bf46 authored by Jean-Baptiste Keck's avatar Jean-Baptiste Keck
Browse files

update cmakelists.txt python dependency checks

parent ba643618
No related branches found
No related tags found
2 merge requests!24Resolve "Add python3.x support",!15WIP: Resolve "HySoP with tasks"
Pipeline #52318 passed
......@@ -132,30 +132,42 @@ include(FindPythonModule)
# - python packages -
find_python_module(numpy REQUIRED)
find_python_module(scipy REQUIRED)
find_python_module(h5py REQUIRED)
find_python_module(sympy REQUIRED)
find_python_module(h5py REQUIRED)
find_python_module(psutil REQUIRED)
find_python_module(cpuinfo REQUIRED)
find_python_module(gmpy2 REQUIRED)
find_python_module(editdistance REQUIRED)
find_python_module(portalocker REQUIRED)
find_python_module(tee REQUIRED)
find_python_module(colors REQUIRED) # ansicolor package
find_python_module(argparse_color_formatter REQUIRED)
find_python_module(colors REQUIRED) # corresponds ansicolor package
find_python_module(primefac REQUIRED)
find_python_module(networkx REQUIRED)
find_python_module(pyfftw REQUIRED)
find_python_module(matplotlib OPTIONAL)
find_python_module(pyvis OPTIONAL)
find_python_module(zarr REQUIRED)
find_python_module(numcodecs REQUIRED)
find_python_module(jsonpickle REQUIRED)
find_python_module(argparse_color_formatter REQUIRED)
find_python_module(numba OPTIONAL) # c++ jit compiler, required for CPU spectral filters
find_python_module(hptt OPTIONAL) # high performance cpu tensor transpose (fallback to numpy)
find_python_module(flint OPTIONAL) # high performance linear system solver (fallback to sympy)
find_python_module(tbb OPTIONAL) # additional numba threading backend (fallback to pthreads)
find_python_module(mkl_fft OPTIONAL) # additional fft backend, faster then FFTW, faster then clFFT on CPU OpenCL platforms.
find_python_module(pycairo OPTIONAL) # additional plotting backend
find_python_module(matplotlib OPTIONAL) # required for general plots
find_python_module(pyvis OPTIONAL) # required for graph plots
find_python_module(memory_tempfile OPTIONAL) # enable in memory HDF5 I/O to call paraview during simulation
# Some opencl related python package fails to import on non OpenCL machines (cluster's frontend for instance)
find_package( OpenCL )
if(${OpenCL_LIBRARY})
find_python_module(pyopencl REQUIRED)
find_python_module(mako REQUIRED)
find_python_module(gpyfft REQUIRED)
else()
find_python_module(pyopencl)
find_python_module(gpyfft)
find_python_module(pyopencl OPTIONAL)
find_python_module(mako OPTIONAL)
find_python_module(gpyfft OPTIONAL)
endif()
# --- MPI ---
......
......@@ -66,14 +66,11 @@ if [ "${HAS_CACHE_DIR}" = true ]; then
mkdir -p "${CACHE_DIR}"
fi
# Environment variables
export PYTHONPATH="${INSTALL_DIR}/lib/python3.8/site-packages:${INSTALL_DIR}"
export MPLBACKEND='cairo'
export HYSOP_VERBOSE=0
export HYSOP_DEBUG=0
export HYSOP_PROFILE=0
export HYSOP_KERNEL_DEBUG=0
export HYSOP_TRACE_WARNINGS=1
export PYTHONHASHSEED=42 # get consistent hashes accross MPI processes
export PYOPENCL_COMPILER_OUTPUT=0
export MPLBACKEND='cairo'
# OpenMPI specific variables
export OMPI_ALLOW_RUN_AS_ROOT=1
......@@ -81,6 +78,14 @@ export OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1
export OMPI_MCA_rmaps_base_oversubscribe=1
export OMPI_MCA_btl_vader_single_copy_mechanism=none # see https://github.com/open-mpi/ompi/issues/4948
# HySoP specific variables
export HYSOP_VERBOSE=0
export HYSOP_DEBUG=0
export HYSOP_PROFILE=0
export HYSOP_KERNEL_DEBUG=0
export HYSOP_TRACE_WARNINGS=1
echo "Trying to load hysop module:"
${PYTHON_EXECUTABLE} -c 'import hysop; print(hysop)'
echo "module import successful !"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment