KR101656706B1 - 고성능 컴퓨팅 환경에서의 작업 분배 시스템 및 방법 - Google Patents

고성능 컴퓨팅 환경에서의 작업 분배 시스템 및 방법 Download PDF

Info

Publication number
KR101656706B1
KR101656706B1 KR1020150047016A KR20150047016A KR101656706B1 KR 101656706 B1 KR101656706 B1 KR 101656706B1 KR 1020150047016 A KR1020150047016 A KR 1020150047016A KR 20150047016 A KR20150047016 A KR 20150047016A KR 101656706 B1 KR101656706 B1 KR 101656706B1
Authority
KR
South Korea
Prior art keywords
job
slave
node
time
information
Prior art date
Application number
KR1020150047016A
Other languages
English (en)
Inventor
오승택
Original Assignee
두산중공업 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 두산중공업 주식회사 filed Critical 두산중공업 주식회사
Priority to KR1020150047016A priority Critical patent/KR101656706B1/ko
Application granted granted Critical
Publication of KR101656706B1 publication Critical patent/KR101656706B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5066Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

본 발명은 고성능 컴퓨팅 환경에서 작업 분배 시스템 및 방법에 관한 것으로, 복수의 슬레이브 노드, 연산 의존성이 존재하는 작업(work)을 복수의 잡(job)으로 분리하고, 우선순위가 높은 잡(job) 순으로 이용 가능 슬레이브 노드들이 해당 잡 수행시 소요되는 총 연산시간을 계산하며, 상기 계산된 총 연산시간이 최소인 슬레이브 노드에 해당 잡을 분배하는 마스터 노드를 포함할 수 있다.

Description

고성능 컴퓨팅 환경에서의 작업 분배 시스템 및 방법{JOB DISTRIBUTION SYSTEM IN HIGH-PERFORMANCE COMPUTING ENVIRONMENT}
본 발명은 클러스터(cluster)에 포함된 슬레이브 노드(slave node)의 성능과 수에 따라 작업을 스케줄링(scheduling)하는 고성능 컴퓨팅 환경에서의 작업 분배 시스템 및 방법에 관한 것이다.
고성능 컴퓨팅(High Performance Computing; HPC)분야에서, 주류를 이루는 분산/병렬 컴퓨팅 환경은 클러스터 시스템이다. 또한, 하드웨어 기술의 발달로 클러스터를 구성하는 노드들의 자원 구성이 이기종으로 다양화되고 각 자원이 지원하는 용량도 대용량화되고 있다.
HPC 머신들은 일반적으로 노드로서 지칭되는 이기종 매니코어(Mani-core) 기반 HPC 클러스터를 이용하여 설계되고 있다. 이기종 매니코어 기반 HPC 클러스터는 노드들이 동일한 자원 구성 및 계산 능력을 갖는 형태가 아니라 노드들의 구성 및 계산 능력이 자원 구성에 따라 특화된 형태를 갖는다.
한편, 대부분의 대규모 과학 및 공학 응용에 있어, 성능은 주로 병렬 확장성(parallel scalability)에 의해 결정되고, 개개 노드의 속도에 의해 결정되지 않으므로, 확장성은 고성능 클러스터를 구축하는 데 있어서 제한 요소(limiting factor)이다. 확장성은 일반적으로 i) 하드웨어, ii) 메모리, I/O 및 통신 대역폭, iii) 소프트웨어, iv) 아키텍처, 및 v) 애플리케이션에 기반을 두고 있다.
그러나, HPC 환경에서의 프로세싱, 메모리, 및 I/O 대역폭은 균형을 이루고 있지 않으며, 확장(scale)이 용이하지 않다.
또한, 과학 연산, 시뮬레이션 연산 등은 SIMD(Single Instruction Multiple Data) 형태로 수행되므로, 연산 시간이 오래 걸리는 단점이 있다.
선행기술1: 한국등록특허 제1160721호: 고성능 컴퓨팅(HPC) 시스템에서의 스케쥴링
본 발명의 목적은 범용 프로세서(CPU)와 함께 다양한 성능 가속 장치(GPU, MIC, FPGA 등)를 동시에 활용하는 고성능 컴퓨팅 시스템에서 연산 시간을 단축시킬 수 있는 고성능 컴퓨팅 환경에서의 작업 분배 시스템 및 방법을 제공함에 있다.
본 발명의 다른 목적은 네트워크를 이용한 클러스터(cluster)로 구성된 HPC 시스템에서 슬레이브 노드의 성능과 수에 따라 작업을 스케줄링할 수 있는 고성능 컴퓨팅 환경에서의 작업 분배 시스템 및 방법을 제공함에 있다.
상기 목적들을 달성하기 위하여 본 발명의 일 측면에 따르면, 복수의 슬레이브 노드, 연산 의존성이 존재하는 작업(work)을 복수의 잡(job)으로 분리하고, 우선순위가 높은 잡(job) 순으로 이용 가능 슬레이브 노드들이 해당 잡 수행시 소요되는 총 연산시간을 계산하며, 상기 계산된 총 연산시간이 최소인 슬레이브 노드에 해당 잡을 분배하는 마스터 노드를 포함하는 고성능 컴퓨팅 환경에서 작업 분배 시스템이 제공된다.
상기 슬레이브 노드는 실시간 또는 주기적으로 자신의 상태정보를 상기 마스터 노드로 전송할 수 있다.
상기 마스터 노드는, 연산 의존성이 존재하지 않은 작업의 경우, 이용 가능 슬레이브 노드들 중에서 연산 속도가 가장 빠른 슬레이브 노드에 상기 작업을 할당할 수 있다.
또한, 상기 마스터 노드는 잡 수행 시간, 네트워크 오버헤드 시간 및 연결 노드 수를 이용하여 해당 잡 수행시 소요되는 총 연산시간을 계산할 수 있다.
여기서, 상기 잡 수행 시간은 해당 잡의 연산에 필요한 메모리 양, 그 잡의 인스트럭션 수, 해당 슬레이브 노드의 연산속도를 이용하여 구할 수 있다.
본 발명의 다른 측면에 따르면, 각 슬레이브 노드들의 상태정보를 수집 및 관리하는 상태정보 관리부, 작업의 연산 의존성 및 상기 상태정보 관리부에서 관리하는 슬레이브 노드들의 상태정보에 근거하여 총 연산시간이 최소인 슬레이브 노드에 해당 작업을 할당하는 작업 스케줄 관리부를 포함하는 마스터 노드가 제공된다.
상기 상태정보는 슬레이브 노드들의 토폴로지, 슬레이브 노드간 네트워크 오버헤드, 자원 사용정보, 하드웨어 성능, 메모리 여유 용량, 연산속도(FLOPS), 입출력 속도, 대역폭 정보 중 적어도 하나를 포함할 수 있다.
상기 작업 스케줄 관리부는, 상기 작업의 속성정보를 기 설정된 기준정보와 비교하여, 기준정보 이상인 경우 연산 의존성이 존재하고, 기준정보 이상이 아닌 경우 연산 의존성이 존재하지 않다고 판단하며, 그 판단결과를 포함하는 작업정보를 할당모듈로 전송하는 작업 분석모듈, 상기 상태정보 관리부에서 관리하는 슬레이브 노드들의 상태정보에 근거하여 슬레이브 노드들의 이용 가능한 자원정보를 분석하고, 상기 분석된 이용 가능한 자원정보를 상기 할당모듈로 전송하는 노드 분석모듈, 상기 작업 분석모듈로부터 전송된 작업정보와 상기 노드 분석모듈로부터 전송된 이용 가능한 자원정보에 근거하여 해당 작업을 적어도 하나 이상의 슬레이브 노드에 분배하는 할당모듈을 포함할 수 있다.
상기 할당모듈은 연산 의존성이 존재하는 작업의 경우, 상기 작업을 복수의 잡(job)으로 분리하고, 상기 이용 가능한 자원정보에 근거하여 이용 가능한 슬레이브 노드들을 선정한 후, 우선순위가 높은 잡순으로 이용 가능 슬레이브 노드들이 해당 잡 수행시 소요되는 총 연산시간을 계산하며, 상기 계산된 총 연산시간이 최소인 슬레이브 노드에 해당 잡을 분배할 수 있다. 여기서, 상기 총 연산시간은 잡 수행 시간, 네트워크 오버헤드 시간 및 연결 노드 수를 이용하여 계산되고, 상기 잡 수행시간은 해당 잡의 연산에 필요한 메모리 양, 그 잡의 인스트럭션 수, 해당 슬레이브 노드의 연산속도를 이용하여 구해진 것일 수 있다.
상기 할당모듈은 연산 의존성이 존재하지 않은 작업의 경우, 이용 가능 슬레이브 노드들 중에서 연산 속도가 가장 빠른 슬레이브 노드에 상기 작업을 할당할 수 있다.
본 발명의 또 다른 측면에 따르면, 마스터 노드와 복수의 슬레이브 노드로 구성된 클러스터에서 마스터 노드가 작업을 분배하는 방법에 있어서, (a) 작업의 연산 의존성 여부를 판단하는 단계, (b) 연산 의존성이 존재하는 경우, 상기 작업을 복수의 잡으로 분리하는 단계, (c) 상기 분리된 잡들의 우선순위에 따라 이용 가능 슬레이브 노드들을 대상으로 해당 잡 수행시 소요되는 총 연산시간을 계산하고, 상기 계산된 총 연산시간이 최소인 슬레이브 노드에 해당 잡을 분배하는 단계를 포함하는 고성능 컴퓨팅 환경에서의 작업 분배 방법이 제공된다.
상기 (c) 단계는, (c-1) 상기 이용 가능한 슬레이브 노드들이 우선순위의 잡을 수행하는데 소요되는 잡 수행 시간을 각각 계산하는 단계, (c-2) 상기 잡 수행 시간, 네트워크 오버헤드 시간 및 연결 노드 수를 이용하여 상기 이용 가능한 슬레이브 노드들이 해당 잡을 수행하는데 소요되는 총 연산 시간을 계산하는 단계, (c-3) 상기 총 연산시간이 최소인 슬레이브 노드에 해당 잡을 할당하는 단계, (c-4) 다음 순서의 잡이 존재하는 경우, 상기 (c-1)부터 다시 수행하는 단계를 포함할 수 있다.
본 발명에 따르면, 범용 프로세서(CPU)와 함께 다양한 성능 가속 장치(GPU, MIC, FPGA 등)를 동시에 활용하여 클러스터의 작업을 스케줄링함으로써, 연산 시간을 단축시킬 수 있다.
또한, 네트워크를 이용한 클러스터(cluster)로 구성된 HPC 시스템에서 슬레이브 노드의 성능과 수에 따라 작업을 스케줄링할 수 있다.
도 1은 본 발명의 실시예에 따른 고성능 컴퓨팅 환경에서의 작업 분배 시스템을 나타낸 도면이다.
도 2는 본 발명의 실시예에 따른 마스터 노드의 구성을 개략적으로 나타낸 블럭도이다.
도 3은 본 발명의 실시예에 따른 슬레이브 노드의 물리적 구성을 나타낸 블럭도이다.
도 4는 본 발명의 실시예에 따른 고성능 컴퓨팅 환경에서의 작업 분배 방법을 나타낸 도면이다.
이하, 첨부된 도면들을 참조하여 본 발명에 따른 '고성능 컴퓨팅 환경에서의 작업 분배 시스템 및 방법'을 상세하게 설명한다. 설명하는 실시 예들은 본 발명의 기술 사상을 당업자가 용이하게 이해할 수 있도록 제공되는 것으로 이에 의해 본 발명이 한정되지 않는다. 또한, 첨부된 도면에 표현된 사항들은 본 발명의 실시 예들을 쉽게 설명하기 위해 도식화된 도면으로 실제로 구현되는 형태와 상이할 수 있다.
한편, 이하에서 표현되는 각 구성부는 본 발명을 구현하기 위한 예일 뿐이다. 따라서, 본 발명의 다른 구현에서는 본 발명의 사상 및 범위를 벗어나지 않는 범위에서 다른 구성부가 사용될 수 있다. 또한, 각 구성부는 순전히 하드웨어 또는 소프트웨어의 구성만으로 구현될 수도 있지만, 동일 기능을 수행하는 다양한 하드웨어 및 소프트웨어 구성들의 조합으로 구현될 수도 있다. 또한, 하나의 하드웨어 또는 소프트웨어에 의해 둘 이상의 구성부들이 함께 구현될 수도 있다.
또한, 어떤 구성요소들을 '포함'한다는 표현은, '개방형'의 표현으로서 해당 구성요소들이 존재하는 것을 단순히 지칭할 뿐이며, 추가적인 구성요소들을 배제하는 것으로 이해되어서는 안 된다.
본 명세서에서 '클러스터'는 복수 개의 컴퓨터들이 서로 네트워킹이 가능하게 연결되어 있고, 외부에서 보았을 때 하나의 시스템으로 보이는 시스템을 의미한다. 클러스터를 구성하는 병렬 연결된 컴퓨터들은 '노드'로 칭하기로 한다. 각각의 노드들은 근거리 통신망(LAN), 원거리 통신망(WAN) 등을 이용하여 네트워킹 가능하도록 연결되어 있는 것이 일반적이다.
도 1은 본 발명의 실시예에 따른 고성능 컴퓨팅 환경에서의 작업 분배 시스템을 나타낸 도면이다.
도 1을 참조하면, 고성능 컴퓨팅 환경에서의 작업 분배 시스템은 작업 수행을 요청하는 클라이언트(100), 클라이언트(100)가 요청한 작업을 처리하는 클러스터를 포함한다.
클라이언트(100)는 작업 요청을 클러스터에 전달하고, 처리 완료된 작업결과를 인출하거나 열람한다. 클라이언트(100)는 클러스터에 작업 요청을 전달할 때 어떤 방식으로 처리되어야 하는지 특정할 수 있다.
클러스터는 클라이언트(100)로부터 전달받은 작업(work)들이 저장된 큐(Queue)(200), 마스터 노드(300)와 하나 이상의 슬레이브 노드(400a, 400b,..400n, 이하 400이라 칭함)를 포함한다. 여기서, 작업(work)은 하나의 어플리케이션(application), 하나의 일 등을 포함할 수 있다.
작업들이 저장된 큐(200)는 FIFO(First-In-First-Out) 방식으로 동작하는 저장 장치가 될 수 있다.
마스터 노드(300)는 클라이언트(100)로부터 작업 수행이 요청되면, 작업의 연산 의존성 및 슬레이브 노드들(400)의 상태정보에 근거하여 연산시간이 최소인 슬레이브 노드(400)에 해당 작업을 할당한다. 이때, 마스터 노드(300)는 작업의 연산 의존성 여부에 따라 해당 작업을 복수 개의 잡(job)으로 분리하고, 각 잡을 서로 다른 슬레이브 노드에 할당할 수 있다. 즉, 마스터 노드(300)는 연산 의존성이 존재하지 않은 작업의 경우, 이용 가능 슬레이브 노드들 중에서 연산 속도가 가장 빠른 슬레이브 노드에 작업을 할당한다. 또한, 마스터 노드(300)는 연산 의존성이 존재하는 작업의 경우, 그 작업을 복수의 잡으로 분리하고, 분리된 잡들의 우선순위에 따라 이용 가능 슬레이브 노드들을 대상으로 해당 잡의 수행시 소요되는 총 연산시간을 계산 및 그 값이 최소인 슬레이브 노드에 해당 잡을 할당한다.
마스터 노드(300)는 슬레이브 노드들(400)로부터 작업 수행 결과를 수신 및 조합하여 해당 클라이언트(100)에게 제공한다.
이러한 마스터 노드(300)에 대한 상세한 설명은 도 2를 참조하기로 한다.
슬레이브 노드(400)는 실시간 또는 주기적으로 자신의 상태정보를 마스터 노드(300)로 전송한다. 여기서, 상태정보는 슬레이브 노드들의 토폴로지, 슬레이브 노드간 네트워크 오버헤드, 자원 사용정보, 하드웨어 성능, 메모리 여유 용량, 연산속도(FLOPS), 입출력 속도, 대역폭 정보 포함할 수 있고, 상기 자원 사용정보는 현재 사용중인 메모리 양 등을 포함할 수 있다.
또한, 슬레이브 노드(400)는 마스터 노드(300)에 의해 할당된 작업 또는 잡을 수행하고, 작업 수행 결과를 마스터 노드(300)로 전송한다.
슬레이브 노드(400)는 마스터 노드(300)로부터 작업을 분배받아 실질적인 연산을 수행하는 노드들이다. 여기서, 슬레이브 노드(400)는 PC(Personal Computer), 워크스테이션, 서버, 라우터, 메인프레임, 블레이드 서버 또는 고밀도 서버 내의 모듈러 컴퓨터, PDA(Personal Digital Assistant), 엔터테인먼트 센터, 셋톱 박스 또는 모바일 장치 중 적어도 하나를 포함할 수 있다.
이러한 클라이언트(100), 마스터 노드(300) 및 슬레이브 노드(400)는 네트워크로 연결될 수 있다. 네트워크는 WIFI를 비롯한 무선 네트워크일 수 있고, LAN을 비롯한 유선 네트워크일 수 있으나 이에 한정되는 것은 아니다.
한편, 본 발명의 일 실시예에서 클라이언트(100), 마스터 노드(300) 및 슬레이브 노드(400)는 각각 단일의 서버일 수 있다. 본 발명의 다른 실시예에서 클라이언트(100), 마스터 노드(300) 및 슬레이브 노드(400) 중 적어도 하나는 다중 롤(role) 역할을 하는 하나의 서버에 포함될 수도 있다. 여기서 서버는 물리적 서버 그 자체이거나, 데스크탑 및 노트북을 비롯한 개인용 컴퓨터, 태블릿, 스마트폰 상에서 구동되는 서버일 수 있다.
도 2는 본 발명의 실시예에 따른 마스터 노드의 구성을 개략적으로 나타낸 블럭도이다.
도 2를 참조하면, 마스터 노드(300)는 상태정보 관리부(310), 작업 스케줄 관리부(320)를 포함한다.
상태정보 관리부(310)는 슬레이브 노드들로부터 상태정보를 수집 및 관리한다. 여기서, 상태정보는 슬레이브 노드들의 토폴로지, 슬레이브 노드간 네트워크 오버헤드, 자원 사용정보, 하드웨어 성능, 메모리 여유 용량, 연산속도(FLOPS), 입출력 속도, 대역폭 정보 등을 포함할 수 있다.
본 발명의 다른 실시예에 따르면, 상태정보 관리부(310)는 슬레이브 노드들의 상태정보를 이용하여 이용 가능한 자원정보를 분석할 수 있다. 여기서, 이용 가능한 자원정보는 현재 이용 가능한 슬레이브 노드의 총수, 이용 가능 슬레이브 노드들의 이용 가능한 CPU, 이용 가능한 GPU, 이용 가능한 메모리 양 등을 포함할 수 있다.
작업 스케줄 관리부(320)는 수행 요청된 작업의 연산 의존성 및 슬레이브 노드들의 상태정보에 근거하여 총 연산시간이 최소인 슬레이브 노드에 해당 작업을 할당한다.
이러한 작업 스케줄 관리부(320)는 작업 분석모듈(322), 노드 분석모듈(324), 할당 모듈(326)을 포함한다.
작업 분석모듈(322)은 수행 요청된 작업(work)을 분석하여 연산 의존성 여부를 판단한다. 즉, 작업 분석모듈(322)은 수행 요청된 작업을 분석하여 데이터 양, 인스트럭션(instruction) 수 등의 작업 속성정보를 확인하고, 그 속성정보를 기 설정된 기준정보와 비교한다. 작업 분석모듈(322)은 속성정보가 기준정보 이상인 경우 연산 의존성이 있다고 판단하고, 기준정보 이상이 아닌 경우 연산 의존성이 없다고 판단한다. 여기서, 인스트럭션(instruction)은 특정 프로세스(process)내에서 실행되는 하나의 흐름을 나타내는 단위일 수 있다.
작업 분석모듈(322)은 작업 데이터, 연산 의존성 여부 등을 포함하는 작업 정보를 할당모듈로 전송한다.
노드 분석모듈(324)은 상태정보 관리부(310)에 저장된 슬레이브 노드들의 상태정보에 근거하여 슬레이브 노드들의 이용 가능한 자원정보를 분석한다. 여기서, 이용 가능한 자원정보는 이용할 수 있는 슬레이브 노드들의 수, 슬레이브 노드들의 이용 가능한 CPU, GPU수 및 메모리 양 등을 포함할 수 있다. 슬레이브 노드들의 총 수는 할당된 모든 슬레이브 노드들에서 이용할 수 없는 슬레이브 노드들의 수를 뺀 값일 수 있고, 슬레이브 노드는 최소 하나의 CPU와 최소 하나의 GPU를 가질 수 있으며, 메모리는 각 슬레이브 노드에서 할당되는 메모리의 양으로 유동적인 수치일 수 있다.
노드 분석모듈(324)은 분석된 이용 가능한 자원정보를 할당모듈(326)로 전송한다.
할당모듈(326)은 작업 분석모듈(322)로부터 전송된 작업정보와 노드 분석모듈(324)로부터 전송된 이용 가능한 자원정보에 근거하여 해당 작업을 적어도 하나 이상의 슬레이브 노드에 분배한다.
할당모듈(326)은 연산 의존성이 없는 작업의 경우, 이용 가능한 자원정보 중에서 연산 속도가 가장 빠른 슬레이브 노드에 작업을 할당한다.
할당모듈(326)은 연산 의존성이 있는 작업의 경우, 작업을 복수의 잡(job)으로 분리하고, 이용 가능 슬레이브 노드들을 대상으로 해당 잡의 수행시 소요되는 총 연산시간이 최소인 슬레이브 노드에 해당 잡을 할당한다.
즉, 할당모듈(326)은 연산 의존성이 있는 작업을 다수의 잡(job)으로 분리한다. 잡의 분리기준은 데이터(data)의 양, 연산 횟수 등일 수 있다. 이때, 할당모듈(326)은 분리된 잡들의 우선순위를 파악하고, 우선순위가 높은 순으로 잡 큐(job queue)에 저장할 수 있다. 그런 다음 할당모듈(326)은 이용 가능한 자원정보에 근거하여 이용 가능한 슬레이브 노드들을 선정하고, 이용 가능한 슬레이브 노드들을 대상으로 각 잡을 수행하는데 소요되는 잡 수행시간을 계산한다. 이때, 할당모듈(326)은 잡 큐에 저장된 우선순위에 따라 잡들의 잡 수행시간을 계산한다.
할당모듈(326)은 수학식 1을 이용하여 이용 가능한 슬레이브 노드들이 해당 잡을 수행하는데 소요되는 잡 수행시간(Ti)을 구한다.
Figure 112015032597589-pat00001
여기서, 인스트럭션(instruction)은 특정 프로세스(process)내에서 실행되는 하나의 흐름을 나타내는 단위일 수 있고, 연산속도(FLOPS)는 계산 성능을 나타내는 것으로, CPU의 구성 코어 및 계산 가속 장치(GPU, MIC, FPGA) 유형별로 관리되어 세밀한 단위의 자원 할당을 지원하여 자원 사용의 효율성을 높일 수 있고, 최적화된 성능을 통하여 작업을 수행할 수 있다.
할당모듈(326)은 수학식 1을 이용하여 잡 수행시간이 구해지면, 수학식 2를 이용하여 총 연산시간을 슬레이브 노드별로 구한다.
Figure 112015032597589-pat00002
여기서, Ti는 i슬레이브 노드의 잡 수행시간, 네트워크 오버헤드 시간은 슬레이브 노드들의 네트워크 오버헤드 평균값, 가장 긴 시간, 가장 짧은 시간 등으로, 네트워크 종류에 따라 다른 값을 가질 수 있다. 연결노드 수는 연산 의존성이 있는 슬레이브 노드들의 수로, 잡의 개수일 수 있다.
수학식 2를 이용하여 각 슬레이브 노드들의 총 연산시간이 계산되면, 할당모듈(326)은 총 연산 시간이 가장 짧은 슬레이브 노드에 해당 잡을 할당한다.
예를 들어, 작업이 잡1, 잡2, 잡3의 3개 잡으로 분리 및 우선순위에 따라 잡1, 잡2, 잡3이 순서대로 잡큐에 저장되고, 이용 가능한 슬레이브 노드가 슬레이브 노드1, 슬레이브 노드3, 슬레이브 노드 5, 슬레이브 노드 6인 경우 잡 할당 방법에 설명하기로 한다.
할당모듈(326)은 슬레이브 노드1, 슬레이브 노드3, 슬레이브 노드 5, 슬레이브 노드 6가 최우선순위의 잡1을 수행하는데 소요되는 잡1 수행 시간을 각각 구한다. 이때, 할당모듈(326)은 잡1을 수행하는데 필요한 메모리양, 잡1의 인스트럭션 수, 슬레이브 노드1의 연산속도를 이용하여 슬레이브 노드 1에서의 잡1 수행 시간을 계산한다. 또한, 할당모듈(326)은 잡1을 수행하는데 필요한 메모리양, 잡1의 인스트럭션 수, 슬레이브 노드3의 연산속도를 이용하여 슬레이브 노드 3에서의 잡1 수행 시간을 계산한다. 또한, 할당모듈(326)은 잡1을 수행하는데 필요한 메모리양, 잡1의 인스트럭션 수, 슬레이브 노드5의 연산속도를 이용하여 슬레이브 노드 5에서의 잡1 수행 시간을 계산한다. 또한, 할당모듈(326)은 잡1을 수행하는데 필요한 메모리양, 잡1의 인스트럭션 수, 슬레이브 노드6의 연산속도를 이용하여 슬레이브 노드 6에서의 잡1 수행 시간을 계산한다.
그런 후, 할당모듈(326)은 슬레이브 노드1, 3, 5, 6 각각이 잡1을 수행하는데 소요되는 총 연산시간을 수학식 2를 이용하여 각각 계산한다. 이때, 연결노드수는 잡의 수에 해당하므로, 3개일 수 있다. 잡1을 수행하는 소용되는 총 연산시간이 구해지면, 할당모듈은 총 연산시간이 최소인 슬레이브 노드에 잡1을 할당한다.
그런 후, 할당모듈(326)은 상기와 같은 과정을 통해 잡2, 잡3를 할당할 슬레이브 노드를 각각 결정하게 된다.
도 3은 본 발명의 실시예에 따른 슬레이브 노드의 물리적 구성을 나타낸 블럭도이다.
도 3을 참조하면, 슬레이브 노드(400)는 프로세서(410), 메모리(420)를 포함한다.
프로세서(410)는 슬레이브 노드(400)의 이용 가능한 자원 정보를 마스터 노드에 전달한다. 여기서, 슬레이브 노드(400)의 이용 가능한 자원 정보는 슬레이브 노드(400)의 이용 가능한 CPU 수, GPU 수, 메모리의 양 등을 포함할 수 있다.
또한, 프로세서(410)는 마스터 노드에서 할당된 작업 또는 잡을 연산한다. 이때, 할당된 작업 또는 잡의 연산이 완료되면, 프로세서(410)는 사용가능신호를 생성하여 마스터 노드에 전달할 수 있다.
슬레이브 노드(400)는 프로세서(410)로서 CPU(Central Processing Unit)(412) 및 GPU(Graphics Processing Unit)(414)를 포함하되, CPU(412)는 복수의 코어를 포함할 수 있고, GPU(414)는 복수 개일 수 있다.
한편, 본 발명의 실시예에서 프로세서(410)는 FPGA(Field Programmable Gate Array)를 비롯한 반도체 소자일 수도 있다.
프로세서(410)는 마스터 노드로부터 분배된 작업 또는 잡을 CPU(412)에서 처리할 제1 데이터 블록과 GPU(414)에서 처리할 제2 데이터 블록으로 추가적으로 분할할 수 있다. 이를 위해, 프로세서(410)는 GPU(414)가 일정 시간동안 처리할 수 있는 처리량을 CPU 코어의 개수로 환산하고, CPU 코어 구비 개수와 GPU 코어 환산 개수를 합산한 코어 합산 개수를 구한다. 그런 후, 프로세서(410)는 분배된 작업 또는 잡을 코어 합산 개수만큼의 단위 데이터로 분할하고, 각각의 단위 데이터 중 코어 구비 개수만큼의 단위 데이터는 CPU(412)에, 코어 환산 개수만큼의 단위 데이터는 GPU(414)에 각각 할당할 수 있다. 따라서, 제1 데이터 블록의 크기는 슬레이브 노드(400)에 구비된 CPU(412)의 코어 구비 개수에 상응하고, 제2 데이터 블록의 크기는 코어 환산 개수에 상응한다.
본 발명의 실시예에서, 슬레이브 노드(400)는 복수의 GPU(414)를 포함할 수 있고, 코어 환산 개수만큼의 단위 데이터는, 각각의 크기가 복수의 GPU(414) 각각의 프로세싱 블록 개수에 비례하도록 구성된 복수의 데이터 블록으로 분할되어 각각의 GPU(414)에 할당될 수 있다.
이와 같이 작업 또는 잡이 하나의 슬레이브 노드(400) 내에서 제1 데이터 블록과 제2 데이터 블록으로 한번 더 분할 및 CPU(412)와 GPU(414)에 분배되어 처리됨으로써 계산의 처리 속도가 증가할 수 있다.
메모리(420)는 프로세서(410)에서 처리할 데이터나 데이터 처리 결과를 저장한다.
메모리(420)는 RAM을 비롯한 메모리 장치, 하드 디스크 드라이브(Hard Disk Drive, HDD), 솔리드 스테이트 드라이브(Solid State Drive, SSD), CD와 DVD를 비롯한 광학 드라이브 등을 포함할 수 있다.
도 4는 본 발명의 실시예에 따른 고성능 컴퓨팅 환경에서의 작업 분배 방법을 나타낸 도면이다.
도 4를 참조하면, 마스터 노드는 작업(work) 수행 요청이 수신되면(S402), 수신된 작업을 분석하여(S404), 연산 의존성이 존재하는지를 판단한다(S406).
S406의 판단결과, 연산 의존성이 있으면, 마스터 노드는 작업을 다수의 잡으로 분리한다(S408). 이때, 마스터 노느는 잡들의 우선순위도 파악한다.
그런 후, 마스터 노드는 이용 가능한 슬레이브 노드들이 최우선순위의 잡을 수행하는데 소요되는 잡 수행 시간을 각각 계산하고(S410), 그 잡 수행 시간을 이용하여 각 슬레이브 노드들이 해당 잡을 수행하는데 소요되는 총 연산 시간을 계산한다(S412). 이때, 마스터 노드는 수학식 1을 이용하여 잡 수행 시간을 계산하고, 수학식 2를 이용하여 총 연산시간을 계산한다.
S412의 수행 후, 마스터 노드는 총 연산시간이 가장 짧게 걸리는 슬레이브 노드에 해당 잡을 할당한다(S414).
그런 후, 마스터 노드는 다음 순서의 잡이 존재하는지의 여부를 판단하고(S416), 다음 순서의 잡이 존재하면, S410부터의 과정을 수행한다.
만약, S406의 판단결과, 연산 의존성이 없으면, 마스터 노드는 연산 속도가 가장 빠른 슬레이브 노드에 작업을 할당한다(S418).
이와 같이, 본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100 : 클라이언트 200 : 큐
300 : 마스터 노드 310 : 상태정보 관리부
320 : 작업 스케줄 관리부 400 : 슬레이브 노드
410 : 프로세서 420 : 메모리

Claims (13)

  1. 복수의 슬레이브 노드;
    작업의 속성정보를 기 설정된 기준정보와 비교하여 연산 의존성을 판단하고, 연산 의존성이 존재하는 작업(work)을 복수의 잡(job)으로 분리하며, 우선순위가 높은 잡(job) 순으로 이용 가능 슬레이브 노드들의 해당 잡 수행시 소요되는 총 연산시간을 계산하고, 상기 계산된 총 연산시간이 최소인 슬레이브 노드에 해당 잡을 분배하는 마스터 노드;를 포함하되,
    상기 마스터 노드로부터 잡을 분배받은 슬레이브 노드는, 구비된 성능 가속 장치의 기 설정된 일정시간동안 처리 가능한 잡 처리량을 CPU의 코어 개수로 환산하고, CPU의 코어 구비 개수와 상기 환산된 코어 개수를 근거로 상기 분배받은 잡을 CPU에서 처리할 데이터 블록과 상기 성능 가속 장치에서 처리할 데이터 블록으로 분할하여 연산을 수행하는 것을 특징으로 하는 고성능 컴퓨팅 환경에서 작업 분배 시스템.
  2. 제1항에 있어서,
    상기 슬레이브 노드는 실시간 또는 주기적으로 자신의 상태정보를 상기 마스터 노드로 전송하는 것을 특징으로 하는 고성능 컴퓨팅 환경에서 작업 분배 시스템.
  3. 제1항에 있어서,
    상기 마스터 노드는, 연산 의존성이 존재하지 않은 작업의 경우, 이용 가능 슬레이브 노드들 중에서 연산 속도가 가장 빠른 슬레이브 노드에 상기 작업을 할당하는 것을 특징으로 하는 고성능 컴퓨팅 환경에서 작업 분배 시스템.
  4. 제1항에 있어서,
    상기 마스터 노드는 잡 수행 시간, 네트워크 오버헤드 시간 및 연결 노드 수를 이용하여 해당 잡 수행시 소요되는 총 연산시간을 계산하는 것을 특징으로 하는 고성능 컴퓨팅 환경에서 작업 분배 시스템.
  5. 제4항에 있어서,
    상기 잡 수행 시간은 해당 잡의 연산에 필요한 메모리 양, 그 잡의 인스트럭션 수, 해당 슬레이브 노드의 연산속도를 이용하여 구하는 것을 특징으로 하는 고성능 컴퓨팅 환경에서 작업 분배 시스템.
  6. 각 슬레이브 노드들의 상태정보를 수집 및 관리하는 상태정보 관리부; 및
    작업의 속성정보를 기 설정된 기준정보와 비교하여 연산 의존성을 판단하고, 작업의 연산 의존성 및 상기 상태정보 관리부에서 관리하는 슬레이브 노드들의 상태정보에 근거하여 총 연산시간이 최소인 슬레이브 노드에 해당 작업을 할당하는 작업 스케줄 관리부;를 포함하고,
    상기 작업을 할당받은 슬레이브 노드는, 구비된 성능 가속 장치의 기 설정된 일정시간동안 처리 가능한 잡 처리량을 CPU의 코어 개수로 환산하고, CPU의 코어 구비 개수와 상기 환산된 코어 개수를 근거로 상기 할당받은 작업을 CPU에서 처리할 데이터 블록과 상기 성능 가속 장치에서 처리할 데이터 블록으로 분할하여 연산을 수행하는 것을 특징으로 하는 마스터 노드.
  7. 제6항에 있어서,
    상기 상태정보는 슬레이브 노드들의 토폴로지, 슬레이브 노드간 네트워크 오버헤드, 자원 사용정보, 하드웨어 성능, 메모리 여유 용량, 연산속도(FLOPS), 입출력 속도, 대역폭 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 마스터 노드.
  8. 제6항에 있어서,
    상기 작업 스케줄 관리부는,
    상기 작업의 속성정보를 기 설정된 기준정보와 비교하여, 기준정보 이상인 경우 연산 의존성이 존재하고, 기준정보 이상이 아닌 경우 연산 의존성이 존재하지 않다고 판단하며, 그 판단결과를 포함하는 작업정보를 할당모듈로 전송하는 작업 분석모듈;
    상기 상태정보 관리부에서 관리하는 슬레이브 노드들의 상태정보에 근거하여 슬레이브 노드들의 이용 가능한 자원정보를 분석하고, 상기 분석된 이용 가능한 자원정보를 상기 할당모듈로 전송하는 노드 분석모듈; 및
    상기 작업 분석모듈로부터 전송된 작업정보와 상기 노드 분석모듈로부터 전송된 이용 가능한 자원정보에 근거하여 해당 작업을 적어도 하나 이상의 슬레이브 노드에 분배하는 할당모듈을 포함하는 것을 특징으로 하는 마스터 노드.
  9. 제8항에 있어서,
    상기 할당모듈은 연산 의존성이 존재하는 작업의 경우, 상기 작업을 복수의 잡(job)으로 분리하고, 상기 이용 가능한 자원정보에 근거하여 이용 가능한 슬레이브 노드들을 선정한 후, 우선순위가 높은 잡순으로 이용 가능 슬레이브 노드들이 해당 잡 수행시 소요되는 총 연산시간을 계산하며, 상기 계산된 총 연산시간이 최소인 슬레이브 노드에 해당 잡을 분배하는 것을 특징으로 하는 마스터 노드.
  10. 제9항에 있어서,
    상기 총 연산시간은 잡 수행 시간, 네트워크 오버헤드 시간 및 연결 노드 수를 이용하여 계산되고,
    상기 잡 수행시간은 해당 잡의 연산에 필요한 메모리 양, 그 잡의 인스트럭션 수, 해당 슬레이브 노드의 연산속도를 이용하여 구해진 것을 특징으로 하는 마스터 노드.
  11. 제8항에 있어서,
    상기 할당모듈은 연산 의존성이 존재하지 않은 작업의 경우, 이용 가능 슬레이브 노드들 중에서 연산 속도가 가장 빠른 슬레이브 노드에 상기 작업을 할당하는 것을 특징으로 하는 마스터 노드.
  12. 마스터 노드와 복수의 슬레이브 노드로 구성된 클러스터에서 마스터 노드가 작업을 분배하는 방법에 있어서,
    (a) 작업의 속성정보를 기 설정된 기준정보와 비교하여 연산 의존성을 판단하는 단계;
    (b) 연산 의존성이 존재하는 경우, 상기 작업을 복수의 잡으로 분리하는 단계; 및
    (c) 상기 분리된 잡들의 우선순위에 따라 이용 가능 슬레이브 노드들을 대상으로 해당 잡 수행시 소요되는 총 연산시간을 계산하고, 상기 계산된 총 연산시간이 최소인 슬레이브 노드에 해당 잡을 분배하는 단계;를 포함하고,
    상기 마스터 노드로부터 잡을 분배받은 슬레이브 노드는, 구비된 성능 가속 장치의 기 설정된 일정시간동안 처리 가능한 잡 처리량을 CPU의 코어 개수로 환산하고, CPU의 코어 구비 개수와 상기 환산된 코어 개수를 근거로 상기 분배받은 잡을 CPU에서 처리할 데이터 블록과 상기 성능 가속 장치에서 처리할 데이터 블록으로 분할하여 연산을 수행하는 것을 특징으로 하는 고성능 컴퓨팅 환경에서의 작업 분배 방법.
  13. 제12항에 있어서,
    상기 (c) 단계는,
    (c-1) 상기 이용 가능한 슬레이브 노드들이 우선순위의 잡을 수행하는데 소요되는 잡 수행 시간을 각각 계산하는 단계;
    (c-2) 잡 수행 시간, 네트워크 오버헤드 시간 및 연결 노드 수를 이용하여 상기 이용 가능한 슬레이브 노드들이 해당 잡을 수행하는데 소요되는 총 연산 시간을 계산하는 단계;
    (c-3) 상기 총 연산시간이 최소인 슬레이브 노드에 해당 잡을 할당하는 단계;
    (c-4) 다음 순서의 잡이 존재하는 경우, 상기 (c-1)부터 다시 수행하는 단계를 포함하는 고성능 컴퓨팅 환경에서의 작업 분배 방법
KR1020150047016A 2015-04-02 2015-04-02 고성능 컴퓨팅 환경에서의 작업 분배 시스템 및 방법 KR101656706B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150047016A KR101656706B1 (ko) 2015-04-02 2015-04-02 고성능 컴퓨팅 환경에서의 작업 분배 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150047016A KR101656706B1 (ko) 2015-04-02 2015-04-02 고성능 컴퓨팅 환경에서의 작업 분배 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR101656706B1 true KR101656706B1 (ko) 2016-09-22

Family

ID=57102370

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150047016A KR101656706B1 (ko) 2015-04-02 2015-04-02 고성능 컴퓨팅 환경에서의 작업 분배 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101656706B1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190097844A (ko) * 2018-02-13 2019-08-21 서강대학교산학협력단 파일 시스템 프로그램 및 이를 이용한 데이터 센터 제어 방법
KR20200052135A (ko) * 2018-11-06 2020-05-14 삼성전자주식회사 작업 의존성에 기초하여 컴퓨팅 작업을 서버에 스케줄링하는 방법 및 장치
CN111221640A (zh) * 2020-01-09 2020-06-02 黔南民族师范学院 一种gpu-cpu协同节能方法
KR20210115370A (ko) * 2020-03-12 2021-09-27 한국과학기술원 공유 gpu 클러스터를 위한 분산 딥러닝 작업 스케줄링 방법 및 이를 기록한 컴퓨터 판독 가능 기록매체
CN117785481A (zh) * 2024-02-23 2024-03-29 广州尚航信息科技股份有限公司 一种数据中心计算资源分配管理系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101160721B1 (ko) 2004-11-17 2012-06-28 레이던 컴퍼니 고성능 컴퓨팅(hpc) 시스템에서의 스케쥴링
KR20130088512A (ko) * 2012-01-31 2013-08-08 한국전자통신연구원 클러스터 컴퓨팅 환경에서의 자원 관리 장치 및 방법
KR20150030036A (ko) * 2013-09-11 2015-03-19 삼성전자주식회사 분산 처리 방법, 마스터 서버 및 분산 클러스터

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101160721B1 (ko) 2004-11-17 2012-06-28 레이던 컴퍼니 고성능 컴퓨팅(hpc) 시스템에서의 스케쥴링
KR20130088512A (ko) * 2012-01-31 2013-08-08 한국전자통신연구원 클러스터 컴퓨팅 환경에서의 자원 관리 장치 및 방법
KR20150030036A (ko) * 2013-09-11 2015-03-19 삼성전자주식회사 분산 처리 방법, 마스터 서버 및 분산 클러스터

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190097844A (ko) * 2018-02-13 2019-08-21 서강대학교산학협력단 파일 시스템 프로그램 및 이를 이용한 데이터 센터 제어 방법
KR102024846B1 (ko) * 2018-02-13 2019-09-24 서강대학교 산학협력단 파일 시스템 프로그램 및 이를 이용한 데이터 센터 제어 방법
KR20200052135A (ko) * 2018-11-06 2020-05-14 삼성전자주식회사 작업 의존성에 기초하여 컴퓨팅 작업을 서버에 스케줄링하는 방법 및 장치
KR102598084B1 (ko) * 2018-11-06 2023-11-03 삼성전자주식회사 작업 의존성에 기초하여 컴퓨팅 작업을 서버에 스케줄링하는 방법 및 장치
CN111221640A (zh) * 2020-01-09 2020-06-02 黔南民族师范学院 一种gpu-cpu协同节能方法
CN111221640B (zh) * 2020-01-09 2023-10-17 黔南民族师范学院 一种gpu-cpu协同节能方法
KR20210115370A (ko) * 2020-03-12 2021-09-27 한국과학기술원 공유 gpu 클러스터를 위한 분산 딥러닝 작업 스케줄링 방법 및 이를 기록한 컴퓨터 판독 가능 기록매체
KR102336297B1 (ko) 2020-03-12 2021-12-09 한국과학기술원 공유 gpu 클러스터를 위한 분산 딥러닝 작업 스케줄링 방법 및 이를 기록한 컴퓨터 판독 가능 기록매체
CN117785481A (zh) * 2024-02-23 2024-03-29 广州尚航信息科技股份有限公司 一种数据中心计算资源分配管理系统

Similar Documents

Publication Publication Date Title
US9916183B2 (en) Scheduling mapreduce jobs in a cluster of dynamically available servers
KR101656706B1 (ko) 고성능 컴퓨팅 환경에서의 작업 분배 시스템 및 방법
JP5343523B2 (ja) ジョブ管理装置、ジョブ管理方法およびジョブ管理プログラム
US8949847B2 (en) Apparatus and method for managing resources in cluster computing environment
Chen et al. A task scheduling algorithm for Hadoop platform
WO2016078008A1 (zh) 调度数据流任务的方法和装置
WO2015117565A1 (en) Methods and systems for dynamically allocating resources and tasks among database work agents in smp environment
Guo et al. Investigation of data locality and fairness in mapreduce
JP6519111B2 (ja) データ処理制御方法、データ処理制御プログラムおよびデータ処理制御装置
JP2015146154A (ja) ジョブスケジューリング装置、ジョブスケジューリング方法、およびジョブスケジューリングプログラム
JP6001690B2 (ja) クラスタコンピューティングシステム用のマスタデバイス、スレーブデバイスおよびそのコンピューティング方法
CN103763174A (zh) 一种基于功能块的虚拟网络映射方法
JP2017037492A (ja) 分散処理プログラム、分散処理方法および分散処理装置
De Souza et al. Boosting big data streaming applications in clouds with BurstFlow
Chen et al. Stochastic workload scheduling for uncoordinated datacenter clouds with multiple QoS constraints
JP2024020271A (ja) 機械学習ワークロードのためのタスクスケジューリング
TWI454949B (zh) 分散式資源管理系統及其分散式資源管理方法
WO2018157768A1 (zh) 调度运行设备的方法、设备和运行设备
US20210390405A1 (en) Microservice-based training systems in heterogeneous graphic processor unit (gpu) cluster and operating method thereof
JP2014167713A (ja) 情報処理装置、情報処理システム、情報処理装置管理プログラム及び情報処理装置管理方法
KR101639947B1 (ko) 하둡 선점 데드라인 제약 스케줄링 방법 및 그 방법을 수행하는 컴퓨터프로그램과, 그 프로그램이 기록된 매체
Uchechukwu et al. Scalable analytic models for performance efficiency in the cloud
Gobalakrishnan et al. SIS: A scheme for dynamic independent task scheduling in a cloud environment
WO2022260176A1 (ja) 情報処理装置、情報処理システム及び情報処理方法
Vidhyasagar et al. A Cost-Effective Data Node Management Scheme for Hadoop Clusters in Cloud Environment

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant