TW200809628A - Power aware dynamic scheduling in multiprocessor system employing voltage islands - Google Patents
Power aware dynamic scheduling in multiprocessor system employing voltage islands Download PDFInfo
- Publication number
- TW200809628A TW200809628A TW096100181A TW96100181A TW200809628A TW 200809628 A TW200809628 A TW 200809628A TW 096100181 A TW096100181 A TW 096100181A TW 96100181 A TW96100181 A TW 96100181A TW 200809628 A TW200809628 A TW 200809628A
- Authority
- TW
- Taiwan
- Prior art keywords
- task
- voltage
- time
- processor
- processor core
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/329—Power saving characterised by the action undertaken by task scheduling
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
- Microcomputers (AREA)
Abstract
Description
200809628 九、發明說明: 【發明所屬之技術領域】 本發明係關於藉助電壓島構建之對稱式多處理器系統’ 且更具體而言係關於藉由量測執行時期執行狀態之效能及 估計以自動地適應於變化之應用程式工作負載來節省晶片 上系統(SoC)功率消耗之方法及電路。 【先前技術】200809628 IX. Description of the Invention: [Technical Field of the Invention] The present invention relates to a symmetric multiprocessor system constructed by means of a voltage island' and more specifically to the performance and estimation of an execution state by means of measurement A method and circuit that adapts to changing application workloads to save system-on-a-chip (SoC) power consumption. [Prior Art]
對稱式多處理(SMP)使相同處理器連接一單個共用主記 憶體。當今之多數常見多處理器系統使用一讀架構。可 指配任-任務供任—處理器執行,此乃因彼任務之資料係 位於共用記憶體中HSMp作業系統可在各處理器之間 移動任務以有效率地平衡卫作負冑實施方案中之 諸夕個別處理$可能急需資料’此乃因記憶體通常遠遠慢 於存取該記憶體之每一處理器。 SMP在其中軟龍客製化程式料㈣於多執行緒處理 之科學、產業及商業領域中有諸多應用。然而,文書處理 益、電腦遊戲及其他多數消費者產品並非以-可自SMP受 盈之方式予以撰寫。執行於SMp系統上之程式甚至在盆已 針對單處理H系統而被撰寫人時亦可執行得更好。… 、、硬體中斷通常會暫停程式執行,而在一讀系統中,核 心則父遞出該箸締赫士涵 /中斷以θ代地執行於-閒置處理器 散式之作業系統(os)支援,諸如軟體編譯器及分 [麵隸切經㈣乎㈣外處理器之 數置成倍増長之加逮。 115716.doc 200809628 當在一 SMP環境中處理諸多工作時,可能導致硬體效率 之損失。軟體程式經發展以按各種方式排程工作,從而使 處理器利用率最佳化。 右以一較咼速率計時時,一既定處理器一般可提高其效 • 忐。最咼計時速率由半導體技術及操作電壓限定。對於一 - 既定操作電壓及半導體技術,將存在一最大時鐘速率。若 操作電壓增加,則時鐘可按比例增加以在實際限度内增加 效能^然而,功率消耗將隨電壓平方增加而升高, 。從而以一大大增加之功率消耗為代價獲得增加之 效能。 先則技術已基於離線計算之任務執行狀態使用動態電壓 排程。較佳之情形係使用一效能量測及估計單元來分析執 行時期期間之執行狀態。以此方式,系統可自動地適應於 文隻之應用权式工作負冑。該等任務至一單個I理器之靜 悲映射亦非合意。基於一組對稱式多處理器之經估計執行 •時間將任務動態地排程至該等對稱式多處理器 佳。 先蝻技術亦處理將任務排程至一支援不同電壓之處理器 上,從而保持功率消耗作為成本函數。但此類處理並不在 • ϋ務基礎上使用DVS。此類習用裝置按最終期限以升 , 務進行分類。任務被置於目標處理元件之保留清單 Μ #藉助由該目標處理元件支援之最高及最低電壓位準計 二=任務之鬆弛時間。計算該最高及最低電壓處任務之 ^夺間。找出該任務能滿足最終期限之目標處理元件之 115716.doc 200809628 電壓位準。隨後,使用DVS改變其電壓位準並將任務排程 至其上。 所需要者係一種其中一 SoC之不同核心具有不同電源電 壓之系統。電壓島會藉由對每一核心使用一唯一電源電壓 來達成SoC設計之核心位準功率最佳化。因此,於一具有 同種核心及電壓島之SoC中,可將所有任務保持於一清單 上。為每一任務分析其效能要求。隨後,選擇一其電源電 壓已能保證該任務之效能要求之特定處理器來執行該任 務。其次,再次分析該任務且可將同一任務映射至一具有 可保證其效能要求之不同電源電壓之不同處理器上。 【發明内容】 簡言之’具有電壓島之對稱式多處理器系統包括應用程 式任務在可用處理器上之動態排程。電壓島使得能夠給每 一處理器提供不同之獨立操作電壓及對應之最大時鐘頻 率。ΐ測可用與實際處理器任務執行時間之間的差以便可 估《十該等任務之再發生之鬆弛時間。根據特定操作電壓及 頻率給各個處理器之處理能力編目錄。—動態排程器基於 所而之視在處理器為該等任務選擇—適當處理器及電壓島 設定值。此會產生最佳功率消耗。 本發月t U係提供一種將保存功率之對稱式多處理 器系統之SoC實施方案。 本發月之另優點係提供一種使用電壓島來避免與 功率控制相關聯之即時開銷之對稱式多處理器系統之就 115716.doc 200809628 本發明之再另—優點係提供—種根據—㈣時間計算写 排程:務之對稱式多處理器系統之s〇c實施方案。 考里本發明之特定實關之下料細闡述 合附圖時,將清彗睑紐士 2欠。 八疋社、'、口 是瞭解本&明之上述及進一步目標、特徵 及優點。 【實施方式】 回、曰本毛明之一對稱式多處理器系統實施例,且在Symmetric Multiprocessing (SMP) connects the same processor to a single shared primary memory. Most common multiprocessor systems today use a first-read architecture. Can be assigned to - task-to-processor execution, because the data of the task is in shared memory. The HSMp operating system can move tasks between processors to efficiently balance the implementation of the workload. The eve of the individual processing $ may be urgently needed data 'this is because the memory is usually much slower than accessing each processor of the memory. SMP has many applications in the scientific, industrial, and commercial fields of soft-threaded customization (4) in multi-thread processing. However, paper processing benefits, computer games and most other consumer products are not written in a way that can be profitable from SMP. Programs executed on the SMp system can perform better even when the basin has been written for a single-processing H system. ..., hardware interrupts usually suspend program execution, while in a read system, the core is the parent to hand out the 箸 赫 赫 涵 / interrupt to θ generation to execute - idle processor scatter operating system (os) Support, such as the software compiler and the number of sub-processes (four) and (four) external processors are set to double the length of the increase. 115716.doc 200809628 When dealing with a lot of work in an SMP environment, it can lead to a loss of hardware efficiency. Software programs have been developed to schedule work in a variety of ways to optimize processor utilization. When the right is clocked at a higher rate, a given processor can generally improve its efficiency. The most accurate timing rate is defined by semiconductor technology and operating voltage. For a given operating voltage and semiconductor technology, there will be a maximum clock rate. If the operating voltage is increased, the clock can be scaled up to increase efficiency within practical limits. However, power consumption will increase as the square of the voltage increases. This results in increased performance at the expense of a greatly increased power consumption. The prior art has used dynamic voltage scheduling based on the task execution state of offline computing. Preferably, an energy measurement and estimation unit is used to analyze the execution status during the execution period. In this way, the system can automatically adapt to the application of the application only. The static mapping of these tasks to a single I processor is also undesirable. Estimated execution based on a set of symmetric multiprocessors • Time to dynamically schedule tasks to these symmetric multiprocessors. Advanced technology also handles scheduling tasks to a processor that supports different voltages, thereby maintaining power consumption as a function of cost. However, such processing does not use DVS on a transaction basis. Such conventional devices are classified by the deadline. The task is placed in the reserved list of target processing elements Μ #With the highest and lowest voltage levels supported by the target processing element, the slack time of the task = two. Calculate the task between the highest and lowest voltages. Find out the voltage level at which the task can meet the deadline for the target processing component. The DVS is then used to change its voltage level and schedule the task onto it. Those in need are systems in which different cores of one SoC have different power supply voltages. The voltage island optimizes the core level power of the SoC design by using a single supply voltage for each core. Therefore, in an SoC with the same core and voltage island, all tasks can be kept on a list. Analyze its performance requirements for each task. Subsequently, a particular processor whose power supply voltage is sufficient to ensure the performance requirements of the task is selected to perform the task. Second, the task is analyzed again and the same task can be mapped to a different processor with different supply voltages that guarantee its performance requirements. SUMMARY OF THE INVENTION Briefly, a symmetric multiprocessor system with voltage islands includes dynamic scheduling of application tasks on available processors. The voltage island enables each processor to be supplied with a different independent operating voltage and a corresponding maximum clock frequency. The difference between the available and actual processor task execution times can be estimated to estimate the relaxation time of the recurrence of the ten tasks. The processing power of each processor is cataloged according to the specific operating voltage and frequency. - The dynamic scheduler selects the appropriate processor and voltage island settings based on the apparent processor. This will result in the best power consumption. The present month t U provides an SoC implementation of a symmetric multiprocessor system that will conserve power. Another advantage of this month is to provide a symmetric multiprocessor system that uses voltage islands to avoid the immediate overhead associated with power control. 115716.doc 200809628 Still another advantage of the present invention is that the basis is - (iv) time Calculate the write schedule: the s〇c implementation of the symmetric multiprocessor system. Under the specific conditions of the invention, the details of the invention will be clarified. Gossip, ', and mouth are to understand the above and further goals, features and advantages of this & [Embodiment] One embodiment of a symmetric multiprocessor system of back and 曰本毛明, and
本文:由通用參考數字⑽指代。對稱式多處理器系統100 匕括女置於一共同半導體晶片106中之複數個電壓島m 04 、°該等電壓島提供三種不同操作電壓:hi、mid及1〇 電壓。電壓島1〇2_1〇4中分別安置有複數個相同之處理器 核。108 11 〇,但該等不同之操作電壓導致處理器核心1 〇8 具有相對高效能(hi-MIPS)、處理器核心1〇9具有中等效能 (nnd-MIPS)及處理器核心11〇具有相對低效能(i〇_Mips)。 所有二個處理器核心108-110分別具有對一共用記憶體112 之存取權。 由於所有三個處理器核心108· 110以不同電壓位準運 作’其各自之功率消耗亦不同。功率消耗將隨電壓平方增 加而升尚。例如,^ = ^。因此,以大大增加之功率消耗 κ 為代價在(例如)處理器核心108中獲得增加之效能。於現代 電池運作之可攜式裝置中,必須嚴格消除所有功率消耗之 浪費。 一作業系統(〇S)l 14提供欲由處理器核心108-110之不同 核心執行之特定軟體任務116-120之選擇。一鬆弛時間計 115716.doc 200809628 算器m經連接以比較一經指配任務U6_120在一對應處理 器核心108-11 〇上執行所花費之時間。根據鬆弛時間計算 器122所獲得資料構建一處理能力及任務載入表格124。其 為處理器核心108-110之每一者之處理能力編目錄。輸入 一針對先前已執行任務所施加之處理負載之相關量度。 於作業期間,可如表格124中以百萬指令每秒(]^11>8)為 單位給一 ”任務所需之效能製成表格。舉例而言,可 聚集試探性證據顯示”任務_d"需要一中等MIPS效能。可給 第二圖表編索引以顯示"CPU-2"將係用於排程任務_d之合 適選擇。自表格124發送一訊息至排程器126,以當〇s 114 想要執行任務-d 119時,其經排程供派遣至處理器核心 109。於該任務執行之後,鬆弛時間計算器122可再次驗證 此係一良好選擇。由於避開了較高功率消耗之處理器核心 108,藉由使用一具有較低功率之替代處理器核心節省了 功率。 為SoC之不同處理器核心提供不同電源電壓。電壓島藉 由為母-處理器核心提供一唯一固定電源電壓來達成s〇c 設計之核則4準功率最優化。具有電壓島及同種處理器核 。之SoC谷許將所有任務保持於一可應用於該中所有 ,心之單個清單中。先前技術裝置為每—處理器核心製備 單獨之任務清單。根據其效能要求評估每一任務。 逐-地,使該等任務匹配_特定處理器,該特定處理器 因其電源電Μ足夠高而能夠在所分配時間框内保證執行完 成每田該任務本身出現時,再次分析該任務並動態地將 115716.doc -10- 200809628 八排程、、"最適當之處理器核心。以此方式實施動態排程。 DVS技術具有可能過於昂貴纽於不能在逐任務基礎上使 用之固有開銷。對稱式多處理器系統100改為選擇其電源 電壓可在既疋時間窗内產生必要效能等級之處理器核心。 鬆弛時間計算器與處理能力及任務載入表袼124提供效 旎ϊ測及估計以在一應用程式軟體中捕獲任務之執行時 間。效能量測可係基於追蹤或自執行時間及各個任務之最 終期限要求累積而來。計算鬆弛時間之平均/中間值,及 使用某一時間窗内多個鬆弛時間值來特徵化每一任務之每 氣、弛時間。其後,使用此特徵化資訊預測一將來執行及 該任務之鬆弛時間,從而將任務動態地排程至適當之處理 器$任務已重新排程於一不同處理器核心上時,鬆弛時 間計算器與處理能力及任務載入表格進一步為該等任務提 供量測資訊重設。 圖2描繪本發明之一對稱式多處理器系統實施例,該對 稱式多處理器系統使每一電壓島可藉助DVS來調整且在本 文中由通用參考數字200指代。對稱式多處理器系統2〇〇包 括安置於一共同半導體晶片206中之複數個電壓島2〇2_ 204。該等為每一電壓島提供獨立及可控制之動態電壓縮 放(DVS)。 動態電壓縮放(DVS)已成為一種調整操作電壓及時鐘以 平衡一電路之效能與其伴隨之功率消耗之通用方式。已在 習用設計中使用電壓島以容許一晶片之多個部分接受獨立 DVS控制。但在DVS已改變至一新值之後,穩定時間可長 115716.doc •11- 200809628 達200宅秒。因此,最佳之情形係應不非常頻繁地改變 DVS設定值,或在初始化之後根本不改變。This article: Refers to the general reference number (10). The symmetrical multiprocessor system 100 includes a plurality of voltage islands m 04 placed in a common semiconductor wafer 106. The voltage islands provide three different operating voltages: hi, mid, and 1 电压. A plurality of identical processor cores are respectively disposed in the voltage islands 1〇2_1〇4. 108 11 〇, but these different operating voltages result in processor cores 1 〇 8 having relatively high performance (hi-MIPS), processor cores 1 〇 9 with moderate performance (nnd-MIPS), and processor cores 11 〇 relative Low performance (i〇_Mips). All two processor cores 108-110 have access to a shared memory 112, respectively. Since all three processor cores 108·110 operate at different voltage levels, their respective power consumptions are also different. Power consumption will increase as the square of the voltage increases. For example, ^ = ^. Thus, increased performance is achieved, for example, in processor core 108 at the expense of greatly increased power consumption κ. In modern portable battery-operated devices, all waste of power consumption must be strictly eliminated. An operating system (〇S) 14 provides a selection of specific software tasks 116-120 to be executed by different cores of processor cores 108-110. A relaxation time meter 115716.doc 200809628 The calculator m is connected to compare the time it takes for an assigned task U6_120 to execute on a corresponding processor core 108-11. A processing capability and task loading table 124 is constructed based on the data obtained by the slack time calculator 122. It catalogs the processing power of each of the processor cores 108-110. Enter a measure of the processing load applied to the previously executed task. During the operation, the performance required for a "task" can be tabulated in the form of a million instructions per second (]^11>8) in Table 124. For example, the tentative evidence can be gathered to show "task_d" A medium MIPS performance is required. The second chart can be indexed to show that "CPU-2" will be used for the appropriate selection of scheduling tasks _d. A message is sent from the form 124 to the scheduler 126 to be dispatched to the processor core 109 when the ss 114 wants to perform the task -d 119. After the task is executed, the slack time calculator 122 can again verify that the system is a good choice. By avoiding the higher power consumption processor core 108, power is saved by using an alternative processor core with lower power. Different supply voltages are provided for different processor cores of the SoC. The voltage island is optimized by providing a single fixed supply voltage for the mother-processor core to achieve the s〇c design. Has a voltage island and the same processor core. The SoC Valley allows all tasks to be maintained in a single list that can be applied to all of them. Prior art devices prepare separate task lists for each processor core. Each task is evaluated according to its performance requirements. Depending on the ground, the tasks are matched to a specific processor that is capable of re-analysing the task and dynamically revising the task itself when the task itself is completed within the allocated time frame because its power supply is high enough. The ground will be 115716.doc -10- 200809628 eight schedules, " the most appropriate processor core. Dynamic scheduling is implemented in this way. DVS technology has the potential to be too expensive to use on a task-by-task basis. The symmetrical multiprocessor system 100 instead selects a processor core whose power supply voltage can produce the necessary performance level within the time window. The slack time calculator and processing power and task loading table 124 provides effects and estimates to capture the execution time of the task in an application software. Effective energy measurements can be accumulated based on tracking or self-execution time and the deadlines for each task. The average/intermediate value of the relaxation time is calculated, and a plurality of relaxation time values within a certain time window are used to characterize each gas and relaxation time of each task. Thereafter, the characterization information is used to predict a future execution and the relaxation time of the task, thereby dynamically scheduling the task to the appropriate processor. The task has been rescheduled on a different processor core, the relaxation time calculator The processing capabilities and task loading tables further provide measurement information reset for such tasks. 2 depicts an embodiment of a symmetric multiprocessor system of the present invention that allows each voltage island to be adjusted by means of DVS and is referred to herein by the general reference numeral 200. The symmetric multiprocessor system 2 includes a plurality of voltage islands 2〇2_204 disposed in a common semiconductor wafer 206. These provide independent and controllable dynamic electrical compression (DVS) for each voltage island. Dynamic voltage scaling (DVS) has become a common way to adjust the operating voltage and clock to balance the performance of a circuit with its accompanying power consumption. Voltage islands have been used in conventional designs to allow multiple portions of a wafer to undergo independent DVS control. However, after DVS has changed to a new value, the settling time can be 115716.doc •11- 200809628 up to 200 home seconds. Therefore, the best case is that the DVS setting should not be changed very frequently, or not changed at all after initialization.
複數個處理器核心208-210各具有對一共用記憶體212之 存取。分別將母一處理器核心安置於該等電壓島之一對應 者中,以使DVS中之變化將按比例地影響每一處理器核心 之效能及功率消耗。一作業系統(〇8)214提供對欲由處理 器核心208-210之不同核心執行之特定軟體任務216_22〇之 選擇。一鬆弛時間計算器222經連接以比較經指配任務 216-220以一特定^^8設定值於一對應處理器核心2〇8_21〇 上執行所花費之時間。 根據鬆弛時間計算器222所獲得之資料構建一處理能力 及任務載入表格224。其以多-Dvs設定值給處理器核心 208-210之每-者之處理能力編目冑。輸人—針對先前執 行之任務所施加之處理負載之相關量度。 OS 214控制一排程器226。該排程器尋找欲排程之每一 新接續任務在處理能力及任務載入表格224中之一項目。 若該任務先前已特徵化,則排程器226將該任務發送至一 適當、可用之處理器核心2〇8_21()中。一 DVS控制為對應 之電壓島發出—將使功率消耗最小化且仍在可用時間 現完全執行之值。 一動恶排程將應用程式任務指配至對稱式多處理器系統之 、、工可用電壓島隔離之處理器上。為該等處理器之每一者提 供不同之獨立㈣頻率。藉由採㈣任務之最終期 限與實際執行時間之間的時間差來量測鬆弛時間。將該等 115716.doc -12- 200809628 ^時間置於-應用程式任務圖表中。該等量測追縱 任務之將來鬆他時間。靜態地維持各個處理器之處理 態排程主要基本上基於該等任務之鬆他時間 ‘、、、〜* &選擇適當之處理器以產生最佳功率消耗。A plurality of processor cores 208-210 each have access to a shared memory 212. The parent-processor cores are each placed in one of the voltage island counterparts such that changes in the DVS will proportionally affect the performance and power consumption of each processor core. An operating system (〇8) 214 provides a selection of specific software tasks 216_22 to be executed by different cores of the processor cores 208-210. A relaxation time calculator 222 is coupled to compare the time taken by the assigned tasks 216-220 to execute on a corresponding processor core 2〇8_21〇 with a particular set value. A processing capability and task loading table 224 is constructed based on the information obtained by the relaxation time calculator 222. It catalogs the processing power of each of the processor cores 208-210 with a multi-Dvs setting. Input – A measure of the processing load imposed on a previously performed task. The OS 214 controls a scheduler 226. The scheduler looks for one of the items in the processing capability and task loading table 224 for each new task to be scheduled. If the task has been previously characterized, scheduler 226 sends the task to an appropriate, available processor core 2〇8_21(). A DVS control is issued for the corresponding voltage island - a value that will minimize power consumption and is still fully executed at the available time. A dynamic schedule assigns application tasks to processors on a symmetric multiprocessor system that can be isolated by a voltage island. Different independent (four) frequencies are provided for each of the processors. The relaxation time is measured by the time difference between the final period of the task and the actual execution time. Place the 115716.doc -12- 200809628 ^ time in the -Application Tasks chart. The measurement will track the future of the mission. Statically maintaining the processing schedules of the various processors is primarily based on the loose time of the tasks ‘, , 〜* & select the appropriate processor to produce the optimal power consumption.
該處理能力表格指示由各個處理器提供的以MIPS 位之效能。由各個步、 处里1§棱供之MIPS相依於該等處理写 ;操作電鼓頻率。可藉由查看處理器之電壓源以隨後估 。所期望效能而靜態地組態該表格。其亦可藉由做出數個 在進行之觀測來计异各任務之平均鬆弛時間。 動態排程器使用靜態估計及分析結果(㈣仙吨⑽也)將 任務映射至可用處理器上。其自效能量測及估計單元獲取 所錢用程式任務之鬆他資訊。考量映射至第一處理器上 t第一任務,若一第一處理器上之第一任務之經量測鬆他 時間偏離其平均鬆他時間,則可將此第一任務動態地排程 I配該效I要求之第二處理器上。任務至其他處理器 之映射係基於一處理能力表格尋找。 般而σ ’本發明之實施例係如此:對一可用處理器之 任務指配假設該處理器係對稱式但使用使該處理器能夠提 7不同通過量之不同電源電壓。任務排程係基於該任務之 I弛0守間。使用電屢島及基於其估計效能要求或鬆弛週期 動態地排程該等任務可提供顯著之功率節省。 、儘管本文已闡述及圖解說明本發明之特定實施例,但此 ^寺定實施例並不意欲限定本發明。各種修改及變化對於 …白此項技術者氅無疑問將係顯而易見,且本發明意欲僅 H5716.doc 13- 200809628 由iw附申請專利範圍之範疇限定。 【圖式簡單說明】 圖1係本發明之一對稱式多處理器系統實施例之“匸實施 、二力I方塊圖’其中該對稱式多處理ϋ系統使用固定 電壓島為處理器核心提供功率選擇;及The processing capability table indicates the performance of the MIPS bit provided by each processor. MIPS, which is supplied by each step and at 1 棱, depends on the processing of the processing; the drum frequency is operated. This can be estimated by looking at the voltage source of the processor. The table is statically configured with the desired performance. It can also account for the average relaxation time of each task by making several observations that are being made. The dynamic scheduler uses static estimates and analysis results ((4) cents (10) also maps tasks to available processors. Its self-efficient energy measurement and estimation unit obtains the loose information of the money application task. Considering mapping to the first task on the first processor, if the first task on the first processor measures the time to deviate from the average loose time, the first task can be dynamically scheduled. On the second processor with the I requirement. The mapping of tasks to other processors is based on a processing capability table lookup. The embodiment of the present invention is such that the task assignment to an available processor assumes that the processor is symmetric but uses different supply voltages that enable the processor to provide different throughputs. The task schedule is based on the task's I. Using power islands and dynamically scheduling these tasks based on their estimated performance requirements or slack cycles can provide significant power savings. While the specific embodiments of the invention have been illustrated and described herein, the embodiments are not intended to limit the invention. Various modifications and variations will be apparent to those skilled in the art, and the invention is intended to be limited only by the scope of the scope of the patent application of the Japanese Patent Application No. H5716.doc 13-200809628. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a schematic diagram of a "single implementation, two-force I block diagram" of a symmetric multiprocessor system embodiment of the present invention, wherein the symmetric multi-processing system uses a fixed voltage island to provide power to the processor core. Choose; and
每圖2係本發明之—對稱❹處理器系統實施例之另-SoC 實施方案之功能方塊圖,其中該對稱式多處理器系統為電 壓島提供DVS控制。Each Figure 2 is a functional block diagram of another SoC embodiment of the symmetry ❹ processor system embodiment of the present invention, wherein the symmetrical multiprocessor system provides DVS control for the voltage islands.
【主要元件符號說明】 100 對稱式多處理器系統 102 電壓島 103 電壓島 104 電壓島 106 半導體晶片 108 處理器核心 109 處理器核心 110 處理器核心 112 共用記憶體 114 作業系統(OS) 116 軟體任務 117 軟體任務 118 軟體任務 119 軟體任務 120 軟體任務 115716.doc -14- 200809628 122 鬆弛時間計算器 124 處理能力及任務載入表格 126 排程器 200 202 203 204 206 208 209 210 212 214 216 217 218 219 220 222 224 226[Major component symbol description] 100 Symmetric multiprocessor system 102 Voltage island 103 Voltage island 104 Voltage island 106 Semiconductor wafer 108 Processor core 109 Processor core 110 Processor core 112 Shared memory 114 Operating system (OS) 116 Software task 117 Software Tasks 118 Software Tasks 119 Software Tasks 120 Software Tasks 115716.doc -14- 200809628 122 Relaxation Time Calculator 124 Processing Capabilities and Task Load Table 126 Scheduler 200 202 203 204 206 208 209 210 212 214 216 217 218 219 220 222 224 226
對稱式多處理器系統 電壓島 電壓島 電壓島 半導體晶片 處理器核心 處理器核心 處理器核心 共用記憶體 作業系統(OS) 軟體任務 軟體任務 軟體任務 軟體任務 軟體任務 鬆弛時間計算器 處理能力及任務載入表格 排程器 115716.doc -15-Symmetric multiprocessor system voltage island voltage island voltage island semiconductor chip processor core processor core processor core shared memory operating system (OS) software task software task software task software task software task relaxation time calculator processing capability and task Into the table scheduler 115716.doc -15-
Claims (1)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US75716606P | 2006-01-06 | 2006-01-06 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW200809628A true TW200809628A (en) | 2008-02-16 |
Family
ID=38055463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW096100181A TW200809628A (en) | 2006-01-06 | 2007-01-03 | Power aware dynamic scheduling in multiprocessor system employing voltage islands |
Country Status (2)
Country | Link |
---|---|
TW (1) | TW200809628A (en) |
WO (1) | WO2007077516A1 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7941682B2 (en) | 2007-05-09 | 2011-05-10 | Gainspan, Inc. | Optimum power management of system on chip based on tiered states of operation |
CN105930289A (en) * | 2010-07-30 | 2016-09-07 | 富士通株式会社 | Multi-core processor system, allocation program, control program, allocation method, and control method |
WO2012014312A1 (en) | 2010-07-30 | 2012-02-02 | 富士通株式会社 | Multi-core processor system, allocation program, control program, allocation method and control method |
US8799697B2 (en) | 2011-09-26 | 2014-08-05 | Qualcomm Incorporated | Operating system synchronization in loosely coupled multiprocessor system and chips |
WO2013101016A1 (en) * | 2011-12-29 | 2013-07-04 | Intel Corporation | Individual core voltage margining |
US9703613B2 (en) | 2013-12-20 | 2017-07-11 | Qualcomm Incorporated | Multi-core dynamic workload management using native and dynamic parameters |
US9618999B1 (en) | 2015-11-17 | 2017-04-11 | International Business Machines Corporation | Idle-aware margin adaption |
WO2017108079A1 (en) | 2015-12-21 | 2017-06-29 | Telefonaktiebolaget Lm Ericsson (Publ) | Priority trainer for many core processing system |
CN109960576B (en) * | 2019-03-29 | 2021-04-16 | 北京工业大学 | Low-energy-consumption task scheduling strategy oriented to CPU-GPU (Central processing Unit-graphics processing Unit) heterogeneous |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6792582B1 (en) * | 2000-11-15 | 2004-09-14 | International Business Machines Corporation | Concurrent logical and physical construction of voltage islands for mixed supply voltage designs |
US6986066B2 (en) * | 2001-01-05 | 2006-01-10 | International Business Machines Corporation | Computer system having low energy consumption |
WO2004006089A1 (en) * | 2002-05-28 | 2004-01-15 | Sendo International Limited | A processor system and method for controlling signal timing therein |
GB2403823B (en) * | 2003-07-08 | 2005-09-21 | Toshiba Res Europ Ltd | Controller for processing apparatus |
JP4433782B2 (en) * | 2003-12-17 | 2010-03-17 | 株式会社日立製作所 | Information processing apparatus and operating system |
-
2006
- 2006-12-28 WO PCT/IB2006/055050 patent/WO2007077516A1/en active Application Filing
-
2007
- 2007-01-03 TW TW096100181A patent/TW200809628A/en unknown
Also Published As
Publication number | Publication date |
---|---|
WO2007077516A1 (en) | 2007-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Juarez et al. | Dynamic energy-aware scheduling for parallel task-based application in cloud computing | |
TW200809628A (en) | Power aware dynamic scheduling in multiprocessor system employing voltage islands | |
Kim et al. | Racing and pacing to idle: Theoretical and empirical analysis of energy optimization heuristics | |
Miller et al. | Booster: Reactive core acceleration for mitigating the effects of process variation and application imbalance in low-voltage chips | |
JP6289444B2 (en) | Method and apparatus for varying energy per instruction according to the amount of parallelism available | |
Von Laszewski et al. | Power-aware scheduling of virtual machines in dvfs-enabled clusters | |
KR101476568B1 (en) | Providing per core voltage and frequency control | |
Wang et al. | XChange: A market-based approach to scalable dynamic multi-resource allocation in multicore architectures | |
TWI489265B (en) | A method, apparatus, and system for energy efficiency and energy conservation including balancing power among multi-frequency domains of a processor based on efficiency rating scheme | |
Etinski et al. | Utilization driven power-aware parallel job scheduling | |
TW201337771A (en) | A method, apparatus, and system for energy efficiency and energy conservation including thread consolidation | |
WO2012170214A2 (en) | System and apparatus for modeling processor workloads using virtual pulse chains | |
Yoshii et al. | Evaluating power-monitoring capabilities on IBM Blue Gene/P and Blue Gene/Q | |
Yun et al. | Hars: A heterogeneity-aware runtime system for self-adaptive multithreaded applications | |
Jeon et al. | Load unbalancing strategy for multicore embedded processors | |
Kumar et al. | A green SLA constrained scheduling algorithm for parallel/scientific applications in heterogeneous cluster systems | |
Molnos et al. | Conservative dynamic energy management for real-time dataflow applications mapped on multiple processors | |
Qi et al. | Power management for real-time embedded systems on block-partitioned multicore platforms | |
Iskandar et al. | Dynamic thread mapping for maximizing performance in power-efficient multi-core systems | |
Quinones et al. | Exploiting intra-task slack time of load operations for DVFS in hard real-time multi-core systems | |
KR101449046B1 (en) | Multi processor and method for reducing power consumption using the same | |
Islam et al. | Learning based power management for periodic real-time tasks | |
Petrides et al. | Heterogeneous-and NUMA-aware scheduling for many-core architectures | |
BARTOLINI et al. | Energy saving and thermal management opportunities in a workload-aware MPI runtime for a scientific HPC computing node | |
Tang et al. | Exploring hardware profile-guided green datacenter scheduling |