如何让TensorFlow XLA知道CUDA路径

ubby3x7f  于 2023-04-21  发布在  其他
关注(0)|答案(3)|浏览(194)

我通过命令pip install tf-nightly-gpu --prefix=/tf/install/path安装了TensorFlow夜间构建版本
当我尝试运行任何XLA示例时,TensorFlow出现错误“无法找到libdevice目录。使用'.'无法将ptx编译为cubin。将尝试让GPU驱动程序编译ptx。未找到:/usr/local/cuda-10.0/bin/ptxas not found”.
显然TensorFlow找不到我的CUDA路径。在我的系统中,CUDA安装在/cm/shared/apps/cuda/toolkit/10.0.130中。由于我没有从源代码构建TensorFlow,默认情况下XLA搜索文件夹/user/local/cuda-*。但由于我没有这个文件夹,它会发出错误。
目前我的解决方法是创建一个符号链接。我检查了tensorflow/compiler/xla/service/gpu/nvptx_compiler.cc中的TensorFlow源代码。文件中有一条注解“// CUDA location explicitly specified by user via --xla_gpu_cuda_data_dir has highest priority”。那么如何将值传递给这个标志呢?我尝试了以下两个环境变量,但都不起作用:

export XLA_FLAGS="--xla_gpu_cuda_data_dir=/cm/shared/apps/cuda10.0/toolkit/10.0.130/"
export TF_XLA_FLAGS="--xla_gpu_cuda_data_dir=/cm/shared/apps/cuda10.0/toolkit/10.0.130/"

那么如何使用标志“--xla_gpu_cuda_data_dir”呢?谢谢。

dtcbnfnu

dtcbnfnu1#

你可以在终端中运行export XLA_FLAGS=--xla_gpu_cuda_data_dir=/path/to/cuda

nr9pn0ug

nr9pn0ug2#

有一个代码更改此问题,但不清楚如何使用.检查这里https://github.com/tensorflow/tensorflow/issues/23783

bfhwhh0e

bfhwhh0e3#

这对我很有效。

tensorflow                2.11.0          gpu_py310hf8ff8df_0  
ii  nvidia-dkms-525                 525.105.17-0ubuntu0.22.04.1             amd64        NVIDIA DKMS package
ii  nvidia-driver-525               525.105.17-0ubuntu0.22.04.1             amd64        NVIDIA driver metapackage
nvidia-cuda-toolkit not installed

nVidia T4@GCE Ubu 22.04LTS最小值

conda install -c nvidia cuda-nvcc

ln -s /path/to/conda-env/lib/libdevice.10.bc .

我无法使XLA_FLAGS工作

2023-04-21 09:17:00.947644: F tensorflow/compiler/xla/parse_flags_from_env.cc:226] Unknown flags in XLA_FLAGS: -–xla_gpu_cuda_data_dir=/home/rac/fulltf2/fullcuda.env/lib 
 Perhaps you meant to specify these on the TF_XLA_FLAGS envvar?
Aborted (core dumped)

相关问题