프로그래밍/알고리즘 트레이딩

TensorFlow CPU, GPU 학습 시간

&+&& 2018. 8. 5. 07:29

  주식 데이터를 가지고 TensorFlow를 통한 학습 테스트중인데, 처음에는 기본 CPU 설정으로 하고 학습 테스트를 했다. 그 후 GPU 학습을 위해 CUDA 및 TensorFlow-GPU 설정이 잘 안 되서 한참 삽질 후에 겨우 GPU로 돌아가는 걸 확인했는데, 어라 이상하게 느리다. CPU보다 느린 기분.

  그래서 log에 시간값을 넣어서 테스트해 봤다.


1. PC 사양

  테스트한 PC는 Surface Book With Performance 모델이다. 

  GPU는 GTX 965m(2GB) -> tensorflow 학습시에 freememory는 1.6GB정도


2. 시간 비교

  진행한 예제는 원래 1000회 학습인데, 테스트를 위해 5회로 조정 및 log에 시간 확인 부분을 추가했다.

  5회 학습에 CPU는 15초 / GPU는 36초로 학습 시간이 두 배 넘게 차이 난다.

  여기에는 안 나와있지만 CPU의 경우 1000회 학습 완료에 56분 정도가 걸렸다. 아마 GPU였으면 2시간 반 이상 걸리지 않았을까 싶다.


  CPU VS GPU 학습속도에 영향을 미치는 환경요인은 뉴럴네트워크와 배치사이즈가 클수록 GPU의 학습속도가 빠르다는데,.. 내가 돌려본 예제는 GPU우위로 가는 임계치를 넘지 않았나보다.

  데스크톱 환경에 좀 더 성능좋은 GPU를 통해서 실제 학습을 진행하려고 계획중이었는데, 실제 내가 학습하려는 구성이 확정 된 후에 GPU 투자를 고려해 봐야 할 듯.