AI

RTX 3080 병렬로 tensorflow 위에 올려보기

월곡동로봇팔 2020. 12. 23. 19:30

GPU 연결하기

1. GPU tensorflow와 연동하기

전반적인 Setting은 이 사이트를 보고 했다. 하지만, 이 사이트는 RTX 3080에는 적합하지 않은 Setting 환경이었다. 지금 RTX 3080이 나온지 얼마 되지 않았고, Tensorflow 에서 정식적으로 호완하기에는 아직은 이른 상황인가보다. (역시...새로운게 다 좋은건 아닌 것 같다.)

그래서 이 글을 보고 헤매지 말자... 나 진짜 반나절은 이거 하나로 날려먹은듯.

처음에는 CUDA 11.2 버젼 // cuDNN 11.1 버젼으로 다운받았다가, CUDA 11.1 버젼 // cuDNN 11.1 버젼, 마지막으로 해본게 CUDA 11.0 버젼 // cuDNN 11.0 버젼 이었다. (하지만, 이게 CUDA, cuDNN 이 아니라, tensorflow에서 못 읽는 것 같긴 하다.)

Setting 정리

이 사이트는 CUDA 11.0 버젼 // cuDNN 11.0 버젼 // tf-nightly==2.5.0.dev20201212 를 진행했다. 아직 RTX30시리즈에 호환이 되는 tensorlfow가 없어서 nigthly 처럼 베타 버젼의 tensorflow를 쓴 것 같다.

2. GPU tensorflow와 연동되는지 확인하기

연동 확인하는 코드

from tensorflow.python.client import device_lib
device_lib.list_local_devices()

code를 실행하면

[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 1976593290332205384
, name: "/device:GPU:0"
device_type: "GPU"
memory_limit: 8122145996
locality {
  bus_id: 1
  links {
  }
}
incarnation: 13144751578301162986
physical_device_desc: "device: 0, name: GeForce RTX 3080, pci bus id: 0000:04:00.0, compute capability: 8.6"
, name: "/device:GPU:1"
device_type: "GPU"
memory_limit: 8122145996
locality {
  bus_id: 1
  links {
  }
}
incarnation: 16964393561182456800
physical_device_desc: "device: 1, name: GeForce RTX 3080, pci bus id: 0000:09:00.0, compute capability: 8.6"
]

라고 나왔다.

3. GPU가 인식이 안될 경우

[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}

이렇게 CPU만 연결된 것을 확인하였다. 따라서 잘 보고 판단하자.