[AI/LLM] KV Cache(Key-Value Cache)에 대해 자세히 알아보자! (정의, 원리, 장단점, 실습)
·
AI Study/[LLM]
1. 들어가며ChatGPT나 Claude 같은 생성형 AI를 사용할 때, 문장이 길어질수록 답변 속도가 미세하게 느려지거나 GPU 메모리가 급격히 차오르는 현상을 경험해 보셨을 겁니다.LLM은 기본적으로 자기회귀(Auto-regressive) 모델입니다. 즉, "나는 학교에"라는 문장이 주어지면 "간다"를 예측하고, 다시 "나는 학교에 간다"를 입력으로 넣어 "."을 예측합니다.문제는 이 과정에서 이미 계산했던 "나는 학교에" 부분의 연산을 매번 처음부터 다시 반복한다는 것입니다. 문장이 길어질수록 이 중복 연산은 기하급수적으로 늘어나, 치명적인 비효율을 초래합니다.이 문제를 해결하기 위해 등장한 기술이 바로 KV Cache(Key-Value Cache)입니다. "계산(Compute)을 아끼기 위해 메모..
[IT_Tips] GPU, CPU, TPU, NPU 완벽 비교 (AI 개발을 위한 하드웨어 총정리)
·
Tech Archive/[IT_Tips]
1. 들어가며딥러닝 모델을 학습시키려는데 "GPU가 없어서 학습이 너무 느려요", "코랩(Colab)에서 TPU를 쓰라는데 그게 뭐죠?", "스마트폰에는 NPU가 들어간다는데 GPU랑 다른 건가요?" 같은 질문을 한 번쯤 해보셨을 겁니다.과거에는 CPU 하나로 모든 것을 처리했지만, AI 시대가 도래하면서 행렬 연산(Matrix Multiplication)에 특화된 다양한 가속기(Accelerator)들이 등장했습니다. 이들은 서로 다른 아키텍처와 목적을 가지고 있으며, 상황에 따라 적절한 하드웨어를 선택하는 것이 비용과 시간을 절약하는 지름길입니다.이번 포스팅에서는 AI 반도체의 4대장인 CPU, GPU, TPU, NPU의 개념과 차이점, 그리고 실전 활용법까지 A to Z를 파헤쳐 보겠습니다.2. C..
[AI/LLM] NVIDIA GPU 모니터링 완벽 가이드 (정의, 구성요소, 실습)
·
AI Study/[LLM]
1. 들어가며딥러닝 모델을 학습시키다 보면 "CUDA out of memory" 오류를 만나거나, 비싼 GPU를 샀는데 정작 사용률(Util)이 0%에서 놀고 있는 현상을 자주 목격합니다. 혹은 서버실의 온도가 너무 높아져서 GPU 성능이 강제로 저하되는 쓰로틀링(Throttling)이 걸리기도 하죠.이 모든 문제의 원인을 파악하고 해결하기 위한 첫걸음은 바로 GPU 모니터링입니다.이번 포스팅에서는 NVIDIA GPU 상태를 확인하는 가장 기본적인 명령어 nvidia-smi의 상세한 해석법부터, 시각적으로 화려한 nvitop, 그리고 Python 코드로 직접 모니터링 시스템을 구축하는 방법까지 A to Z를 정리해 보겠습니다. 2. NVIDIA GPU 모니터링이란? 2.1 개요 및 정의GPU 모니터링은 ..
[IT_Tips] 동기/비동기 & 직렬/병렬 완벽 가이드 (GPU 학습부터 API 서빙까지)
·
Tech Archive/[IT_Tips]
1. 들어가며AI 모델을 학습시키다 보면 GPU 사용률(Util)이 0%와 100%를 널뛰기하는 경우를 종종 봅니다. 또는 FastAPI로 만든 추론 서버가 요청이 조금만 몰려도 멈춰버리는 현상을 겪기도 하죠.이 문제들의 근본적인 원인은 대부분 데이터 처리 방식에 있습니다."데이터를 하나씩 순서대로 읽어와서(직렬) 학습이 끊기는가?""요청을 기다리는 동안(동기) 다른 작업을 하지 못하는가?"이번 포스팅에서는 헷갈리기 쉬운 동기(Synchronous) vs 비동기(Asynchronous)와 직렬(Serial) vs 병렬(Parallel)의 개념을 명확히 정리하고, Python을 이용해 이를 어떻게 구현하는지 알아보겠습니다.2. 동기(Synchronous) vs 비동기(Asynchronous)이 두 개념의 ..