C++-Compiler aus Visual Studio 2017 und NVidias CUDA?

C++-Compiler aus Visual Studio 2017 und NVidias CUDA?

Ich versuche, PyTorch so einzurichten, dass es mit der integrierten GTX 1050-GPU meines Laptops funktioniert. Anschließend habe ich versucht, CUDA einzurichten. Ich bin der Anleitung von gefolgtNvidia hier. Soweit ich das beurteilen kann, hatte ich damit keine Probleme. Ich kann nvcc -Vwie erwartet laufen und komme darunter:

Bildbeschreibung hier eingeben

Beim Versuch, die bereitgestellten Beispiellösungen auszuführen, um sicherzustellen, dass die Installation erfolgreich war, wurde nvcc displayQueuemir nvcc bandwidthlediglich die folgende Fehlermeldung angezeigt:

Bildbeschreibung hier eingeben

Im Anschluss daran habe ich versucht, die Community-Version von Visual Studio 2017 herunterzuladen, um einen C++-Compiler und „cl.exe“ zu erhalten. Dabei stellte sich jedoch heraus, dass die Installation in den Umgebungsvariablen keinen Pfad zu einem Compiler „cl.exe“ festgelegt hatte.

Der Versuch, eine „cl.exe“ in meinen Dateien zu finden, scheint ein weiteres Problem zu sein, da ich mehrere „cl.exe“ unter den folgenden Pfaden habe:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\Hostx86\x86
\...\bin\Hostx86\x64
\...\bin\Hostx64\x64
\...\bin\Hostx64\x86

Wenn ich einen dieser Pfade in meinen Umgebungsvariablen auf PATH setze und dann „nvcc displayQueue“ oder „nvcc bandwidth“ erneut ausführe, tritt nur der folgende Fehler auf:

Bildbeschreibung hier eingeben

Es hat sich etwas geändert, aber das System scheint nicht zu funktionieren. Für
jede Hilfe ist man dankbar.

Antwort1

Das Festlegen eines einzigen cl.exePfads hat keinen Effekt, da auch andere Tools erforderlich sind. Der offizielle Weg ist die Verwendung vonEntwickler-Eingabeaufforderungdas nur mit Visual Studio geliefert wird.

EntsprechendDas:

Suchen Sie nach dem Namen der Eingabeaufforderungsdatei, z. B. VsDevCmd.bat, oder wechseln Sie zum Ordner „Tools“, z. B. C:\Programme (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\Tools (der Pfad ändert sich je nach Ihrer Visual Studio-Version, Edition und dem Installationsort).

Öffnen Sie ein Eingabeaufforderungsfenster (CMD) und führen Sie diesen Befehl aus:

call "%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" x64 

Dadurch werden alle erforderlichen Pfade für Sie festgelegt. Der x64Parameter gilt nur für 64-Bit-Intel-CPUs. Ändern Sie diesen Parameter in x86für 32-Bit-Intel-CPUs. Oder armund arm64. Der Pfad kann sich je nach Ihrer Visual Studio-Version ändern. Schließen Sie dieses CMD-Fenster nicht. Sie können den Pfad (sofern er richtig festgelegt ist) auch mit dem Befehl überprüfen where cl.exe. Führen Sie nun die erforderlichen Befehle zum Kompilieren aus.

Notiz:Wenn Sie nur den C++-Compiler benötigen, versuchen Sie denVS-Build-ToolsUndWindows SDKnur.

Antwort2

Sie müssen zunächst Ihre GPU-Details mit der Methode im Fragenteil dort herausfinden, das ist die deviceQueryApp nachhttps://forums.developer.nvidia.com/t/what-is-the-compute-capability-of-a-geforce-gt-710/146956/4:

deviceQuery executableIn der Demo-Suite Ihrer CUDA-Installation sollte ein vorhanden sein . Unter Windows sollte es in sein C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vX.Y\extras\demo_suite, wobei XY Ihre CUDA-Version angibt, z. B. 10.2. deviceQuery gibt Ihnen die Computerarchitektur Ihres Geräts an:CUDA-Fähigkeit Haupt-/Nebenversion Nummer.

Schauen Sie sich jetzt anWie installiere ich PyTorch (mit aktiviertem CUDA für ein veraltetes CUDA cc 3.5 einer alten GPU) VON DER QUELLE mithilfe der Anaconda-Eingabeaufforderung unter Windows 10?und dort Punkt 3 bis 5 der Antwort. Der Kern ist im Grunde Punkt 3, die Tabelle mit den grünen Pfeilen darin. Schlagen Sie diese Tabelle im Original nachhttps://gist.github.com/ax3l/9489132und treffen Sie die Entscheidung auf die gleiche Weise wie unter Punkt 3.

Die Tabelle zeigt Ihnen, wie Sie den richtigen MSVC-Compiler für den richtigen CUDA-Compilertreiber für Ihren GPU SM Arch auswählen (z. B. CUDA cc [= Rechenleistung] 3.5, CUDA cc 8.0 oder was auch immer Ihre Karte bietet).

Wenn Sie PyTorch mit CUDA aus dem Quellcode installieren müssen, weil Ihre Karte möglicherweise nicht mehr vom offiziellen PyTorch-Installationsprogramm unterstützt wird (was ich zwischen den Zeilen Ihrer Frage gelesen habe), sollte die gesamte Antwort dort für die Antwort hier relevant sein.

verwandte Informationen