GOOGLE ADS

Dienstag, 26. April 2022

RuntimeError: Es wurde versucht, den Speicher eines Tensors auf dem Gerät „cuda:0“ auf einen Speicher auf einem anderen Gerät „cpu“ festzulegen

Zuvor habe ich das folgende Projekt konfiguriert

https://github.com/zllrunning/face-makeup.PyTorch

Verwendung von Pytorch mit CUDA=10.2, jetzt ist Pytorch mit CUDA=10.2-Unterstützung für Windows nicht verfügbar. Wenn ich also dasselbe Projekt mit Pytorch mit CUDA=11.3 konfiguriere, erhalte ich die folgende Fehlermeldung:

RuntimeError: Attempted to set the storage of a tensor on device "cuda:0" to a storage on different device "cpu". This is no longer allowed; the devices must match.

Bitte helfen Sie mir bei der Lösung dieses Problems.


Lösung des Problems

Ich habe das gelöst, indem ich map_location=lambda storage, loc: storage.cuda()die model_zoo.load_urlMethode hinzugefügt habe. Ich denke, in Torch 1.12 haben sie den Standardspeicherort von GPU auf CPU geändert (was keinen Sinn ergibt).

Keine Kommentare:

Kommentar veröffentlichen

Warum werden SCHED_FIFO-Threads derselben physischen CPU zugewiesen, obwohl CPUs im Leerlauf verfügbar sind?

Lösung des Problems Wenn ich das richtig verstehe, versuchen Sie, SCHED_FIFO mit aktiviertem Hyperthreading ("HT") zu verwenden, ...