맞춤기술찾기

이전대상기술

GPU 메모리 스케줄러 및 이를 이용한 GPU 메모리 선점 방법

  • 기술번호 : KST2020002288
  • 담당센터 : 서울서부기술혁신센터
  • 전화번호 : 02-6124-6930
요약, Int. CL, CPC, 출원번호/일자, 출원인, 등록번호/일자, 공개번호/일자, 공고번호/일자, 국제출원번호/일자, 국제공개번호/일자, 우선권정보, 법적상태, 심사진행상태, 심판사항, 구분, 원출원번호/일자, 관련 출원번호, 기술이전 희망, 심사청구여부/일자, 심사청구항수의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 서지정보 표입니다.
요약 GPU 메모리 스케줄러의 후킹 모듈이 GPU 메모리를 선점하는 방법으로서, 사용자 어플리케이션에서 공유 라이브러리를 호출한 함수가 GPU 메모리 할당 요청 함수이면, 호출 함수를 가로챈다. 가로챈 호출 함수의 변수로부터 GPU 메모리 요청 용량을 확인하고, 확인한 요청 용량을 포함하여 노드 스케줄러로 사용자 어플리케이션으로의 GPU 메모리 할당 가능 여부를 질의한다. 노드 스케줄러로부터 GPU 메모리 할당 승인을 수신하면, 가로챈 호출 함수의 또 다른 변수인 제1 메모리 주소를 제2 메모리 주소로 변경하고, 제2 메모리 주소에서부터 요청 용량만큼 GPU 메모리를 할당 받도록 제2 메모리 주소와 요청 용량을 변수로 하는 GPU 메모리 할당 요청 함수를 공유 라이브러리로 전달한다.
Int. CL G06F 9/50 (2018.01.01)
CPC G06F 9/5016(2013.01) G06F 9/5016(2013.01) G06F 9/5016(2013.01)
출원번호/일자 1020190093262 (2019.07.31)
출원인 서강대학교산학협력단
등록번호/일자 10-2086757-0000 (2020.03.03)
공개번호/일자
공고번호/일자 (20200309) 문서열기
국제출원번호/일자
국제공개번호/일자
우선권정보
법적상태 등록
심사진행상태 수리
심판사항
구분 신규
원출원번호/일자
관련 출원번호
심사청구여부/일자 Y (2019.07.31)
심사청구항수 14

출원인

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

발명자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 발명자 표입니다.
번호 이름 국적 주소
1 박성용 서울특별시 서대문구
2 구민우 서울특별시 동작구

대리인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 대리인 표입니다.
번호 이름 국적 주소
1 유미특허법인 대한민국 서울특별시 강남구 테헤란로 ***, 서림빌딩 **층 (역삼동)

최종권리자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 최종권리자 표입니다.
번호 이름 국적 주소
1 서강대학교 산학협력단 서울특별시 마포구
번호, 서류명, 접수/발송일자, 처리상태, 접수/발송일자의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 행정처리 표입니다.
번호 서류명 접수/발송일자 처리상태 접수/발송번호
1 [특허출원]특허출원서
[Patent Application] Patent Application
2019.07.31 수리 (Accepted) 1-1-2019-0787601-81
2 [우선심사신청]심사청구(우선심사신청)서
[Request for Preferential Examination] Request for Examination (Request for Preferential Examination)
2019.08.01 수리 (Accepted) 1-1-2019-0792303-08
3 [우선심사신청]선행기술조사의뢰서
[Request for Preferential Examination] Request for Prior Art Search
2019.08.02 수리 (Accepted) 9-1-9999-9999999-89
4 [우선심사신청]선행기술조사보고서
[Request for Preferential Examination] Report of Prior Art Search
2019.08.13 수리 (Accepted) 9-1-2019-0038747-23
5 의견제출통지서
Notification of reason for refusal
2019.11.21 발송처리완료 (Completion of Transmission) 9-5-2019-0843707-61
6 [거절이유 등 통지에 따른 의견]의견(답변, 소명)서
[Opinion according to the Notification of Reasons for Refusal] Written Opinion(Written Reply, Written Substantiation)
2019.12.16 수리 (Accepted) 1-1-2019-1299570-18
7 [명세서등 보정]보정서
[Amendment to Description, etc.] Amendment
2019.12.16 보정승인간주 (Regarded as an acceptance of amendment) 1-1-2019-1299571-64
8 등록결정서
Decision to grant
2020.02.24 발송처리완료 (Completion of Transmission) 9-5-2020-0136865-96
번호, 청구항의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 청구항 표입니다.
번호 청구항
1 1
GPU 메모리 스케줄러의 후킹 모듈이 GPU 메모리를 선점하는 방법으로서,사용자 어플리케이션에서 공유 라이브러리를 호출하는 함수를 확인하는 단계,상기 사용자 어플리케이션이 호출한 호출 함수가 GPU 메모리 할당 요청 함수이면, 상기 호출 함수를 가로채는(hooking) 단계,가로챈 상기 호출 함수의 변수로부터 GPU 메모리 요청 용량을 확인하고, 확인한 요청 용량을 포함하여 노드 스케줄러로 상기 사용자 어플리케이션으로의 GPU 메모리 할당 가능 여부를 질의하는 단계, 그리고상기 노드 스케줄러로부터 GPU 메모리 할당 승인을 수신하면, 상기 가로챈 호출 함수의 또 다른 변수인 제1 메모리 주소를 제2 메모리 주소로 변경하고, 상기 제2 메모리 주소에서부터 요청 용량만큼 GPU 메모리를 할당 받도록 제2 메모리 주소와 요청 용량을 변수로 하는 GPU 메모리 할당 요청 함수를 상기 공유 라이브러리로 전달하는 단계를 포함하고,상기 후킹 모듈은 상기 사용자 어플리케이션과 상기 공유 라이브러리와 함께 가상화 환경에 위치하는 복수의 컨테이너에 각각 삽입되어 있는 후킹 모듈들 중 어느 하나이고,상기 가로챈 호출 함수는 상기 GPU 메모리 할당 요청 함수, 데이터 복사 함수, GPU 메모리 해제 함수, 커널 실행을 위한 라이브러리 설정 함수 그리고 커널 실행 함수 중 어느 하나인 GPU 메모리 선점 방법
2 2
제1항에 있어서,상기 공유 라이브러리로 전달하는 단계 이후에,할당 받은 GPU 메모리를 이용한 작업 실행 정지 명령을 상기 노드 스케줄러로부터 수신하는 단계,상기 GPU 메모리에서 작업하는 데이터를 복사하기 위하여, 상기 GPU 메모리에서 사용하는 용량만큼을 메인 메모리에서 할당 받기 위한 메인 메모리 할당 API를 호출하는 단계,메인 메모리가 할당되면, 상기 GPU 메모리 상의 데이터를 상기 메인 메모리로 복사하는 단계, 그리고상기 GPU 메모리의 반환을 상기 노드 스케줄러로 알리는 단계를 포함하는 GPU 메모리 선점 방법
3 3
제2항에 있어서,상기 제1 메모리 주소는 상기 사용자 어플리케이션이 상기 GPU 메모리 할당 요청 함수를 처음 호출하였을 때 상기 사용자 어플리케이션에 반환된 메모리 주소이고, 상기 제2 메모리 주소는 상기 데이터가 위치할 메모리의 주소이며,상기 제2 메모리 주소는 GPU 메모리 주소 또는 메인 메모리 주소 중 어느 하나인 GPU 메모리 선점 방법
4 4
제2항에 있어서,상기 GPU 메모리의 반환을 상기 노드 스케줄러로 알리는 단계 이후에,상기 노드 스케줄러로부터 작업 실행 재개 명령을 수신하는 단계,상기 GPU 메모리를 할당 받기 위한 GPU 메모리 할당 요청 함수를 호출하는 단계, 그리고GPU 메모리가 할당되면, 상기 메인 메모리에 복사되어 있는 상기 데이터를 할당된 GPU 메모리로 복사하는 단계를 더 포함하는 GPU 메모리 선점 방법
5 5
삭제
6 6
제1항에 있어서,상기 GPU 메모리 할당 함수인지 확인하는 단계 이전에,상기 노드 스케줄러로 상기 후킹 모듈이 탑재되는 컨테이너를 등록하는 단계, 그리고상기 노드 스케줄러로부터 상기 컨테이너의 컨테이너 식별 정보를 수신하는 단계를 더 포함하는 GPU 메모리 선점 방법
7 7
GPU 메모리 스케줄러의 노드 스케줄러가 GPU 메모리를 선점하는 방법으로서,상기 GPU 메모리의 일부를 제1 GPU 컨테이너의 제1 사용자 어플리케이션에서 사용하고 있으며,제2 GPU 컨테이너의 후킹부로부터, 상기 제2 GPU 컨테이너에 포함된 제2 사용자 어플리케이션이 요청한 GPU 메모리의 할당 가능 질의를 수신하는 단계,상기 GPU 메모리의 가용 용량이 상기 제2 사용자 어플리케이션에서 요청한 GPU 메모리 요청 용량보다 적으면, 상기 제1 GPU 컨테이너의 후킹부로 상기 GPU 메모리에서의 작업 실행 정지 명령을 전송하는 단계,상기 제1 GPU 컨테이너의 후킹부로부터 GPU 메모리 반환 알림을 수신하면, 상기 제2 GPU 컨테이너의 후킹부로 메모리 할당 허가 신호를 전송하는 단계, 그리고상기 제1 GPU 컨테이너와 제2 GPU 컨테이너의 정보를 포함하는 컨테이너 리스트 테이블을 갱신하는 단계를 포함하고, 상기 GPU 메모리 스케줄러는 하나의 상기 노드 스케줄러와 복수의 GPU 컨테이너들 각각에 삽입된 후킹부들을 포함하며,상기 제1 GPU 컨테이너는 상기 제1 사용자 어플리케이션과 상기 제1 GPU 컨테이너의 후킹부를 포함하여 가상화 환경에 위치하고, 상기 제2 GPU 컨테이너는 상기 제2 사용자 어플리케이션과 상기 제2 GPU 컨테이너의 후킹부를 포함하여 가상화 환경에 위치하는 GPU 메모리 선점 방법
8 8
제7항에 있어서,상기 작업 실행 정지 명령을 전송하는 단계는,상기 제1 사용자 어플리케이션이 상기 GPU 메모리에서 처리하는 작업과 상기 제2 사용자 어플리케이션이 상기 GPU 메모리에서 처리할 작업의 우선 순위를 비교하는 단계, 그리고상기 처리할 작업의 우선 순위가 높으면, 상기 제1 GPU 컨테이너의 후킹부로 상기 실행 정지 명령을 전송하는 단계를 포함하는 GPU 메모리 선점 방법
9 9
제7항에 있어서,상기 컨테이너 리스트 테이블은 상기 제1 GPU 컨테이너와 제2 GPU 컨테이너 각각의 컨테이너 식별 정보, 컨테이너들 각각의 사용자 어플리케이션이 GPU 메모리 할당을 시도한 총 메모리 용량, 현재 GPU 메모리를 할당 받아 사용하고 있는 메모리 용량, 그리고 상기 GPU 메모리에서 작업이 실행중인지 여부를 나타내는 상태 정보를 포함하는 GPU 메모리 선점 방법
10 10
대상 사용자 어플리케이션에서 물리적인 GPU 메모리를 사용하기 위해 공유 라이브러리를 호출하는 호출 함수를 가로채고, 가로챈 호출 함수에 따라 상기 대상 사용자 어플리케이션에서 출력된 데이터가 향할 메모리 주소를 변경하여 상기 공유 라이브러리로 호출 함수를 전달하는 후킹부, 그리고상기 후킹부에서 전달되는 호출 함수들 중 GPU 메모리 할당 가능 질의를 수신하면, 상기 대상 사용자 어플리케이션이 상기 물리적인 GPU 메모리를 선점하도록 상기 물리적인 GPU 메모리를 공유하는 복수의 사용자 어플리케이션들 중 GPU 메모리 사용 정지 명령 대상 사용자 어플리케이션을 선택하고, 선택된 사용 정지 명령 대상 사용자 어플리케이션과 연결되어 있는 후킹부로 사용 정지 명령을 전송하는 노드 스케줄러를 포함하고,상기 후킹부는 상기 사용자 어플리케이션 및 공유 라이브러리와 함께 컨테이너에 포함되어 가상화 환경에 각각 위치하고, 상기 노드 스케줄러는 가상화 환경에 위치한 각 후킹부들과 연동하는 GPU 메모리 스케줄러
11 11
제10항에 있어서,상기 후킹부는,상기 공유 라이브러리를 호출하는 함수가 GPU 메모리 할당을 위한 함수, GPU 메모리 해제를 위한 함수, GPU 메모리와 메인 메모리 사이에 데이터 복사를 위한 함수, 그리고 커널 실행 관련 호출 함수 중 어느 하나이면, 상기 공유 라이브러리로 향하는 호출 함수를 가로채는 GPU 메모리 스케줄러
12 12
제11항에 있어서,상기 후킹부는,상기 노드 스케줄러로부터 사용 정지 명령을 수신하면, 상기 GPU 메모리에서 작업중인 데이터를 메인 메모리로 복사하기 위하여, 상기 GPU 메모리에서 사용하는 용량만큼의 메인 메모리 할당 함수를 호출하는 GPU 메모리 스케줄러
13 13
제12항에 있어서,상기 후킹부는,상기 호출 함수에 포함된 사용자 메모리 주소(ptrUser)를 실제 메모리 주소(ptrReal)로 변환하고, 상기 사용자 메모리 주소는 상기 GPU 메모리 할당 요청 함수가 처음 호출될 때 상기 대상 사용자 어플리케이션에 반환된 메모리 주소이고, 상기 실제 메모리 주소는 상기 데이터가 위치한 메모리의 메모리 주소이며, 상기 실제 메모리 주소는 GPU 메모리 주소 또는 메인 메모리 주소 중 어느 하나인 GPU 메모리 스케줄러
14 14
제13항에 있어서,상기 노드 스케줄러는,상기 대상 사용자 어플리케이션이 상기 GPU 메모리에서 처리할 작업과 상기 GPU 메모리를 공유하고 있는 복수의 사용자 어플리케이션들 각각의 작업의 우선순위를 비교하고, 비교한 우선순위에 따라 상기 사용 정지 명령을 수신할 사용자 어플리케이션을 결정하는 GPU 메모리 스케줄러
15 15
제14항에 있어서,상기 노드 스케줄러는,상기 GPU 메모리를 공유하거나 공유하고자 하는 복수의 컨테이너들 각각의 컨테이너 식별자를 생성하여 상기 후킹부로 전달하고, 상기 복수의 컨테이너들 각각에 대한 컨테이너 식별자, 각각의 컨테이너들에서 GPU 메모리 할당을 시도한 메모리 용량, 현재 GPU 메모리를 할당 받아 사용하고 있는 메모리 용량, 상기 GPU 메모리에서 작업이 실행중인지 여부를 나타내는 상태 정보를 포함하는 컨테이너 리스트 테이블을 관리하는 GPU 메모리 스케줄러
지정국 정보가 없습니다
패밀리정보가 없습니다
순번, 연구부처, 주관기관, 연구사업, 연구과제의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 국가R&D 연구정보 정보 표입니다.
순번 연구부처 주관기관 연구사업 연구과제
1 과학기술정보통신부 건국대학교 산학협력단 대학ICT연구센터지원사업 지능정보서비스를 위한 고성능 하이브리드 클라우드 컴퓨팅 기술 개발 및 인력양성