tensorflow不使用GPU-质数程序

时间:2018-07-13 05:50:13

标签: python-3.x tensorflow gpu

我已经在笔记本电脑(GTX 1060-6GB)中安装了tensorflow-gpu,并且正在使用tensorflow开发素数生成器程序。以下是我用来计算素数的示例代码:

def prime_tf_graf(max_count):
    # matrix version
    with tf.device('/gpu:0'):
        data = tf.range(2, max_count, dtype=tf.int32)
        Y, X = tf.meshgrid(data, data); Z = X%Y
    with tf.device('/cpu:0'):
        loer = tf.matrix_band_part(Z, -1, 0) - tf.matrix_band_part(Z,  0, 0)
    with tf.device('/gpu:0'):
        loer = tf.cast(tf.not_equal(loer, 0), tf.int32)
        sumr = tf.reduce_sum(loer, axis=1)
        nums = data - 2
        rato = tf.cast(sumr/nums, tf.int32)
        indx =  tf.cast(tf.not_equal(rato, 0), tf.int32)
    return tf.reshape(tf.where(indx), [-1]) + 2

def prime_tf(max_count):
    graf = prime_tf_graf(max_count)
    sess = tf.Session(config=tf.ConfigProto(allow_soft_placement=True))
    prim = sess.run(graf)
    return prim

当我运行此代码时,我的CPU和RAM仅被使用,而我的GPU不在其中。 (仅分配专用内存)。测试运行:prime_tf(tf.constant(20000))

这是我的系统用法: System usage while running tf

这表明tensorflow仅使用我的CPU和RAM而不使用GPU。

0 个答案:

没有答案