如需帮助和支持,请访问Stack Overflow:
https://stackoverflow.com/questions/tagged/tensorflow的最大值
如果您打开GitHub问题,我们的政策如下:
1.它必须是一个错误,一个功能请求,或一个重大的问题,与文件(为小文件修复,请发送PR代替)。
1.必须填写下表。
1.这应该不是TensorBoard的问题。这些都是here。
以下是我们制定该政策的原因:TensorFlow开发人员会对问题做出响应。我们希望专注于对整个社区有益的工作,例如修复bug和添加功能。支持只对个人有帮助。当问题提交时,GitHub还会通知成千上万的人。我们希望他们看到你在交流有趣的问题,而不是被重定向到Stack Overflow。
系统信息
*我是否编写了自定义代码(而不是使用TensorFlow中提供的常用示例脚本):没有
*操作系统平台和分发(例如Linux Ubuntu 16.04):Ubuntu 16.04版
*移动的设备(例如iPhone 8、Pixel 2、Samsung Galaxy)(如果问题发生在移动设备上):不适用
*TensorFlow安装自(源代码或二进制):来源
*TensorFlow版本(使用下面的命令):主机@3e137b2
*Python版本:2.7
*Bazel版本(如果从源代码编译):0.16.1
*GCC/编译器版本(如果从源代码编译):第5.4.0节20160609
*CUDA/cuDNN版本:9.0/7.1
*GPU型号和内存:1080ti/11 gb双端口
*要重现的确切命令:
import tensorflow as tf
from tensorflow.contrib import tensorrt as trt
import numpy as np
from keras import backend as K
cfg = K.tf.ConfigProto()
cfg.gpu_options.allow_growth = True
K.set_session(K.tf.Session(config=cfg))
def load_graph(frozen_graph_filename):
# We load the protobuf file from the disk and parse it to retrieve the
# unserialized graph_def
with tf.gfile.GFile(frozen_graph_filename, "rb") as f:
graph_def = tf.GraphDef()
graph_def.ParseFromString(f.read())
# Then, we can use again a convenient built-in function to import a graph_def into the
# current default Graph
with tf.Graph().as_default() as graph:
tf.import_graph_def(
graph_def,
name='', #DEBUG
)
return graph
fid = "model.pb"
output_nodenames = 'output1,output2,output3'
output_node = list(output_nodenames.split(","))
g = load_graph(fid)
with tf.Session(graph=g) as sess:
nodes = [n.name for n in tf.get_default_graph().as_graph_def().node]
with open("original_graph.txt", "w") as fid:
for item in nodes:
fid.write("%s\n" % item)
writer = tf.summary.FileWriter("logs_viz_orig", tf.get_default_graph().as_graph_def())
trt_graph = trt.create_inference_graph(
input_graph_def=tf.get_default_graph().as_graph_def(),
outputs=output_node,
max_batch_size=1,
max_workspace_size_bytes=1 << 25,
precision_mode="FP32", # TRT Engine precision "FP32","FP16" or "INT8"
minimum_segment_size=2 # minimum number of nodes in an engine
)
f = open("trt.pb", 'w')
f.write(trt_graph.SerializeToString())
f.close()
原始图形总共约1100个操作,而trt图形约为900个,即使原始模型约为60 mb,但导出的trt图形约为120 mb。
您可以使用我们的环境捕获脚本来收集其中的一些信息:
https://github.com/tensorflow/tensorflow/tree/master/tools/tf_env_collect.sh
您可以通过以下方式获取TensorFlow版本
python -c“导入tensorflow 作为tf;打印(tf.GIT_VERSION,tf.版本)”
描述问题
请在此处清楚地描述问题。确保在此处说明为什么这是TensorFlow中的一个bug或一个功能请求。
源代码/日志
包括有助于诊断问题的任何日志或源代码。如果包括追溯,请包括完整的追溯。应附加大型日志和文件。请尝试提供可重现的测试用例,该测试用例是生成问题所必需的最低限度。
2条答案
按热度按时间uz75evzq1#
你到底有什么问题?
mnemlml82#
使用TF-TRT会使protobuf文件的大小加倍。这种优化是针对推理时的移动的设备的,因此这可能是一个问题。