Neuralwatt 분석, 하네스 수정으로 인한 캐시 미스가 에너지 소비 2.5배 증가
핵심 내용
하네스 수정으로 인한 캐시 미스가 에너지 소비를 최대 2.5배까지 증가시킨다.
자세히 보기
프롬프트 캐싱이 효율성의 핵심 동인
Neuralwatt CEO Chad Gibson은 2026년 9월 8일부터 10월 7일까지의 클라우드 트래픽을 분석하여 Agent harnesses가 프롬프트 구성 방식을 통해 GPU 에너지 사용량에 큰 영향을 미친다는 사실을 밝혔다. Prompt Caching은 효율성의 가장 큰 원천으로 지목되었으며, cache miss(프롬프트의 10% 미만만 캐시된 경우)는 에너지 비용을 약 두 배로 증가시킨다. GLM-5.3 모델의 경우 cache miss가 완전히 캐시된 요청 대비 약 2.5배의 에너지를 소비하며, DeepSeek V4.1 Flash는 에너지 소비량이 91% 증가한다.
캐시 깨짐이 지연 시간과 비용에 미치는 영향
타임스탬프나 reasoning effort 조정 등 프롬프트 초반의 작은 변경 사항이 전체 재계산을 유발한다. 128k tokens을 초과하는 긴 세션에서 프롬프트의 절반 이상을 다시 읽어야 하는 드문 턴은 해당 깊이에서 재읽기 토큰의 **75%**를 차지한다. 이러한 특정 턴은 평균 230k tokens을 재읽으며, 표준 턴(중간값 370 tokens)의 Prefill 비용보다 600배 더 많은 비용을 발생시킨다. 결과적으로 이러한 대규모 재읽기 동안 **Time to First Token (TTFT)**이 일반적인 0.8–2.8초에서 41초로 급증한다.
캐시 깨짐의 일반적인 원인
OpenCode, Pi, omp, Kilo Code와 같은 클라이언트에 대한 실험 결과, 요청의 **88%**는 순수한 추가(append)였지만 나머지 **12%**는 harness 수정으로 인해 캐시가 깨졌다.
- OpenCode Plan-mode reminders: 이전 메시지에 리마인더를 추가하거나 제거하면 330–2,340 tokens이 전체적으로 재읽혔다. OpenCode 2.x는 리마인더를 새 메시지로 분리하여 이 문제를 해결했다.
- omp File Pruning: 이전 파일 읽기 내용을
[Superseded...]로 대체하면 프롬프트 중간이 변경되어 5,846/15,520 tokens이 재읽혔다.compaction.supersedeReads: false설정으로 완화할 수 있다. - Dynamic Elements: 시스템 프롬프트 내 Reasoning Effort, MCP server connections, Skill additions, Date changes 변경은 캐시를 자주 깨뜨린다. OpenCode 2.x는 원본 프롬프트 구조를 수정하지 않고 노트를 추가하는 방식으로 날짜 및 도구 목록 문제를 완화한다.
Harness 개발자를 위한 전략적 권장 사항
캐시 적중률을 높이고 에너지 낭비를 최소화하기 위해 Neuralwatt은 다음을 권장한다.
- Fixed System Prompts: 날짜나 git status와 같은 변동성 요소를 시스템 프롬프트에서 제외한다.
- Append-Only Architecture: 재시도 시 요청을 바이트 단위로 동일하게 유지하고, 상태 변경은 히스토리 뒤에 스냅샷으로 추가한다.
- Stable Tool Lists: 모드 전반에 걸쳐 도구 정의를 일관되게 유지하며, 도구 목록 변경 대신 텍스트 지시를 통해 모드를 제어한다.
- Late Compaction: 세션 후반부에 compaction을 수행하여 기존 접두사를 재사용하고 요약 호출 시 캐시 적중을 유도한다.
Neuralwatt은 적중률을 0.1–0.2 퍼센트 포인트 개선하기 위해 prefix-aware routing을 구현 중이며, 오픈소스 harnesses에 수정 사항을 업스트림할 계획이다. 또한 클라이언트가 프롬프트 초반에 사소한 편집을 하더라도 서버 측에서 캐시된 작업을 재사용하는 기술을 연구하고 있다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.