추론 경량화·멀티스레드 파이프라인·사이클타임 프로파일링으로 실시간 스트림 처리 결
실시간 이미지 스트림 처리에서 사이클타임을 맞추기 위해 가장 먼저 한 것은 전처리·추론·후처리 각 단계의 지연을 프로파일링하는 것이었습니다. 어느 구간이 병목인지 파악해야 최적화 대상을 정확히 선정할 수 있었고, 잘못된 가정으로 엉뚱한 곳을 최적화하는 시간 낭비를 막았습니다.
모델 추론 속도가 가장 큰 병목이었습니다. 모델 경량화와 양자화를 적용해 정확도 손실을 최소화하면서 처리 속도를 목표 사이클타임 이내로 낮추는 작업을 반복했습니다. 하드웨어 가속기를 활용하는 경우 드라이버 버전과 배치 크기 설정도 성능에 큰 영향을 줬습니다.
파이프라인 구조도 개선했습니다. 프레임 수신·전처리·추론을 별도 스레드로 분리하면 각 단계가 독립적으로 동작해 전체 처리량이 향상됐습니다. 버퍼 크기와 스레드 간 동기화 방식을 튜닝하면서 지연 없이 안정적인 처리가 가능해졌습니다.