我想知道是否有一种编程方式来找出安装的 tensorflow 版本是针对哪个 CUDA 和 CUDNN 版本构建的?例如,已编译的 Tensorflow 安装可以返回在构建时使用了哪个 CXX11_ABI_FLAG:
python -c "import tensorflow as tf; print(tf.CXX11_ABI_FLAG)"
->0
背景如下:我正在根据添加一个带有 tensorflow 二进制安装的操作来构建 Tensorflow OP 。这使用预编译的 TF 来检索所需的包含路径和编译标志,以确保 Tensorflow 和新 Op 兼容。但由于我们的系统有多个 CUDA 和 CUDNN 版本,我还需要向编译器提供所需版本的路径。例如,对于 Cuda 8.0,使用以下标志 -L /usr/local/cuda-8.0/lib64/
来指定其路径。但这也开辟了一条错误路径,因为现在可以使用不同的 CUDA/CUDNN 版本成功构建 Op,这会导致稍后在运行时出现错误。所以我想创建一个安全检查,以确保 CUDA/CUDNN 路径指向相同的版本,就像构建 Tensorflow 的版本一样。