맞춤기술찾기

이전대상기술

프로파일을 이용한 부분 인라이닝 최적화 방법

  • 기술번호 : KST2015122810
  • 담당센터 : 서울동부기술혁신센터
  • 전화번호 : 02-2155-3662
요약, Int. CL, CPC, 출원번호/일자, 출원인, 등록번호/일자, 공개번호/일자, 공고번호/일자, 국제출원번호/일자, 국제공개번호/일자, 우선권정보, 법적상태, 심사진행상태, 심판사항, 구분, 원출원번호/일자, 관련 출원번호, 기술이전 희망, 심사청구여부/일자, 심사청구항수의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 서지정보 표입니다.
요약 본 발명은 프로파일을 이용한 부분 인라이닝 최적화 방법에 관한 것으로서, 보다 구체적으로는 (1) LLVM 중간 코드에 대하여 프로파일을 수행하는 단계; (2) LLVM에서 호출하는 함수에 포함되는 기본 블록을 파악하여, 시작 블록에서 바로 종료 블록을 호출하는지 여부를 판단하는 단계; (3) 시작 블록에서 바로 종료 블록을 호출하는 경우, 상기 프로파일 정보를 통해 경로의 수행 횟수를 파악하여 상기 경로가 핫 패스인지를 판별하는 단계; 및 (4) 상기 경로가 핫 패스일 경우 상기 경로 부분을 분할하여 부분 인라이닝 최적화를 적용하는 단계를 포함하는 것을 그 구성상의 특징으로 한다.본 발명에서 제안하고 있는 프로파일을 이용한 부분 인라이닝 최적화 방법에 따르면, LLVM에서 호출하는 함수를 여러 기본 블록(Basic Block)으로 분할하되, 시작 블록(entry block)에서 곧바로 함수의 끝인 종료 블록(exit block)을 호출 하는 경로가 핫 패스(hot path)일 경우, 또는 시작 블록에서 몇 블록 떨어져 있지 않은 종료 블록으로 향하는 경로에 핫 패스가 존재하는 경우에, 핫 패스 부분을 분할하여 호출함수에 인라이닝 되도록 하는 방식으로 부분 인라이닝 최적화를 구현함으로써 최적화의 효율을 혁신적으로 향상시킬 수 있다.또한, 본 발명에 따른 프로파일을 이용한 부분 인라이닝 최적화 방법은, LLVM 프로파일러를 활용하여 LLVM 중간 코드에 프로파일을 수행한 뒤, 프로파일 결과를 바탕으로 시작 블록에서 바로 종료 블록으로 향하는 경로가 핫 패스인지 여부를 확인하거나, 또는 종료 블록으로 향하는 경로의 빈도를 정확히 측정하여 핫 패스를 추출함으로써, 부분 인라이닝의 부작용을 최소화할 수 있다.
Int. CL G06F 8/40 (2018.01.01) G06F 9/455 (2018.01.01)
CPC G06F 8/4443(2013.01) G06F 8/4443(2013.01)
출원번호/일자 1020100129536 (2010.12.16)
출원인 서울대학교산학협력단, 한국과학기술연구원
등록번호/일자 10-1171667-0000 (2012.07.27)
공개번호/일자 10-2012-0067895 (2012.06.26) 문서열기
공고번호/일자 (20120806) 문서열기
국제출원번호/일자
국제공개번호/일자
우선권정보
법적상태 등록
심사진행상태 수리
심판사항
구분 신규
원출원번호/일자
관련 출원번호
심사청구여부/일자 Y (2010.12.16)
심사청구항수 4

출원인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 출원인 표입니다.
번호 이름 국적 주소
1 서울대학교산학협력단 대한민국 서울특별시 관악구
2 한국과학기술연구원 대한민국 서울특별시 성북구

발명자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 발명자 표입니다.
번호 이름 국적 주소
1 문수묵 대한민국 서울특별시 강남구
2 김재진 대한민국 서울특별시 관악구

대리인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 대리인 표입니다.
번호 이름 국적 주소
1 김건우 대한민국 서울특별시 금천구 가산디지털*로 ***, 에이동 ***호 특허그룹덕원 (가산동, 우림 라이온스밸리)

최종권리자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 최종권리자 표입니다.
번호 이름 국적 주소
1 서울대학교산학협력단 서울특별시 관악구
2 한국과학기술연구원 서울특별시 성북구
번호, 서류명, 접수/발송일자, 처리상태, 접수/발송일자의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 행정처리 표입니다.
번호 서류명 접수/발송일자 처리상태 접수/발송번호
1 [특허출원]특허출원서
[Patent Application] Patent Application
2010.12.16 수리 (Accepted) 1-1-2010-0832244-08
2 보정요구서
Request for Amendment
2010.12.28 발송처리완료 (Completion of Transmission) 1-5-2010-0115760-65
3 [지정기간연장]기간연장(단축, 경과구제)신청서
[Designated Period Extension] Application of Period Extension(Reduction, Progress relief)
2011.01.28 수리 (Accepted) 1-1-2011-0073317-29
4 [지정기간연장]기간연장(단축, 경과구제)신청서
[Designated Period Extension] Application of Period Extension(Reduction, Progress relief)
2011.02.28 수리 (Accepted) 1-1-2011-0147992-86
5 [지정기간연장]기간연장(단축, 경과구제)신청서
[Designated Period Extension] Application of Period Extension(Reduction, Progress relief)
2011.03.29 수리 (Accepted) 1-1-2011-0229563-14
6 지분약정 무효처분통지서
Notice for Invalidation of Share Agreement
2011.05.23 발송처리완료 (Completion of Transmission) 1-5-2011-0044385-37
7 선행기술조사의뢰서
Request for Prior Art Search
2011.09.15 수리 (Accepted) 9-1-9999-9999999-89
8 출원인정보변경(경정)신고서
Notification of change of applicant's information
2011.09.27 수리 (Accepted) 4-1-2011-5195109-43
9 선행기술조사보고서
Report of Prior Art Search
2011.10.20 수리 (Accepted) 9-1-2011-0085214-15
10 의견제출통지서
Notification of reason for refusal
2011.11.17 발송처리완료 (Completion of Transmission) 9-5-2011-0671250-76
11 [명세서등 보정]보정서
[Amendment to Description, etc.] Amendment
2012.01.17 보정승인간주 (Regarded as an acceptance of amendment) 1-1-2012-0044981-81
12 [거절이유 등 통지에 따른 의견]의견(답변, 소명)서
[Opinion according to the Notification of Reasons for Refusal] Written Opinion(Written Reply, Written Substantiation)
2012.01.17 수리 (Accepted) 1-1-2012-0044982-26
13 등록결정서
Decision to grant
2012.06.26 발송처리완료 (Completion of Transmission) 9-5-2012-0368194-11
14 출원인정보변경(경정)신고서
Notification of change of applicant's information
2013.01.14 수리 (Accepted) 4-1-2013-5007213-54
15 출원인정보변경(경정)신고서
Notification of change of applicant's information
2014.02.19 수리 (Accepted) 4-1-2014-5022002-69
16 출원인정보변경(경정)신고서
Notification of change of applicant's information
2015.03.17 수리 (Accepted) 4-1-2015-5033829-92
17 출원인정보변경(경정)신고서
Notification of change of applicant's information
2015.05.13 수리 (Accepted) 4-1-2015-5062924-01
18 출원인정보변경(경정)신고서
Notification of change of applicant's information
2019.05.13 수리 (Accepted) 4-1-2019-5093546-10
19 출원인정보변경(경정)신고서
Notification of change of applicant's information
2019.05.23 수리 (Accepted) 4-1-2019-5101798-31
20 출원인정보변경(경정)신고서
Notification of change of applicant's information
2019.08.02 수리 (Accepted) 4-1-2019-5154561-59
21 출원인정보변경(경정)신고서
Notification of change of applicant's information
2020.11.25 수리 (Accepted) 4-1-2020-5265458-48
번호, 청구항의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 청구항 표입니다.
번호 청구항
1 1
부분 인라이닝 최적화 방법에 있어서,(1) LLVM 중간 코드에 대하여 프로파일을 수행하는 단계;(2) LLVM에서 호출하는 함수에 포함되는 기본 블록을 파악하여, 시작 블록에서 바로 종료 블록을 호출하는지 여부를 판단하는 단계;(3) 시작 블록에서 바로 종료 블록을 호출하는 경우, 상기 프로파일 정보를 통해 경로의 수행 횟수를 파악하여 상기 경로가 핫 패스인지를 판별하는 단계; 및(4) 상기 경로가 핫 패스일 경우 상기 경로 부분을 분할하여 부분 인라이닝 최적화를 적용하는 단계를 포함하는 것을 특징으로 하는 프로파일을 이용한 부분 인라이닝 최적화 방법
2 2
제1항에 있어서, 상기 단계 (3) 대신에,(3’) 시작 블록에서 바로 종료 블록을 호출하지 않는 경우, 시작 블록과 종료 블록 사이에 위치한 블록의 개수를 확인하는 단계; 및(3”) 상기 블록의 개수가 일정 개수 이하일 경우, 상기 프로파일 정보를 통해 경로의 수행 횟수를 파악하여 상기 경로가 핫 패스인지를 판별하는 단계를 포함하는 것을 특징으로 하는 프로파일을 이용한 부분 인라이닝 최적화 방법
3 3
제1항 또는 제2항에 있어서, 상기 단계 (3) 또는 상기 단계 (3”)에서,상기 경로의 수행 횟수가 일정 횟수 이상일 경우 상기 경로를 핫 패스로 선정하는 것을 특징으로 하는 프로파일을 이용한 부분 인라이닝 최적화 방법
4 4
제3항에 있어서,상기 단계 (3’)는, 상기 시작 블록으로부터 상기 종료 블록까지 연결되는 적어도 하나 이상의 경로에 대하여 수행되며,상기 단계 (3”)에서, 상기 블록의 개수는 상기 각 경로의 블록의 개수를 의미하며, 상기 경로의 수행 횟수는 상기 적어도 하나 이상의 경로의 각각의 수행 횟수를 모두 합산한 수행 횟수를 의미하는 것을 특징으로 하는 프로파일을 이용한 부분 인라이닝 최적화 방법
지정국 정보가 없습니다
패밀리정보가 없습니다
순번, 연구부처, 주관기관, 연구사업, 연구과제의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 국가R&D 연구정보 정보 표입니다.
순번 연구부처 주관기관 연구사업 연구과제
1 지식경제부 한국과학기술연구원 산업원천기술개발사업 고성능 가상머신 규격 및 기술 개발