tenorflow - неожиданное поведение per_process_gpu_memory_fraction - PullRequest
0 голосов
/ 10 сентября 2018

Я пытаюсь ограничить использование памяти графическим процессором ровно 10% памяти графического процессора, но, согласно nvidia-smi, приведенная ниже программа использует около 13% графического процессора.Это ожидаемое поведение?Если это ожидаемое поведение, из какого другого примерно 3-4% исходит?

from time import sleep

i = tf.constant(0)
x = tf.constant(10)
r = tf.add(i,x)

# Use at most 10% of gpu memory, I expect this to set a hard limit
gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=.1)

# sleep is used to see what nvidia-smi says for gpu memory usage, 
# I expect that it will be at most 10% of gpu memory (which is 1616.0 mib for my gpu)
# but instead I see the process using up to 2120 mib 
with tf.Session(config=tf.ConfigProto(gpu_options=gpu_options)) as sess:
        sess.run(r);
        sleep(10) 

См. Эту проблему в github для получения более подробной информации о моей среде и gpu: https://github.com/tensorflow/tensorflow/issues/22158

1 Ответ

0 голосов
/ 21 февраля 2019

Из моих экспериментов похоже, что инициализация контекста cudnn и cublas занимает около 228 Мб памяти. Также контекст cuda может занимать от 50 до 118 мегабайт.

...