Triton Inference Server 성능 저하 및 메모리 누수 원인 분석

Source

  • Field Notes/ReturnZero/Daily Notes/Day 225. 2022-02-10.md

Summary

Triton Inference Server(Kaldi Online 모델)에서 청크 요청이 몰릴수록 GPU 성능이 저하되고 메모리 사용량이 증가하는 현상을 조사 중. 시퀀스 배처(Sequence Batcher)의 ‘Oldest’ 전략, 백로그(Backlog) 큐 관리, 그리고 Triton 백엔드 라이프사이클(Request/Response 처리)을 검토하며, 배치 크기(Batch Size)와 최대 활성 시퀀스 수(Max Active Sequences) 조정을 통한 성능 테스트를 진행함. 현재 백로그 검색 시간 증가나 요청 객체 생성 시 메모리 할당 문제 등 가설을 세우고 로그를 분석 중.

Key Points

  • 현상: 청크 요청 집중 시 GPU 가동률 저하 및 메모리 사용량 증가.
  • 의심 대상: Triton의 시퀀스 배처(Sequence Batcher) 로직, 특히 ‘Oldest’ 전략과 백로그 큐 관리.
  • 변수 조정 테스트: 배치 크기(128->64->32)와 최대 시퀀스 수(1024->512) 변경 시 성능 및 메모리 변화 관찰.
  • 백엔드 구조 분석: TRITONBACKEND_ModelInstanceExecute, PrepareRequest, FlushBatch 흐름 및 Request/Response 객체 생명주기 검토.
  • 가설: 백로그에 요청이 쌓이며 검색 시간 증가 또는 Request 객체 생성 시 메모리 누수 가능성.