메모리 부족할 때 LLM KV 캐시를 줄이는 실험 도구
kv-psi는 리눅스의 PSI를 읽어, 컴퓨터 메모리가 부족해질 때 의 KV 캐시를 줄이는 작은 참고 구현이다. KV 캐시는 모델이 앞에서 읽은 문맥을 다시 쓰기 위해 메모리에 남겨 두는 자료라서, 길게 대화하거나 긴 문서를 처리할수록 커진다. 이 도구는 리눅스의 cgroup .pressure 또는 /proc/pressure/ 값을 보고 압박이 커지면 캐시 일부를 잘라낸다.
실행에는 PSI가 켜진 리눅스, 파이썬 3.10 이상, 실행기 빌드 환경, 이 필요하다. 기본 사용법은 시뮬레이터를 돌리고, 실행기를 빌드하고, 필요하면 작은 벤치마크 모델을 내려받는 흐름이다. Jetson 장비에서 1536 토큰을 생성한 최근 결과에서는 고정 방식이 캐시를 줄이지 않아 최종 KV가 1547로 남았고, PSI 방식은 2~4번 캐시를 줄여 최종 KV가 1004 또는 1291까지 낮아졌다.
속도는 실행 순서와 압박 상태에 따라 달라져, PSI 방식이 88.80 또는 96.16 토큰/초, 고정 방식이 94.00 또는 89.76 토큰/초를 보였다. 벤치마크는 이전 실행의 캐시, zram/swap, PSI 평균값이 다음 실행에 영향을 줄 수 있어 두 실행 순서를 모두 시험하도록 되어 있다.
핵심 포인트
- 리눅스 PSI 값을 보고 이 커지면 KV 캐시를 줄인다.
- 대상은 이며, 긴 문맥을 쓸수록 효과가 커질 수 있다.
- Jetson 실험에서 PSI 방식은 KV 캐시를 2~4번 줄였고 최종 KV 크기를 1004 또는 1291로 낮췄다.
- 속도 결과는 실행 순서에 따라 달라져 단순히 더 빠르거나 느리다고 보기 어렵다.
- 실행에는 PSI가 켜진 리눅스, 파이썬 3.10 이상, , 이 필요하다.