표제지
국문초록
목차
제1장 서론 11
제2장 연구배경 및 문제점 14
제1절 단일 DNN 추론 시 연구 배경 14
1) 타겟모델(CSWinTT) 구조 및 동작방식 14
2) 타겟모델(CSWinTT) 실행 시간비율 분석 16
제2절 다수의 DNN 모델 학습 시 문제 상황 및 자원배분 방법 17
1) 다수의 DNN 학습 응용 실행 시 불공정한 GPU 자원배분 17
2) DNN 학습 응용들의 GPU 자원배분 방법 18
제3장 문제 해결 및 개선을 위한 기법 제안 19
제1절 병렬 MHA 연산 기반 트랜스포머 인코더 19
1) 모듈 분리 19
2) MHA 연산과정 21
3) 병렬 MHA 연산 적용 22
제2절 적응형 SD 기반 미니배치 재분배 기법 25
1) 제안 기법 25
2) 학습 응용에서 각 GPU에 분배하는 미니배치 데이터의 비율 26
3) 전체 시스템 동작 방식 27
4) GPU에 할당할 미니배치 비율 설정 알고리즘 29
제4장 실험 33
제1절 병렬 MHA 연산 적용에 따른 추론시간 감소 실험 33
1) 실험 환경 33
2) 실험결과 34
제2절 다수의 DNN 학습 시 GPU 자원배분 실험 37
1) 실험환경 37
2) 실험결과 및 분석 38
제5장 결론 42
참고문헌 43
ABSTRACT 46
[표 2-1] 객체추적에 소요되는 각 기능 블록의 실행시간 비율 16
[표 2-2] [그림 2-2]에 나타낸 응용들의 완료시간 17
[표 3-1] 4개의 GPU에서 2개의 DNN 학습 응용이 실행되는 예시 26
[표 4-1] 단일 DNN 추론 실험환경 33
[표 4-2] 다수의 DNN 학습 실험환경 37
[그림 2-1] CSWinTT 모델의 전체 실행과정 14
[그림 2-2] 3개의 학습 응용이 2개의 GPU에서 실행되는 예시 17
[그림 3-1] 파이썬 환경, C++환경에서의 PyTorch 모델 실행 19
[그림 3-2] TorchScript를 통한 인코더 레이어 모듈 분리 20
[그림 3-3] 인코더 내 한 레이어 실행 과정 21
[그림 3-4] 파이썬 환경에서 각 쓰레드들이 커널을 전달하는 과정 23
[그림 3-5] C++ 환경에서 각 쓰레드들이 커널을 전달하는 과정 24
[그림 3-6] MHA병렬연산 적용 후 인코더 내 한 레이어 실행 과정 24
[그림 3-7] 적응형 SD기반 미니배치 재분배 시스템의 전체 동작 과정 28
[그림 3-8] DR Management 알고리즘 수도코드 30
[그림 3-9] DR 업데이트 알고리즘 수도코드 31
[그림 4-1] 인코더 평균 실행시간 35
[그림 4-2] 평균 FPS 비교 35
[그림 4-3] 전체 실행과정 중 이미지 전처리와 인코더 실행시간의 점유율 비교 36
[그림 4-4] 학습시간에 따른 SDmaxdiff 변화[이미지참조] 39
[그림 4-5] 학습시간에 따른 전체 학습 응용 SD 평균값의 변화 40
[그림 4-6] 학습시간에 따른 GPU 활용률 평균값의 변화 40