KR101065436B1 - Stochastic scheduling of a real-time parallel task with uncertain computation amount on mulit-core processors - Google Patents

Stochastic scheduling of a real-time parallel task with uncertain computation amount on mulit-core processors Download PDF

Info

Publication number
KR101065436B1
KR101065436B1 KR1020100124251A KR20100124251A KR101065436B1 KR 101065436 B1 KR101065436 B1 KR 101065436B1 KR 1020100124251 A KR1020100124251 A KR 1020100124251A KR 20100124251 A KR20100124251 A KR 20100124251A KR 101065436 B1 KR101065436 B1 KR 101065436B1
Authority
KR
South Korea
Prior art keywords
equation
calculation
probabilistic
cores
execution
Prior art date
Application number
KR1020100124251A
Other languages
Korean (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 KR1020100124251A priority Critical patent/KR101065436B1/en
Application granted granted Critical
Publication of KR101065436B1 publication Critical patent/KR101065436B1/en

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/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • 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/22Microcontrol or microprogram arrangements
    • G06F9/28Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel

Abstract

본 발명은 확률적 스케줄링 방법 및 이를 이용하는 저전력 멀티 코어 프로세서를 제공한다. 확률적 스케줄링 방법은 복수의 프로세서 코어들이 주어진 작업의 정확한 계산량을 실행 완료 이전에 알 수 없는 작업을 실행할 때, 불확실한 계산량을 확률적 계산량 모델로 표현하고 이 확률적 계산량 모델을 기준으로 하여 에너지 소모량의 확률적 기대값을 최소화하는 실행 속도의 변환 시점들을 결정하고, 각 코어 개수에 대하여 최소 에너지 소모량에 대한 기대값을 계산하고, 계산 결과에 기초하여 확률적 최소 기대값을 가지는 최적의 코어 개수를 선택하는 것을 특징으로 한다.The present invention provides a probabilistic scheduling method and a low power multi-core processor using the same. The stochastic scheduling method represents an uncertainty calculation as a stochastic computational model when a plurality of processor cores executes an accurate computation of a given task and executes an unknown task before completion. Determine transition points of execution speed that minimize probabilistic expectations, calculate the expected value for the minimum energy consumption for each core number, and select the optimal number of cores with the stochastic minimum expected value based on the calculation results Characterized in that.

Description

불확실한 계산량을 가진 실시간 병렬 작업을 위한 멀티코어 프로세서의 확률적 스케줄링 방법{Stochastic Scheduling of a Real-Time Parallel Task with Uncertain Computation Amount on Mulit-Core Processors}Stochastic Scheduling of a Real-Time Parallel Task with Uncertain Computation Amount on Mulit-Core Processors}

본 발명은 불확실한 계산량을 가진 실시간 병렬 작업을 위한 멀티코어 프로세서의 확률적 스케줄링 방법에 관한 것이다.
The present invention relates to a probabilistic scheduling method of a multicore processor for real-time parallel tasks with an uncertain amount of computation.

최근, 전기전자, 통신, 반도체 등의 기술 발전에 힘입어 컴퓨터, 이동통신 단말기, 스마트폰 등의 전자 기기가 폭넓게 보급되고 있다. 이러한 전자 기기는 사용자의 고성능 및 다기능 요구에 부응하기 위하여 멀티코어 프로세서를 구비할 수 있다.BACKGROUND Recently, electronic devices such as computers, mobile communication terminals, and smart phones have been widely used due to technological developments in electric electronics, communication, and semiconductors. Such electronic devices may be equipped with a multicore processor to meet the high performance and multifunction needs of the user.

멀티코어 프로세서(Multi-Core Processer)는 2개 이상의 코어를 탑재하여 만든 프로세서이다. 멀티코어 프로세서를 이용하면, 단일 프로세서의 발열과 전력 문제를 어느 정도 해결할 수 있고, 복수의 작업을 각 코어에서 독립적으로 또는 병렬적으로 처리할 수 있다.Multi-core processors are processors built with two or more cores. Multicore processors can solve some of the heat and power issues of a single processor and allow multiple tasks to be processed independently or in parallel on each core.

더욱이, 서버 시스템이나 고성능 전자 기기의 진화와 함께 많은 장치 소프트웨어 또는 응용들(Applications)은 점차 높은 네트워크 대역폭 활용이나 멀티 태스크를 요구하고 있다. 이러한 요구를 만족하기 위하여 멀티코어를 효율적으로 활용하여 작업 또는 네트워크 처리율을 향상시키는 다양한 방안이 연구되고 있다.
Moreover, with the evolution of server systems and high performance electronic devices, many device software or applications are increasingly demanding higher network bandwidth utilization or multitasking. In order to satisfy these demands, various methods for improving the throughput of a task or a network by efficiently utilizing multicores have been studied.

본 발명의 목적은 멀티코어 프로세서상에서 불확실한 계산량을 가진 실시간 병렬 작업을 최소의 에너지 소모로 데드라인 이전에 수행을 완료할 수 있는 확률적 스케줄링 방법을 제공하는 것이다.SUMMARY OF THE INVENTION An object of the present invention is to provide a probabilistic scheduling method capable of completing real-time parallel tasks with uncertain computations on a multicore processor before deadline with minimal energy consumption.

또한, 본 발명의 목적은 예상 에너지 소모량을 확률적으로 최소화하도록 작업을 수행하는 코어 개수와 계산 진행량에 따른 실행 속도를 결정할 수 있는 확률적 스케줄링 방법을 제공하는 것이다.
In addition, an object of the present invention is to provide a probabilistic scheduling method that can determine the execution speed according to the number of cores and the progress of calculation in order to stochastically minimize the estimated energy consumption.

상기 기술적 과제를 해결하기 위하여 본 발명의 일 측면에 따르면, 복수의 프로세서 코어들이 주어진 작업의 정확한 계산량을 실행 완료 이전에 알 수 없는 작업을 실행할 때, 불확실한 계산량을 확률적 계산량 모델로 표현하는 제1 단계; 확률적 계산량 모델을 기준으로 하여 에너지 소모량의 확률적 기대값을 최소화하는 실행 속도의 변환 시점들을 결정하는 제2 단계; 복수의 프로세서 코어들의 각 코어 개수에 대하여 최소 에너지 소모량에 대한 기대값을 계산하는 제3 단계; 및 제3 단계의 계산 결과에 기초하여 확률적 최소 기대값을 가지는 최적의 코어 개수를 선택하는 제4 단계를 포함하는 불확실한 계산량을 가진 실시간 병렬 작업을 위한 멀티코어 프로세서의 확률적 스케줄링 방법이 제공된다.
According to an aspect of the present invention to solve the above technical problem, when a plurality of processor cores executes an unknown task before the completion of execution of a given task, a first calculation that represents the uncertain calculation amount as a stochastic calculation model step; Determining conversion points of execution speed for minimizing probabilistic expected values of energy consumption based on the stochastic computational model; Calculating an expected value for a minimum energy consumption for each core number of the plurality of processor cores; And a fourth step of selecting an optimal number of cores having a probabilistic minimum expected value based on the calculation result of the third step, and a probabilistic scheduling method of the multicore processor for a real-time parallel operation with an uncertain amount of computation is provided. .

본 발명에 의하면, 멀티코어 프로세서상에서 불확실한 계산량을 가진 실시간 병렬 작업을 최소의 에너지 소모로 데드라인 이전에 수행을 완료할 수 있다. 다시 말해서, 불확실한 계산량을 확률적 계산량 모델로 표현하고, 확률적 계산량 모델을 기준으로 하여 에너지 소모량의 확률적 기대값을 최소화하는 실행 속도와 코어 개수를 결정함으로써, 멀티코어 프로세서에서의 에너지 소모를 최소화할 수 있다.According to the present invention, real-time parallel tasks with uncertain computations on a multicore processor can be completed before deadline with minimal energy consumption. In other words, minimizing energy consumption in multicore processors by expressing uncertain computation in a stochastic computational model and determining the execution speed and number of cores that minimize the probabilistic expectation of energy consumption based on the stochastic computational model. can do.

또한, 멀티코어 프로세서의 에너지 소모를 최소화할 수 있는 스케줄링 방법을 적용함으로써 전자 기기의 전력 소모를 최소화하고, 작업 수행의 안전성과 완전성을 높이고, 사용자의 편의성을 증대시킬 수 있다.
In addition, by applying a scheduling method that can minimize the energy consumption of the multi-core processor, it is possible to minimize the power consumption of the electronic device, increase the safety and integrity of the task execution, and increase the user convenience.

도 1은 본 발명의 일 실시예에 따른 불확실한 계산량을 가진 실시간 병렬 작업을 위한 멀티코어 프로세서에서의 확률적 스케줄링 방법(이하, 간단히 확률적 스케줄링 방법이라 한다)에 대한 개략적인 흐름도이다.
도 2a는 본 발명의 일 실시예에 채용가능한 일반적인 작업의 작업 종료시간의 확률적 분포를 나타낸 도면이다.
도 2b는 도 2a의 확률적 분포의 누적 함수를 나타낸 도면이다.
도 2c는 도 2b의 누적 함수의 차함수를 나타낸 도면이다.
도 3a 및 도 3b는 본 발명의 실시예에 따른 확률적 스케줄링 방법에 채용가능한 병렬처리 기반의 확률적 계산량 모델을 설명하기 위한 도면들이다.
도 4a 및 도 4b는 본 발명의 실시예에 따른 확률적 스케줄링 방법에 채용가능한 확률적 계산량 모델의 활용 방안을 설명하기 위한 도면들이다.
도 5는 본 발명의 일 실시예에 따른 확률적 스케줄링 방법에서 비효율적 실행 속도를 제거하는 과정을 설명하기 위한 도면이다.
도 6a 및 도 6b는 본 발명의 일 실시예에 따른 확률적 스케줄링 방법에 채용가능한 실행속도의 변환시점을 찾는 방법을 설명하기 위한 도면들이다.
1 is a schematic flowchart of a probabilistic scheduling method (hereinafter, referred to simply as a probabilistic scheduling method) in a multicore processor for real-time parallel work with an uncertain calculation amount according to an embodiment of the present invention.
FIG. 2A is a diagram illustrating a probabilistic distribution of job end times of a general job employable in one embodiment of the present invention. FIG.
FIG. 2B illustrates a cumulative function of the probabilistic distribution of FIG. 2A.
2C is a diagram illustrating a difference function of the cumulative function of FIG. 2B.
3A and 3B are diagrams for describing a parallel processing-based stochastic computational model that can be employed in the stochastic scheduling method according to an embodiment of the present invention.
4A and 4B are diagrams for describing a method of using a stochastic calculation model that can be employed in the stochastic scheduling method according to an embodiment of the present invention.
5 is a diagram illustrating a process of removing an inefficient execution speed in a probabilistic scheduling method according to an embodiment of the present invention.
6A and 6B are diagrams for describing a method of finding a time of conversion of execution speed that can be employed in a probabilistic scheduling method according to an embodiment of the present invention.

이하, 첨부 도면을 참조하여 본 발명에 의한 실시예를 상세하게 설명하기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 불확실한 계산량을 가진 실시간 병렬 작업을 위한 멀티코어 프로세서에서의 확률적 스케줄링 방법(이하, 간단히 확률적 스케줄링 방법이라 한다)에 대한 개략적인 흐름도이다.1 is a schematic flowchart of a probabilistic scheduling method (hereinafter, referred to simply as a probabilistic scheduling method) in a multicore processor for real-time parallel work with an uncertain calculation amount according to an embodiment of the present invention.

도 1을 참조하면, 확률적 스케줄링 방법은, 복수의 프로세서 코어들이 주어진 작업의 정확한 계산량을 실행 완료 이전에 알 수 없는 작업을 실행할 때, 불확실한 계산량을 확률적 계산량 모델로 표현하는 제1 단계(S110), 확률적 계산량 모델을 기준으로 하여 에너지 소모량의 확률적 기대값을 최소화하는 실행 속도의 변환 시점들을 결정하는 제2 단계(S120), 복수의 프로세서 코어들의 각 코어 개수에 대하여 최소 에너지 소모량에 대한 기대값을 계산하는 제3 단계(S130), 및 제3 단계의 계산 결과에 기초하여 확률적 최소 기대값을 가지는 최적의 코어 개수를 선택하는 제4 단계를 구비한다. 각 단계는 이하의 설명에 의해 구체화될 것이다.Referring to FIG. 1, in the probabilistic scheduling method, when a plurality of processor cores execute an unknown task before execution completion of an accurate computation of a given task, a first step of expressing an uncertain computation as a stochastic computational model (S110) ), A second step (S120) of determining execution points of execution speed for minimizing a probabilistic expected value of energy consumption based on a stochastic computational model, for a minimum energy consumption amount for each core number of a plurality of processor cores; A third step (S130) of calculating an expected value and a fourth step of selecting an optimal number of cores having a probabilistic minimum expected value based on the calculation result of the third step. Each step will be embodied by the following description.

확률적 계산량 모델은 일반적인 작업의 작업 종료시간의 확률적 분포를 누적 함수의 차함수로 나타냄으로써 표현될 수 있다. 여기에서, 확률적 계산량 모델은, 특정 작업이 특정 시간(t)에서 수행되고 있을 확률에 대한 함수를 지칭하는 것이다.The stochastic computational model can be expressed by representing the probabilistic distribution of task end times for a typical task as the difference function of the cumulative function. Here, the stochastic computational model refers to a function of the probability that a particular task is being performed at a particular time t.

기존의 방법은 최대 실행 시간(worst-case execution time)을 기반으로 에너지 소모량을 결정하였으나, 평균 실행 시간이 최대 실행 시간보다 현격히 짧은 경우, 사용 가능한 에너지 자원의 낭비가 크다. 따라서, 본 실시예의 확률적 스케줄링 방법에서는 확률적 분포의 누적 함수를 차함수로 표현하고 이를 확률적 계산량 모델로 이용한다.Existing methods determine energy consumption based on the worst-case execution time, but if the average execution time is significantly shorter than the maximum execution time, the waste of available energy resources is large. Therefore, in the probabilistic scheduling method of the present embodiment, the cumulative function of the probabilistic distribution is expressed as a difference function and used as a stochastic computational model.

예를 들면, 단일 또는 멀티 코어 프로세서에 있어서, 일반적인 작업(task)은 입력되는 데이터의 양, 관련된 동작 모드, 명령어의 종류 등에 따라 도 2a에 도시한 바와 같은 확률적 분포(At)의 형태로 표현될 수 있다. 베스트 케이스(best-case)는 최소 실행 시간에 대응하고, 워스트 케이스(worst-case)는 최대 실행 시간에 대응한다.For example, in a single or multi-core processor, a typical task is in the form of a probabilistic distribution A t as shown in FIG. Can be expressed. The best-case corresponds to the minimum execution time, and the worst-case corresponds to the maximum execution time.

다음, 도 2a에 도시한 바와 같은 확률적 분포 함수를 도 2b에 도시한 바와 같은 누적 함수(cumulative probability)로 표현하면, 누적 함수의 차함수(tail probability)는 도 2c에 도시한 바와 같이 나타낼 수 있다.Next, when the probability distribution function as shown in FIG. 2A is expressed as a cumulative probability as shown in FIG. 2B, the tail probability of the cumulative function may be represented as shown in FIG. 2C. have.

도 2b의 누적 함수는 아래의 수학식 1과 같이 표면되고, 도 2c의 차함수는 수학식 2와 같이 표현될 수 있다.The cumulative function of FIG. 2B is surfaced as in Equation 1 below, and the difference function of FIG. 2C can be expressed as Equation 2.

[수학식 1][Equation 1]

Figure 112010080554276-pat00001
Figure 112010080554276-pat00001

[수학식 2][Equation 2]

Figure 112010080554276-pat00002
Figure 112010080554276-pat00002

여기에서, 차함수(Pt)는 특정 작업이 시간(t)에서 수행되고 있을 확률을 나타내는 것으로서 t의 값이 증가함에 따라 누적 함수가 항상 증가하므로 차함수는 항상 감소하는 특성을 있다. 본 발명의 실시예에서는 이러한 차함수를 확률적 계산량 모델로 이용한다.Here, the difference function P t represents the probability that a specific task is being performed at time t, and the difference function always decreases as the value of t increases. In the embodiment of the present invention, the difference function is used as a stochastic computational model.

따라서, 본 실시예에서는 특정 작업에 대하여 도 2a에 도시한 바와 같은 확률적 분포(At)를 알 수 있도록 미리 데이터를 축적하여 두는 것도 바람직하다.Therefore, in the present embodiment, it is also preferable to accumulate data in advance so as to know the probabilistic distribution A t as shown in Fig. 2A for a specific job.

확률적 계산량 모델이 결정되면, 결정된 계산량 모델에 의해 특정 시간(t)에서 작업이 수행될 확률을 알 수 있으므로, 이에 기초하여 수행 대상 작업의 유틸리티를 최적화할 수 있도록 동작 모드를 결정(스케줄링)하게 된다.Once the stochastic computational model is determined, it is possible to determine the probability that the task will be performed at a specific time (t) by the determined computational model, so that the operating mode can be determined (scheduled) based on this to optimize the utility of the task being performed. do.

여기에서, 유틸리티(Utility)는 QoS(Quality of Service)의 평균적인 기대값과 유사한 개념으로서, 높은 유틸리티를 갖는 동작 모드에서는 에너지 소모량이 크고 작업 수행 효율이 높으며 상대적으로 낮은 유틸리티를 갖는 동작 모드에서는 에너지 소모량이 적은 대신 작업 수행 효율은 낮은 것으로 정의할 수 있다. 작업 수행 효율이라 함은 예컨대 모터의 동작 속도, 데이터 전송 속도, 데이터 처리량, 중앙처리장치(CPU)의 동작 전압, 동작 클럭 속도 등과 같은 것으로서, 유틸리티가 높으면 동작 속도 등이 증가하지만 그에 상응하여 에너지 소비가 증가하게 된다.Here, utility is a concept similar to the average expected value of the quality of service (QoS), and in the operation mode with high utility, the energy consumption is high and the operation efficiency is high, and in the operation mode with relatively low utility It can be defined as low consumption but low work performance. Task performance efficiency is, for example, the operating speed of the motor, the data transmission speed, the data throughput, the operating voltage of the central processing unit (CPU), the operating clock speed, etc., and the higher the utility, the higher the operating speed, but corresponding energy consumption. Will increase.

본 발명의 실시예에서는 확률이 높은 계산 진행 전반부에서 낮은 실행 속도 또는 낮은 유틸리티를 적용하고, 확률이 낮은 계산 진행 후반부로 갈수록 높은 실행 속도 또는 높은 유틸리티를 적용할 수 있다. 이러한 구성에 대하여 아래에서 좀더 구체적으로 설명한다.In an embodiment of the present invention, a low execution speed or a low utility may be applied in the first half of a high probability calculation process, and a high execution speed or high utility may be applied toward the second half of a low probability calculation progress. This configuration will be described in more detail below.

도 3a 및 도 3b는 본 발명의 일 실시예에 따른 확률적 스케줄링 방법에 채용가능한 병렬처리 기반의 확률적 계산량 모델을 설명하기 위한 도면들이다.3A and 3B are diagrams for describing a parallel processing-based stochastic computational model that can be employed in the stochastic scheduling method according to an embodiment of the present invention.

도 3a를 참조하면, 특정 작업에 대하여 두 개의 프로세서 코어들이 동일한 계산량으로 병렬처리하는 경우를 적용하면, 이론적으로 분배된 최대 계산량 또는 작업 종료시간은 절반으로 줄어든다. 도 3a에서 P1은 단일 코어에서의 계산량(# of Computation Cycles)이고, P2는 듀얼 코어에서의 병렬 처리 계산량이다.Referring to FIG. 3A, applying the case in which two processor cores parallelize the same amount of computation for a particular task, the theoretically distributed maximum computation amount or task end time is cut in half. In FIG. 3A, P 1 is # of Computation Cycles on a single core, and P 2 is parallel throughput on a dual core.

그리고, 작업을 수행하는 코어의 개수에 따라 미래 계산량 확률(Pt)는 도 3b에 도시된 바와 같이 차 누적 함수(Tail Cumulative Probability)로 표현될 수 있다. 도 3b에서 P1 t는 단일 코어에서의 계산량 확률이고, P2 t는 듀얼 코어의 병렬 처리시의 계산량 확률이다.In addition, according to the number of cores performing the task, the future calculation probability P t may be expressed as a tail cumulative probability as illustrated in FIG. 3B. In FIG. 3B, P 1 t is a calculation probability in a single core, and P 2 t is a calculation probability in parallel processing of dual cores.

도 4a 및 도 4b는 본 발명의 실시예에 따른 확률적 스케줄링 방법에 채용가능한 확률적 계산량 모델의 활용 방안을 설명하기 위한 도면들이다.4A and 4B are diagrams for describing a method of using a stochastic calculation model that can be employed in the stochastic scheduling method according to an embodiment of the present invention.

기존의 방법이 도 4a에 도시한 바와 같이 프로세스 코어의 실행 속도 예컨대 클럭 주파수(Clock Frequency)를 결정함에 있어서 데드라인에 수행 완료하도록 최대 실행 속도(worst-case)의 계산량 즉 최대 계산량을 활용한다고 할 때, 본 실시예에서는 도 4b에 도시한 바와 같이 미래 계산량 확률(Pt)에 근거하여 수행될 확률이 높은 계산 진행 전반부는 낮은 실행 속도로 수행하고, 수행될 확률이 낮은 계산 진행 후반부는 높은 실행 속도로 수행하도록 한다.It is assumed that the conventional method utilizes the worst-case calculation amount, that is, the maximum calculation amount to complete the deadline in determining the execution speed of the process core, for example, the clock frequency, as shown in FIG. 4A. In this embodiment, as shown in FIG. 4B, the first half of the calculation progress that is likely to be performed based on the future computation probability P t is performed at a low execution speed, and the second half of the calculation progress that is unlikely to be performed is high execution. Run at speed.

전술한 경우, 기존의 방법에서는 실제 계산량이 최대 실행 속도의 계산량보다 적기 때문에 낮은 실행 속도를 적용해서 프로세서의 에너지 소모율을 줄일 수 있는 기회를 가지지 못한다. 하지만, 본 실시예에서는 계산량의 확률(Pt)에 따라 전체 에너지 소모량의 확률적 기대값을 최소화하도록 계산량의 확률에 따라 실행 속도를 조절한다. 본 실시예에 의하면, 최대 실행 속도의 계산량을 기준으로 할 때 즉, 동일한 완료시간(Deadline)에 작업 수행을 종료한다고 할 때, 기존의 경우에 비해 에너지 소모량을 최소화할 수 있다.In the foregoing case, since the actual calculation amount is less than the calculation amount of the maximum execution speed, the conventional method does not have an opportunity to reduce the energy consumption rate of the processor by applying a lower execution speed. However, in the present embodiment, the execution speed is adjusted according to the probability of the calculation amount so as to minimize the probabilistic expected value of the total energy consumption according to the probability P t of the calculation amount. According to the present embodiment, the energy consumption can be minimized as compared with the conventional case when the calculation of the maximum execution speed is based, that is, when the task execution is completed at the same deadline.

전술한 본 발명의 일 실시예에 따른 확률적 스케줄링 방법을 수식으로 나타내면 다음과 같다.A probabilistic scheduling method according to an embodiment of the present invention described above is represented as follows.

본 실시예에 따른 확률적 스케줄링 방법에서는 주어진 작업에 대한 예상 에너지 소모량을 확률적으로 최소화하도록, 작업을 수행하는 코어의 개수와 계산 진행량에 따른 실행 속도 예컨대 동작 주파수를 결정한다.In the probabilistic scheduling method according to the present embodiment, the execution speed, for example, the operating frequency, is determined according to the number of cores performing a task and the progress of calculation so as to stochastically minimize the expected energy consumption for a given task.

이를 위해, 본 실시예의 확률적 스케줄링 방법에서는 몇 가지 기본적인 동작 원리를 적용한다. 첫째, 확률이 높은 계산 진행 후반부는 낮은 실행 속도를 적용하고, 확률이 낮은 계산 진행 후반부로 갈수록 높은 실행 속도를 적용한다. 둘째, 실행 속도 fm을 적용하다가 다음 실행 속도 f(m+1)를 적용하는 시점을 c[m]이라 한다. 여기에서, c[m]은 c[m+1]과 같거나 작다. 셋째, 데드라인에 수행을 완료하면서 에너지 소모량의 확률적 기대값 즉 확률적 예상값을 최소화하도록 c[m] 값들을 결정한다.To this end, the probabilistic scheduling method of this embodiment applies some basic operating principles. First, the latter part of the computation process with high probability applies a low execution rate, and the higher execution rate is applied toward the latter part of the computation process with a low probability. Second, c [m] is a time point when the execution speed f m is applied and the next execution speed f (m + 1) is applied. Where c [m] is less than or equal to c [m + 1]. Third, c [m] values are determined to minimize the probabilistic expectation value of the energy consumption, that is, the probabilistic expectation value, while completing the deadline.

또한, 본 실시예에 따른 확률적 스케줄링 방법에서는 몇 가지 시스템 환경 변수를 적용한다. 첫째, N개의 코어들 가진 프로세서를 가정하면, n개의 코어를 사용할 때 나머지 코어는 전원을 끊는다. 여기에서, n은 1 이상 N 이하의 자연수이다. 둘째, n개의 코어를 사용할 때, 계산량 확률 분포는 Pn, 최대(worst-case) 계산량은 Wn, 그리고 데드라인은 D로 각각 표현된다. 셋째, M개의 적용 가능한 실행 속도 예컨대 클럭 주파수는 각각 f1, f2, …, fM으로 표현된다. 여기에서, M은 2보다 큰 자연수이고, 각 실행 속도의 관계는 f1 < f2 < … < fM이 된다. 넷째, fm의 실행속도에서 각 단계의 계산(a single cycle)을 수행하는데 필요한 에너지 소모량은 em으로 표현된다. 여기에서, m은 1 이상, M 이하의 자연수이며, 각 실행 속도에 대한 에너지 소모량의 관계는 e1 < e2 < … < eM이 된다.In addition, in the probabilistic scheduling method according to the present embodiment, some system environment variables are applied. First, assuming a processor with N cores, the remaining cores are powered down when using n cores. Here, n is a natural number of 1 or more and N or less. Second, when using n cores, the probability probability distribution is expressed as P n , the worst-case computed amount is W n , and the deadline is expressed as D. Third, the M applicable execution speeds, e.g. clock frequencies, are respectively f 1 , f 2 ,... is represented by f M. Here, M is a natural number larger than 2, and the relationship between each execution speed is f 1 <f 2 <. <f M Fourth, the energy consumption needed to perform the calculation (a single cycle) for each step in the execution speed of f m is expressed as e m. Here, m is a natural number of 1 or more and M or less, and the relationship of energy consumption with respect to each execution speed is e 1 <e 2 <. <e M

작업을 수행하는 코어의 개수와 계산 진행량에 따른 실행 속도 예컨대 동작 주파수를 결정하기 위하여, 본 실시예의 확률적 스케줄링 방법은 고정된 n의 값에 대하여 수학식 3에 따라 해법을 찾는다.In order to determine an execution speed, for example, an operating frequency according to the number of cores performing the operation and the calculation progress, the probabilistic scheduling method of the present embodiment finds a solution according to Equation 3 for the fixed value of n.

[수학식 3]&Quot; (3) &quot;

Figure 112010080554276-pat00003
Figure 112010080554276-pat00003

여기에서, 수학식 3은 아래의 수학식 4의 조건을 구비한다.Here, Equation 3 has the condition of Equation 4 below.

[수학식 4]&Quot; (4) &quot;

Figure 112010080554276-pat00004
Figure 112010080554276-pat00004

위의 수학식 3 및 수학식 4에 의해 N개의 해법이 찾아지면, N개의 해법 중에서 최소 에너지 소모량의 기대값을 가지는 최적의 코어 개수를 선택한다.When N solutions are found by the above Equations 3 and 4, the optimal number of cores having the expected value of the minimum energy consumption is selected among the N solutions.

작업을 수행하는 코어의 개수와 계산 진행량에 따른 실행 속도 예컨대 동작 주파수를 결정하는 과정을 좀더 구체적으로 설명하면 다음과 같다.
A process of determining an execution speed, for example, an operating frequency according to the number of cores performing the operation and the calculation progress amount will be described in more detail as follows.

도 5는 본 발명의 일 실시예에 따른 확률적 스케줄링 방법에서 비효율적 실행 속도를 제거하는 과정을 설명하기 위한 도면이다.5 is a diagram illustrating a process of removing an inefficient execution speed in a probabilistic scheduling method according to an embodiment of the present invention.

도 5를 참조하면, 에너지 소모량에 비효율적인 실행 속도를 제거하기 위하여 본 실시예의 방법에서는 아래의 수학식 5와 같은 관계를 가지는 특정 실행 속도(fj)를 제거한다.Referring to FIG. 5, in order to remove an inefficient execution speed for energy consumption, the method of the present embodiment removes a specific execution speed f j having a relationship as in Equation 5 below.

[수학식 5][Equation 5]

Figure 112010080554276-pat00005
Figure 112010080554276-pat00005

여기에서, fj는 fi < fj < fk의 관계를 만족하며, i, j, 및 k는 자연수이다.Here, f j satisfies the relationship f i <f j <f k , and i, j, and k are natural numbers.

위의 과정에서 수학식 5의 관계를 가진 특정 실행 속도를 제거하고 남은 M개의 실행 속도는 도 5에 도시한 바와 같이 아래의 수학식 6의 관계를 만족하게 된다.In the above process, the M execution speeds remaining after removing the specific execution speed having the relation of Equation 5 satisfy the following Equation 6 as shown in FIG. 5.

[수학식 6]&Quot; (6) &quot;

Figure 112010080554276-pat00006
Figure 112010080554276-pat00006

여기에서, 소정의 실행 속도 fm과 fM은 f1 < fm < fM의 관계를 만족하며, m 및 M은 자연수이다.Here, the predetermined execution speeds f m and f M satisfy the relationship f1 <f m <f M , and m and M are natural numbers.

다음, 남은 M개의 실행속도들의 변환 시점을 아래의 수학식 7 또는 수학식 8에 기초하여 결정한다.Next, a conversion time point of the remaining M execution speeds is determined based on Equation 7 or Equation 8 below.

[수학식 7][Equation 7]

Figure 112010080554276-pat00007
Figure 112010080554276-pat00007

[수학식 8][Equation 8]

Figure 112010080554276-pat00008
Figure 112010080554276-pat00008

수학식 7 및 수학식 8에서, c[m]은 변환 시점을 나타내고, m은 1 이상, M 미만의 자연수이다.
In equations (7) and (8), c [m] represents a conversion time point, and m is a natural number of 1 or more and less than M.

도 6a 및 도 6b는 본 발명의 일 실시예에 따른 확률적 스케줄링 방법에 채용가능한 실행속도의 변환시점을 찾는 방법을 설명하기 위한 도면들이다.6A and 6B are diagrams for describing a method of finding a time of conversion of execution speed that can be employed in a probabilistic scheduling method according to an embodiment of the present invention.

도 6a에 도시한 바와 같이, 기준값 c[1]을 1부터 Wn까지 차례로 고정하면서 위의 수학식 7 또는 수학식 8을 만족하는 c[2], c[3], …, c[M]의 값들을 찾는다. 여기에서, c[1]을 고정하는 것은 수학식 7 또는 수학식 8에서 Pc [1]의 값을 고정하는 것에 대응한다.As shown in Fig. 6A, c [2], c [3],... Which satisfy the above equation (7) or (8) while fixing the reference value c [1] from 1 to W n in order . , find the values of c [M]. Here, fixing c [1] corresponds to fixing the value of P c [1] in equation (7) or (8).

다음, 기준값 c[1]=1로 찾아진 c[m] 값들을 사용한 수행 완료시간을 아래의 수학식 9를 이용하여 계산한다.Next, the execution completion time using the c [m] values found by the reference value c [1] = 1 is calculated using Equation 9 below.

[수학식 9][Equation 9]

Figure 112010080554276-pat00009
Figure 112010080554276-pat00009

수학식 9의 계산 결과, 수행완료시간이 데드라인보다 크면 기준값을 c[2]로 교체한 후 C[2]를 1부터 Wn까지 차례로 고정하면서 위의 수학식 7 또는 수학식 8을 만족하는 c[3], c[4], …, c[M]의 값들을 찾는다.As a result of the calculation of Equation 9, if the completion time is greater than the deadline, the reference value is replaced with c [2], and C [2] is fixed from 1 to W n while satisfying Equation 7 or Equation 8 above. c [3], c [4],... , find the values of c [M].

다시 말해서, 기준값 c[b]=1로 찾아진 c[m] 값들을 사용한 수행완료시간이 데드라인보다 크면, 수행완료시간이 데드라인보다 작거나 같을 때까지 기준값을 c[b+1]로 변경하면서 위의 수학식 7 또는 수학식 8을 만족하는 c[m] 값을 찾는다. 여기에서, c[b+1]로의 변경은 수학식 9에서 시작 실행 속도를 fb +1로 변경하는 것에 대응한다.In other words, if the completion time using the c [m] values found with the reference value c [b] = 1 is greater than the deadline, the reference value is set to c [b + 1] until the completion time is less than or equal to the deadline. While changing, find the value of c [m] that satisfies Equation 7 or Equation 8 above. Here, the change to c [b + 1] corresponds to changing the starting execution speed to f b + 1 in equation (9).

전술한 기준값 c[b]는 도 6b에 도시한 바와 같이 이등분 검사(Bisection Search) 방식으로 선택될 수 있다. 사용가능한 c[b] 값은 계산량(W)에 대응하는 폭의 중간 값을 선택하여 나머지 c[b+1], …, c[M] 값들을 찾을 수 있다.The reference value c [b] described above may be selected by a bisection search method as illustrated in FIG. 6B. The available c [b] values are selected by selecting a median value of the width corresponding to the amount of calculation (W), so that the remaining c [b + 1],. , c [M] values can be found.

또한, 찾아진 c[m] 값들을 사용한 수행완료시간을 아래의 수학식 10을 이용하여 계산하고, 계산 결과를 데드라인(D) 값과 비교함으로써, 사용 가능한 c[b] 값의 폭을 줄여갈 수 있다.In addition, by calculating the completion time using the found c [m] values using Equation 10 below, by comparing the calculation result with the deadline (D) value, the width of the available c [b] value is reduced I can go.

[수학식 10][Equation 10]

Figure 112010080554276-pat00010
Figure 112010080554276-pat00010

본 실시예에서는 이등분 검사 방식을 사용하여 수행완료시간이 데드라인(D) 값과 같아지는 최적의 c[b+1], …, c[M] 값들을 찾는다.In this embodiment, an optimal c [b + 1],... Where the completion time is equal to the deadline (D) value using the bisecting test method. , c [M] Find the values.

다음, 최종적으로 찾아진 c[b+1], …, c[M] 값들을 사용하여 아래의 수학식 11과 같이 예상 에너지 소모량 확률적 기대값을 계산한다.Then, finally found c [b + 1],... , c [M] values are used to calculate the expected energy consumption stochastic expectation as shown in Equation 11 below.

[수학식 11][Equation 11]

Figure 112010080554276-pat00011
Figure 112010080554276-pat00011

여기에서, c[0]은 0이다.Where c [0] is zero.

다음으로, 각 n에 대하여 위의 수학식 3을 이용하여 '에너지 소모량 확률적 기대값'을 계산한다. 여기에서, n은 1 이상, N 이하의 자연수이다. 즉, 본 단계에서는 하나의 프로세서 코어에서 프로세스 코어의 개수만큼 본 과정을 반복 수행하여 에너지 소모량 확률적 기대값을 계산한 후, 계산 결과를 토대로 최소 기대값을 가지는 n을 선택한다.Next, for each n, 'expected energy consumption probability value' is calculated using Equation 3 above. Here, n is a natural number of 1 or more and N or less. That is, in this step, the process is repeated as many as the number of process cores in one processor core to calculate an energy consumption probabilistic expected value, and then n is selected based on the calculation result.

다음으로, 멀티 코어 프로세서에서는 n의 값에 따라 Pn, 및 Wn의 값도 변경되고, 사용하지 않는 N-n개의 코어의 전원은 오프(off)된다.Next, in the multi-core processor, the values of P n and W n also change in accordance with the value of n , and the power supply of the Nn cores not used is turned off.

한편, 멀티 코어 프로세서의 실행 속도 fb, …, fM은 n개의 코어에 찾아진 c[b], …, c[M] 값들에 따라 점진적으로 적용될 수 있다.On the other hand, the execution speed f b ,... , f M is c [b] found in n cores,. , c [M] can be applied gradually.

전술한 실시예에 의하면, 확률적 계산량 모델을 기준으로 하여 에너지 소모량의 확률적 기대량을 최소화하는 코어 개수와 실행 속도를 스케줄링함으로써 멀티코어 프로세서가 저전력 작동을 할 수 있다.
According to the above-described embodiment, the multicore processor can perform low power operation by scheduling the number of cores and the execution speed to minimize the probabilistic expected amount of energy consumption based on the stochastic computational model.

이상에서, 바람직한 실시예들을 참조하여 본 발명을 설명하였으나, 본 발명은 상기의 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능할 것이다. 따라서 본 발명은 첨부한 특허청구범위 및 도면 등의 전체적인 기재를 참조하여 해석되어야 할 것이며, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.In the above, the present invention has been described with reference to preferred embodiments, but the present invention is not limited to the above embodiments, and those skilled in the art to which the present invention pertains have various modifications and variations from this description. It will be possible. Therefore, the present invention should be construed with reference to the overall description of the appended claims and drawings, and all equivalent or equivalent modifications thereof will belong to the scope of the present invention.

Claims (9)

복수의 프로세서 코어들이 주어진 작업을 데드라인(deadline) 이전에 완료하는데 소요되는 정확한 계산량을 실행 완료 이전에 알 수 없는 불확실한 계산량을 갖는 작업을 실행할 때, 상기 주어진 작업을 데드라인 이전에 완료하는데 소요되는 계산량을 상기 주어진 작업의 계산량의 확률적 분포 함수에 대한 누적 함수의 차함수인 확률적 계산량 모델로 표현하는 제1 단계;
상기 확률적 계산량 모델을 기준으로 하여 에너지 소모량의 확률적 기대값을 최소화하는 실행 속도의 변환 시점들을 결정하는 제2 단계;
상기 복수의 프로세서 코어들의 각 코어 개수에 대하여 최소 에너지 소모량에 대한 기대값을 계산하는 제3 단계; 및
상기 제3 단계의 계산 결과에 기초하여 확률적 최소 기대값을 가지는 최적의 코어 개수를 선택하는 제4 단계
를 포함하는 불확실한 계산량을 가진 실시간 병렬 작업을 위한 멀티코어 프로세서의 확률적 스케줄링 방법.
When multiple processor cores execute a task with an uncertain amount of computation that is unknown before completion of execution, the exact amount of computation required to complete a given task before the deadline is required to complete the given task before the deadline. A first step of expressing a calculation amount as a stochastic calculation model which is a difference function of a cumulative function with respect to the probability distribution function of the calculation amount of the given task;
Determining conversion time points of execution speed for minimizing a probabilistic expected value of energy consumption based on the stochastic calculation model;
Calculating an expected value for a minimum energy consumption amount for each core number of the plurality of processor cores; And
A fourth step of selecting an optimal number of cores having a probabilistic minimum expected value based on the calculation result of the third step
Stochastic scheduling method of a multicore processor for real-time parallel operation with an uncertain amount of computation comprising a.
삭제delete 제1항에 있어서,
상기 제3 단계는 상기 작업을 수행하는 코어의 개수와 계산 진행량에 따른 실행 속도를 결정하기 위하여, 고정된 n의 값에 대하여 아래의 수학식 3에 따라 해법을 찾는 단계를 포함하고,
[수학식 3]
Figure 112010080554276-pat00012

여기에서, 수학식 3은 아래의 수학식 4의 조건을 구비하며,
[수학식 4]
Figure 112010080554276-pat00013

여기에서, 실행 속도 fm을 적용하다가 다음 실행 속도 f(m+1)를 적용하는 시점을 c[m]이라 하고, c[m]은 c[m+1]과 같거나 작고, 데드라인에 수행을 완료하면서 에너지 소모량의 확률적 기대값을 최소화하도록 상기 c[m] 값들이 결정되고,
N개의 코어들 가진 프로세서에 있어서, n개의 코어를 사용할 때, 여기에서 n은 1 이상 N 이하의 자연수이고, N-n개의 나머지 코어는 전원을 끊고, 계산량 확률 분포는 Pn, 최대(worst-case) 계산량은 Wn, 그리고 데드라인은 D로 각각 표현되고,
M개의 적용 가능한 실행 속도는 각각 f1, f2, …, fM으로 표현되고, 여기에서 M은 2보다 큰 자연수이고, 각 실행 속도의 관계는 f1 < f2 < … < fM을 만족하고,
fm의 실행속도에서 각 단계의 계산(a single cycle)을 수행하는데 필요한 에너지 소모량은 em으로 표현되며, 여기에서, m은 1 이상, M 이하의 자연수이며, 각 실행 속도에 대한 에너지 소모량의 관계는 e1 < e2 < … < eM을 만족하며,
상기 수학식 3에 의해 N개의 해법이 찾아지면, 상기 제4 단계는 상기 N개의 해법 중에서 최소 에너지 소모량의 기대값을 가지는 최적의 코어 개수를 선택하는 것을 특징으로 하는 불확실한 계산량을 가진 실시간 병렬 작업을 위한 멀티코어 프로세서의 확률적 스케줄링 방법.
The method of claim 1,
The third step includes a step of finding a solution according to Equation 3 below with respect to a fixed value of n in order to determine the execution speed according to the number of cores performing the operation and the calculation progress amount.
[Equation 3]
Figure 112010080554276-pat00012

Here, Equation 3 has the condition of Equation 4 below,
[Equation 4]
Figure 112010080554276-pat00013

Here, when the execution speed f m is applied and the next execution speed f (m + 1) is applied, it is called c [m], and c [m] is less than or equal to c [m + 1], The c [m] values are determined to minimize the probabilistic expected value of energy consumption while completing the run,
For a processor with N cores, where n cores are used, where n is a natural number greater than or equal to 1 and less than or equal to N, the remaining Nn cores are powered down, and the probability probability distribution is P n , a worst-case Computation is expressed by W n and deadline by D,
The M applicable execution speeds are f 1 , f 2 ,... , f M , where M is a natural number greater than 2, and the relationship between each execution speed is f 1 <f 2 <. <f M ,
The energy consumption required to perform a single cycle at the running speed of f m is expressed as e m , where m is a natural number greater than or equal to 1 and less than or equal to M, and the energy consumption for each running speed is The relationship is e 1 <e 2 <. <e M ,
When N solutions are found by Equation 3, the fourth step is to perform a real-time parallel operation with an uncertain calculation amount, wherein the optimal number of cores having the expected value of the minimum energy consumption is selected among the N solutions. Probabilistic Scheduling Method of a Multicore Processor.
삭제delete 제3항에 있어서,
상기 제2 단계는, 아래의 수학식 5의 관계를 가진 특정 실행 속도를 제거하는 단계를 포함하는 것을 특징으로 하는 불확실한 계산량을 가진 실시간 병렬 작업을 위한 멀티코어 프로세서의 확률적 스케줄링 방법:
[수학식 5]
Figure 112011051019710-pat00014

여기에서, fj는 상기 특정 실행 속도를 나타내고, fi < fj < fk의 관계를 만족하며, i, j, 및 k는 자연수이다.
The method of claim 3,
The second step may include removing a specific execution speed having a relationship of Equation 5 below: Probabilistic scheduling method of a multicore processor for a real-time parallel operation with an uncertain amount of computation:
&Quot; (5) &quot;
Figure 112011051019710-pat00014

Here, f j represents the specific execution speed, satisfies the relationship f i <f j <f k , and i, j, and k are natural numbers.
제5항에 있어서,
상기 제2 단계는, 상기 수학식 5의 관계를 가진 특정 실행 속도를 제거하는 단계 후에 남은 M개의 실행속도들의 변환 시점을 아래의 수학식 8에 기초하여 결정하는 단계를 포함하는 불확실한 계산량을 가진 실시간 병렬 작업을 위한 멀티코어 프로세서의 확률적 스케줄링 방법:
[수학식 8]
Figure 112011051019710-pat00015

여기에서, c[m] 또는 c[y]는 상기 변환 시점을 나타내고, m 또는 y는 1 이상, M 미만의 자연수이다.
The method of claim 5,
The second step may include determining a conversion time point of the M execution speeds remaining after removing the specific execution speed having the relation of Equation 5 based on Equation 8 below. Probabilistic Scheduling of Multicore Processors for Parallel Jobs:
&Quot; (8) &quot;
Figure 112011051019710-pat00015

Here, c [m] or c [y] represents the conversion point, and m or y is a natural number of 1 or more and less than M.
제6항에 있어서,
상기 제2 단계는 기준값 c[1]을 1부터 Wn까지 차례로 고정하면서 상기 수학식 8을 만족하는 c[2], c[3], …, c[M]의 값들을 찾고,
상기 기준값 c[1]=1로 찾아진 c[m] 값들을 사용한 수행 완료시간을 아래의 수학식 9를 이용하여 계산하고,
[수학식 9]
Figure 112010080554276-pat00016

상기 수학식 9의 계산 결과, 수행완료시간이 데드라인보다 크면 기준값을 c[2]로 교체한 후 C[2]를 1부터 Wn까지 차례로 고정하면서 상기 수학식 8을 만족하는 c[3], c[4], …, c[M]의 값들을 찾는 단계들을 포함하는 불확실한 계산량을 가진 실시간 병렬 작업을 위한 멀티코어 프로세서의 확률적 스케줄링 방법.
The method of claim 6,
In the second step, c [2], c [3],... Which satisfy Equation 8 while fixing the reference value c [1] from 1 to W n in order . , find the values of c [M],
The execution completion time using the c [m] values found by the reference value c [1] = 1 is calculated using Equation 9 below.
[Equation 9]
Figure 112010080554276-pat00016

As a result of the calculation of Equation 9, if the execution completion time is greater than the deadline, c [3] satisfying Equation 8 while replacing C [2] from 1 to W n after replacing the reference value with c [2]. , c [4],... and a method of probabilistic scheduling of a multicore processor for real-time parallel work with an uncertain amount of computation, comprising steps of finding values of c [M].
제7항에 있어서,
상기 제2 단계는 상기 수학식 9의 계산에 의해 찾아진 c[m] 값들을 사용한 수행완료시간을 아래의 수학식 10을 이용하여 계산하고,
[수학식 10]
Figure 112010080554276-pat00017

상기 수학식 10에 의한 계산 결과를 데드라인(D) 값과 비교함으로써, 사용 가능한 c[b] 값의 폭을 줄여가는 단계를 포함하는 불확실한 계산량을 가진 실시간 병렬 작업을 위한 멀티코어 프로세서의 확률적 스케줄링 방법.
The method of claim 7, wherein
In the second step, the execution completion time using the c [m] values found by the calculation of Equation 9 is calculated using Equation 10 below.
[Equation 10]
Figure 112010080554276-pat00017

Comparing the result of the calculation according to Equation 10 with the deadline (D) value, the probability of the multi-core processor for real-time parallel operation with an uncertain amount of computation comprising reducing the width of the available c [b] value Scheduling Method.
제8항에 있어서,
상기 수학식 10의 이등분 검사 방식에 의해 찾아진 c[b+1], …, c[M] 값들을 사용하여 아래의 수학식 11을 이용하여 예상 에너지 소모량 확률적 기대값을 계산하는 단계를 포함하는 불확실한 계산량을 가진 실시간 병렬 작업을 위한 멀티코어 프로세서의 확률적 스케줄링 방법:
[수학식 11]
Figure 112010080554276-pat00018

여기에서, c[0]은 0이다.
The method of claim 8,
C [b + 1],... , Stochastic scheduling method of a multicore processor for real-time parallel operation with an uncertain amount of calculation, comprising calculating the expected energy consumption stochastic expectation using Equation 11 below using c [M] values:
[Equation 11]
Figure 112010080554276-pat00018

Where c [0] is zero.
KR1020100124251A 2010-12-07 2010-12-07 Stochastic scheduling of a real-time parallel task with uncertain computation amount on mulit-core processors KR101065436B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100124251A KR101065436B1 (en) 2010-12-07 2010-12-07 Stochastic scheduling of a real-time parallel task with uncertain computation amount on mulit-core processors

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100124251A KR101065436B1 (en) 2010-12-07 2010-12-07 Stochastic scheduling of a real-time parallel task with uncertain computation amount on mulit-core processors

Publications (1)

Publication Number Publication Date
KR101065436B1 true KR101065436B1 (en) 2011-09-19

Family

ID=44957475

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100124251A KR101065436B1 (en) 2010-12-07 2010-12-07 Stochastic scheduling of a real-time parallel task with uncertain computation amount on mulit-core processors

Country Status (1)

Country Link
KR (1) KR101065436B1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101341562B1 (en) 2011-12-15 2013-12-16 경상대학교산학협력단 Energy-efficient scheduling method for real-time tasks with probabilistic computations on single-core processor
KR101463533B1 (en) * 2012-04-27 2014-11-19 성균관대학교산학협력단 Method of core scheduling for asymmetric multi-core processor in a mobile device and apparatus for performing the same
WO2015051685A1 (en) * 2013-10-12 2015-04-16 华为技术有限公司 Task scheduling method, device and system
US9696771B2 (en) 2012-12-17 2017-07-04 Samsung Electronics Co., Ltd. Methods and systems for operating multi-core processors
US10042731B2 (en) 2013-11-11 2018-08-07 Samsung Electronics Co., Ltd. System-on-chip having a symmetric multi-processor and method of determining a maximum operating clock frequency for the same
CN113835953A (en) * 2021-09-08 2021-12-24 曙光信息产业股份有限公司 Statistical method and device of job information, computer equipment and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060080666A (en) * 2005-01-06 2006-07-11 삼성전자주식회사 Apparatus and method for load sharing in multi processor systems
KR100982333B1 (en) 2009-09-30 2010-09-15 경상대학교산학협력단 Method and apparatus for scheduling operation modes based on probabiistic execution time
KR101034409B1 (en) 2005-03-17 2011-05-12 마이크로소프트 코포레이션 Determining an actual amount of time a processor consumes in executing a portion of code

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060080666A (en) * 2005-01-06 2006-07-11 삼성전자주식회사 Apparatus and method for load sharing in multi processor systems
KR101034409B1 (en) 2005-03-17 2011-05-12 마이크로소프트 코포레이션 Determining an actual amount of time a processor consumes in executing a portion of code
KR100982333B1 (en) 2009-09-30 2010-09-15 경상대학교산학협력단 Method and apparatus for scheduling operation modes based on probabiistic execution time

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
대한전자공학회 2009년 SoC학술대회, 정일종 외3인 공저 휴대장치를 위한 확률적 태스크 스케줄링 방법론,페이지526-529 (2009.05.)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101341562B1 (en) 2011-12-15 2013-12-16 경상대학교산학협력단 Energy-efficient scheduling method for real-time tasks with probabilistic computations on single-core processor
KR101463533B1 (en) * 2012-04-27 2014-11-19 성균관대학교산학협력단 Method of core scheduling for asymmetric multi-core processor in a mobile device and apparatus for performing the same
US9696771B2 (en) 2012-12-17 2017-07-04 Samsung Electronics Co., Ltd. Methods and systems for operating multi-core processors
WO2015051685A1 (en) * 2013-10-12 2015-04-16 华为技术有限公司 Task scheduling method, device and system
US10042731B2 (en) 2013-11-11 2018-08-07 Samsung Electronics Co., Ltd. System-on-chip having a symmetric multi-processor and method of determining a maximum operating clock frequency for the same
CN113835953A (en) * 2021-09-08 2021-12-24 曙光信息产业股份有限公司 Statistical method and device of job information, computer equipment and storage medium

Similar Documents

Publication Publication Date Title
KR101065436B1 (en) Stochastic scheduling of a real-time parallel task with uncertain computation amount on mulit-core processors
CN106537287B (en) Method and apparatus for estimating power performance of jobs running on multiple nodes of a distributed computer system
CN106528266B (en) Method and device for dynamically adjusting resources in cloud computing system
US20110161978A1 (en) Job allocation method and apparatus for a multi-core system
CN110941325B (en) Frequency modulation method and device of processor and computing equipment
TWI503742B (en) Multiprocessors systems and processes scheduling methods thereof
CN104035747B (en) Method and apparatus for parallel computation
CN111191777B (en) Neural network processor and control method thereof
US9471387B2 (en) Scheduling in job execution
CN109408399B (en) Calculation power estimation method, device, equipment and storage medium
CN111104211A (en) Task dependency based computation offload method, system, device and medium
CN109558248B (en) Method and system for determining resource allocation parameters for ocean mode calculation
CN110489233A (en) Equipment task unloading and cpu frequency modulation method and system based on mobile edge calculations
CN108132840B (en) Resource scheduling method and device in distributed system
CN109889406B (en) Method, apparatus, device and storage medium for managing network connection
CN114911612A (en) Task scheduling method for CPU-GPU heterogeneous resources
KR101770234B1 (en) Method and system for assigning a computational block of a software program to cores of a multi-processor system
WO2024082853A1 (en) Method and system for application performance optimization in high-performance computing
CN107197013B (en) Energy-saving system for enhancing cloud computing environment
Lee et al. On resource efficiency of workflow schedules
KR100982333B1 (en) Method and apparatus for scheduling operation modes based on probabiistic execution time
CN112099937A (en) Resource management method and device
CN115952054A (en) Simulation task resource management method, device, equipment and medium
CN112256436B (en) Resource allocation method, device, equipment and computer storage medium
Huaijun et al. Research and implementation of mobile cloud computing offloading system based on Docker container

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated 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: 20140703

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150630

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee