koos808

[동작 확인]Windows10 RTX 3090 3080 Cuda, Cudnn, Tensorflow 데스크탑 Setting 본문

Deep Learning/Setting

[동작 확인]Windows10 RTX 3090 3080 Cuda, Cudnn, Tensorflow 데스크탑 Setting

koos808 2020. 11. 6. 00:16
728x90
반응형

연구실 컴퓨터 그래픽카드를 RTX 2080 TI에서 RTX 3090으로 바꿔서 CUDA와 CUDNN 등 여러 호환성 문제 때문에 몇일을 고생했습니다.

 

몇일 고생한 뒤에 나온 tf-nightly dev버전으로 설치하니까 잘 되더라구요..

여러 시도들 끝에 학습이 늦게 시작하는 경우와 빌드가 안되는 문제가 일어나지 않은 세팅에 대해서 공유하겠습니다.

 

RTX 3090 setting

  • OS : Windows10
  • VGA : RTX 3090
  • VGA Driver : 456.43
  • Cuda 설치 :   (cuda 11.0 업데이트된 최신버전)
  • Cudnn 설치 : cudnn-11.0-windows-x64-v8.0.3.33(cudnn)
  • Anaconda 설치
  • 가상환경 생성 : conda create -n env_name python=3.8 -> conda activate env_name
  • tensorflow-gpu 설치 : pip install tf-nightly-gpu==2.5.0.dev20201102
    • => 최신 수정 : pip install tf-nightly==2.5.0.dev20201212 
  • 각종 패키지 설치 : conda install pytorch torchvision torchaudio cudatoolkit=11.0 -c pytorch

# 저는 현재 서버말고 데스크탑에서는 위와 같은 세팅으로 실험을 돌리고 있습니다.

# 그래도 tensorflow와 여러 패키지가 아직까지는 호환이나 최적화가 되지 않아서 조금 시간이 더 걸릴 것 같습니다.

 

# 얼른 RTX 3080, RTX 3090이 다른 모듈이나 패키지 등과의 호환 문제가 깔끔해져서 딥러닝을 더 빨리 돌릴 수 있었으면 좋겠습니다.

 

 

※ 수정 날짜 : 2020-12-13

오늘 날짜 기준으로 tf-nightly를 재설치 했더니, 문제 없이 GPU를 사용하고 빠르게 학습되는 것을 확인했습니다.

참고 : RTX 3090이 아닌 RTX 3080에서 테스트를 진행했습니다. 아마 3090도 동일하게 작동할 것입니다.

 

 

※ 수정 날짜 : 2021-01-15

 

유성현님의 댓글을 참조해서 업데이트 했습니다. 그동안 tf-nightly 개발자 버전을 사용했는데 2.4.0 버전을 사용해도 정상적으로 잘 작동이 된다고 하더라구요.

 

* CUDA : 11.1* Cudnn : 8* Tensorflow : 2.4.0

 

* 추가 : 저는 위와 동일하게 셋팅해서 실험해봤는데 GPU인식을 못하더라구요.. 이전 tf-nightly 에서는 조금 느리더라도 GPU 인식하고 동작이 됐었는데요.. 좀 더 세팅 다르게 해서 다시 설치해보고 공유하겠습니다!

 

 

※ 최신 수정 날짜 : 2021-01-22

최종 작동됨을 확인한 설정 공유하겠습니다.

혹시 몰라서 설치 파일명 자체를 적었습니다. 아래와 같이 동일하게 환경을 구성했을 때 GPU로 작동하는 것을 확인했습니다.

 

gpu 사용률도 이전보다 올라갔고, 처음 모듈 load하는 속도도 빨라진 것 같습니다.

되는 설정 찾기가 힘들었습니다. 저는 CUDA 11.1 버전이나 11.2 버전은 작동을 안하더라구요.

이번에는 RTX 3090이 아닌 3080으로 테스트 완료했습니다.

RTX 3080 & 3090 setting

  • OS : Windows10
  • VGA : RTX 3090
  • VGA Driver : 456.43
  • cuda : CUDA 11.0 -> cuda_11.0.3_451.82_win10
  • cudnn : Cudnn 8.0.4 -> cudnn-11.0-windows-x64-v8.0.4.30 
  • anaconda : Anaconda3-2020.11-Windows-x86_64
  • tf : pip install tf-nightly==2.5.0.dev20210110 [ 참고로 Tensorflow 개발자 버전인 tf-nightly가 아닌 Tensorflow 2.4.0 버전도 사용 가능합니다 ]

* 추가

cuda 11.0, cudnn 8.0.4, tensorflow-gpu==2.4.1  : 이 세팅으로 CNN과 Transformer 구동 확인했습니다.

 

참고로 구동 확인하는 코드도 첨부하겠습니다. MNIST 기본 예제 데이터로 확인했습니다.

당분간은 설정 변경할 일은 없을 것 같습니다.

 

import numpy as np # linear algebra
import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)
import tensorflow as tf

# 1.GPU Check
from tensorflow.python.client import device_lib
device_lib.list_local_devices()

# To Check GPU in Tensorflow
tf.config.list_physical_devices('GPU')

# MNIST
mnist = tf.keras.datasets.mnist
(x_train, y_train), (x_test, y_test) = mnist.load_data()

x_train, x_test = x_train / 255.0, x_test / 255.0

model = tf.keras.models.Sequential([
  tf.keras.layers.Flatten(input_shape=(28, 28)),
  tf.keras.layers.Dense(128, activation='relu'),
  tf.keras.layers.Dropout(0.2),
  tf.keras.layers.Dense(10)
])

loss_fn = tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True)

model.compile(optimizer='adam',
              loss=loss_fn,
              metrics=['accuracy'])
              
model.fit(x_train, y_train, epochs=5)

 

동작 확인을 하기 원하시는 분들을 위해서 Github에 주피터노트북 파일 올려놓았습니다.

 

https://github.com/koos808/GPU_TEST

 

koos808/GPU_TEST

GPU Working Test : GPU를 정상적으로 인식하는지 확인하기 위한 코드입니다. - koos808/GPU_TEST

github.com

 


 

728x90
반응형
Comments