python – No puedo usar pytorch 11.1 con GPU, usando una NVIDIA 730 GT, que debo hacer

Use GPU-Z para obtener las especificaciones de mi GPU, y su controlador en este caso 491.92

introducir la descripción de la imagen aquí

Aparentemente tendria que estar todo bien, no?
introducir la descripción de la imagen aquí

Luego instale la GPU-accelerated library of primitives for DL, NVIDIA cuDNN en su version…
introducir la descripción de la imagen aquí

Esta version que es compatible (en teoria), para CUDA 11.0, 11.1 y 11.2
introducir la descripción de la imagen aquí

Se que se debe escoger el pytorch en funcion del CUDA que quieras instalar, pero en este caso se que usare el pytorch para la 11.1 osea que elegi esa version.

Tambien instale el CUDA Toolkit 11.1.0, que creo en mi caso es el que es consistente con el resto pero estoy en dudas. Aun asi aqui dejo el link de donde lo baje con el exe(local).

https://developer.nvidia.com/cuda-11.1.0-download-archive?target_os=Windows&target_arch=x86_64&target_version=10

introducir la descripción de la imagen aquí

Ahora instale el pytorch para la version 11.1 (que es la que queria) desde el gestor pip, simplemente poniendo el siguiente code copiado de la page:

pip install torch==1.8.1+cu111 torchvision==0.9.1+cu111 torchaudio===0.8.1 -f https://download.pytorch.org/whl/torch_stable.html

introducir la descripción de la imagen aquí

Estube probando pytorch en consola con la impresion de un tensor, y aparentemente funciona perfecto, pero claro hasta ahora con eso solo pruebo que funcione torch con la CPU, ya que no especifique el device.

>>> import torch
>>> x = torch.rand(5, 3)
>>> print(x)
tensor(((0.1242, 0.4253, 0.9530),
        (0.2290, 0.8633, 0.2871),
        (0.3668, 0.5047, 0.7253),
        (0.9148, 0.0506, 0.3024),
        (0.3645, 0.1265, 0.1900)))

Luego ejecute esto:

import torch
print(torch.cuda.is_available())

Y me devolvio True, a lo que entiendo que CUDA si funciona (pero no es asi)

Estuve viendo gente a la que le ocurrio algo similar, pero no me funcionan las soluciones que plantean(o porque estan desactualizadas las soluciones, o no se hacerlo bien). Ellos dicen que instale pytorch desde el codigo fuente o algo asi…

Aun asi creo que el problema es pytorch.
y el cuda cc, imagino que debe ser un compiler pero no lo se con seguridad, que dicen?

En el siguiente link, plantean una “guia de instalacion algo complicada para mi al menos”

introducir la descripción de la imagen aquí

https://github.com/pytorch/pytorch#from-source

Fui a ese repositorio de github y descargue el proyecto a mi pc.

Intente ejecutar ese setup.py con torch anterior eliminado y sin torch anterior eliminado, y tira…

(base) C:UsersMIPCDesktopMATIVtuber_HPpytorch-master>python setup.py
Building wheel torch-1.9.0a0+gitUnknown
usage: setup.py (global_opts) cmd1 (cmd1_opts) (cmd2 (cmd2_opts) ...)
   or: setup.py --help (cmd1 cmd2 ...)
   or: setup.py --help-commands
   or: setup.py cmd --help

error: no commands supplied

Realmente no entiendo para que es eso…

Lo que me sigue dejando en duda es eso del compilador que pide en C++
Y respecto al CUDA Toolkit 11.1 y el NVIDIA cudDNN (en version 11.1) en teoria los podria dejar asi… como mostre que les instale mas arriba, no?

introducir la descripción de la imagen aquí

introducir la descripción de la imagen aquí

De todos modos, al no poder usar con GPU, adapte mi proyecto a CPU modificando todo lo que diga to_gpu o to_device, y andubo con CPU usando los 3 en 11.1, pero como CPU (lento, muy lento, per andubo, osea que con eso ya descarto que sea mi proyecto)

Si lo ejecuto con GPU, usando el supuesto CUDA 11.1 instalado me tira estos errores, y ahi el problema:

(base) C:UsersMIPCDesktopMATIVtuber_HPVtuberProjectAssetsTrackingBackend>python main.py
starting up on 127.0.0.1 port 65432
Using cache found in C:UsersMIPC/.cachetorchhubintel-isl_MiDaS_master
Loading weights:  None
Using cache found in C:UsersMIPC/.cachetorchhubfacebookresearch_WSL-Images_master
Using cache found in C:UsersMIPC/.cachetorchhubintel-isl_MiDaS_master
waiting for a connection
connection from ('127.0.0.1', 13676)
Connection closed
Traceback (most recent call last):
  File "main.py", line 39, in <module>
    pose_data = pose_estimator.get_pose_data(img.copy())
  File "C:UsersMIPCDesktopMATIVtuber_HPVtuberProjectAssetsTrackingBackendutilspose_estimator.py", line 74, in get_pose_data
    heatmaps, pafs, scale, pad = self.infer_fast(img)
  File "C:UsersMIPCDesktopMATIVtuber_HPVtuberProjectAssetsTrackingBackendutilspose_estimator.py", line 49, in infer_fast
    stages_output = self.net(tensor_img)
  File "C:UsersMIPCanaconda3libsite-packagestorchnnmodulesmodule.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
  File "C:UsersMIPCDesktopMATIVtuber_HPVtuberProjectAssetsTrackingBackendemotion_modelswith_mobilenet.py", line 134, in forward
    backbone_features = self.model(x)
  File "C:UsersMIPCanaconda3libsite-packagestorchnnmodulesmodule.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
File "C:UsersMIPCanaconda3libsite-packagestorchnnmodulescontainer.py", line 119, in forward
    input = module(input)
  File "C:UsersMIPCanaconda3libsite-packagestorchnnmodulesmodule.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
  File "C:UsersMIPCanaconda3libsite-packagestorchnnmodulescontainer.py", line 119, in forward
    input = module(input)
  File "C:UsersMIPCanaconda3libsite-packagestorchnnmodulesmodule.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
  File "C:UsersMIPCanaconda3libsite-packagestorchnnmodulesconv.py", line 399, in forward
    return self._conv_forward(input, self.weight, self.bias)
  File "C:UsersMIPCanaconda3libsite-packagestorchnnmodulesconv.py", line 395, in _conv_forward
    return F.conv2d(input, weight, bias, self.stride,
RuntimeError: CUDA error: no kernel image is available for execution on the device
( WARN:1) global C:UsersappveyorAppDataLocalTemp1pip-req-build-kh7iq4w7opencvmodulesvideoiosrccap_msmf.cpp (434) `anonymous-namespace'::SourceReaderCB::~SourceReaderCB terminating async callback

Trate de describir d ela mejor manera que pude todo lo que hice haber si ustedes encuentran el error 🙁 , pero sigue sin funcionar…
Probe si la camara es correcta y opencv la detecta y da video streaming osea que un problema con la webcam esta descartado.

Aun asi sigue tirando esto…

RuntimeError: CUDA error: no kernel image is available for execution on the device
( WARN:1) global C:UsersappveyorAppDataLocalTemp1pip-req-build-kh7iq4w7opencvmodulesvideoiosrccap_msmf.cpp (434) `anonymous-namespace'::SourceReaderCB::~SourceReaderCB terminating async callback

Ya no se mas que hacer para hacer funcionar a pytorch en mi pc, espero realmente puedan ayudarme. Como veran trate de explicarme lo mejor posible, pero encerio que no se mas que hacerle.