tensorflow对GPU的使用

  1. 怎样指定是否使用GPU。我试了一下,当NVIDIA的驱动装好后,tf.device(‘/cpu:0’):语句并不能保证是使用CPU,可能是用了GPU。 另外还可以通过os.environ[“CUDA_DEVICE_ORDER”] = "PCI_BUS_ID"选择GPU;通过configX.gpu_options.allow_growth=True选择使用GPU。请问,有没有什么资料系统介绍TensorFlow使用GPU的、为什么某些时候选择CPU/GPU无效?
    2. 怎样提高GPU的使用率。我试了一下,如果以训练的方式计算fft(Issues · tensorflow/tensorflow · GitHub opt.minimize),GPU利用率会比较高;但如果直接xx = sess.run(fft_out, feed_dict={data_in:x})的方式,则GPU利用率比较低。请问,有什么套路,提高GPU利用率吗
    3. 训练的一般流程,我还是不太明白。如果要训练,则把y-y’的值最小化,算出W即可。但上面的( tf.signal.fft2d speed is slow and unstable in RTX2080Ti · Issue #32218 · tensorflow/tensorflow · GitHub )计算fft时,居然用到了训练,我没看懂。为什么不直接用xx = sess.run(fft_out, feed_dict={data_in:x})的方式呢?
  1. 参考 https://tf.wiki/zh_hans/basic/tools.html#tf-config-gpu 。如果你完全不希望使用GPU,可以设置
tf.config.set_visible_devices(devices=[], device_type='GPU')
  1. 这个和你写的具体代码有关。你可以参考 https://mp.weixin.qq.com/s?__biz=MzU1OTMyNDcxMQ==&mid=2247487801&idx=1&sn=acc74835c7cb8b4d15614dc7f758209e&chksm=fc185a71cb6fd367c580e24f408e6bbfaec4848393f490eb4a6769100b5a8058e653d22ed8da&scene=178&cur_album_id=1338132220393111552#rd 优化你的代码来提高性能,尤其是注意数据预处理所用的时间。一般来说sess.run的方法是手工设计训练流程,对你手工设计的能力要求比较高。
  2. 可能和fft的原理有关,我对fft不是很熟悉,这个你可能要问相关专业人士。