[EKS] LLM 서빙과 최적화: vLLM on Trainium 워크샵 - 8.3.2. LoadBalancer 서비스 노출과 추론 테스트
vLLM Service를 LoadBalancer로 노출했을 때 만들어지는 CLB의 리스너 구조를 확인하고, 추론 요청이 실제로 왕복하는지 검증해 보자.
vLLM Service를 LoadBalancer로 노출했을 때 만들어지는 CLB의 리스너 구조를 확인하고, 추론 요청이 실제로 왕복하는지 검증해 보자.
vLLM Deployment를 init container 패턴으로 올리고, Neuron 컴파일 산출물이 S3 캐시를 거쳐 메인 컨테이너로 전달되는 경로를 확인해 보자.
칩 하나에 리소스가 둘 광고되는 이유를 커널 디바이스 노드와 device plugin 소켓까지 내려가 확인하고, NVIDIA와 갈리는 지점을 정리해 보자.
EKS 컨트롤 플레인만 있는 상태에서 trn1.2xlarge 관리형 노드그룹을 붙이고, 미리 박혀 있던 AMI ID 때문에 막힌 지점을 풀어 보자.
워크샵이 쓰는 Trainium이 어떤 칩인지, Neuron SDK가 어떤 스택인지, NVIDIA 스택과 어디까지 대응되는지 정리해 보자.
EKS와 AWS Trainium 위에 vLLM을 올리는 워크샵의 목적과 클러스터 아키텍처를 살펴보자.
Grafana를 서브패스로 노출하고 Prometheus 데이터소스를 프로비저닝한 뒤, ConfigMap으로 넣은 vLLM 대시보드가 언제 목록에 뜨는지 확인해 보자.
Helm으로 Prometheus를 올려 vLLM의 /metrics를 수집하고, Ingress 서브패스로 웹 UI를 열었을 때 무엇이 함께 바뀌는지 확인해 보자.
ingress-nginx를 올려 URL에서 포트를 떼어내고, CLB가 두 개가 된 구조와 브라우저 인증서 경고가 바뀐 이유를 확인해 보자.
자작 스크립트와 llmperf로 vLLM에 부하를 걸고, 두 도구가 낸 수치를 나란히 놓을 수 있는지 확인해 보자.
노드도 파드도 늘릴 수 없는 환경에서 HPA Lab이 어디까지 가는지, 그리고 CPU 사용률이 추론 워크로드의 스케일 신호가 될 수 있는지 확인해 보자.
학습 플랫폼 SDK에 MLflow 시스템 메트릭 로깅 기능을 추가하며, pod 안에서 어떤 문제가 발생할 수 있는지 알아 보자.
ncu 리포트를 어느 순서로 읽고, 어떤 숫자가 병목 판정을 가르는지 정리해 보자.
nsys로 무엇을 어떻게 수집하고, 뷰어에 뜬 리포트를 어느 순서로 읽어 병목을 판정하는지 정리해 보자.
로컬·컨테이너·쿠버네티스·런타임 exec 환경에서 프로파일러를 붙일 때 마주치는 다섯 가지 문제를 정리해 보자.
맥에 뷰어를 깔고 Colab T4로 리포트를 하나 떠 보면서, Nsight가 무엇을 재고 그 측정 방식이 어떤 제약을 만드는지 정리해 보자.
LLMSO 스터디에서 정리한 GPU 스펙·인터커넥트 프레임 및 서빙 전략을 실제 클러스터에 적용해 보자.
vLLM에서 vanilla, n-gram, EAGLE-3 변형을 동시성 1과 16으로 실측해 보자.
추측과 병렬 검증으로 decode를 가속하는 speculative decoding의 원리에 대해 알아 보자.
LLM 서빙 고급 최적화 기법(speculative decoding, 멀티 GPU 분산, PD 분리, 고급 KV 캐싱)에 대해 알아 보자.
클러스터 밖으로 노출된 접속용 포트를 클러스터 내부 Service 포트로 착각하면 어떤 증상이 나타나는지 알아 보자.
Roofline 모델에 대해 알아 보자.
NVIDIA 밖 AI 가속기 지형과 메모리 벽 완화 트렌드를 살펴보고 5장을 정리해 보자.
모델 로딩의 메모리 용량 제약과 실행 단계의 병목을 산술 강도로 분석해 보자.
GPU 인터커넥트의 대역폭 계층을 이해하고 모델 크기별 GPU 선택 기준을 세워 보자.
GPU 스펙의 연산·메모리 속성을 읽고 H100 SXM과 NVL을 비교해 보자.
LLM 서빙 최적화가 고객 경험·비용·확장성을 어떻게 좌우하는지 알아 보자.
서빙 최적화 기법의 출발점인 배칭의 큰 흐름을 실행 단위, 동기, 구조, 재구성 시점 순으로 잡아 보자.
Roofline 모델을 LLM 서빙 워크로드에 적용해 보자.
스펙표의 TFLOPS가 어디서 나오는지 SM 구조로 분해해 보자.