도구스개발

KV 캐시 메모리 계산기

트랜스포머 추론의 KV 캐시 크기를 레이어·헤드·컨텍스트 길이·배치에서 계산합니다. GQA가 몇 배를 아끼는지와 캐시가 가중치를 넘어서는 컨텍스트 길이도 함께 냅니다.

GQA면 질의 헤드보다 적습니다

토큰

캐시만의 정밀도입니다. 가중치와 따로 정할 수 있습니다

GiB

0으로 두면 견주지 않습니다

KV 캐시 전체

1.00 GiB

토큰당 128.00 KiB · 시퀀스당 1.00 GiB · 배치 1

토큰 하나당 (배치 1 기준)128.00 KiB
시퀀스 하나당1.00 GiB
전체 (배치 포함)1.00 GiB
KV 차원 (KV헤드 × 헤드차원)1,024
바이트 (정확한 값)1,073,741,824
GQA로 아낀 배수 (질의 ÷ KV 헤드)4
GQA를 안 썼다면4.00 GiB
아낀 양3.00 GiB
캐시 ÷ 가중치0.0714배 — 아직 가중치가 더 큽니다
캐시가 가중치와 같아지는 길이114,688 토큰
가중치 + 캐시15.00 GiB
계산 근거2 × 32(레이어) × 8(KV헤드) × 128(헤드차원) × 2(바이트) = 128.00 KiB / 토큰× 8,192(토큰) × 1(배치) = 1.00 GiB맨 앞의 2는 키(K)와 값(V) 둘이라는 뜻입니다. 어텐션이 이미 지나온 토큰의 K·V를 다시 쓰기 때문에 계산해 둔 것을 들고 있어야 하고, 그 양이 이만큼입니다.
가중치는 컨텍스트와 무관하게 고정인데 KV 캐시는 토큰 수에 «선형»으로 늡니다. 지금 설정에서는 114,688토큰부터 캐시가 가중치보다 무거워집니다. 배치를 키우면 그만큼 앞당겨지고, 배치 8이면 14,336토큰입니다. 서빙에서 배치를 못 키우는 이유가 대개 여기입니다 — 배치도 그냥 곱해지기 때문입니다.
캐시 크기는 «질의 헤드»가 아니라 «KV 헤드»에 비례합니다. 여러 질의 헤드가 K·V 한 벌을 나눠 쓰는 것이 GQA이고, 한 벌만 두는 것이 MQA입니다. 지금은 질의 32개에 KV 8개라 4배를 아꼈고, 아끼지 않았다면 4.00 GiB가 들었을 것입니다. 이 구조가 널리 쓰이게 된 이유는 품질이 아니라 이 숫자입니다. 헤드 수를 잘못 넣으면 몇 배가 통째로 어긋나므로 둘을 따로 확인해 주세요.
특정 모델의 제원을 미리 담아 두지 않았습니다. 모델마다 다르고 자주 바뀌어서, 담아 두면 몇 달 뒤 틀린 값을 계속 내보내게 됩니다. 쓰려는 모델의 설정 파일에서 레이어 수·헤드 수·헤드 차원을 확인해 직접 넣어 주세요.
실제 사용량은 이 값보다 조금 더 큽니다. 활성값과 중간 버퍼, 그리고 페이지 단위로 할당할 때 생기는 블록 조각이 여기 들어 있지 않습니다. 이 계산기가 내는 것은 KV 캐시 «자체»의 하한이며, 여유를 두고 잡아야 합니다.

사용 방법

  1. 1레이어 수·헤드 차원·질의 헤드 수·KV 헤드 수를 모델 설정에서 확인해 넣습니다.
  2. 2컨텍스트 길이와 동시에 처리할 시퀀스 수(배치)를 정합니다.
  3. 3KV 정밀도를 고릅니다. 가중치와 따로 정할 수 있습니다.
  4. 4가중치 용량을 넣으면 몇 토큰부터 캐시가 더 무거워지는지 알려 줍니다.

자주 묻는 질문

2 × 레이어 수 × KV 헤드 수 × 헤드 차원 × 시퀀스 길이 × 배치 × 원소 바이트입니다. 맨 앞의 2는 키(K)와 값(V) 둘이라는 뜻입니다. 어텐션이 이미 지나온 토큰의 K·V를 다시 쓰기 때문에 계산해 둔 것을 들고 있어야 하고, 그 양이 이만큼입니다.

가중치는 컨텍스트와 무관하게 고정인데 KV 캐시는 토큰 수에 선형으로 늘기 때문입니다. 어느 지점에서 캐시가 가중치를 넘어서며, 이 계산기는 그 교차점을 함께 냅니다. 배치도 그냥 곱해져서 동시 요청 열 개면 캐시도 열 배이고, 서빙에서 배치를 못 키우는 이유가 대개 여기입니다.

캐시 크기가 질의 헤드 수가 아니라 KV 헤드 수에 비례하기 때문입니다. 예전 구조는 어텐션 헤드마다 K·V를 따로 뒀는데, GQA는 여러 질의 헤드가 K·V 한 벌을 나눠 쓰고 MQA는 아예 한 벌만 둡니다. 질의 헤드 32개에 KV 헤드 8개면 캐시가 4분의 1이 되며, 이 구조가 널리 쓰이게 된 이유는 품질이 아니라 이 숫자입니다.

캐시 크기를 정하는 것은 KV 헤드 수뿐이지만, 질의 헤드 수를 함께 받아야 GQA로 몇 배를 아꼈는지 보여 줄 수 있기 때문입니다. 둘을 혼동해 넣으면 몇 배가 통째로 어긋나므로 모델 설정 파일에서 각각 확인해야 합니다. 질의 헤드가 KV 헤드보다 적을 수는 없습니다.

없습니다. 모델마다 다르고 자주 바뀌어서 담아 두면 몇 달 뒤 틀린 값을 계속 내보내게 됩니다. 쓰려는 모델의 설정 파일에서 레이어 수·헤드 수·헤드 차원을 확인해 직접 넣어 주세요.

아닙니다. 활성값과 중간 버퍼, 그리고 페이지 단위로 할당할 때 생기는 블록 조각이 여기 들어 있지 않습니다. 이 계산기가 내는 것은 KV 캐시 자체의 하한이므로 여유를 두고 잡아야 합니다.

전송되지 않습니다. 계산은 모두 브라우저 안에서 이루어지고 넣은 값은 이 기기에만 남습니다.

알아두면 좋은 점

  • KV 캐시 자체의 크기만 냅니다. 활성값·중간 버퍼·페이지 할당 조각은 포함되지 않으므로 실제 사용량은 더 큽니다.
  • 특정 모델의 제원을 담아 두지 않습니다. 모델 설정 파일에서 확인해 직접 넣어야 합니다.
  • 캐시 크기는 KV 헤드 수에만 비례합니다. 질의 헤드 수는 GQA 절감 배수를 보이기 위해서만 씁니다.
  • KV 정밀도는 가중치 정밀도와 따로 정할 수 있습니다. 캐시만 낮은 정밀도로 두는 구현이 흔합니다.
  • 1024 기준(KiB·MiB·GiB)으로 표시합니다.

함께 보면 좋은 도구

마지막 검증: 2026년 9월 2일 · 결과는 참고용 추정치입니다.