"같은 행렬곱인데 왜 CPU는 느리고 GPU는 빠를까?"ChatGPT에게 질문을 보내면 GPU 수천 개가 동시에 계산을 수행하며 답을 만들어낸다.그렇다면 이런 궁금증이 생긴다.CPU도 계산을 하는데, 왜 AI는 굳이 GPU를 사용할까?많은 사람들이"GPU는 병렬 처리를
"GPU는 행렬곱을 가장 잘하는 프로세서다.그렇다면 GPU는 실제로 무엇을 계산하고 있을까?"1편에서는 CPU와 GPU의 구조를 살펴보며 왜 AI가 GPU 위에서 동작하는지 알아보았다.CPU는 복잡한 제어를 빠르게 수행하도록 설계되었고,GPU는 수천 개의 연산 유닛을
1편에서는 CPU와 GPU의 구조를, 2편에서는 그 GPU 위에서 Transformer가 어떻게 동작하는지 살펴봤다.Token은 Embedding과 Positional Encoding을 거쳐 Self-Attention과 FFN을 통과하고, 이 과정을 여러 Transfo
3-1편에서는 LLM을 실제 서비스로 제공하기 위해 어떤 문제를 해결해야 하는지 전체 지도를 그렸다. Request를 받고, Tokenization을 거치고, 여러 요청을 관리하고, GPU에서 모델을 실행한 뒤 Streaming으로 결과를 전달한다. 그리고 Quanti
3-1편에서는 LLM Serving의 전체 구조를 살펴봤고, 3-2편에서는 Prefill, Decode, KV Cache를 통해 LLM이 실제로 어디에서 병목이 발생하는지 살펴봤다.여기까지 읽었다면 이제 이런 질문이 생긴다."그래서 실제 LLM Serving 서버는 어
4-1편에서는 하나의 GPU에서 하나의 모델을 서비스하는 문제를 다뤘다. 그런데 실제 서비스는 모델 하나만 필요로 하지 않는 경우가 많다.서로 다른 모델에 대해서 각각 GPU 한 장씩 붙여 서비스하는 것은 비용 면에서 낭비다. 그렇다고 모든 모델을 항상 GPU 메모리에
LLM 서비스를 사용할 때 만족해야하는 조건들이 있다.1)사용자 경험. 실제 LLM을 사용해보면 응답 속도에 따라 만족도가 달라진다. 특히 첫 토큰이 나오기까지 걸리는 시간이 길면 답답함을 느끼는 경우가 많다. 즉, 사용자 경험에는 지연시간이 중요하다.이미 충분히 지연