tensorflow использует gpu: 0, хотя большинство слоев назначены gpu: 1 - PullRequest
0 голосов
/ 06 мая 2020

Я хочу использовать несколько графических процессоров и в итоге реализовать параллелизм моделей для архитектуры unet. Я использую tf.device для назначения слоев разным графическим процессорам. Хотя я назначаю большинство слоев gpu:1, тензорный поток использует gpu:0, как показано ниже.

+-------------------------------+----------------------+----------------------+
|   0  GeForce GTX 108...  Off  | 00000000:83:00.0 Off |                  N/A |
| 29%   45C    P2    56W / 250W |   3501MiB / 11178MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   1  GeForce GTX 108...  Off  | 00000000:84:00.0 Off |                  N/A |
| 30%   45C    P2    57W / 250W |    499MiB / 11178MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

_

with tf.device('/device:gpu:0'):
  input = tf.keras.layers.Input((IMG_HEIGHT, IMG_WIDTH ,3))
  x = Conv2D(16, 3, padding='same', activation='relu')(input)
with tf.device('/device:gpu:1'):
  x = MaxPooling2D()(x)
  x = Conv2D(32, 3, padding='same', activation='relu')(x)
  x = MaxPooling2D()(x)
  x = Conv2D(64, 3, padding='same', activation='relu')(x)
  x = MaxPooling2D()(x)
  x = Flatten()(x)
  x = Dense(512, activation='relu')(x)
  output =Dense(1)(x)
  model = tf.keras.models.Model(inputs=input, outputs=output)

model.compile(optimizer='adam',
              loss=tf.keras.losses.BinaryCrossentropy(from_logits=True),
              metrics=['accuracy'])
history = model.fit_generator(
    train_data_gen,
    steps_per_epoch=total_train // batch_size,
    epochs=epochs,
    validation_data=val_data_gen,
    validation_steps=total_val // batch_size
)

Я использую эту небольшую сеть для тестирования устройства. размещение.

  1. Это потому, что вычисление градиентов и оптимизатор происходит в первом графическом процессоре?
  2. Если да, как я могу назначить его соответствующему графическому процессору. а если не в чем проблема.

Полный блокнот можно найти здесь Заранее спасибо.

...