KR100590764B1 - 멀티프로세서 시스템에서 스케줄러를 이용한 대규모데이터 처리 방법 - Google Patents

멀티프로세서 시스템에서 스케줄러를 이용한 대규모데이터 처리 방법 Download PDF

Info

Publication number
KR100590764B1
KR100590764B1 KR1020030090038A KR20030090038A KR100590764B1 KR 100590764 B1 KR100590764 B1 KR 100590764B1 KR 1020030090038 A KR1020030090038 A KR 1020030090038A KR 20030090038 A KR20030090038 A KR 20030090038A KR 100590764 B1 KR100590764 B1 KR 100590764B1
Authority
KR
South Korea
Prior art keywords
processor
work
scheduler
processors
data processing
Prior art date
Application number
KR1020030090038A
Other languages
English (en)
Other versions
KR20050057834A (ko
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 KR1020030090038A priority Critical patent/KR100590764B1/ko
Publication of KR20050057834A publication Critical patent/KR20050057834A/ko
Application granted granted Critical
Publication of KR100590764B1 publication Critical patent/KR100590764B1/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/54Interprogram communication
    • G06F9/543User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]
    • 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

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

멀티프로세서 시스템에서 스케줄러를 이용한 대규모 데이터 처리 방법을 제시한다. 본 발명의 일 관점에 의한 데이터 처리 방법은, 데이터베이스 군에 저장된 대규모의 처리 데이터 및 데이터를 처리하는데 필요한 정보들로부터 데이터 처리를 위해 사용될 일련의 작업 명령들의 작업리스트를 작성하고, 스케줄러에 의해서 프로세서 군을 구성하는 개별 프로세서들 각각에 작업리스트의 일련의 작업 명령들을 할당하여 작업 명령들을 개별 프로세서들이 병렬 또는 순차적으로 처리한다.
멀티 프로세스, 멀티 프로세싱, 스케줄러, 데이터 처리, 데이터 베이스

Description

멀티프로세서 시스템에서 스케줄러를 이용한 대규모 데이터 처리 방법{Method for mass data processing through scheduler in multi processor system}
도 1은 종래의 멀티프로세서 시스템에서의 데이터 처리 방식을 설명하기 위해서 개략적으로 도시한 모식도이다.
도 2는 본 발명의 실시예에 따른 멀티프로세서 시스템에서 스케줄러를 이용한 대규모 데이터 처리 방법을 설명하기 위해서 개략적으로 도시한 모식도이다.
도 3은 본 발명의 실시예에 따른 멀티프로세서 시스템에서 스케줄러를 이용한 대규모 데이터 처리 방법에 도입된 스케줄러의 단위 작업 처리 방식을 설명하기 위해서 개략적으로 도시한 흐름도(flow chart)이다.
본 발명은 멀티프로세서 시스템(multi-processor system)에서 대규모 데이터(data)를 처리하는 방법에 관한 것으로, 특히, 다수 개의 프로세서를 갖는 멀티프로세서 시스템에서 대규모 데이터를 여러 단계에 걸쳐서 순차적으로 처리할 때 지능형 스케줄러(scheduler)를 이용해서 효율적으로 데이터를 처리하는 방법에 관한 것이다.
반도체 기술과 연산 처리 프로세서 시스템의 집적도가 높아짐에 따라, 컴퓨터 시스템에도 많은 변화가 일어나고 있다. 종래에는 하나의 컴퓨터 시스템에 하나의 프로세서만 장착되어 사용되는 것이 일반적이었으나, 다양한 분야에서 처리해야할 데이터가 대규모화하는 추세에 따라, 최근에는 하나의 컴퓨터 시스템에 다수개의 프로세서를 장착하는 멀티프로세서 시스템이 점차 늘고 있다.
이론적으로, 다수 개의 프로세서(즉, 멀티 프로세서)를 채용할 경우, 작업 속도가 프로세서의 수에 비례해서 향상되어야 하지만, 현실적으로 작업을 여러 개의 프로세서에 효율적으로 분배하는 과정이 주로 수동으로 이루어져 효율적으로 분배하는 일이 쉽지가 않기 때문에, 프로세서들을 효과적으로 제대로 활용을 못해서 원하는 성능을 얻기가 어려운 경우가 많이 생긴다.
도 1은 종래의 멀티프로세서 시스템에서의 데이터 처리 방식을 설명하기 위해서 개략적으로 도시한 모식도이다.
도 1을 참조하면, 종래에는 멀티프로세서 시스템을 잘 활용하기 위해서 사용자(10)가 직접 작업을 여러 단계로 나누고(14), 나누어진 작업을 개별 프로세서(16)에 고정적으로 할당해서 작업을 수행시키고 있다(15). 즉, 멀티프로세서를 이용해서 처리할 데이터의 데이터베이스(11)와 데이터를 처리하는 데 필요한 다양한 정보를 담고 있는 정보의 데이터베이스(12)를 이용하여, 데이터 처리를 위해 사용될 일련의 작업 명령들의 리스트인 작업 리스트(14) 상의 단위 명령(13)들을, 멀티프로세서 시스템(18)의 프로세서 그룹(17)을 구성하는 개별 단위 프로세서(16)에 할당하는 과정(15)이 사용자(10)의 수작업에 의해서 이루어지고 있다.
이때, 사용자(10)의 수작업에 의한 할당 과정(15)은 사용자(10)의 판단에 의존하게 되는 데, 사용자(10)의 주관적 판단에 의한 프로세서 사용은 효율적이지 못한 경우가 대부분이며, 이에 따라, 일부 단위 프로세서(16)는 작업이 과다하게 책정되고 일부 단위 프로세서(16)에는 상대적으로 적게 배분되어, 모든 프로세서를 최대로 활용할 수 없는 취약점이 생기게 된다.
그리고, 일반적으로 데이터를 처리해서 최종 결과를 얻기 위해서는, 여러 단계의 변환 과정을 거쳐야 되는데, 종래의 방법은 각 단계 별로 사용자가 작업을 마친 것을 확인한 다음에 다음 단계의 작업의 수행을 개별 단위 프로세서(16)에 할당하는(15) 방식으로 진행되고 있다. 따라서, 작업의 한 단계에서 다음 단계로 넘어갈 때, 상당한 시간의 손실이 발생하게 된다. 따라서, 전체 데이터 처리 작업 시간이 많이 늘어나는 결과를 초래고 있다.
즉, 일반적으로 데이터를 처리하는 작업은 순차적으로 여러 단계를 거치게 된다. 최초의 데이터를 처리해서 새로운 데이터를 생성하고, 생성된 데이터를 다른 정보를 이용해서 다시 가공해서 또 다른 데이터를 생성하게 된다. 최종 결과를 얻기 위해서는, 이와 같이 여러 단계를 순차적으로 처리하는 과정을 거치게 되며, 다음 단계를 처리하기 위해서는 바로 전 단계가 완전히 완료되어야만 수행될 수 있다. 대부분의 데이터 처리 과정이 이러한 처리 조건을 요구하고 있기 때문에, 사용자(10)가 개입해서 작업을 할당할 경우, 단계별 처리 과정들 사이에 시간의 낭비가 필연적으로 생기게 된다.
본 발명이 이루고자 하는 기술적 과제는, 멀티프로세서 시스템에서 프로세서에 작업을 할당하는 과정을 보다 효율적으로 수행하여, 전체 프로세서의 활용도를 높이고 작업량의 처리 시간을 획기적으로 줄일 수 있는 멀티프로세서 시스템에서 대규모 데이터 처리 방법을 제공하는 데 있다.
상기의 기술적 과제들을 달성하기 위한 본 발명의 일 관점은, 데이터베이스군, 작업리스트, 스케줄러 및 프로세서 군을 포함하는 멀티프로세서 시스템에서 대규모 데이터 처리 방법을 제시한다.
상기 데이터 처리 방법은, 상기 데이터베이스군에 저장된 대규모의 처리 데이터 및 상기 데이터를 처리하는데 필요한 정보들로부터 상기 데이터 처리를 위해 사용될 일련의 작업 명령들의 리스트로서의 상기 작업리스트를 작성하는 단계, 및 상기 스케줄러에 의해서 상기 프로세서 군을 구성하는 개별 프로세서들 각각에 상기 작업리스트의 일련의 작업 명령들을 할당하여 상기 작업 명령들을 상기 개별 프로세서들이 병렬 또는 순차적으로 처리하는 단계를 포함하여 수행된다.
상기 작업 명령들을 처리하는 단계에서 상기 스케줄러는 상기 작업리스트 중 어느 하나의 단위 작업 명령을 상기 프로세서군의 어느 하나의 개별 프로세서에 할당하는 제1단계, 상기 프로세서군의 프로세서들의 사용 여부를 검사하는 제2단계, 상기 제2단계의 검사에 의해 어느 하나의 상기 프로세서가 사용되고 있지 않을 경 우 사용되고 있지 않은 상기 프로세서에 상기 작업리스트 중 다른 하나의 단위 작업 명령을 할당하고 상기 검사에 의해 상기 모든 프로세서들이 사용 중일 경우 사용중인 상기 프로세서의 반환을 대기하는 제3단계, 상기 프로세서의 반환 여부를 검사하는 제4단계, 상기 프로세서의 반환이 검출될 경우 상기 작업리스트의 상기 단위 작업 명령들 중 수행할 작업 명령의 존재 여부를 검사하는 제5단계, 상기 수행할 작업 명령이 존재할 경우 상기 제1단계로서 상기 반환된 프로세서에 상기 작업 명령을 할당하고 상기 제2단계 내지 상기 제5단계를 수행하는 제6단계, 및 상기 제5단계의 검사에서 수행할 작업 명령이 존재하지 않을 경우 프로세서들이 종료하기를 대기하고 상기 종료의 완료 여부를 검사하는 제7단계를 포함하여 순차적으로 수행할 수 있다.
본 발명에 따르면, 멀티프로세서 시스템에서 프로세서에 작업을 할당하는 과정을 보다 효율적으로 수행하여, 전체 프로세서의 활용도를 높이고 작업량의 처리 시간을 획기적으로 줄일 수 있는 멀티프로세서 시스템에서 대규모 데이터 처리 방법을 제공할 수 있다.
이하, 첨부 도면을 참조하여 본 발명의 실시예를 상세히 설명한다. 그러나, 본 발명의 실시예들은 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 아래에서 상술하는 실시예들로 인해 한정되어지는 것으로 해석되어져서는 안된다. 본 발명의 실시예들은 당업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되어지는 것이다.
본 발명의 실시예에서는 멀티프로세서 시스템에서 프로세서에 작업을 할당하 는 것을 사람이 아닌 지능형 스케줄러(scheduler)로서의 잡 스케줄러에 맡김으로써 프로세서의 활용도를 높이고, 작업 시간 및 작업량을 획기적으로 줄이는 바를 제시한다. 그리고, 종래의 방법처럼 작업자가 개입해서 작업을 하면 사람의 손이 많이 필요하고, 프로세서에 작업을 할당하는 일도 효율적이지 못하게 되므로, 이를 개선하기 위해서, 본 발명에서 제안한 바와 같이 작업 내용을 정의하고 수행하는 일을 모두 지능형 스케줄러 프로그램을 이용해서 자동으로 최적화해서 수행하게 함으로써 작업의 능률을 높이는 바를 제시한다.
일반적으로, 데이터를 처리하는 작업은 순차적으로 여러 단계를 거치게 된다. 따라서, 작업을 단계 별로 구분해서 정의한 다음에, 각 단계에서는 단위 작업들을 프로세서가 허용하는 범위에서 계속적으로 할당한 다음에 다음 단계로 넘어가는 표시가 있으면, 현 단계에서 할당된 프로세서에의 작업이 모두 끝나기를 기다린 다음에 모두 완료가 되면 자동으로 다음 단계로 넘어가도록 스케줄러가 만들어지기 때문에, 다음 단계로 넘어가는 과정도 연속적으로 수행될 수 있어서 처리 시간을 많이 줄일 수 있고, 한번의 명령으로 이 모든 작업을 수행할 수가 있다.
도 2는 본 발명의 실시예에 따른 멀티프로세서 시스템에서 스케줄러를 이용한 대규모 데이터 처리 방법을 설명하기 위해서 개략적으로 도시한 모식도이다.
도 3은 본 발명의 실시예에 따른 멀티프로세서 시스템에서 스케줄러를 이용한 대규모 데이터 처리 방법에 도입된 스케줄러의 단위 작업 처리 방식을 설명하기 위해서 개략적으로 도시한 흐름도(flow chart)이다.
도 2를 참조하면, 본 발명의 실시예에 따른 대규모 데이터 처리 방법은 스케 줄러를 이용하는 멀티프로세서 시스템(180)을 이용한다. 본 발명의 실시예에 따른 멀티프로세서 시스템(180)은 처리한 데이터의 데이터베이스(110)와 데이터를 처리하는 데 필요한 다양한 정보를 담고 있는 정보의 데이터베이스(120)를 포함하는 데이터베이스군(110, 120)과 이들 데이터베이스군(110, 120)을 읽어서 작업을 수행하는 일련의 명령어들, 즉, 단위 명령(130)들로 구성된 작업 리스트(140), 이들 작업 리스트(140)를 읽어서 프로세서에 자동으로 작업을 할당시키도록 프로그램(program)된 스케줄러(200), 및 할당된 작업을 수행하는 개별 프로세서(160)들이 다수 개 구성된 프로세서 그룹(170)을 포함하여 구성될 수 있다.
도 2 및 도 3을 참조하여, 본 발명의 실시예에 따른 멀티프로세서 시스템에서의 스케줄러 프로그램을 이용한 데이터 처리 방식을 설명하면, 먼저, 처리하고자하는 대규모의 처리 데이터와 이들 데이터를 처리하는 데 필요한 다양한 정보가 스케줄러(200) 또는 별도의 프로그램 등에 의해서 단위 작업을 의미하는 단위 명령(130)들로 해석되어 이들 단위 명령(130)들이 일련되게 나열되는 작업리스트(140)를 만들게 된다.
데이터베이스군(110, 120)에는 처리하고자 하는 대규모의 처리 데이터를 저장하고 있는 데이터의 데이터베이스(110)가 도입되고, 이들 데이터를 처리하는데 필요한 다양한 정보를 저장하고 있는 정보의 데이터베이스(120)가 도입되게 된다. 이들 데이터 정보는 스케줄러(200) 또는 별도의 프로그램에 의해서 해석되어 단위 작업, 즉, 단위 명령(130)들로 구성된 작업리스트(140)를 만들게 된다.
단위 작업은 데이터베이스군(110, 120)으로부터 데이터를 읽어서 처리하는 단위 명령(130)으로 일반적으로 특정 프로그램을 수행하는 명령으로 해석될 수 있다. 작업리스트(140)는 단위 명령(130)들의 집합으로 이들 단위 작업, 즉, 단위 명령(130)들은 처리 단계에 따라서 여러 단계의 단계별 작업 군으로 그룹화되서 표현될 수 있으며, 이럴 경우 각 단계별 작업은 도 3에 도시된 바와 같은 절차에 의해서, 스케줄러(200)에 의해서 할당되어 단위 작업들이 처리된다. 이때, 반드시 다음 단계로 넘어가기 전에 현재 단계에 있는 모든 단위 작업을 성공적으로 종료해야만 하는 순차적 구조를 갖는다.
스케줄러(200)는 단계별 작업군 간에 연결에 직접적으로 간여해서 조정하는 작용과 단위 명령(130)들을 사용이 가능한 개별 프로세서(160)에 할당하는 역할을 수행한다.
멀티 프로세서그룹(170)은 다수개의 개별 프로세서(160)들로 구성된 프로세서 군으로서, 스케줄러(200)가 책임을 지고 프로세서 군에 있는 개별 프로세서(160)에 작업을 할당한다. 이와 같은 스케줄러(200)에 의한 작업 할당 및 순차적인 작업 처리, 즉, 단계별 작업은, 도 3에 도시된 바와 같은 순서에 의해 순차적으로 처리된다.
도 3을 참조하면, 먼저 작업이 시작되면 작업리스트(140) 상의 단위 작업, 즉, 단위 명령(130) 하나를 하나의 프로세서(160)에 스케줄러(200)가 할당하게 된다(210). 그리고, 스케줄러(200)는 모든 개별 프로세서(160)가 현재 사용중인지 아니면 사용되고 있지 않는 지를 검사한다(220).
만일, 검사에 의해서 사용하지 않고 있는 개별 프로세서(160)가 있으면, 스케줄러(200)는 다시 작업리스트(140)에 있는 다른 또는 다음 단위작업 또는 단위명령(130)을 사용되고 있지 않은 개별 프로세서(160)에 할당한다(210). 만일, 프로세서(160)들 모두가 사용중이면, 프로세서 군(170)에 있는 어느 한 프로세서(160)가 작업을 진행할 수 있는, 즉, 완료할 수 있는 짧은 시간을 대기하도록 한다(230). 즉, 프로세서 반환을 대기한다(230).
다음에, 사용 가능한 프로세서(160)가 있는지를 검사한다(240). 즉, 반환되는 프로세서(160)가 있는 지의 여부를 판단한다(240). 반환되는 프로세서(160)가 없으면 프로세서 반환대기(230)를 수행하고 다시 검사한다(240). 만일, 프로세서 반환이 있으면 추가로 수행할 단위 작업(130)이 존재하는 지 여부를 검사한 후(250), 작업리스트(140)에 수행할 단위 작업 또는 단위 명령(130)이 있으면, 그 작업 또는 명령(130)을 반환된 프로세서(160)에 할당하는 한다(210).
이러한 처리 과정, 즉, 도 3의 210단계 내지 250 단계를 되풀이하고, 작업리스트(140)에 더 이상의 수행할 단위 작업 또는 단위 명령(130)이 없으면, 사용중인 모든 프로세서(160)가 종료하기를 기다린다(260). 모든 프로세서(160)가 종료되었는지를 검사(270)해서 종료가 안되었으면, 종료대기 상태(260)로 돌아가고, 종료가 되었으면, 단계별 작업 중에서 하나의 작업군을 종료하게 된다. 연후, 다음 작업군으로 처리 단계가 넘어가게 된다.
이와 같이, 스케줄러(200)를 이용한 데이터처리 방식에서는 사용할 프로세서(160) 수를 임의로 정할 수 있기 때문에, 멀티프로세서 시스템(180)이 공 동 서버(server)로 사용되어서 여러 사람에게 공유되는 환경에서도, 모든 프로세서(160)를 독점하지 않고 배정된 수의 프로세서(160)만 사용하면서 효율적으로 작업을 진행할 수 있다.
이상, 본 발명을 구체적인 실시예를 통하여 상세히 설명하였으나, 본 발명은 이에 한정되지 않고, 본 발명의 기술적 사상 내에서 당 분야의 통상의 지식을 가진 자에 의해 그 변형이나 개량이 가능함이 명백하다.
상술한 본 발명에 따르면, 본 발명에서 제안한 스케줄러 프로그램을 이용해서 기계적으로 프로세서들의 사용 현황을 모니터링(monitoring)하면서 모든 프로세서를 고르게 이용할 수 있는 수단을 제공할 수 있다.
현재, 컴퓨터 시스템의 성능이 점차 좋아짐에 따라, 예전에는 고성능 중/대형 컴퓨터에서만 작업이 가능했던 대규모 데이터 처리 작업을, 점차 워크스테이션(workstation) 이나 퍼스널 컴퓨터(PC)와 같은 중소형 컴퓨터에서 수행하는 일이 많아졌다. 그리고, 워크스테이션 같은 서버급의 컴퓨터에서는 동시 여러 가지 작업이 많이 요구되기 때문에, 프로세서를 한 개가 아닌 여러 개로 구성하는 멀티프로세서 시스템으로 구성하는 것이 일반화되고 있다. 멀티프로세서 시스템에서 가장 중요한 것은 작업을 모든 프로세서에 고르게 할당해서 성능을 최대한 발휘하게 하는 것인데, 이런 작업을 사람에게 의지하면 원하는 목적을 달성할 수 없다.
이에 비해, 본 발명에 따른 스케줄러 프로그램을 이용해서 기계적으로 프로 세서들의 사용 현황을 모니터링하면서 모든 프로세서를 고르게 이용할 수 있는 방법은 생산성 향상에 크게 도움이 된다. 특히, 다수 개의 프로세서를 공유하는 환경에서 작업 별로 프로세서 수를 할당함으로써, 서버 시스템이 특정 작업에만 얽매이지 않도록 할 수 있어서, 시스템을 효과적으로 운영할 수 있다.
특히, 본 발명에 따르면, 대규모 데이터를 처리하는데 있어서, 멀티프로세서를 효율적으로 이용하게 함으로써, 프로세싱 자원의 낭비 없이 생산성을 최대로 올릴 수 있다.

Claims (2)

  1. 데이터베이스군, 작업리스트, 스케줄러 및 프로세서 군을 포함하는 대규모 자료 처리용 멀티프로세서 시스템의 데이터 처리 방법에 있어서,
    상기 데이터베이스군에 저장된 대규모의 처리 데이터 및 상기 데이터를 처리하는데 필요한 정보들로부터 상기 데이터 처리를 위해 사용될 일련의 작업 명령들의 리스트로서의 상기 작업리스트를 작성하는 단계; 및
    상기 스케줄러에 의해서 상기 프로세서 군을 구성하는 개별 프로세서들의 사용 여부를 검사하고 사용되지 않는 프로세서에 상기 작업리스트의 일련의 작업 명령들을 할당하여 상기 작업 명령들을 상기 개별 프로세서들이 병렬 또는 순차적으로 처리하는 단계;를 포함하는 것을 특징으로 하는 멀티프로세서 시스템에서 대규모 데이터 처리 방법.
  2. 제1항에 있어서, 상기 작업 명령들을 처리하는 단계에서 상기 스케줄러는
    상기 작업리스트 중 어느 하나의 단위 작업 명령을 상기 프로세서군의 어느 하나의 개별 프로세서에 할당하는 제1단계;
    상기 프로세서군의 프로세서들의 사용 여부를 검사하는 제2단계;
    상기 제2단계의 검사에 의해 어느 하나의 상기 프로세서가 사용되고 있지 않을 경우 사용되고 있지 않은 상기 프로세서에 상기 작업리스트 중 다른 하나의 단위 작업 명령을 할당하고 상기 검사에 의해 상기 모든 프로세서들이 사용 중일 경우 사용중인 상기 프로세서의 반환을 대기하는 제3단계;
    상기 프로세서의 반환 여부를 검사하는 제4단계;
    상기 프로세서의 반환이 검출될 경우 상기 작업리스트의 상기 단위 작업 명령들 중 수행할 작업 명령의 존재 여부를 검사하는 제5단계;
    상기 수행할 작업 명령이 존재할 경우 상기 제1단계로서 상기 반환된 프로세서에 상기 작업 명령을 할당하고 상기 제2단계 내지 상기 제5단계를 수행하는 제6단계; 및
    상기 제5단계의 검사에서 수행할 작업 명령이 존재하지 않을 경우 프로세서들이 종료하기를 대기하고 상기 종료의 완료 여부를 검사하는 제7단계를 순차적으로 수행하는 것을 특징으로 하는 멀티프로세서 시스템에서 대규모 데이터 처리 방법.
KR1020030090038A 2003-12-11 2003-12-11 멀티프로세서 시스템에서 스케줄러를 이용한 대규모데이터 처리 방법 KR100590764B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030090038A KR100590764B1 (ko) 2003-12-11 2003-12-11 멀티프로세서 시스템에서 스케줄러를 이용한 대규모데이터 처리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030090038A KR100590764B1 (ko) 2003-12-11 2003-12-11 멀티프로세서 시스템에서 스케줄러를 이용한 대규모데이터 처리 방법

Publications (2)

Publication Number Publication Date
KR20050057834A KR20050057834A (ko) 2005-06-16
KR100590764B1 true KR100590764B1 (ko) 2006-06-15

Family

ID=37251544

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030090038A KR100590764B1 (ko) 2003-12-11 2003-12-11 멀티프로세서 시스템에서 스케줄러를 이용한 대규모데이터 처리 방법

Country Status (1)

Country Link
KR (1) KR100590764B1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100957060B1 (ko) * 2007-12-12 2010-05-13 엠텍비젼 주식회사 명령어 병렬 스케줄러, 방법 및 그 기록매체
US9785700B2 (en) 2008-02-11 2017-10-10 Nuix Pty Ltd Systems and methods for load-balancing by secondary processors in parallelized indexing
WO2009102765A2 (en) * 2008-02-11 2009-08-20 Nuix North America Inc. Parallelization of electronic discovery document indexing
US9928260B2 (en) 2008-02-11 2018-03-27 Nuix Pty Ltd Systems and methods for scalable delocalized information governance
US8311982B2 (en) 2010-02-11 2012-11-13 Hewlett-Packard Development Company, L. P. Storing update data using a processing pipeline
WO2012005728A1 (en) * 2010-07-08 2012-01-12 Hewlett-Packard Development Company, L.P. Resource assignment for jobs in a system having a processing pipeline
KR101863605B1 (ko) 2011-09-19 2018-07-06 삼성전자주식회사 스트림 데이터를 고속으로 처리하는 프로세서
US10826930B2 (en) 2014-07-22 2020-11-03 Nuix Pty Ltd Systems and methods for parallelized custom data-processing and search
US11200249B2 (en) 2015-04-16 2021-12-14 Nuix Limited Systems and methods for data indexing with user-side scripting

Also Published As

Publication number Publication date
KR20050057834A (ko) 2005-06-16

Similar Documents

Publication Publication Date Title
US7650601B2 (en) Operating system kernel-assisted, self-balanced, access-protected library framework in a run-to-completion multi-processor environment
CN112465129B (zh) 片内异构人工智能处理器
CN112463709A (zh) 可配置的异构人工智能处理器
JP2005108214A (ja) プラグ可能スケジューラのフレームワーク
US20080098395A1 (en) System and method of expediting certain jobs in a computer processing system
US11620510B2 (en) Platform for concurrent execution of GPU operations
JP2008186136A (ja) 計算機システム
CN106569887B (zh) 一种云环境下细粒度任务调度方法
KR100590764B1 (ko) 멀티프로세서 시스템에서 스케줄러를 이용한 대규모데이터 처리 방법
JP3541212B2 (ja) プロセッサ割当て装置
CN112882828A (zh) 基于slurm作业调度系统的昇腾处理器管理和调度方法
CN113010286A (zh) 并行任务调度方法、装置、计算机设备和存储介质
CN114816694A (zh) 一种多流程协作的rpa任务调度方法及装置
CN111158875B (zh) 基于多模块的多任务处理方法、装置及系统
US8881163B2 (en) Kernel processor grouping
CN115033374A (zh) 一种多核可编程控制器的任务到线程匹配方法
KR20130067100A (ko) 이종 멀티코어 환경에서의 코어 배정 장치
CN113608854A (zh) 用于版图验证的任务调度方法、装置、服务器和存储介质
JPH0460843A (ja) マルチプロセッサシステムにおけるタスクスケジュール方式
EP3343370A1 (en) Method of processing opencl kernel and computing device therefor
JPH02245864A (ja) 多重プロセッサシステム
JPH11249917A (ja) 並列型計算機及びそのバッチ処理方法及び記録媒体
JPH05204875A (ja) スレッドのスケジュール方式
EP1630671A1 (en) Framework for pluggable schedulers
CN114880101B (zh) 一种ai处理器、电子部件及电子设备

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20110531

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee