1 |
1
GPU 코드를 입력받아 슬레이브 노드로 전달하는 GPU 가상 디바이스 드라이버를 포함하는 마스터 노드; 및 상기 GPU 코드를 받아와 실제 GPU 를 통해 실행되도록 하는 GPU 가상 서버를 포함하는 슬레이브 노드(Slave Node)로 구분되는 다수의 클러스터 노드로 구성되는 GPU 가상화 시스템에 있어서, 상기 GPU 가상 디바이스 드라이버는,병렬 컴퓨팅 프레임워크로부터 M 개(M 은 자연수)의 가상 GPU 에 대한 GPU 코드를 N 개(N 은 M 과 같거나 다른 자연수)의 실제 GPU 로 전달시키기 위한 형태로 변환하는 에뮬레이터; 및상기 에뮬레이터에 의해 변환된 GPU 코드를 상기 N 개의 실제 GPU 로 전달하는 디스패처; 를 포함하는 것을 특징으로 하는 가변적 개수로 변환 가능한 GPU 가상화 시스템
|
2 |
2
제 1 항에 있어서, 상기 디스패처는,상기 N 개의 실제 GPU 의 위치를 기억하고, 상기 기억된 실제 GPU 의 위치에 기초하여 상기 변환된 GPU 코드를 전달하는 것을 특징으로 하는 가변적 개수로 변환 가능한 GPU 가상화 시스템
|
3 |
3
제 2 항에 있어서, 상기 GPU 가상 디바이스 드라이버는,GPU 코드를 통해 사용하는 데이터에 대한 상기 실제 GPU 메모리로 분할 가능한지를 워크아이템 사이즈와 워크그룹 사이즈에 기초하여 분석하는 어낼라이저; 를 더 포함하는 것을 특징으로 하는 가변적 개수로 변환 가능한 GPU 가상화 시스템
|
4 |
4
제 3 항에 있어서, 상기 어낼라이저는,상기 GPU 코드를 통해 사용하는 데이터의 분할이 가능한 경우, 상기 에뮬레이터와 상기 디스패처를 통해 상기 N 개의 실제 GPU 로 분할된 GPU 코드의 전달이 수행되도록 하며,상기 GPU 코드를 통해 사용하는 데이터의 분할이 가능하지 않은 경우, 공유 가상 메모리(Shared virtual memory) 방식 또는 CPU 수행 방식에 의해 분할이 가능하지 않는 GPU 코드가 수행되도록 하는 것을 특징으로 하는 가변적 개수로 변환 가능한 GPU 가상화 시스템
|
5 |
5
제 4 항에 있어서, 상기 어낼라이저는,상기 GPU 코드를 통해 사용하는 데이터에 대해 상기 N 개의 실제 GPU 에 분할되는 경우, 상기 N 개로 상기 워크그룹 사이즈(workgroup size)를 분할하여 상기 N 개의 실제 GPU 에 분배하여 실행시키는 것을 특징으로 하는 가변적 개수로 변환 가능한 GPU 가상화 시스템
|
6 |
6
제 5 항에 있어서, 상기 어낼라이저는,상기 GPU 코드를 통해 사용하는 데이터에 대해 상기 N 개의 실제 GPU 에 분할되지 않는 경우, 상기 실제 GPU 의 MMU 의 공유 가상 메모리(Shared virtual memory)를 이용한 상기 N 개의 실제 GPU 에서 겹치는 읽거나 쓰는 버퍼 영역에 대한 처리를 수행하는 것을 특징으로 하는 가변적 개수로 변환 가능한 GPU 가상화 시스템
|
7 |
7
제 1 항에 있어서, 상기 마스터 노드는,사용자에 의해 프로그램이 수행되는 노드이고,상기 슬레이브 노드는,상기 N 개의 실제 GPU 를 구비하여, GPU 연산을 수행하는 노드인 것을 특징으로 하는 가변적 개수로 변환 가능한 GPU 가상화 시스템
|
8 |
8
제 1 항에 있어서, 상기 GPU 가상 디바이스 드라이버는,병렬 컴퓨팅 프레임워크를 지원하는 것을 특징으로 하는 가변적 개수로 변환 가능한 GPU 가상화 시스템
|
9 |
9
제 1 항에 있어서, 상기 GPU 가상 서버와 상기 GPU 가상 디바이스 드라이버 간의 통신은 상기 마스터 노드와 상기 슬레이브 노드 간에 연결된 인터커넥션 네트워크(Interconnection Network)를 사용하는 것을 특징으로 하는 가변적 개수로 변환 가능한 GPU 가상화 시스템
|
10 |
10
GPU 병렬처리를 위해 GPU 가상화를 수행하는 GPU 가상화 시스템에 있어서,M 개의 가상 GPU 로 구현하기 위한 GPU 코드를 수행시키는 노드인 마스터 노드; 및상기 마스터 노드와 통신하여 상기 GPU 코드를 전달받으며, N 개의 실제 GPU 를 구비하여 GPU 연산을 수행하는 하나 이상의 슬레이브 노드; 를 포함하며,상기 마스터 노드는, 워크아이템 사이즈와 워크그룹 사이즈에 기초하여 상기 GPU 코드를 통해 사용하는 데이터의 분배를 연산하는 어낼라이저를 포함하는 것을 특징으로 하는 가변적 개수로 변환 가능한 GPU 가상화 시스템
|
11 |
11
제 10 항에 있어서, 상기 마스터 노드는,상기 어낼라이저에 의한 연산에 의해 상기 GPU 코드를 N 개의 슬레이브 노드를 위해 변환하도록 구성되는 에뮬레이터; 및상기 변환된 GPU 코드를 상기 N 개의 상기 슬레이브 노드 각각으로 제공하도록 구성되는 디스패처; 를 더 포함하는 것을 특징으로 하는 가변적 개수로 변환 가능한 GPU 가상화 시스템
|