'생성형AI #LLM #GenAI #StableDiffusion #GPU선택'에 해당되는 글 1건

  1. 2023.06.06 가정집에서 LLM을 직접 돌려보려는 사람을 위한 GPU선택 이야기
머신러닝AI2023. 6. 6. 19:58

 ChatGPT같은 LLM을 구동하기 위해서는 대부분 A100같은 80GB의 메모리 GPU 여러장을 필요로 한다. 다른 머신러닝 연산과도 다른 것이 그 커다란 언어모델을 GPU에 적재하고 처리하기 때문에 특히 GPU 메모리가 많이 필요하다.

 

 따라서 이런 LLM을 직접 하기 위해서는 클라우드를 사용하게 되는데, 집에서 간단히 해볼 수는 없을까? 언어모델들 크기도 줄어든다는데 일정수준을 해보고 싶자면 어떤 GPU를 택하면 좋을지 고민이 된다. 그래서 이럴때 GPU를 선택하는 법을 간단히 적어보자. 우선 아래 각 RTX 모델별 메모리나 소비 전력을 살펴보자.

 

모델명(NVIDIA RTX) 최대메모리(GB) 방식/선폭 소비전력(W)
3060 8 GA107/8nm 200
3070 8 GA104/8nm 220
3080 12 GA102/8nm 350
3090 24 GA102/8nm 350
4060 8 AD107/4nm 115
4060ti 16 AD106/4nm 160
4070 12 AD104/4nm 200
4080 16 AD103/4nm 320
4090 24 AD102/4nm 450

 

 LLM을 다양하게 구동하다보면 늘 어려운 것은 GPU 메모리 용량 확보이다. 속도는 둘째 문제이고 사실 그렇게 몇배까지 차이가 나지 않는다. LLAMA 7B모델을 돌려라도 보려면 모델만 13GB정도를 GPU메모리에 올려야 하니 일단 RTX xx60시리즈는 난감하게 된다. 심지어 용량을 축소하는 quantized 코드(소수점 정확도를 줄여서 용량을 늘리는 기술이다)들도 메모리를 많이 쓰기 때문에 그때도 막히는 경우가 있다. 여하튼 메모리가 커야한다.

 

 그래서 가정용으로 취할 수 있는 선택은 우선 GPU 메모리 16GB인 4060ti, 4080이 있다. 가격면이나 소비전력 면에서는 4060ti와 4080이 16G관점에서 후보가 된다. 그리고 그 다음은 24GB인 3090, 4090이 있다. 다만 4090은 너무 고가이기 때문에, 대략 4060ti, 4080, 3090정도가 가정용으로 선택할 수 있는 합리적인 선택이어 보인다.

 

 그리고 또하나 고용량 GPU를 처음 구비하는 사람이 놓칠 수 있는 것은 이 소비 전력이다. 4080(320W)급의 GPU도 권장 PC파워서플라이어 용량이 800W 정도를 거론한다. 원래 파워가 표기 용량보다 좀 적은 부분도 있고, 다른 주변기기들 때문에 PC가 그 정도의 총 전력을 소모하리라 보는 것이다. 특히 GPU의 발열 때문에 팬이 빠르게 많이 돌면 상대적으로 소비 전력이 올라갈 수 있다. 집에 전력 측정기(power meter)같은 것이 있어서 PC의 통상 전력을 알 수 있다면 거기에 약간의 보험을 더해서 파워를 준비해둘 필요가 있다. 본인의 경우에는 통상 GPU미사용시 150W를 넘은 적이 없으므로 상기 GPU소모량의 120%를 더해서 파워를 갖추어도 문제는 없었다. 파워가 부족하면 PC가 예고없이 다운될 수도 있으므로 그래도 조심할 필요가 있다.  그리고 이와 더불어 이 GPU를 제대로 구동할 수 있는 PC 스펙에 대해서는 아래와 같인 고민이 필요하다.

 

https://infoengineer.tistory.com/109

 

Meta LLAMA를 잘 돌리기 위한 데스크탑 PC 업그레이드

LLM을 돌리다보니 집의 데스크탑을 계속 개선하고 있는 나를 바라보면서 쌓인 지식들을 정리해두면 어떨까 싶어 기록해둔다. LLM이 돌아가려면 고용량 메모리, 고속의 CPU, 고속의 저장장치, 고속

infoengineer.tistory.com

 

 서버급을 참고삼아 살펴보면, 이제 A40, A100같은 선택들이 존재한다. 다만 이 녀석들은 모두 지나치게 고가이고 소비 전력도 더 크기 때문에 그다지 가정용으로 하기는 쉽지 않을테다. GPU가 부담스럽다면 최근의 llama.cpp 프로젝트를 참고해보는 것도 좋다. 메인보드 메모리만으로도 우선 LLAMA를 돌려볼 수는 있다. 다만 고용량 모델로 갈수록 병렬 부동소수점 연산이 GPU에 뒤쳐질테니 더 느려지는 것은 어쩔 수 없을 수 있다. 그래도 quantize할때 등 사용할 수 있고, M1/M2칩 탑재한 애플 맥북에서는 꽤 속도도 빠르다고 알려져 있다. 이 부분은 아래를 참조하자.

 

https://infoengineer.tistory.com/107

 

Meta LLAMA를 GPU없이 CPU 메모리에서 돌려보자

이 글은 llama.cpp 프로젝트에 대한 소개다. 이 프로젝트는 기본적으로 맥북에서 LLAMA를 돌리는 것이 목표였는데, 다행스럽게도 linux x86에서 충분한 메모리만 있어도 LLAMA의 대형 모델을 구동할 수

infoengineer.tistory.com

 

반응형
Posted by 작동미학