Table of Contents

728x90

torch와 cuda 버전이 안맞아서 나는 에러

일단 torch사이트로 이동 https://pytorch.org/get-started/locally/

 

Start Locally

Start Locally

pytorch.org

 

아래서 내 환경에 맞게 클릭하면 Run this Command가 뜬다.

 

 

1번 시도책: 성공? 실패!: cudatoolkit=12.2 는 없어서 설치가 안된 상태에서 pip install torch하면 gpu읽어올 수 있으나 conda환경에 맞게 셋팅하기 위해 condatoolkit을 이용하기 위해 다시 설치시도. 

conda deactivate
conda remove --name myenv --all
conda create -n myenv python=3.8
conda activate myenv
conda install pytorch torchvision torchaudio cudatoolkit=12.2 -c pytorch -c nvidia

Conda 환경에서 pip install을 사용하는 것은 가능하고 때때로 필요한 경우도 있습니다. 그러나 몇 가지 중요한 사항을 고려해야 합니다:

Conda와 Pip 함께 사용시 주의 사항

  1. 환경 충돌 방지: Conda와 pip을 함께 사용할 때는 패키지 버전 충돌이나 종속성 문제가 발생할 수 있습니다. Conda는 시스템 환경과 더 밀접하게 통합되어 패키지 관리를 합니다. pip은 Python 패키지만을 다루기 때문에, Conda 패키지와 잘 맞지 않을 수 있습니다. 가능한 한, 필요한 패키지를 Conda를 통해 설치하고, Conda를 통해 설치할 수 없는 경우에만 pip을 사용하는 것이 좋습니다.
  2. Conda 먼저, Pip 나중에: 패키지를 설치할 때는 Conda를 먼저 사용하여 대부분의 패키지를 설치하고, 그 다음에 pip을 사용하는 것이 일반적인 권장 사항입니다. 이 순서는 Conda가 패키지 간 종속성을 더 잘 관리할 수 있게 도와줍니다.
  3. 환경 파일: Conda 환경에서 pip을 사용할 경우, 환경을 다른 시스템으로 재현하려면 conda env export를 사용할 때 pip을 통해 설치된 패키지도 포함되도록 해야 합니다. 이렇게 하면 나중에 환경을 다시 생성할 때 pip을 통해 설치된 모든 패키지도 포함할 수 있습니다.

pip 사용 예

만약 Conda로 설치할 수 없는 특정 Python 패키지가 필요하다면, 다음과 같이 pip을 사용할 수 있습니다:

bash
코드 복사
conda activate myenv # 활성화할 Conda 환경 pip install somepackage # pip을 사용하여 패키지 설치

이 방법으로 Conda 환경 내에서 pip을 사용하면, 설치된 패키지들은 해당 Conda 환경에 국한되어 다른 환경에는 영향을 주지 않습니다.

결론

Conda 환경에서 pip을 사용할 수는 있지만, 패키지 관리의 복잡성을 증가시킬 수 있으므로 주의가 필요합니다. 가능한 한 Conda로 패키지를 관리하고, 필요한 경우에만 pip을 사용하세요. Conda와 pip의 조합을 사용할 때는 패키지 종속성과 환경 설정을 잘 관리해야 합니다.

 

2번 시도책: 실패: cuda 최신 버젼 확인하고 conda 명령어로 설치

conda search cudatoolkit --channel conda-forge
conda install pytorch torchvision torchaudio cudatoolkit=11.8 -c pytorch -c conda-forge
import torch
print(torch.cuda.is_available())  # True가 출력되어야 GPU를 사용할 수 있습니다.
print(torch.cuda.device_count())  # 사용 가능한 GPU의 수를 출력합니다.
print(torch.__version__)  # PyTorch 버전을 출력합니다.
print(torch.version.cuda)  # PyTorch가 사용하는 CUDA 버전을 출력합니다.

False 0 2.4.0 None

 

3번 시도책: 성공: 가상환경을 버리고 base conda환경에서 실행