Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
223 views
in Technique[技术] by (71.8m points)

python - 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:f_jenkinshomeworkspace
elease-windevicecpuoswindowsensorflob
wcoreframeworkop_kernel.cc:943] OpKernel ('op: "BestSplits" device_type: "CPU"') for unknown op: BestSplits
E c:f_jenkinshomeworkspace
elease-windevicecpuoswindowsensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "CountExtremelyRandomStats" device_type: "CPU"') for unknown op: CountExtremelyRandomStats
E c:f_jenkinshomeworkspace
elease-windevicecpuoswindowsensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "FinishedNodes" device_type: "CPU"') for unknown op: FinishedNodes
E c:f_jenkinshomeworkspace
elease-windevicecpuoswindowsensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "GrowTree" device_type: "CPU"') for unknown op: GrowTree
E c:f_jenkinshomeworkspace
elease-windevicecpuoswindowsensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "ReinterpretStringToFloat" device_type: "CPU"') for unknown op: ReinterpretStringToFloat
E c:f_jenkinshomeworkspace
elease-windevicecpuoswindowsensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "SampleInputs" device_type: "CPU"') for unknown op: SampleInputs
E c:f_jenkinshomeworkspace
elease-windevicecpuoswindowsensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "ScatterAddNdim" device_type: "CPU"') for unknown op: ScatterAddNdim
E c:f_jenkinshomeworkspace
elease-windevicecpuoswindowsensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "TopNInsert" device_type: "CPU"') for unknown op: TopNInsert
E c:f_jenkinshomeworkspace
elease-windevicecpuoswindowsensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "TopNRemove" device_type: "CPU"') for unknown op: TopNRemove
E c:f_jenkinshomeworkspace
elease-windevicecpuoswindowsensorflowcoreframeworkop_kernel.cc:943] OpKernel ('op: "TreePredictions" device_type: "CPU"') for unknown op: TreePredictions
E c:f_jenkinshomeworkspace
elease-windevicecpuoswindowsensorflowcoreframeworkop_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!'
Question&Answers:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

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:f_jenkinshomeworkspace
ightly-windevicecpuoswindowsensorflowcoreplatformcpu_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:f_jenkinshomeworkspace
ightly-windevicecpuoswindowsensorflowcoreplatformcpu_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:f_jenkinshomeworkspace
ightly-windevicecpuoswindowsensorflowcoreplatformcpu_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:f_jenkinshomeworkspace
ightly-windevicecpuoswindowsensorflowcoreplatformcpu_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:f_jenkinshomeworkspace
ightly-windevicecpuoswindowsensorflowcoreplatformcpu_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:f_jenkinshomeworkspace
ightly-windevicecpuoswindowsensorflowcoreplatformcpu_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:f_jenkinshomeworkspace
ightly-windevicecpuoswindowsensorflowcoreplatformcpu_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.

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...