Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

592
Vistas
Su CPU admite instrucciones de que este binario de TensorFlow no se compiló para usar: AVX AVX2

Recientemente instalé tensorflow (versión de CPU de Windows) y recibí el siguiente mensaje:

tensorflow-1.4.0 instalado con éxito tensorflow-tensorboard-0.4.0rc2

Luego, cuando traté de correr

 import tensorflow as tf hello = tf.constant('Hello, TensorFlow!') sess = tf.Session() sess.run(hello) 'Hello, TensorFlow!' a = tf.constant(10) b = tf.constant(32) sess.run(a + b) 42 sess.close()

(que encontré a través de https://github.com/tensorflow/tensorflow )

Recibí el siguiente mensaje:

2017-11-02 01:56:21.698935: IC:\tf_jenkins\home\workspace\rel-win\M\windows\PY\36\tensorflow\core\platform\cpu_feature_guard.cc:137] Su CPU admite instrucciones que TensorFlow binario no se compiló para usar: AVX AVX2

Pero cuando corrí

 import tensorflow as tf hello = tf.constant('Hello, TensorFlow!') sess = tf.Session() print(sess.run(hello))

se ejecutó como debería y Hello, TensorFlow! , lo que indica que la instalación fue exitosa, pero hay algo más que está mal.

¿Sabes cuál es el problema y cómo solucionarlo?

over 4 years ago · Santiago Trujillo
9 Respuestas
Responde la pregunta

0

Intenta usar anaconda. Yo tenía el mismo error. Una única opción era construir tensorflow desde la fuente, lo que tomó mucho tiempo. Intenté usar conda y funcionó.

  1. Crea un nuevo entorno en anaconda.
  2. conda -c conda-forge tensorflow

Entonces, funcionó.

over 4 years ago · Santiago Trujillo Denunciar

0

Lo que funcionó para mí es esta biblioteca https://pypi.org/project/silence-tensorflow/

Instale esta biblioteca y haga lo que se indica en la página, ¡funciona de maravilla!

over 4 years ago · Santiago Trujillo Denunciar

0

La forma más fácil que encontré para solucionar esto es desinstalar todo y luego instalar una versión específica de tensorflow-gpu:

  1. desinstalar tensorflow:
 pip uninstall tensorflow
  1. desinstalar tensorflow-gpu: (asegúrese de ejecutar esto incluso si no está seguro de haberlo instalado)
 pip uninstall tensorflow-gpu
  1. Instale la versión específica de tensorflow-gpu:
 pip install tensorflow-gpu==2.0.0 pip install tensorflow_hub pip install tensorflow_datasets

Puede verificar si esto funcionó agregando el siguiente código en un archivo python:

 from __future__ import absolute_import, division, print_function, unicode_literals import numpy as np import tensorflow as tf import tensorflow_hub as hub import tensorflow_datasets as tfds print("Version: ", tf.__version__) print("Eager mode: ", tf.executing_eagerly()) print("Hub Version: ", hub.__version__) print("GPU is", "available" if tf.config.experimental.list_physical_devices("GPU") else "NOT AVAILABLE")

Ejecute el archivo y luego la salida debería ser algo como esto:

 Version: 2.0.0 Eager mode: True Hub Version: 0.7.0 GPU is available

Espero que esto ayude

over 4 years ago · Santiago Trujillo Denunciar

0

Para Windows (gracias al propietario f040225), vaya aquí: https://github.com/fo40225/tensorflow-windows-wheel para obtener la URL de su entorno según la combinación de "tf + python + cpu_instruction_extension". Luego use este cmd para instalar:

 pip install --ignore-installed --upgrade "URL"

Si encuentra el error "El archivo no es un archivo zip", descargue el .whl a su computadora local y use este cmd para instalar:

 pip install --ignore-installed --upgrade /path/target.whl
over 4 years ago · Santiago Trujillo Denunciar

0

Para Windows, puede consultar la optimización oficial de Intel MKL para ruedas TensorFlow que se compilan con AVX2. Esta solución acelera mi inferencia ~x3.

 conda install tensorflow-mkl
over 4 years ago · Santiago Trujillo Denunciar

0

Si usa la versión pip de TensorFlow, significa que ya está compilada y solo la está instalando. Básicamente, instala TensorFlow-GPU, pero cuando lo descarga del repositorio e intenta compilarlo, debe compilarlo con soporte para CPU AVX. Si lo ignora, recibirá una advertencia cada vez que ejecute en la CPU. También puedes echarles un vistazo.

Forma correcta de compilar Tensorflow con SSE4.2 y AVX

¿Qué es el soporte de AVX Cpu en tensorflow?

over 4 years ago · Santiago Trujillo Denunciar

0

Actualice el binario tensorflow para su CPU y sistema operativo usando este comando

 pip install --ignore-installed --upgrade "Download URL"

La URL de descarga del archivo whl se puede encontrar aquí

https://github.com/lakshayg/tensorflow-build

over 4 years ago · Santiago Trujillo Denunciar

0

Optimización de CPU con GPU

Hay ganancias de rendimiento que puede obtener al instalar TensorFlow desde la fuente, incluso si tiene una GPU y la usa para entrenamiento e inferencia. La razón es que algunas operaciones de TF solo tienen implementación de CPU y no pueden ejecutarse en su GPU.

Además, hay algunos consejos para mejorar el rendimiento que hacen un buen uso de su CPU. La guía de rendimiento de TensorFlow recomienda lo siguiente:

Colocar operaciones de canalización de entrada en la CPU puede mejorar significativamente el rendimiento. El uso de la CPU para la canalización de entrada libera a la GPU para que se centre en el entrenamiento.

Para obtener el mejor rendimiento, debe escribir su código para utilizar su CPU y GPU para trabajar en conjunto, y no volcarlo todo en su GPU si tiene uno. Tener sus archivos binarios de TensorFlow optimizados para su CPU podría generar horas de tiempo de ejecución ahorrado y debe hacerlo una vez.

over 4 years ago · Santiago Trujillo Denunciar

0

¿De qué se trata esta advertencia?

Las CPU modernas proporcionan muchas instrucciones de bajo nivel, además de la aritmética y la lógica habituales, conocidas como extensiones, por ejemplo, SSE2, SSE4, AVX, etc. De Wikipedia :

Advanced Vector Extensions ( AVX ) son extensiones de la arquitectura del conjunto de instrucciones x86 para microprocesadores de Intel y AMD propuestas por Intel en marzo de 2008 y admitidas por primera vez por Intel con el envío del procesador Sandy Bridge en el primer trimestre de 2011 y más tarde por AMD con el envío del procesador Bulldozer en el tercer trimestre de 2011. AVX ofrece nuevas funciones, nuevas instrucciones y un nuevo esquema de codificación.

En particular, AVX presenta operaciones fusionadas de multiplicación y acumulación (FMA), que aceleran el cálculo del álgebra lineal, a saber, producto punto, multiplicación matricial, convolución, etc. Casi todos los entrenamientos de aprendizaje automático involucran una gran cantidad de estas operaciones, por lo tanto, serán más rápido en una CPU compatible con AVX y FMA (hasta un 300 %). La advertencia indica que su CPU es compatible con AVX (¡hurra!).

Me gustaría enfatizar aquí: se trata solo de CPU .

¿Por qué no se usa entonces?

Debido a que la distribución predeterminada de tensorflow se crea sin extensiones de CPU , como SSE4.1, SSE4.2, AVX, AVX2, FMA, etc. Las compilaciones predeterminadas (las de pip install tensorflow ) están diseñadas para ser compatibles con tantas CPU como sea posible. Otro argumento es que, incluso con estas extensiones, la CPU es mucho más lenta que una GPU, y se espera que el entrenamiento de aprendizaje automático a mediana y gran escala se realice en una GPU.

¿Qué debes hacer?

Si tiene una GPU , no debería preocuparse por la compatibilidad con AVX, ya que las operaciones más costosas se enviarán en un dispositivo GPU (a menos que se establezca explícitamente que no lo haga). En este caso, simplemente puede ignorar esta advertencia haciendo

 # Just disables the warning, doesn't take advantage of AVX/FMA to run faster import os os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

... o configurando export TF_CPP_MIN_LOG_LEVEL=2 si está en Unix. Tensorflow funciona bien de todos modos, pero no verás estas molestas advertencias.


Si no tiene una GPU y desea utilizar la CPU tanto como sea posible, debe compilar tensorflow desde la fuente optimizada para su CPU con AVX, AVX2 y FMA habilitados si su CPU los admite. Se ha discutido en esta pregunta y también en este problema de GitHub . Tensorflow usa un sistema de construcción ad-hoc llamado bazel y construirlo no es tan trivial, pero ciertamente es factible. Después de esto, no solo desaparecerá la advertencia, sino que también debería mejorar el rendimiento de tensorflow.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda