配置tensor2tensor在GPU上面运行

1. tensor2tensor运行在GPU上面的简单总结

  • 首先测试tensorflow的简单程序能否运行在GPU上面,执行下面的代码
import tensorflow as tf
with tf.device('/device:GPU:0'):
     a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')
     b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b')
     c = tf.matmul(a, b)

sess = tf.Session()
sess.run(c)

2. 使用conda安装tensor2tensor

# 使用了conda环境
conda create --name PY368 python==3.6.8
conda activate PY368
conda install pip
pip install tf-nightly-gpu  # preview
pip install tensor2tensor[tensorflow_gpu]

# 查看cuda版本 # 查看cudnn版本
cat /usr/local/cuda/version.txt
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

# tensorflow目前不支持cuda10.1
conda search cuda
conda install cudatoolkit==10.0.130

# 监控GPU的使用率
watch -n1 nvidia-smi

# 需要修改公网服务器sshd_config配置文件
sudo echo "GatewayPorts yes" >> /etc/ssh/sshd_config
systemctl restart sshd  # 这个并不会导致已有的ssh连接断开

# 内网穿透,由于使用的是局域网内部的机器,需要内网穿透,来查看tensorboard的信息,在内网机器上执行
ssh -qTfNn -R '[::]:10036:localhost:6006' [email protected](公网ip)

注意事项

  • 目前tensorflow并不支持cuda10.1(20190919),具体请注意官网的声明
  • 可以使用conda安装cuda环境,这样可以做到cuda环境的隔离

你可能感兴趣的:(tensor2tensor,cuda,算法与数据结构)