J'essaie de créer tensorflow à partir de la source avec des optimisations MKL sur une configuration de processeur Intel. J'ai suivi les instructions officielles ici jusqu'à la commande bazel build --config=mkl --config=opt //tensorflow/tools/pip_package:build_pip_package
.
Malheureusement, la compilation est exécutée pendant un certain temps puis échoue. J'apprécierais toute aide à ce sujet.
Journal de sortie mis à jour (avec bazel --verbose_failures):
ERROR: /home/jok/build/tensorflow/tensorflow/BUILD:584:1: Executing genrule //tensorflow:tensorflow_python_api_gen failed (Exit 1): bash failed: error executing command
(cd /home/jok/.cache/bazel/_bazel_jok120/737f8d6dbadde71050b1e0783c31ea62/execroot/org_tensorflow && \
exec env - \
LD_LIBRARY_PATH=LD_LIBRARY_PATH:/usr/local/cuda-9.0/lib64/:/usr/local/cuda-9.0/extras/CUPTI/lib64 \
PATH=/home/jok/.conda/envs/tf_mkl/bin:/home/jok/bin:/opt/anaconda3/bin:/usr/local/bin:/bin:/usr/bin:/snap/bin:/home/jok/bin \
/bin/bash -c 'source external/bazel_tools/tools/genrule/genrule-setup.sh; bazel-out/Host/bin/tensorflow/create_tensorflow.python_api --root_init_template=tensorflow/api_template.__init__.py --apidir=bazel-out/Host/genfiles/tensorflow --apiname=tensorflow --apiversion=1 --package=tensorflow.python --output_package=tensorflow bazel-out/Host/genfiles/tensorflow/__init__.py bazel-out/Host/genfiles/tensorflow/app/__init__.py bazel-out/Host/genfiles/tensorflow/bitwise/__init__.py bazel-out/Host/genfiles/tensorflow/compat/__init__.py bazel-out/Host/genfiles/tensorflow/data/__init__.py bazel-out/Host/genfiles/tensorflow/debugging/__init__.py bazel-out/Host/genfiles/tensorflow/distributions/__init__.py bazel-out/Host/genfiles/tensorflow/dtypes/__init__.py bazel-out/Host/genfiles/tensorflow/errors/__init__.py bazel-out/Host/genfiles/tensorflow/feature_column/__init__.py bazel-out/Host/genfiles/tensorflow/gfile/__init__.py bazel-out/Host/genfiles/tensorflow/graph_util/__init__.py bazel-out/Host/genfiles/tensorflow/image/__init__.py bazel-out/Host/genfiles/tensorflow/io/__init__.py bazel-out/Host/genfiles/tensorflow/initializers/__init__.py bazel-out/Host/genfiles/tensorflow/keras/__init__.py bazel-out/Host/genfiles/tensorflow/keras/activations/__init__.py bazel-out/Host/genfiles/tensorflow/keras/applications/__init__.py bazel-out/Host/genfiles/tensorflow/keras/applications/densenet/__init__.py bazel-out/Host/genfiles/tensorflow/keras/applications/inception_resnet_v2/__init__.py bazel-out/Host/genfiles/tensorflow/keras/applications/inception_v3/__init__.py bazel-out/Host/genfiles/tensorflow/keras/applications/mobilenet/__init__.py bazel-out/Host/genfiles/tensorflow/keras/applications/mobilenet_v2/__init__.py bazel-out/Host/genfiles/tensorflow/keras/applications/nasnet/__init__.py bazel-out/Host/genfiles/tensorflow/keras/applications/resnet50/__init__.py bazel-out/Host/genfiles/tensorflow/keras/applications/vgg16/__init__.py bazel-out/Host/genfiles/tensorflow/keras/applications/vgg19/__init__.py bazel-out/Host/genfiles/tensorflow/keras/applications/xception/__init__.py bazel-out/Host/genfiles/tensorflow/keras/backend/__init__.py bazel-out/Host/genfiles/tensorflow/keras/callbacks/__init__.py bazel-out/Host/genfiles/tensorflow/keras/constraints/__init__.py bazel-out/Host/genfiles/tensorflow/keras/datasets/__init__.py bazel-out/Host/genfiles/tensorflow/keras/datasets/boston_housing/__init__.py bazel-out/Host/genfiles/tensorflow/keras/datasets/cifar10/__init__.py bazel-out/Host/genfiles/tensorflow/keras/datasets/cifar100/__init__.py bazel-out/Host/genfiles/tensorflow/keras/datasets/fashion_mnist/__init__.py bazel-out/Host/genfiles/tensorflow/keras/datasets/imdb/__init__.py bazel-out/Host/genfiles/tensorflow/keras/datasets/mnist/__init__.py bazel-out/Host/genfiles/tensorflow/keras/datasets/reuters/__init__.py bazel-out/Host/genfiles/tensorflow/keras/estimator/__init__.py bazel-out/Host/genfiles/tensorflow/keras/initializers/__init__.py bazel-out/Host/genfiles/tensorflow/keras/layers/__init__.py bazel-out/Host/genfiles/tensorflow/keras/losses/__init__.py bazel-out/Host/genfiles/tensorflow/keras/metrics/__init__.py bazel-out/Host/genfiles/tensorflow/keras/models/__init__.py bazel-out/Host/genfiles/tensorflow/keras/optimizers/__init__.py bazel-out/Host/genfiles/tensorflow/keras/preprocessing/__init__.py bazel-out/Host/genfiles/tensorflow/keras/preprocessing/image/__init__.py bazel-out/Host/genfiles/tensorflow/keras/preprocessing/sequence/__init__.py bazel-out/Host/genfiles/tensorflow/keras/preprocessing/text/__init__.py bazel-out/Host/genfiles/tensorflow/keras/regularizers/__init__.py bazel-out/Host/genfiles/tensorflow/keras/utils/__init__.py bazel-out/Host/genfiles/tensorflow/keras/wrappers/__init__.py bazel-out/Host/genfiles/tensorflow/keras/wrappers/scikit_learn/__init__.py bazel-out/Host/genfiles/tensorflow/layers/__init__.py bazel-out/Host/genfiles/tensorflow/linalg/__init__.py bazel-out/Host/genfiles/tensorflow/logging/__init__.py bazel-out/Host/genfiles/tensorflow/losses/__init__.py bazel-out/Host/genfiles/tensorflow/manip/__init__.py bazel-out/Host/genfiles/tensorflow/math/__init__.py bazel-out/Host/genfiles/tensorflow/metrics/__init__.py bazel-out/Host/genfiles/tensorflow/nn/__init__.py bazel-out/Host/genfiles/tensorflow/nn/rnn_cell/__init__.py bazel-out/Host/genfiles/tensorflow/profiler/__init__.py bazel-out/Host/genfiles/tensorflow/python_io/__init__.py bazel-out/Host/genfiles/tensorflow/quantization/__init__.py bazel-out/Host/genfiles/tensorflow/resource_loader/__init__.py bazel-out/Host/genfiles/tensorflow/strings/__init__.py bazel-out/Host/genfiles/tensorflow/saved_model/__init__.py bazel-out/Host/genfiles/tensorflow/saved_model/builder/__init__.py bazel-out/Host/genfiles/tensorflow/saved_model/constants/__init__.py bazel-out/Host/genfiles/tensorflow/saved_model/loader/__init__.py bazel-out/Host/genfiles/tensorflow/saved_model/main_op/__init__.py bazel-out/Host/genfiles/tensorflow/saved_model/signature_constants/__init__.py bazel-out/Host/genfiles/tensorflow/saved_model/signature_def_utils/__init__.py bazel-out/Host/genfiles/tensorflow/saved_model/tag_constants/__init__.py bazel-out/Host/genfiles/tensorflow/saved_model/utils/__init__.py bazel-out/Host/genfiles/tensorflow/sets/__init__.py bazel-out/Host/genfiles/tensorflow/sparse/__init__.py bazel-out/Host/genfiles/tensorflow/spectral/__init__.py bazel-out/Host/genfiles/tensorflow/summary/__init__.py bazel-out/Host/genfiles/tensorflow/sysconfig/__init__.py bazel-out/Host/genfiles/tensorflow/test/__init__.py bazel-out/Host/genfiles/tensorflow/train/__init__.py bazel-out/Host/genfiles/tensorflow/train/queue_runner/__init__.py bazel-out/Host/genfiles/tensorflow/user_ops/__init__.py')
Traceback (most recent call last):
File "/home/jok/.cache/bazel/_bazel_jok120/737f8d6dbadde71050b1e0783c31ea62/execroot/org_tensorflow/bazel-out/Host/bin/tensorflow/create_tensorflow.python_api.runfiles/org_tensorflow/tensorflow/python/tools/api/generator/create_python_api.py", line 27, in <module>
from tensorflow.python.tools.api.generator import doc_srcs
File "/home/jok/.cache/bazel/_bazel_jok120/737f8d6dbadde71050b1e0783c31ea62/execroot/org_tensorflow/bazel-out/Host/bin/tensorflow/create_tensorflow.python_api.runfiles/org_tensorflow/tensorflow/python/__init__.py", line 81, in <module>
from tensorflow.python import keras
File "/home/jok/.cache/bazel/_bazel_jok120/737f8d6dbadde71050b1e0783c31ea62/execroot/org_tensorflow/bazel-out/Host/bin/tensorflow/create_tensorflow.python_api.runfiles/org_tensorflow/tensorflow/python/keras/__init__.py", line 25, in <module>
from tensorflow.python.keras import applications
File "/home/jok/.cache/bazel/_bazel_jok120/737f8d6dbadde71050b1e0783c31ea62/execroot/org_tensorflow/bazel-out/Host/bin/tensorflow/create_tensorflow.python_api.runfiles/org_tensorflow/tensorflow/python/keras/applications/__init__.py", line 21, in <module>
import keras_applications
ModuleNotFoundError: No module named 'keras_applications'
Target //tensorflow/tools/pip_package:build_pip_package failed to build
INFO: Elapsed time: 695.098s, Critical Path: 152.03s
INFO: 7029 processes: 7029 local.
FAILED: Build did NOT complete successfully
Cela semble être un problème avec la génération Tensorflow 1.10. Je vous recommande de vérifier la branche r1.9 car elle se construit parfaitement bien. La liste des dépendances doit être mise à jour ou Tensorflow résoudra le problème. Si vous êtes déterminé à exécuter l’API r.1.10, exécutez ce qui suit dans le terminal:
pip install keras_applications==1.0.4 --no-deps
pip install keras_preprocessing==1.0.2 --no-deps
pip install h5py==2.8.0
Si vous êtes simplement intéressé par la version (git tag
vous présentera toutes les versions disponibles), exécutez git checkout v1.10.1
avant l'étape ./configure
. Ensuite, vous pouvez suivre les instructions officielles sans installer de dépendances supplémentaires.
Actuellement, une construction de branche maître me donnera l'erreur suivante dans le code Keras qui fonctionnait auparavant (après l'appel de model.fit_generator()
à partir de la version autonome de Keras):
`steps_per_Epoch=None` is only valid for a generator based on the `keras.utils.Sequence` class. Please specify `steps_per_Epoch` or use the `keras.utils.Sequence` class.
Les versions basées sur la version 1.10.1 de TensorFlow ne causent pas cette erreur.