Source: python-tensorflow-cuda
Section: python
Priority: optional
Maintainer: Adam Cecile <acecile@le-vert.net>
Build-Depends: debhelper (>= 9), dh-python, python3-all-dev, python3-setuptools,
# Bazel uses python internally
 python,
# It also call GIT to clone some external dependencies
 git,
# Required during build
 python3-numpy (>= 1.11.0),
 python3-mock,
 python3-keras-applications (>= 1.0.8~),
 python3-keras-preprocessing (>= 1.0.5~),
# To compute unique (distribution related) package version
 lsb-release,
 bazel (>= 0.26.1~), bazel (<< 0.27~),
# Provide rename command
 util-linux,
# Meta package installing sane dependencies for all the CUDA crap
# Since 1.14, TF is not more compatible with 9.1:
# https://github.com/tensorflow/tensorflow/issues/33910
 cuda-toolchain-10.1 <!pkg.python-tensorflow-cuda.no-cuda> | cuda-toolchain-9.2 <!pkg.python-tensorflow-cuda.no-cuda> | cuda-toolchain-9.1 <!pkg.python-tensorflow-cuda.no-cuda>,
# libcudnn is required, to be dowloaded from https://developer.nvidia.com/cudnn
 libcudnn7-dev <!pkg.python-tensorflow-cuda.no-cuda>,
# Nvidia NCCL
 libnccl-dev (>= 2~) <!pkg.python-tensorflow-cuda.no-cuda>,
# To enable nVidia TensorRT on CUDA 9+
# Interresting documentation about alternative: https://askubuntu.com/a/918432
 libnvinfer-dev <!pkg.python-tensorflow-cuda.no-cuda>,
# For VERBS support
 libibverbs-dev,
# For OpenCL support (at the moment it does not build)
# computecpp (>= 0.3.0),
# Intel Math Kernel Library for Deep Neural Networks (Intel CPU optimization)
 libmkl-dev <!pkg.python-tensorflow-cuda.no-mkl-dnn>,
# These library is also required otherwise MKL build fail with theses errors
# libtensorflow_framework.so: error: undefined reference to 'omp_get_max_threads'
# libtensorflow_framework.so: error: undefined reference to 'omp_set_num_threads'
# libtensorflow_framework.so: error: undefined reference to 'omp_get_thread_num'
# libtensorflow_framework.so: error: undefined reference to 'GOMP_parallel'
# [...]
 libomp-7-dev <!pkg.python-tensorflow-cuda.no-mkl-dnn>,
# Build with OpenMPI and conflicts with all other implementation below
 libopenmpi-dev, openmpi-bin,
# Required when GDR is enabled
 librdmacm-dev,
# To remove shitty CUDA rpath
 chrpath,
# New dependency from 1.13 release
 libc-ares-dev,
# Java in case bazel does not bring it
# NEVER CHANGE THE LINE BELOW OTHERWISE FOR EXAMPLE OF STRETCH YOU WILL
# GET BACKPORTS openjdk-11-jdk THAT DOES NOT WORK AT ALL (WHY? DUNNO)
# WE DO WANT THE DEFAULT VERSION FOR ALL DISTRIB AND NOTHING ELSE
# ALSO WE NEED A RECENT CA CERTS BUNDLE OTHERWISE JAVA JUST SEEMS TO
# BE UNABLE TO DOWNLOAD FILES FROM HTTPS, WHAT A HUGE MESS
 default-jdk-headless | default-jdk,
 ca-certificates-java (>= 20180516~) | ca-certificates-java (= 20170929~deb9u3),
Build-Conflicts: lam4-dev, lam-runtime, libmpich-dev, mpich,
# Legacy le-vert.net MKLDNN package before Debian got its own
 libmkldnn-nonfree-dev,
Standards-Version: 3.9.8
Homepage: https://www.tensorflow.org/
X-Python-Version: >= 2.7
X-Python3-Version: >= 3.4

Package: python3-tensorflow-avx2-sse42-fma
Architecture: any
Depends: ${python3custom:Depends}, ${misc:Depends}, ${shlibs:Depends}
Provides: python3-tensorflow
Conflicts: python3-tensorflow
Replaces: python3-tensorflow
Description: library for numerical computation using data flow graphs (Python 3)
 TensorFlow is an open source software library for numerical computation
 using data flow graphs.
 .
 Nodes in the graph represent mathematical operations, while the graph edges
 represent the multidimensional data arrays (tensors) communicated between
 them.
 .
 The flexible architecture allows you to deploy computation to one or more
 CPUs or GPUs in a desktop, server, or mobile device with a single API.
 .
 This package installs the library for Python 3.
 .
 CPU optimization enabled: -mavx -mavx2 -mfma -msse4.1 -msse4.2

Package: python3-tensorflow-avx2-sse42-fma-mkl-dnn
Build-Profiles: <!pkg.python-tensorflow-cuda.no-mkl-dnn>
Architecture: any
Depends: ${python3custom:Depends}, ${misc:Depends}, ${shlibs:Depends}, ${mklcustom:Depends}
Provides: python3-tensorflow
Conflicts: python3-tensorflow
Replaces: python3-tensorflow
Description: library for numerical computation using data flow graphs (Python 3)
 TensorFlow is an open source software library for numerical computation
 using data flow graphs.
 .
 Nodes in the graph represent mathematical operations, while the graph edges
 represent the multidimensional data arrays (tensors) communicated between
 them.
 .
 The flexible architecture allows you to deploy computation to one or more
 CPUs or GPUs in a desktop, server, or mobile device with a single API.
 .
 This package installs the library for Python 3.
 .
 CPU optimization enabled: -mavx -mavx2 -mfma -msse4.1 -msse4.2
 .
 Intel MKL DNN library has been used to provide Intel CPU optimizations.

Package: python3-tensorflow-cuda-avx2-sse42-fma
Build-Profiles: <!pkg.python-tensorflow-cuda.no-cuda>
Architecture: any
Depends: ${python3custom:Depends}, ${misc:Depends}, ${shlibs:Depends}, ${cudnn:Depends}, ${cupti:Depends}
Recommends: libnvinfer4
Provides: python3-tensorflow
Conflicts: python3-tensorflow
Replaces: python3-tensorflow
Description: library for numerical computation using data flow graphs (Python 3)
 TensorFlow is an open source software library for numerical computation
 using data flow graphs.
 .
 Nodes in the graph represent mathematical operations, while the graph edges
 represent the multidimensional data arrays (tensors) communicated between
 them.
 .
 The flexible architecture allows you to deploy computation to one or more
 CPUs or GPUs in a desktop, server, or mobile device with a single API.
 .
 This package installs the library for Python 3 built with nvidia CUDA.
 .
 CPU optimization enabled: -mavx -mavx2 -mfma -msse4.1 -msse4.2

Package: python3-tensorflow-cuda-avx2-sse42-fma-mkl-dnn
Build-Profiles: <!pkg.python-tensorflow-cuda.no-cuda !pkg.python-tensorflow-cuda.no-mkl-dnn>
Architecture: any
Depends: ${python3custom:Depends}, ${misc:Depends}, ${shlibs:Depends}, ${cudnn:Depends}, ${cupti:Depends}, ${mklcustom:Depends}
Recommends: libnvinfer4
Provides: python3-tensorflow
Conflicts: python3-tensorflow
Replaces: python3-tensorflow
Description: library for numerical computation using data flow graphs (Python 3)
 TensorFlow is an open source software library for numerical computation
 using data flow graphs.
 .
 Nodes in the graph represent mathematical operations, while the graph edges
 represent the multidimensional data arrays (tensors) communicated between
 them.
 .
 The flexible architecture allows you to deploy computation to one or more
 CPUs or GPUs in a desktop, server, or mobile device with a single API.
 .
 This package installs the library for Python 3 built with nvidia CUDA.
 .
 CPU optimization enabled: -mavx -mavx2 -mfma -msse4.1 -msse4.2
 .
 Intel MKL DNN library has been used to provide Intel CPU optimizations.

Package: python3-tensorflow-cuda-avx-sse42
Build-Profiles: <!pkg.python-tensorflow-cuda.no-cuda>
Architecture: any
Depends: ${python3custom:Depends}, ${misc:Depends}, ${shlibs:Depends}, ${cudnn:Depends}, ${cupti:Depends}
Recommends: libnvinfer4
Provides: python3-tensorflow
Conflicts: python3-tensorflow
Replaces: python3-tensorflow
Description: library for numerical computation using data flow graphs (Python 3)
 TensorFlow is an open source software library for numerical computation
 using data flow graphs.
 .
 Nodes in the graph represent mathematical operations, while the graph edges
 represent the multidimensional data arrays (tensors) communicated between
 them.
 .
 The flexible architecture allows you to deploy computation to one or more
 CPUs or GPUs in a desktop, server, or mobile device with a single API.
 .
 This package installs the library for Python 3 built with nvidia CUDA.
 .
 CPU optimization enabled: -mavx -msse4.1 -msse4.2

Package: python3-tensorflow-avx-sse42
Architecture: any
Depends: ${python3custom:Depends}, ${misc:Depends}, ${shlibs:Depends}
Provides: python3-tensorflow
Conflicts: python3-tensorflow
Replaces: python3-tensorflow
Description: library for numerical computation using data flow graphs (Python 3)
 TensorFlow is an open source software library for numerical computation
 using data flow graphs.
 .
 Nodes in the graph represent mathematical operations, while the graph edges
 represent the multidimensional data arrays (tensors) communicated between
 them.
 .
 The flexible architecture allows you to deploy computation to one or more
 CPUs or GPUs in a desktop, server, or mobile device with a single API.
 .
 This package installs the library for Python 3.
 .
 CPU optimization enabled: -mavx -msse4.1 -msse4.2

Package: tensorflow-tools
Architecture: all
Depends: ${misc:Depends}, ${python3:Depends}, python3-tensorflow (>= ${source:Version}), python3-tensorflow (<< ${source:Upstream-Version}.0~)
Description: library for numerical computation using data flow graphs (cli tools)
 TensorFlow is an open source software library for numerical computation
 using data flow graphs.
 .
 Nodes in the graph represent mathematical operations, while the graph edges
 represent the multidimensional data arrays (tensors) communicated between
 them.
 .
 The flexible architecture allows you to deploy computation to one or more
 CPUs or GPUs in a desktop, server, or mobile device with a single API.
 .
 This package contains "saved_model_cli" and "tensorboard" command line
 tools.
