h2o4gpu icon indicating copy to clipboard operation
h2o4gpu copied to clipboard

Numpy/scipy requirements are too strict (not upgrade resistant)

Open mirekphd opened this issue 7 years ago • 0 comments

Environment (for bugs)

  • OS platform, distribution and version (e.g. Linux Ubuntu 16.04): Linux-4.4.0-96-generic-x86_64-with-debian-stretch-sid
  • Installed from (source or binary): binary (/bleeding-edge/ai/h2o/h2o4gpu/0.2-nccl-cuda8/h2o4gpu-0.2.0.9999-cp36-cp36m-linux_x86_64.whl
  • H2O4GPU Version: h2o4gpu 0.2.0.9999+master.038c69c
  • Python version (optional): Python version: 3.6.5 | packaged by conda-forge | (default, Apr 6 2018, 13:39:56) [GCC 4.8.2 20140120 (Red Hat 4.8.2-15)] Conda version: conda 4.5.3 Pip version: pip 10.0.1 from /opt/conda/lib/python3.6/site-packages/pip (python 3.6)
numpy                     1.14.3                    <pip>
numpy                     1.13.3           py36hdbf6ddf_4    defaults
numpy                     1.14.2                    <pip>
scipy                     1.0.1                     <pip>
scipy                     1.1.0                     <pip>
scipy                     1.1.0            py36hfc37229_0    defaults
  • CUDA/cuDNN version: 8.0.61/6.0.21
  • GPU model (optional): NVIDIA GeForce 1080 Ti
  • CPU model: Intel(R) Core(TM) i5-4690K CPU @ 3.50GHz

Description

Requirements on python dependencies are too strict, they should be upgrade-resistant, with version numbers using inequalities rather than equalities. Current version of requirements_runtime.txt combined with the latest versions of numpy and scipy leads to the following persistent warning during the installation of all python packages (when using docker build) and during subsequent tests using pipdeptree:

h2o4gpu 0.2.0.9999+master.038c69c has requirement numpy==1.14.2, but you'll have numpy 1.14.3 which is incompatible.

This does not prevent H2O4GPU from working just fine (including GPU support), because pip installed duplicate versions of numpy and scipy as per H2O4GPU requirements. Note that I cannot separate H2O in a conda environment due to its poor performance in large containers.

mirekphd avatar May 13 '18 14:05 mirekphd