1 |
1
이종 컴퓨팅 클라우드의 컴퓨팅 유닛 동적 재조립 방법에 있어서,단말로부터 제1 컴퓨팅 요청을 수신하여 전체 이종 가속기들 각각에 대한 디바이스 코드를 컴파일하는 단계;상기 제1 컴퓨팅 요청에 기반하여 제1 컴퓨트 노드 및 제1 이종 가속기들을 할당하는 단계;상기 할당된 제1 이종 가속기들에 대한 디바이스 코드 및 라이브러리를 포함하는 컴퓨팅 유닛을 생성하고, 상기 할당된 제1 이종 가속기들을 제외한 전체 이종 가속기들에 대한 디바이스 코드 및 라이브러리를 포함하는 전역 데이터를 생성 및 저장하는 단계;상기 저장된 전역 데이터에서 상기 할당된 제1 이종 가속기들을 제외한 상기 할당된 제1 컴퓨터 노드의 모든 이종 가속기들의 디바이스 코드 및 라이브러리를 포함하는 지역 캐싱 데이터를 생성하는 단계;상기 생성된 컴퓨팅 유닛 및 지역 캐싱 데이터를 상기 할당된 제1 컴퓨트 노드에 송신하고 상기 컴퓨팅 유닛이 실행되도록 하여 상기 할당된 제1 이종 가속기들을 작동시키고, 상기 지역 캐싱 데이터가 임시 저장되도록 하는 단계; 및제2 컴퓨팅 요청을 수신하여 상기 컴퓨팅 유닛의 실행이 중단되도록 하고 상기 제2 컴퓨팅 요청에 기반하여 상기 컴퓨팅 유닛의 동작을 결정하는 단계;를 포함하는 동적 재조립 방법
|
2 |
2
제1항에 있어서,상기 제2 컴퓨팅 요청에 기반한 상기 컴퓨팅 유닛의 동작의 결정은,상기 제2 컴퓨팅 요청에 기반하여 제2 컴퓨트 노드 및 제2 이종 가속기들을 할당하되, 상기 제1 컴퓨트 노드 및 제2 컴퓨트 노드가 동일한지 여부 및 상기 제1 이종 가속기들 및 상기 제2 이종 가속기들이 동일한지 여부를 판단하여 상기 컴퓨팅 유닛의 동작을 결정하는 것을 특징으로 하는 동적 재조립 방법
|
3 |
3
제2항에 있어서,상기 판단에 있어서, 상기 제1 컴퓨트 노드 및 상기 제2 컴퓨트 노드가 동일하고 상기 제1 이종 가속기들 및 상기 제2 이종 가속기들이 동일하지 않은 경우,상기 컴퓨팅 유닛은 상기 제1 컴퓨트 노드에서, 상기 제1 이종 가속기들에 대한 디바이스 코드 및 라이브러리가 제거되고 상기 제1 컴퓨트 노드에 임시 저장된 상기 지역 캐싱 데이터를 사용하여 상기 제2 이종 가속기들에 대한 디바이스 코드 및 라이브러리를 포함하도록 다시 생성되며, 상기 다시 생성된 컴퓨팅 유닛이 실행되도록 하여 상기 할당된 제2 이종 가속기들을 작동시키는 것을 특징으로 하는 동적 재조립 방법
|
4 |
4
제2항에 있어서,상기 판단에 있어서, 상기 제1 컴퓨트 노드 및 상기 제2 컴퓨트 노드가 동일하지 않고 상기 제1 이종 가속기들 및 상기 제2 이종 가속기들이 동일한 경우,상기 컴퓨팅 유닛은 상기 제1 컴퓨트 노드에서 상기 제2 컴퓨트 노드로 전송되고, 상기 전송된 컴퓨팅 유닛이 실행되도록 하여 상기 할당된 제2 이종 가속기들을 작동시키는 것을 특징으로 하는 동적 재조립 방법
|
5 |
5
제2항에 있어서,상기 판단에 있어서, 상기 제1 컴퓨트 노드 및 상기 제2 컴퓨트 노드가 동일하지 않고 상기 제1 이종 가속기들 및 상기 제2 이종 가속기들이 동일하지 않은 경우,상기 컴퓨팅 유닛은 상기 제1 컴퓨트 노드로부터 수신되고, 상기 제1 이종 가속기들에 대한 디바이스 코드 및 라이브러리가 제거되고 상기 전역 데이터를 사용하여 상기 할당된 제2 이종 가속기들에 대한 디바이스 코드 및 라이브러리를 포함하도록 다시 생성되며, 상기 다시 생성된 컴퓨팅 유닛은 상기 제2 컴퓨트 노드에 송신되고 상기 다시 생성된 컴퓨팅 유닛이 실행되도록 하여 상기 할당된 제2 이종 가속기들을 작동시키는 것을 특징으로 하는 동적 재조립 방법
|
6 |
6
제1항에 있어서,상기 컴파일은 하나의 팻(FAT) 바이너리를 생성하되 전체 이종 가속기들 각각에 대한 디바이스 코드들 각각이 서로 다른 섹션에 저장되는 방식인 것을 특징으로 하는 동적 재조립 방법
|
7 |
7
마스터 노드 및 복수의 컴퓨트 노드를 포함하는, 이종 컴퓨팅 클라우드의 컴퓨팅 유닛 동적 재조립 장치에 있어서,상기 컴퓨트 노드 각각은 이종 가속기들 및 데이터를 임시 저장 가능한 캐시 메모리를 포함하고,상기 마스터 노드는,단말 및 상기 복수의 컴퓨트 노드와 데이터를 송수신하는 송수신부;상기 이종 가속기들에 대한 디바이스 코드 및 라이브러리가 저장되는 메모리;상기 메모리와 접속되는 적어도 하나의 프로세서; 및 입출력부를 포함하고,상기 적어도 하나의 프로세서는,상기 단말로부터 제1 컴퓨팅 요청을 수신하여 전체 이종 가속기들 각각에 대한 디바이스 코드를 컴파일하고,상기 제1 컴퓨팅 요청에 기반하여 제1 컴퓨트 노드 및 제1 이종 가속기들을 할당하고,상기 할당된 제1 이종 가속기들에 대한 디바이스 코드 및 라이브러리를 포함하는 컴퓨팅 유닛을 생성하고, 상기 할당된 제1 이종 가속기들을 제외한 전체 이종 가속기들에 대한 디바이스 코드 및 라이브러리를 포함하는 전역 데이터를 생성하여 상기 메모리에 저장하고,상기 메모리에 저장된 전역 데이터에서 상기 할당된 제1 이종 가속기들을 제외한 상기 할당된 제1 컴퓨터 노드의 모든 이종 가속기들의 디바이스 코드 및 라이브러리를 포함하는 지역 캐싱 데이터를 생성하고,상기 생성된 컴퓨팅 유닛 및 지역 캐싱 데이터를 상기 할당된 제1 컴퓨트 노드에 송신하고 상기 컴퓨팅 유닛이 실행되도록 하여 상기 할당된 제1 이종 가속기들을 작동시키고, 상기 지역 캐싱 데이터가 상기 캐시 메모리에 임시 저장되도록 하고,제2 컴퓨팅 요청을 수신하여 상기 컴퓨팅 유닛의 실행이 중단되도록 하고 상기 제2 컴퓨팅 요청에 기반하여 상기 컴퓨팅 유닛의 동작을 결정하는, 동적 재조립 장치
|
8 |
8
제7항에 있어서,상기 제2 컴퓨팅 요청에 기반한 상기 컴퓨팅 유닛의 동작의 결정은,상기 제2 컴퓨팅 요청에 기반하여 제2 컴퓨트 노드 및 제2 이종 가속기들을 할당하되, 상기 제1 컴퓨트 노드 및 제2 컴퓨트 노드가 동일한지 여부 및 상기 제1 이종 가속기들 및 상기 제2 이종 가속기들이 동일한지 여부를 판단하여 상기 컴퓨팅 유닛의 동작을 결정하는 것을 특징으로 하는 동적 재조립 장치
|
9 |
9
제8항에 있어서,상기 판단에 있어서, 상기 제1 컴퓨트 노드 및 상기 제2 컴퓨트 노드가 동일하고 상기 제1 이종 가속기들 및 상기 제2 이종 가속기들이 동일하지 않은 경우,상기 컴퓨팅 유닛은 상기 제1 컴퓨트 노드에서, 상기 제1 이종 가속기들에 대한 디바이스 코드 및 라이브러리가 제거되고 상기 제1 컴퓨트 노드의 상기 캐시 메모리에 임시 저장된 상기 지역 캐싱 데이터를 사용하여 상기 제2 이종 가속기들에 대한 디바이스 코드 및 라이브러리를 포함하도록 다시 생성되며, 상기 다시 생성된 컴퓨팅 유닛이 실행되도록 하여 상기 할당된 제2 이종 가속기들을 작동시키는 것을 특징으로 하는 동적 재조립 장치
|
10 |
10
제8항에 있어서,상기 판단에 있어서, 상기 제1 컴퓨트 노드 및 상기 제2 컴퓨트 노드가 동일하지 않고 상기 제1 이종 가속기들 및 상기 제2 이종 가속기들이 동일한 경우,상기 컴퓨팅 유닛은 상기 제1 컴퓨트 노드에서 상기 제2 컴퓨트 노드로 전송되고, 상기 전송된 컴퓨팅 유닛이 실행되도록 하여 상기 할당된 제2 이종 가속기들을 작동시키는 것을 특징으로 하는 동적 재조립 장치
|
11 |
11
제8항에 있어서,상기 판단에 있어서, 상기 제1 컴퓨트 노드 및 상기 제2 컴퓨트 노드가 동일하지 않고 상기 제1 이종 가속기들 및 상기 제2 이종 가속기들이 동일하지 않은 경우,상기 컴퓨팅 유닛은 상기 제1 컴퓨트 노드로부터 상기 마스터 노드로 수신되고, 상기 제1 이종 가속기들에 대한 디바이스 코드 및 라이브러리가 제거되고 상기 마스터 노드의 상기 메모리에 저장된 상기 전역 데이터를 사용하여 상기 할당된 제2 이종 가속기들에 대한 디바이스 코드 및 라이브러리를 포함하도록 다시 생성되며, 상기 다시 생성된 컴퓨팅 유닛은 상기 제2 컴퓨트 노드에 송신되고 상기 다시 생성된 컴퓨팅 유닛이 실행되도록 하여 상기 할당된 제2 이종 가속기들을 작동시키는 것을 특징으로 하는 동적 재조립 장치
|
12 |
12
제7항에 있어서,상기 컴파일은 하나의 팻(FAT) 바이너리를 생성하되 전체 이종 가속기들 각각에 대한 디바이스 코드들 각각이 서로 다른 섹션에 저장되는 방식인 것을 특징으로 하는 동적 재조립 장치
|
13 |
13
이종 컴퓨팅 클라우드의 컴퓨팅 유닛 동적 재조립을 위해 디지털 처리 장치에 의해 실행될 수 있는 명령어들의 프로그램이 유형적으로 구현되어 있으며, 디지털 처리 장치에 의해 판독될 수 있는 기록매체로서,제1항 내지 제6항 중 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체
|