记载下我再弄TensorFlow的GPU版本中遇到的些事情,是些在网上不容易查到的吧。总而言之,就是多看官方文档和源码。
编译TF时,尽量安装官方已经验证的cuda等组合
经过测试的构建配置这个网页的英文版更全面些。
TensorRT in TensorFlow (TF-TRT)和TensorRT不是一回事情。我之前就搞混淆了。TF-TRT只是提供了必要的绑定(binding,猜测是类似于映射的概念)和引入了TRTEngineOp算子(就是对TensorRT提供的子图的包装)Using TensorRT in TensorFlow (TF-TRT)
Accelerating Inference In TF-TRT User Guide 官方的文档,虽然一看就头大,信息密度比网上博文大多了,网上博文包括本文。
如果使用tar方式安装cudn,cudnn和tensorrt,可以通过export三个环境变量CUDA_TOOLKIT_PATH,CUDNN_INSTALL_PATH,TENSORRT_INSTALL_PATH指向三者的位置,而不是像平常那样将三者的include和lib整合在一起。在看tensorflow/configure.py at master · tensorflow/tensorflow里的代码是发现的
cuda_env_names = [
'TF_CUDA_VERSION',
'TF_CUBLAS_VERSION',
'TF_CUDNN_VERSION',
'TF_TENSORRT_VERSION',
'TF_NCCL_VERSION',
'TF_CUDA_PATHS',
# Items below are for backwards compatibility when not using
# TF_CUDA_PATHS.
'CUDA_TOOLKIT_PATH',
'CUDNN_INSTALL_PATH',
'NCCL_INSTALL_PATH',
'NCCL_HDR_PATH',
'TENSORRT_INSTALL_PATH'
]