Tensorflow em GPUs compartilhadas: como selecionar automaticamente a que não está sendo usada
Eu tenho acesso através do ssh a um cluster de n GPUs. O fluxo de tensão automaticamente deu a eles nomes gpu: 0, ..., gpu: (n-1).
Outros também têm acesso e, às vezes, usam gpus aleatórios. Não coloquei nenhumtf.device()
explicitamente porque isso é complicado e mesmo que eu tenha selecionado o número gpu j e que alguém já esteja no número gpu j, isso seria problemático.
Eu gostaria de passar pelo uso do gpus e encontrar o primeiro que não é usado e usar apenas este. Eu acho que alguém poderia analisar a saída denvidia-smi
com bash e obtenha uma variável ie alimente essa variável i para o script tensorflow como o número da GPU a ser usada.
Eu nunca vi nenhum exemplo disso. Eu imagino que é um problema bastante comum. Qual seria a maneira mais simples de fazer isso? Existe um fluxo tensor puro disponível?