1 |
1
모바일 GPU를 포함하는 AP가 수행하는 딥 러닝 추론 성능 개선 방법으로서, 커널이슈 개수 L-1(L은 2 이상의 정수)에 대해, N(N은 2 이상의 정수) 개의 커널 생성시간과 M(M은 2 이상의 정수) 개의 커널 수행시간의 각각의 조합을 상기 AP의 호스트와 상기 모바일 GPU에서 수행하고 각각의 조합에 대응하는 KLO 값을 결정하는 단계; 및 커널이슈 개수 L에 대해, 상기 N 개의 커널 생성시간과 상기 M 개의 커널 수행시간의 각각의 조합을 상기 AP의 상기 호스트와 상기 모바일 GPU에서 수행하고 각각의 조합에 대응하는 KLO 값을 결정하는 단계;를 포함하는, 딥 러닝 추론 성능 개선 방법
|
2 |
2
제1항에 있어서, 커널이슈 개수 L-1의 결정된 KLO 값을 포함하는 L-1 KLO 테이블과 커널이슈 개수 L의 결정된 KLO 값을 포함하는 L KLO 테이블로부터 상기 N 개의 커널 생성시간과 상기 M 개의 커널 수행시간의 각각의 조합에 대응하는 커널이슈 개수를 특정할 수 있는 커널이슈 정보를 생성하는 단계;를 더 포함하는,딥 러닝 추론 성능 개선 방법
|
3 |
3
제2항에 있어서, 상기 커널이슈 정보를 생성하는 단계는 상기 N 개의 커널 생성시간과 상기 M 개의 커널 수행시간의 각각의 조합의 L-1 KLO 값과 L KLO 값 중 가장 낮은 KLO 값을 가지는 커널이슈 개수 L-1 또는 커널이슈 개수 L을 상기 N 개의 커널 생성시간과 상기 M 개의 커널 수행시간의 각각의 조합에 대응시키는, 딥 러닝 추론 성능 개선 방법
|
4 |
4
제3항에 있어서, 상기 커널이슈 정보를 생성하는 단계는 각각의 커널 수행시간별 커널 생성시간에 대한 KLO 그래프를 특정할 수 있는 그래프 인자를 저장하는, 딥 러닝 추론 성능 개선 방법
|
5 |
5
제3항에 있어서, 상기 커널이슈 정보를 생성하는 단계는 1에서 L개의 KLO 테이블로부터 각각의 커널 생성시간과 각각의 커널 수행시간의 KLO 값 중 가장 낮은 KLO 값을 가지는 커널이슈 개수를 커널 생성시간과 커널 수행시간의 인덱싱에 따라 룩업할 수 있는 룩업 테이블을 생성하는, 딥 러닝 추론 성능 개선 방법
|
6 |
6
모바일 GPU를 포함하는 AP에서 수행되는 딥 러닝 추론 성능 개선 방법으로서, 상기 AP에서의 실행을 통해 제1 CNN 모델을 프로파일링하여 상기 제1 CNN 모델의 순차적으로 수행되는 복수의 커널별 커널 수행시간을 측정하는 단계; 및 상기 AP에서의 수행을 통해 생성되는 커널이슈 정보와 측정된 상기 복수의 커널별 수행시간을 이용하여 상기 제1 CNN 모델에 대한 제1 커널이슈 개수를 결정하는 단계;를 포함하는, 딥 러닝 추론 성능 개선 방법
|
7 |
7
제6항에 있어서, 상기 커널이슈 정보는 제2항을 통해 생성되는 커널이슈 정보인, 딥 러닝 추론 성능 개선 방법
|
8 |
8
제6항에 있어서,상기 AP에서의 실행을 통해 제2 CNN 모델을 통해 프로파일링하여 상기 제2 CNN 모델의 순차적으로 수행되는 복수의 커널별 커널 수행시간을 측정하는 단계; 및 상기 AP를 대상으로 한 상기 커널이슈 정보와 측정된 상기 복수의 커널별 커널 수행시간을 이용하여 상기 제2 CNN 모델에 대한 제2 커널이슈 개수를 결정하는 단계;를 포함하고,상기 제1 커널이슈 개수는 상기 AP에서 상기 제1 CNN 모델의 실행시에 호스트로부터 모바일 GPU로 이슈하는 커널의 개수이고 상기 제2 커널이슈 개수는 상기 AP에서 상기 제2 CNN 모델의 실행시에 호스트로부터 모바일 GPU로 이슈하는 커널의 개수인, 딥 러닝 추론 성능 개선 방법
|
9 |
9
제6항에 있어서, 상기 복수의 커널별 커널 수행시간을 측정하는 단계는 복수의 커널별 커널 생성시간을 더 측정하고, 상기 제1 CNN 모델에 대한 제1 커널이슈 개수를 결정하는 단계는, 입력 데이터에 대한 상기 제1 CNN 모델의 실행을 통한 딥 러닝 추론 이전에, 상기 복수의 커널별 커널 수행시간으로부터 커널 평균수행시간과 상기 복수의 커널별 커널 생성시간으로부터 커널 평균생성시간을 산출하고 산출된 커널 평균수행시간과 산출된 커널 평균생성시간에 대응하는 제1 커널이슈 개수를 커널이슈 정보로부터 정적으로 결정하는, 딥 러닝 추론 성능 개선 방법
|
10 |
10
제6항에 있어서, 상기 복수의 커널별 커널 수행시간을 측정하는 단계는 복수의 커널별 커널 생성시간을 더 측정하고, 상기 제1 CNN 모델에 대한 제1 커널이슈 개수를 결정하는 단계는, 입력 데이터에 대한 상기 제1 CNN 모델의 실행을 통한 딥 러닝 추론 이전에, 상기 복수의 커널별 커널 수행시간과 상기 복수의 커널별 커널 생성시간으로부터 순차적으로 수행되는 복수의 커널에서의 순차적으로 모바일 GPU로 이슈되는 커널 개수인 복수의 제1 커널이슈 개수를 커널이슈 정보로부터 정적으로 결정하는, 딥 러닝 추론 성능 개선 방법
|
11 |
11
제6항에 있어서, 상기 제1 CNN 모델에 대한 제1 커널이슈 개수를 결정하는 단계는, 입력 데이터에 대한 상기 제1 CNN 모델의 실행을 통한 딥 러닝 추론 동안에, 실시간으로 현재 커널의 커널 생성시간을 측정하고 실시간 측정된 커널 생성시간과 현재 커널에 대응하여 미리 측정된 커널 수행시간에 대응하는 제1 커널이슈 개수를 커널이슈 정보로부터 동적으로 결정하는, 딥 러닝 추론 성능 개선 방법
|
12 |
12
제9항 또는 제10항에 있어서, 결정된 제1 커널이슈 개수를 이용한 제1 CNN 모델의 상기 AP에서 실행을 통해 입력 데이터에 대한 딥 러닝 추론을 수행하는 단계;를 더 포함하는, 딥 러닝 추론 성능 개선 방법
|
13 |
13
제9항 내지 제11항 중 어느 한 항에 있어서, 상기 커널이슈 정보는 커널 생성시간과 커널 수행시간의 인덱싱에 따라 커널이슈 개수를 룩업할 수 있는 룩업 테이블인,딥 러닝 추론 성능 개선 방법
|