미니 생성형 AI 구동에 램이 많이 필요한가요?
- 새벽하늘
- 조회 수 670
- 2024.06.10. 17:28
이쪽엔 영 지식이 없어서 모르겠는데 아래에 몇분이 써주신 아이폰 17프로라인에 12기가램이 들어간다는 루머를 보고 궁금해졌습니다.
당장 8기가로 올라온지 1년도 안된시점에 그런 루머가 나오는거봐서는 애플도 슬슬 자체 AI플랫폼 시동을 거나 보네요.
삼성 가우스 관련 글에서도 몇번 봤지만 저는 NPU 성능만 빵빵하면 장땡인 줄 알았는데
12기가도 부족하다! 지적하는 글이 적지 않게 보여 램용량과의 상관관계가 큰가 해서 여쭤봅니다.
쉽게 말해 모바일 기기에서의 최적화는 원래 타겟 성능으로 만든 모델의 용량을 줄이는 일이죠. 파라미터를 줄이고, 레이어 개수를 줄이는 일반적으로 알려진 방법으로 많이 줄입니다. 그렇다 보니 모바일 기기에 들어가는 모델은 원래 타겟 모델 대비 성능이 떨어지고, 할 수 있는 기능이 줄어드는것은 어쩔 수 없죠.
AI 연구하시는 분들이 튜닝할 때 쓰는 방법도 삼성이나 기업에서 많이 한다고 들었습니다. 내부에서는 타겟 모델도 모바일 기기의 성능 한계로 넣지 못하는 고가치 모델도 많다고 하네요.
딥러닝 모델의 추론과정은 간단하게는 입력에 연속적인 행렬곱 연산이 주류인데, (((입력 @ A) @ B ) @ C) @ D = 결과물 입니다. (@는 행렬곱 연산)
이 때 필요한 메모리 공간은 모델의 가중치(A,B,C,D)를 저장할 공간 (수 billion x 2 (또는 1) byte)와 입력@A 를 계산 후 그 계산결과를 다음 계산을 위해서 중간에 저장할 공간인 activation 메모리(입력의 크기에 따라 달라짐, 모든 행렬곱 연산이 같은 크기의 결과를 계산해서 하나의 출력 버퍼를 재사용 가능하다 했을 경우)가 필요합니다.
GPU나 NPU는 저 @ 행렬곱 연산을 빨리 해 줄 수는 있지만, 태생적으로 가중치와 중간 결과값을 저장할 메모리가 필요합니다. ML SYS (딥러닝 모델을 잘 돌려주는 S/W) 연구도 태반이 얼마나 저 메모리를 잘 쓸 것인가 일 정도로 중요한 주제이죠.
쉽게 체험해볼 수 있어요.
Ollama나 One file LLM 같은 거 애플 실리콘에서 돌려보려고 하면 램 순식간에 몇십 기가씩 녹습니다.
APU들은 그래픽 메모리가 따로 없고 시스템 메모리를 공유해서 쓰니 램 용량이 중요하죠.
물론 각 기기와 용도에 맞게 최적화되어서 나오겠지만 그래도 지금의 일반적인 정도로는 부족한 게 맞습니다.