맞춤기술찾기

이전대상기술

이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일러 및 그 방법

  • 기술번호 : KST2023005286
  • 담당센터 : 대전기술혁신센터
  • 전화번호 : 042-610-2279
요약, Int. CL, CPC, 출원번호/일자, 출원인, 등록번호/일자, 공개번호/일자, 공고번호/일자, 국제출원번호/일자, 국제공개번호/일자, 우선권정보, 법적상태, 심사진행상태, 심판사항, 구분, 원출원번호/일자, 관련 출원번호, 기술이전 희망, 심사청구여부/일자, 심사청구항수의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 서지정보 표입니다.
요약 이종 컴퓨터 플랫폼 지원 딥러닝 컴파일 시스템 및 이종 컴퓨터 플랫폼 지원 딥러닝 컴파일러의 동작 방법이 개시된다. 본 발명의 실시예에 따른 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일러는, 적어도 하나의 프로그램이 기록된 메모리 및 프로그램을 실행하는 프로세서를 포함하며, 프로그램은, 딥 뉴럴넷 모델을 연산자들의 데이터 흐름에 따라 연결한 그래프로 변환하는 단계, 타겟 플랫폼에 포함된 적어도 둘 이상의 이종 가속기들에서의 연산자들의 실행 성능 측정 결과와 이종 가속기들에 분할되어 할당된 연산자들의 실행 순서를 고려하여 딥 뉴럴넷 모델을 코드로 변환하는 단계를 수행할 수 있다.
Int. CL G06F 8/30 (2018.01.01) G06F 8/41 (2018.01.01) G06N 3/04 (2023.01.01) G06N 3/063 (2023.01.01) G06N 3/08 (2023.01.01) G06F 9/48 (2018.01.01)
CPC G06F 8/37(2013.01) G06F 8/447(2013.01) G06N 3/045(2013.01) G06N 3/063(2013.01) G06N 3/08(2013.01) G06F 9/4881(2013.01)
출원번호/일자 1020220017588 (2022.02.10)
출원인 한국전자통신연구원
등록번호/일자
공개번호/일자 10-2023-0120850 (2023.08.17) 문서열기
공고번호/일자
국제출원번호/일자
국제공개번호/일자
우선권정보
법적상태 공개
심사진행상태 수리
심판사항
구분 국내출원/신규
원출원번호/일자
관련 출원번호
심사청구여부/일자 Y (2023.04.03)
심사청구항수 20

출원인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 출원인 표입니다.
번호 이름 국적 주소
1 한국전자통신연구원 대한민국 대전광역시 유성구

발명자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 발명자 표입니다.
번호 이름 국적 주소
1 유미선 대전광역시 유성구
2 권용인 대전광역시 유성구
3 김태호 대전광역시 유성구
4 박제만 대전광역시 유성구
5 이제민 대전광역시 유성구

대리인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 대리인 표입니다.
번호 이름 국적 주소
1 (유)한양특허법인 대한민국 서울특별시 강남구 논현로**길 **

최종권리자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 최종권리자 표입니다.
번호 이름 국적 주소
최종권리자 정보가 없습니다
번호, 서류명, 접수/발송일자, 처리상태, 접수/발송일자의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 행정처리 표입니다.
번호 서류명 접수/발송일자 처리상태 접수/발송번호
1 [특허출원]특허출원서
[Patent Application] Patent Application
2022.02.10 수리 (Accepted) 1-1-2022-0151327-74
2 [심사청구]심사청구서·우선심사신청서
2023.04.03 수리 (Accepted) 1-1-2023-0371408-13
번호, 청구항의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 청구항 표입니다.
번호 청구항
1 1
적어도 하나의 프로그램이 기록된 메모리; 및프로그램을 실행하는 프로세서를 포함하며,프로그램은, 딥 뉴럴넷 모델을 연산자들의 데이터 흐름에 따라 연결한 그래프로 변환하는 단계; 및타겟 플랫폼에 포함된 적어도 둘 이상의 이종 가속기들에서의 연산자들의 실행 성능 측정 결과와 이종 가속기들에 분할되어 할당된 연산자들의 실행 순서를 고려하여 딥 뉴럴넷 모델을 코드로 변환하는 단계를 수행하는 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일러
2 2
제1 항에 있어서, 실행 성능 측정 결과는그래프를 기반으로 타겟 플랫폼에 포함된 적어도 둘 이상의 이종 가속기들에서의 연산자들의 실행 성능 측정을 통해 획득되거나 또는 외부로부터 입력되는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일러
3 3
제2 항에 있어서, 프로그램은, 실행 성능 측정을 수행하는 경우에, 입력된 타겟 플랫폼 가속기 명세 정보를 기반으로 측정된 가속기 별 단위 연산자의 실행 성능 결과로 단위 성능 명세 파일을 생성하는 단계; 및 입력된 퓨징 연산자 명세 정보를 기반으로 측정된 가속기 별 연산자 그룹의 실행 성능 결과로 퓨징 연산자 성능 명세 파일을 생성하는 단계를 포함하는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일러
4 4
제3 항에 있어서, 실행 순서는실행 성능 측정 결과를 고려한 스케줄링을 통해 결정되거나 또는 외부로부터 입력되는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일러
5 5
제4 항에 있어서, 프로그램은, 스케줄링을 수행하는 경우에,실행 성능 측정 결과를 기반으로 연산자에 최대 실행 성능을 가지는 가속기를 매칭하는 단계; 연산자들을 순서대로 순회하면서 그래프를 분할하여 파티션을 생성하는 단계; 및생성된 파티션들의 실행 순서를 결정하는 단계를 수행하는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일러
6 6
제4 항에 있어서, 프로그램은, 스케줄링을 수행하기 이전에, 변환된 그래프를 하드웨어 독립적으로 최적화하는 단계를 더 수행하되, 최적화를 위해, 불필요한 연산자 제거, 연속적으로 발생되는 트랜스포즈(Transpose) 연산자 병합, 트랜스포즈(Transpose) 연산을 그래프의 하단으로 이동 및 연속 발생 Concat 연산자 병합 중 적어도 하나를 수행하는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일러
7 7
제5 항에 있어서, 프로그램은, 스케줄링을 수행하는 경우에,둘 이상의 이종 가속기들에서의 연산자들의 실행 성능 측정 결과를 기반으로 그래프를 적어도 하나의 연산자를 포함하는 복수의 브랜치들로 분리하는 단계를 더 수행하되, 매칭하는 단계는, 복수의 브랜치들 각각에 포함된 적어도 하나의 연산자 각각에 대해 최대 실행 성능을 가지는 가속기를 매칭하는 단계; 복수의 브랜치들 각각에 포함된 연산자 그룹에 대해 퓨징 연산자 성능 명세 파일을 기반으로 최대 실행 성능을 가지는 가속기를 검색하는 단계; 및연산자 그룹에서의 실행 성능이 개별 연산자의 실행 성능보다 양호할 경우, 해당 개별 연산자에 매칭된 가속기를 검색된 가속기로 재 매칭하는 단계를 더 수행하는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일러
8 8
제5 항에 있어서, 프로그램은, 스케줄링을 수행하는 경우에,복수의 브랜치들의 순차적 또는 병렬적 실행 여부를 구분하는 단계를 더 수행하되, 매칭하는 단계는, 병렬적으로 실행되는 브랜치들에 동일한 가속기가 매칭될 경우, 병렬성을 이용하여 성능이 향상되면, 서로 다른 가속기를 재 할당하는 단계를 더 수행하는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일러
9 9
제5 항에 있어서, 프로그램은, 파티션을 생성하는 단계에서, 브랜치 내의 연산자들을 순서대로 순회하면서 현재 연산자가 이전 연산자와 동일한 가속기가 매칭되어 있는 경우, 동일한 파티션으로 결정하고, 현재 연산자가 이전 연산자와 동일한 가속기가 매칭되어 있지 않은 경우, 새로운 파티션을 생성하여 추가하는 단계를 더 수행하는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일러
10 10
제8 항에 있어서, 프로그램은, 실행 순서를 결정하는 단계에서, 너비 우선 탐색 (breath-first) 방식으로 순회하면서 순차적 실행 순서를 결정하고, 동일한 병렬 브랜치 집합에 포함되어 있고 서로 상이한 가속기가 할당되어 있는 파티션을 병렬 파티션으로 결정하는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일러
11 11
제10 항에 있어서, 결정된 파티션의 순차적 실행 순서와 병렬 파티션 정보는, 특정 플랫폼에 비의존적인 형태로 파티션들의 실행 정보를 표현하는 파티션 스케줄 계획 및 특정 플랫폼에서 컴파일 가능한 코드 형태인 파티션 스케줄 코드 중 하나로 저장되는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일러
12 12
딥 뉴럴넷 모델을 연산자들의 데이터 흐름에 따라 연결한 그래프로 변환하는 단계; 및타겟 플랫폼에 포함된 적어도 둘 이상의 이종 가속기들에서의 연산자들의 실행 성능 측정 결과와 이종 가속기들에 분할되어 할당된 연산자들의 실행 순서를 고려하여 딥 뉴럴넷 모델을 코드로 변환하는 단계를 수행하는 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일 방법
13 13
제12 항에 있어서, 실행 성능 측정 결과는,그래프를 기반으로 타겟 플랫폼에 포함된 적어도 둘 이상의 이종 가속기들에서의 연산자들의 실행 성능 측정을 통해 획득되거나 또는 외부로부터 입력되고, 실행 성능 측정을 수행하는 경우에,입력된 타겟 플랫폼 가속기 명세 정보를 기반으로 측정된 가속기 별 단위 연산자의 실행 성능 결과로 단위 성능 명세 파일을 생성하는 단계; 및 입력된 퓨징 연산자 명세 정보를 기반으로 측정된 가속기 별 연산자 그룹의 실행 성능 결과로 퓨징 연산자 성능 명세 파일을 생성하는 단계를 수행하는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일 방법
14 14
제13 항에 있어서, 실행 순서는,실행 성능 측정 결과를 고려한 스케줄링을 통해 결정되거나 또는 외부로부터 입력되고,스케줄링을 수행하는 경우에,실행 성능 측정 결과를 기반으로 연산자에 최대 실행 성능을 가지는 가속기를 매칭하는 단계; 연산자들을 순서대로 순회하면서 그래프를 분할하여 파티션을 생성하는 단계; 및생성된 파티션들의 실행 순서를 결정하는 단계를 수행하는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일 방법
15 15
제14 항에 있어서, 스케줄링을 수행하기 이전에, 변환된 그래프를 하드웨어 독립적으로 최적화하는 단계를 더 수행하되, 최적화를 위해, 불필요한 연산자 제거, 연속적으로 발생되는 트랜스포즈(Transpose) 연산자 병합, 트랜스포즈(Transpose) 연산을 그래프의 하단으로 이동 및 연속 발생 Concat 연산자 병합 중 적어도 하나를 수행하는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일 방법
16 16
제14 항에 있어서, 스케줄링을 수행하는 경우에,둘 이상의 이종 가속기들에서의 연산자들의 실행 성능 측정 결과를 기반으로 그래프를 적어도 하나의 연산자를 포함하는 복수의 브랜치들로 분리하는 단계를 더 수행하되, 매칭하는 단계는, 복수의 브랜치들 각각에 포함된 적어도 하나의 연산자 각각에 대해 최대 실행 성능을 가지는 가속기를 매칭하는 단계; 복수의 브랜치들 각각에 포함된 연산자 그룹에 대해 퓨징 연산자 성능 명세 파일을 기반으로 최대 실행 성능을 가지는 가속기를 검색하는 단계; 및연산자 그룹에서의 실행 성능이 개별 연산자의 실행 성능보다 양호할 경우, 해당 개별 연산자에 매칭된 가속기를 검색된 가속기로 재 매칭하는 단계를 더 수행하는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일 방법
17 17
딥 뉴럴넷 모델을 연산자들의 데이터 흐름에 따라 연결한 그래프를 기반으로 타겟 플랫폼에 포함된 적어도 둘 이상의 이종 가속기들에서의 연산자들의 실행 성능을 측정하는 단계; 실행 성능 측정 결과를 기반으로 연산자에 최대 실행 성능을 가지는 가속기를 매칭하는 단계; 연산자들을 순서대로 순회하면서 그래프를 분할하여 파티션을 생성하는 단계; 및생성된 파티션들의 실행 순서를 결정하는 단계를 수행하는 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일을 위한 그래프 분할 및 스케줄 생성 방법
18 18
제17 항에 있어서, 실행 성능을 측정하는 단계는, 입력된 타겟 플랫폼 가속기 명세 정보를 기반으로 측정된 가속기 별 단위 연산자의 실행 성능 결과로 단위 성능 명세 파일을 생성하는 단계; 및 입력된 퓨징 연산자 명세 정보를 기반으로 측정된 가속기 별 연산자 그룹의 실행 성능 결과로 퓨징 연산자 성능 명세 파일을 생성하는 단계를 수행하는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일을 위한 그래프 분할 및 스케줄 생성 방법
19 19
제18 항에 있어서, 둘 이상의 이종 가속기들에서의 연산자들의 실행 성능 측정 결과를 기반으로 그래프를 적어도 하나의 연산자를 포함하는 복수의 브랜치들로 분리하는 단계를 더 포함하되, 매칭하는 단계는, 복수의 브랜치들 각각에 포함된 적어도 하나의 연산자 각각에 대해 최대 실행 성능을 가지는 가속기를 매칭하는 단계; 복수의 브랜치들 각각에 포함된 연산자 그룹에 대해 퓨징 연산자 성능 명세 파일을 기반으로 최대 실행 성능을 가지는 가속기를 검색하는 단계; 및연산자 그룹에서의 실행 성능이 개별 연산자의 실행 성능보다 양호할 경우, 해당 개별 연산자에 매칭된 가속기를 검색된 가속기로 재 매칭하는 단계를 수행하는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일을 위한 그래프 분할 및 스케줄 생성 방법
20 20
제19 항에 있어서, 복수의 브랜치들의 순차적 또는 병렬적 실행 여부를 구분하는 단계를 더 포함하되, 매칭하는 단계는, 병렬적으로 실행되는 브랜치들에 동일한 가속기가 매칭될 경우, 병렬성을 이용하여 성능이 향상되면, 서로 다른 가속기를 재 할당하는 단계를 더 수행하는, 이종 컴퓨팅 플랫폼 지원 딥러닝 컴파일을 위한 그래프 분할 및 스케줄 생성 방법
지정국 정보가 없습니다
패밀리정보가 없습니다
순번, 연구부처, 주관기관, 연구사업, 연구과제의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 국가R&D 연구정보 정보 표입니다.
순번 연구부처 주관기관 연구사업 연구과제
1 과학기술정보통신부 한국전자통신연구원 정보통신 방송연구개발사업 인공지능 시스템을 위한 뉴로모픽 컴퓨팅 SW 플랫폼 기술 개발