성능 테스트 결과 요약 - 100-hours-a-week/5-yeosa-wiki GitHub Wiki

1. CLIP vs RAM++ 이미지 임베딩 성능 테스트 결과 (100장 기준)

모델 디바이스 배치 총 시간 (s) 1장당 평균 (s) GPU 메모리 (MB) CPU 사용률 (%)
CLIP CPU 1 7.23 0.0723 0 400.1
CLIP CPU 16 5.35 0.0535 0 399.7
CLIP CPU 32 4.49 0.0449 0 399.5
CLIP GPU (T4) 1 1.81 0.0181 356 374.5
CLIP GPU (T4) 16 0.96 0.0096 384 396.2
CLIP GPU (T4) 32 0.96 0.0096 416 376.5
RAM++ CPU 1 143.78 1.438 ❗ 0 390.3
RAM++ CPU 16 143.57 1.436 0 391.3
RAM++ CPU 32 149.93 1.499 0 385.4
RAM++ GPU (T4) 1 8.52 0.0852 1754 124.7
RAM++ GPU (T4) 16 7.52 0.0752 3607 127.1
RAM++ GPU (T4) 32 7.59 0.0759 5582 127.5

2. 결과 비교

a. 총 시간 (Total Time) 기준 비교

임베딩1

기준 요점
CLIP - GPU(Batch 32): 0.96초로 가장 빠름
  • CPU(Batch 32): 4.49초로 RAM++ 대비 약 32배 빠름 | | RAM++ | - GPU(Batch 32): 7.59초, CLIP보다 약 8배 느림
  • CPU(Batch 32): 149.9초, 절대적으로 느림 |
  • CLIP은 CPU와 GPU 모두에서 RAM++보다 빠르며, 특히 GPU에서 극적인 속도 차이를 보임

b. 1장당 평균 시간 (Avg Time/Image) 기준 비교

임베딩2

기준 요점
CLIP - GPU(Batch 32): 0.0096초
  • CPU(Batch 32): 0.0449초, 여전히 빠름 | | RAM++ | - GPU(Batch 32): 0.0759초, CLIP보다 약 8배 느림
  • CPU(Batch 32): 1.499초, 33배 느림 |
  • CLIP은 실시간 처리에도 적합한 수준의 속도를 제공, RAM++는 GPU를 사용해도 1장당 0.07초 이상 소요

c. GPU 메모리 사용량 기준 비교

임베딩3

기준 요점
CLIP - GPU(Batch 32): 416 MB- 전체적으로 매우 낮음
RAM++ - GPU(Batch 32): 5,582 MB
  • Swin-L 백본 특성상 13배 이상 높은 메모리 사용 |
  • CLIP은 모바일/저사양 GPU 환경에서도 사용 가능, RAM++는 고사양 GPU 필수

d. CPU 사용률 (CPU Utilization) 기준 비교

임베딩4

기준 요점
CLIP - 대부분 환경에서 CPU 사용률 370~400%, 즉 4코어 풀사용 수준
  • 빠른 처리 속도 덕분에 짧은 시간 안에 부하 집중 | | RAM++ | - CPU: 390% 내외, 병목이 크고 처리 시간 길어 지속 부하 유발
  • GPU: 약 125%, 멀티코어 활용은 적음 |