TensorFlow version 1.0.0-rc2 on Windows: “OpKernel (‘op: “BestSplits” device_type: “CPU”‘) for unknown op: BestSplits” with test code

I installed TensorFlow version 1.0.0-rc2 on Windows 7 SP1 x64 Ultimate (Python 3.5.2 |Anaconda custom (64-bit)) using:

pip install --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.0.0rc2-cp35-cp35m-win_amd64.whl

When I try running the test script from https://web.archive.org/web/20170214034751/https://www.tensorflow.org/get_started/os_setup#test_the_tensorflow_installation in Eclipse 4.5 or in the console:

import tensorflow as tf
print('TensorFlow version: {0}'.format(tf.__version__))
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))

I obtain some error message:

TensorFlow version: 1.0.0-rc2
'Hello, TensorFlow!'
E c:tf_jenkinshomeworkspacerelease-windevicecpuoswindowstensorflob
wcoreframeworkop_kernel.cc:943] OpKernel ('op: "BestSplits" device_type: "CPU"') for unknown op: BestSplits
E c:tf_jenkinshomeworkspacerelease-windevicecpuoswindowstensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "CountExtremelyRandomStats" device_type: "CPU"') for unknown op: CountExtremelyRandomStats
E c:tf_jenkinshomeworkspacerelease-windevicecpuoswindowstensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "FinishedNodes" device_type: "CPU"') for unknown op: FinishedNodes
E c:tf_jenkinshomeworkspacerelease-windevicecpuoswindowstensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "GrowTree" device_type: "CPU"') for unknown op: GrowTree
E c:tf_jenkinshomeworkspacerelease-windevicecpuoswindowstensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "ReinterpretStringToFloat" device_type: "CPU"') for unknown op: ReinterpretStringToFloat
E c:tf_jenkinshomeworkspacerelease-windevicecpuoswindowstensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "SampleInputs" device_type: "CPU"') for unknown op: SampleInputs
E c:tf_jenkinshomeworkspacerelease-windevicecpuoswindowstensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "ScatterAddNdim" device_type: "CPU"') for unknown op: ScatterAddNdim
E c:tf_jenkinshomeworkspacerelease-windevicecpuoswindowstensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "TopNInsert" device_type: "CPU"') for unknown op: TopNInsert
E c:tf_jenkinshomeworkspacerelease-windevicecpuoswindowstensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "TopNRemove" device_type: "CPU"') for unknown op: TopNRemove
E c:tf_jenkinshomeworkspacerelease-windevicecpuoswindowstensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "TreePredictions" device_type: "CPU"') for unknown op: TreePredictions
E c:tf_jenkinshomeworkspacerelease-windevicecpuoswindowstensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "UpdateFertileSlots" device_type: "CPU"') for unknown op: UpdateFertileSlots

Why?

I didn’t have such issues with TensorFlow 0.12.1 (installed with pip install tensorflow==0.12.1):

TensorFlow version: 0.12.1
b'Hello, TensorFlow!'

Answers:

Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.

Method 1

Installing today’s nightly build (CPU version):

pip install --upgrade http://ci.tensorflow.org/view/Nightly/job/nightly-win/85/DEVICE=cpu,OS=windows/artifact/cmake_build/tf_python/dist/tensorflow-1.0.0rc2-cp35-cp35m-win_amd64.whl

fixed the issue (no more “OpKernel ('op: ”BestSplits“ device_type: ”CPU“') for unknown op: BestSplits” etc.).

There are now some SSE warnings:

TensorFlow version: 1.0.0-rc2
b'Hello, TensorFlow!'
2017-02-15 19:56:22.688266: W c:tf_jenkinshomeworkspacenightly-windevicecpuoswindowstensorflowcoreplatformcpu_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-02-15 19:56:22.688266: W c:tf_jenkinshomeworkspacenightly-windevicecpuoswindowstensorflowcoreplatformcpu_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-02-15 19:56:22.689266: W c:tf_jenkinshomeworkspacenightly-windevicecpuoswindowstensorflowcoreplatformcpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE3 instructions, but these are available on your machine and could speed up CPU computations.
2017-02-15 19:56:22.689266: W c:tf_jenkinshomeworkspacenightly-windevicecpuoswindowstensorflowcoreplatformcpu_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-02-15 19:56:22.689266: W c:tf_jenkinshomeworkspacenightly-windevicecpuoswindowstensorflowcoreplatformcpu_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-02-15 19:56:22.689266: W c:tf_jenkinshomeworkspacenightly-windevicecpuoswindowstensorflowcoreplatformcpu_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.

in which case you can try How to compile Tensorflow with SSE4.2 and AVX instructions?


TensorFlow 1.0.0 was released a few days ago. However, it has the same issue. A more recent nightly build has different warnings:

sess = tf.Session()
2017-02-17 13:01:59.790943: W c:tf_jenkinshomeworkspacenightly-windevicecpuoswindowstensorflowcoreplatformcpu_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.

FYI: Tensorflow macOS binary, compiled with SSE4.1, SSE4.2 and AVX optimizations.


To hide the warnings/errors, you can use os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3', e.g.:

import tensorflow as tf
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3'
print('TensorFlow version: {0}'.format(tf.__version__))
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))

TF_CPP_MIN_LOG_LEVEL:

  • 0: all logs shown (that’s the default setting)
  • 1: filter out INFO logs
  • 2: additionally filter out WARNING logs
  • 3: additionally filter out ERROR logs.

Method 2

Refering to suggestions above, I think doing 2 steps is helpful:

1st, upgrade tensorflow:

pip install --upgrade tensorflow==1.1.0rc1

then, error logs changes into warn logs:

W c:tf_jenkinshomeworkspacerelease-windevicecpuoswindowstensorflowcoreplatformcpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE3 instructions, but these are available on your machine and could speed up CPU computations.

2nd, you may be able to suppress the warning filter at level 2.

os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

I think it works well without filtering ‘error’ logs.

Method 3

You may be able to suppress the warning filter at level 2. This worked for me with TensorFlow 1.0.1 in a virtualenv install.

os.environ[‘TF_CPP_MIN_LOG_LEVEL’] = ‘2’

Sry about the additional answer, but I’m not worthy of commenting.

Method 4

Seems the issue is fixed in the version 1.1.0rc0 and later.

Find the latest version of tensorflow:

pip search --version tensorflow

Upgrade tensorflow:

pip install --upgrade tensorflow==1.1.0rc1


All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x