我已经使用visual studio 2015从源代码中成功构建了windows 10的tensorflow + gpu。
因此,我得到tensorflow.dll
和tensorflow.lib
。
我有CUDA8.0
和cudnn 5.0
;配备了gtx 1080 gpu。
但是,我的问题不是建立和编译张量流。 它是关于创建张量流插件的。
我按照tutorial构建了我自己的"插件"。 然后我试着编译一个windows .dll;所以windows不会自动为我导出符号。 然后我先编译一个静态库并使用你的工具
/tensorflow/contrib/cmake/tools/create_def_file.py
为我创建一个.def
文件,并最终用它来编译.dll
。
然而,在我的python代码中,当我尝试
时correlation = tf.load_op_library(correlation.dll)
我打电话给
correlation.correlation()
使用REGISTER_OP("Correlation")
注册了相关性;
它仍然告诉我
AttributeError:module' 7b088d8b906b36d3e50721b0adbaaa6a'没有属性相关'
我认为这只是一个windows(或cl编译器)问题,也许REGISTER_OP(" Correlation")所做的事情并没有被编译器选中,
所以我有什么办法可以在Windows上实现这个目的吗?
答案 0 :(得分:0)
Windows不支持通过tf.load_op_library()加载自定义op库(至少使用TensorFlow 1.8)。 解决方法是将自定义op添加到TensorFlow库本身。 按照tensorflow \ tensorflow \ core \ user_ops \ fact.cc中实现的tf.user_ops.my_fact示例: