[딥러닝]CUDA로 딥러닝 모델 빨리 학습하기

hugingstar·2022년 4월 14일
0
post-thumbnail
  • 상황 : 오늘도 파이참을 켜서 평화롭게 딥러닝 모델을 학습시키려는데, 아니이게 무슨일인가 cpu로 돌렸더니 너무 느리다.

  • gpu를 사용하면 텐서플로우(TF) 연산을 빠르게 할 수 있다고 하여 cuda를 깔아서 딥러닝에 gpu 사용하는 방법을 정리하기로 하였다.

  • 나의 TF 버전을 파이참 인터프리터 창에서 확인해봤더니 1.14 였다. 지금 버전이 몇인데 아직도 1.14 인가. 상관없다.

  • 테스트된 빌드 구성에서 GPU란에 호환되는 텐서플로우를 찾는다. 나는 1.14 버전을 사용하니까 CUDA는 10 cuDNN 7.4
    (호환버전 확인링크 : https://www.tensorflow.org/install/source_windows#tested_build_configurations)

  • 아래 nvidia 사이트에서 확인된 버전 CUDA를 설치(CUDA 링크: https://developer.nvidia.com/cuda-toolkit-archive)

  • cuDNN도 설치한다. 사이트 가입하라고 한다. 이메일 인증하면된다.

  • Window 10에서 개발하고 있으니 cuDNN Library for Window 10을 선택한다.

(cuDNN 링크 :https://developer.nvidia.com/rdp/cudnn-archive)

  • CUDA 설치하면, Program files/NVIDIA GPU Computing Toolkit/CUDA라는 폴더가 생긴다. 4개 파일을 v10.0이라는 폴더에 넣어준다.

  • tensorflow-gpu 는 호환버전 확인할 때 쓴 것과 같이 1.14버전을 설치한다.
    (참고로 tensorflow.contrib가 1.14에서 지원을 안해서 tensorflow-gpu를 1.15로 다시 깔았다..)

  • 주의!! CPU버전 tensorflow 1.14가 함께 깔려 있으니까 충돌이 나서 CPU로 계속 작동했던 문제가 있었다.(반드시 CPU 버전의 tensorflow는 지워준다.)

  • 아래 코드를 작성 프로그램에 넣어준다.

# gpu 사용
gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.4)
sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))

#cpu만 사용
os.environ["CUDA_VISIBLE_DEVICES"]="-1"
  • 아주 잘 돌아간다.

0개의 댓글