37

I am running TensorFlow for the first time using some example code. I got the following warnings when running my code. Does anybody know why this happened, and how to fix it?

2017-03-31 02:12:59.346109: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE instructions, but these are available on your machine and could speed up CPU computations.
2017-03-31 02:12:59.346968: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE2 instructions, but these are available on your machine and could speed up CPU computations.
2017-03-31 02:12:59.346975: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow libbrary wasn't compiled to use SSE3 instructions, but these are available on your machine and could speed up CPU computations.
2017-03-31 02:12:59.346979: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
2017-03-31 02:12:59.346983: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
2017-03-31 02:12:59.346987: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.
2017-03-31 02:12:59.346991: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX2 instructions, but these are available on your machine and could speed up CPU computations.
2017-03-31 02:12:59.346995: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use FMA instructions, but these are available on your machine and could speed up CPU computations.
6
  • the w is short for warning...how are you running it...? Commented Mar 31, 2017 at 8:28
  • 10
    would it kill TF to distribute 2 different versions? (its just matter of a build settings for them, now I should install (and learn) 800% overhead to recompile from source). Commented Jun 4, 2017 at 15:52
  • 3
    I have compiled TF with those instructions. You can download the binaries from github.com/lakshayg/tensorflow-build Commented Jul 10, 2017 at 3:25
  • 1
    Possible duplicate of How to compile Tensorflow with SSE4.2 and AVX instructions? Commented Sep 3, 2017 at 0:00
  • This answer has useful related info: www.greatytc.com/questions/41293077/… Commented Oct 27, 2017 at 19:52

3 Answers 3

54

Those are warnings (as indicated by the W after the colon. Errors have an E there).

The warnings refer to the fact that your CPU supports SSE Instructions, which allow some fast in-hardware-parallel operations. Enabling these operations is a compile-time operation (i.e. to use SSE you need to build the library from the source enabling the specific SSE version you're targeting), in which case you might take a look at this question.

Note, however, that SSE support influences only the computation speed. Tensorflow will work with or without SSE, but it might take longer for your code to run. Note, also, that this influences only the CPU. If you're using the GPU build of Tensorflow, all the operations run on the GPU will not benefit of SSE instructions.

Sign up to request clarification or add additional context in comments.

1 Comment

Thanks! This really helps. I'll make sure to look into those links!
15

To hide those warnings, you could do this before your actual code.

import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
import tensorflow as tf

for detailed discussion, please refer here https://github.com/tensorflow/tensorflow/issues/7778

I hope, it can be a help for the other. :)

4 Comments

Sorry I am coming from an old question, but can you explain specifically what this does? Thanks! (I want to understand it before I upvote it)
basically it was setting up the environment variable on your system using python instead on manually set it. e.g. on cmd (if you're windows user) by doing this set TF_CPP_MIN_LOG_LEVEL=2 will do. The point is, if you wanted to hide the warning you could do that. **here's more detailed explanation about that env variable: ** TF_CPP_MIN_LOG_LEVEL is a TensorFlow environment variable responsible for the logs, to silence INFO logs set it to 1, to filter out WARNING 2 and to additionally silence ERROR logs (not recommended) set it to 3. Hope it can be a help for you :)
Thanks, that makes a lot more sense!
Wouldn't his silence all warnings though? That's quite some overkilling to hide just one warning int the output. Also, how does the environment variable relate to tf.logging.set_logging_level()? does the function override the variable or is it the other way around?
3

This isn't an error, just warnings saying if you build TensorFlow from the source it can be faster on your machine.

And just like the warnings say, you should only compile TF with these flags if you need to make TF faster.

You can use TF environment variable TF_CPP_MIN_LOG_LEVEL and it works as follows:

  • It defaults to 0, displaying all logs
  • To filter out INFO logs set it to 1
  • WARNINGS additionally, 2
  • and to additionally filter out ERROR logs set it to 3

So you can do the following to silence the warnings:

import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
import tensorflow as tf

For more detail discussion you see How to compile tensorflow using SSE4.1, SSE4.2, and AVX.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.