GPU 블록 레벨 스케줄링, 벤치마크 결과는?
가변 크기 이미지 처리를 위한 GPU 벤치마크에서 블록 레벨 메타데이터(Block-Level Metadata) 기법이 주목받음
이진 검색(Binary Search) 방식이 L2 캐시(L2 Cache)의 효율성으로 인해 예상외의 성능을 보임
메모리 사용량(Memory Usage) 측면에서 블록 레벨 메타데이터가 9000배 이상 효율적임을 확인
다양한 워크로드(Workload)에 따라 최적의 기법이 달라지며, 엣지 디바이스(Edge Device) 환경에서는 블록 레벨 방식이 유리함
GPU 가변 배치 처리의 문제점
본 연구는 가변 크기 이미지 배치를 GPU에서 처리하는 세 가지 방법(Lookup Table, Binary Search, Block-Level Metadata)을 비교 분석했다. 특히, 패딩(Padding) 없이 다양한 크기의 이미지를 처리해야 하는 상황에서 메모리 사용량(Memory Usage)과 성능(Performance) 간의 트레이드 오프를 제시한다. 데이터 격리 아키텍처(Data Isolation Architecture)를 통해 각 블록이 독립적으로 작업을 처리하도록 설계하여 병렬 처리의 효율성을 높였다.
이진 검색(Binary Search)의 예상 밖 성능
저자는 이진 검색 방식이 O(log M)의 시간 복잡도로 인해 성능 저하를 예상했지만, RTX 4090의 72MB L2 캐시(L2 Cache) 덕분에 이진 검색(Binary Search)이 거의 무료로 수행됨을 확인했다. 이는 현대 GPU의 캐시 메모리(Cache Memory) 구조를 활용한 결과로, 메모리 접근(Memory Access) 비용을 최소화하여 성능을 향상시켰다. 하지만, 1M개 이상의 이미지 처리 시에는 블록 레벨 방식에 비해 성능이 저하되는 경향을 보였다.
블록 레벨 메타데이터(Block-Level Metadata)의 장점
블록 레벨 메타데이터 방식은 각 블록이 O(1)의 시간 복잡도로 이미지 ID를 조회할 수 있어, 빠른 접근(Fast Access)이 가능하다. 특히, 0.27MB의 적은 메모리 사용량으로 2GB에 달하는 Lookup Table 방식 대비 9000배 이상의 메모리 효율성을 보였다. 또한, 블록 단위로 스케줄링 정보(Scheduling Information)를 추가하여 유연성을 확보할 수 있다는 점이 강점으로 꼽힌다. 데이터 미저장 정책(Zero-Retention Policy)을 통해 보안성을 강화할 수 있다.
다양한 워크로드(Workload)에 따른 최적 기법
벤치마크 결과에 따르면, 일반적인 워크로드(10K 이미지)에서는 블록 레벨 방식이, 대량의 작은 이미지(1M+) 처리 시에는 이진 검색 방식이 유리하다. 또한, 엣지 디바이스(Edge Device)와 같이 L2 캐시가 작은 환경에서는 블록 레벨 방식이 더 나은 성능을 보일 수 있다. 멀티모달 분석(Multimodal Analysis)을 위한 유연성을 고려할 때 블록 레벨 메타데이터 방식이 더 적합하다는 결론을 내렸다.