【发布时间】:2017-03-21 09:26:09
【问题描述】:
Tensorflow 代码使用不同于 python 内置方法的文件 I/O 方法。 根据source code,它是有用的
“没有线程锁定的文件 I/O 包装器”
我不确定它在什么场合有用,什么时候不应该使用。
有什么想法吗?
谢谢
【问题讨论】:
标签: python multithreading tensorflow thread-safety
Tensorflow 代码使用不同于 python 内置方法的文件 I/O 方法。 根据source code,它是有用的
“没有线程锁定的文件 I/O 包装器”
我不确定它在什么场合有用,什么时候不应该使用。
有什么想法吗?
谢谢
【问题讨论】:
标签: python multithreading tensorflow thread-safety
这条评论:
没有线程锁定的文件 I/O 包装器
...是对 TensorFlow 的 tf.gfile 模块的一个特别无用的描述!
tf.gfile模块的主要作用是:
file 对象的 API,和
FileSystem API 的实现。C++ FileSystem API 支持多种文件系统实现,包括本地文件、Google 云存储(使用 gs:// 前缀)和 HDFS(使用 hdfs:// 前缀)。 TensorFlow 将这些导出为 tf.gfile,以便您可以使用这些实现来保存和加载检查点、编写 TensorBoard 日志和访问训练数据(以及其他用途)。但是,如果您的所有文件都是本地文件,则可以毫无问题地使用常规 Python 文件 API。
【讨论】:
tf.gfile获得任何计算优势吗?
gfile 是一个单独的 Python 包 s.t. 那就太好了。我们可以在不需要 Tensorflow 其余部分的地方使用它。
gfile 模块,因为它非常方便,但是添加整个 tensorflow 会使这些容器大量膨胀