stable diffusion 최적화 계획과 기대 성능 지표 - 100-hours-a-week/5-yeosa-wiki GitHub Wiki
1. 최적화 계획
| 구간 | 조치 | 기대 효과 |
|---|---|---|
| Gemini API 호출 | - httpx.Client()로 연결 재사용- 타임아웃/재시도 설정 |
연결 성능 안정화 (RT 줄임) |
| ControlNet 조절 | - 요청당 1~2개만 적용 (ex. softedge + mediapipe) |
- 필요 시 옵션으로 제어 가능 | 생성 시간 최대 30% 단축 |
| GCS 업로드 최적화 | - 업로드는 비동기 처리 (
asyncioorBackgroundTasks) - URL은 즉시 생성하여 응답 | 사용자 응답 지연 없이 빠른 반환 |
| 이미지 크기 고정 | - 입력 해상도는
512x768고정 - 미리 리사이징 | 불필요한 연산 감소 | | SD 요청 설정 고정화 | - 모델, LoRA, sampler, seed 기본값 지정 | 요청 처리 일관성 확보 및 빠른 추론 가능 |
2. 기대 성능 지표
| 항목 | 설명 |
|---|---|
| 전체 처리 시간 | 요청 → 응답까지 총 소요 시간 |
| Gemini 프롬프트 생성 | 연결 재사용 및 응답 최소화 |
| Stable Diffusion 생성 | ControlNet 개수 제한 기준 |
| GCS 업로드 시간 | 업로드는 background 처리 |
| FastAPI 응답 시간 | GCS 업로드 기다리지 않음 |
| GPU 사용률 (T4) | 병렬 요청 시 부하 주의 |
| GPU 메모리 | ControlNet 수 제한 영향 |
| CPU 사용률 | base64, 디코딩 등 처리 포함 |