Pytorch Show Quelle von CUDA -Warnungen für Deallocation und Tensor ReleasePython

Python-Programme
Anonymous
 Pytorch Show Quelle von CUDA -Warnungen für Deallocation und Tensor Release

Post by Anonymous »

Ich betreibe einige parallele Arbeiter mit Pytorch, CUDA und Torch.multiprocessing (Torch.MP), wobei die Informationen gegebenenfalls mit Taps.MP -Warteschlangen, Pipes und Shared_Memory weitergegeben werden. Alles scheint zu funktionieren, aber ich bekomme gelegentlich eine Deallocation -Warnung von CUDA. Während des Programms zum Ausstieg wird auch eine "Prozessabschluss vor Tensoren veröffentlicht" auch angezeigt: < /p>

Code: Select all

[W CudaIPCTypes.cpp:92] Producer process tried to deallocate over 1000 memory blocks
referred by consumer processes. Deallocation might be significantly slowed down. We
assume it will never going to be the case, but if it is, please file but to
https://github.com/pytorch/pytorch

[W CudaIPCTypes.cpp:15] Producer process has been terminated before all shared CUDA
tensors released. See Note [Sharing CUDA tensors]
< /code>
Ich habe Schritte unternommen, um jedem Prozess die Möglichkeit zu geben, anmutig zu schließen, aber die Warnung bleibt bestehen. Ich habe in der Dokumentation gelesen, dass bei der Verwendung von CUDA die durch Warteschlangen bereitgestellten Informationen im Produzentenprozess vorhanden bleiben müssen, bis es nicht mehr auf dem Verbraucher vorhanden ist. Da Daten hin und her [url=viewtopic.php?t=23808]übergeben[/url] werden, kann jeder Prozess sowohl als Produzent als auch als Verbraucher angesehen werden. Muss ich alles aufspüren, was geteilt werden würde, und die Verbraucherkopien während des Exit -Verfahrens manuell löschen? Gibt es eine Möglichkeit, die Warnungen klarer auf das zu zeigen, was das Problem verursacht?import traceback
import warnings
import sys

def warn_with_traceback(message, category, filename, lineno, file=None, line=None):

log = file if hasattr(file,'write') else sys.stderr
traceback.print_stack(file=log)
log.write(warnings.formatwarning(message, category, filename, lineno, line))

warnings.showwarning = warn_with_traceback

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post