许多机器学习算法依赖于矩阵乘法(或者至少可以使用矩阵乘法来实现),为了测试我的GPU,我计划创建矩阵a,b,将它们相乘并记录计算完成所需的时间。
以下是生成两个维度为300000,20000的矩阵并将它们相乘的代码:
import tensorflow as tf
import numpy as np
init = tf.global_variables_initializer()
sess = tf.Session()
sess.run(init)
#a = np.array([[1, 2, 3], [4, 5, 6]])
#b = np.array([1, 2, 3])
a = np.random.rand(300000,20000)
b = np.random.rand(300000,20000)
println("Init complete");
result = tf.mul(a , b)
v = sess.run(result)
print(v)
这个测试是否足够来比较GPU的性能?还应该考虑哪些因素呢?
os.environ["CUDA_VISIBLE_DEVICES"]="1"
这一行注释掉,GPU 才能被发现。该方法适用于 Windows 10、tensorflow-gpu (1.4)、cuda_8.0.61_win10 和 cudnn-8.0-windows10-x64-v6.0。 - BSalitacuda_8.0.61_win10
已从 https://developer.nvidia.com/cuda-toolkit-archive 下载。cudnn-8.0-windows10-x64-v6.0
已从 https://developer.nvidia.com/rdp/cudnn-download 下载。 - BSalita