0
ここでは、1つの変数を持つ単純なモデルを作成しようとしましたが、すべてのgpusで同じです。変数を初期化しようとしました。しかし、私はそれを適切に初期化することはできませんでした。テンソルフロー変数が正しく初期化されなかった
import tensorflow as tf
def test_model(num):
mu = 1.0
sigma = 0.1
with tf.variable_scope("same_on_all_gpu", reuse=True):
var1 = tf.Variable(tf.truncated_normal(shape=(1,1), mean = mu, stddev = sigma))
return tf.add(var1, num)
with tf.device("/gpu:" + str(0)):
with tf.name_scope('%s_%d' % ("tower_gpu", 0)) as scope:
ret0 = test_model([[0]])
with tf.device("/gpu:" + str(1)):
with tf.name_scope('%s_%d' % ("tower_gpu", 1)) as scope:
ret1 = test_model([[1]])
with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
r0, r1 = sess.run([ret0,ret1],{})
print("r0 " + str(r0))
print("r1 " + str(r1))
が、私はこの出力を得た:
r0 [[ 0.]]
r1 [[ 0.]]