직접 경험 기반
대규모 예측 모델 최적화에서 가장 먼저 확인하는 건 계산 병목 구간입니다. 프로파일링 도구로 학습 시간의 70%를 차지하는 레이어를 찾고, 배치 크기 조정과 혼합 정밀도(FP16) 학습을 적용했습니다. 데이터 로딩이 병목일 때는 멀티 워커와 캐싱으로 GPU 유휴 시간을 줄였습니다. 피처 엔지니어링 단계에서는 범주형 변수 인코딩을 배치 밖에서 사전 처리해서 반복 연산을 제거했습니다. 이 경험에서 최적화는 코드보다 어디서 시간이 낭비되는지 먼저 측정하는 것에서 시작한다는 걸 배웠습니다.
최적화는 코드보다 어디서 시간이 낭비되는지 먼저 측정하는 것에서 시작한다는 걸 배웠고, 프로파일링이 최적화의 출발점임을 항상 기억합니다. 병목을 먼저 측정하는 습관이 시간을 낭비하지 않는 최적화의 핵심이라는 걸 이 경험에서 확인했습니다.