欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

調(diào)度方法、設(shè)計(jì)輔助方法以及系統(tǒng)與流程

文檔序號(hào):11514513閱讀:210來源:國知局
調(diào)度方法、設(shè)計(jì)輔助方法以及系統(tǒng)與流程

本申請(qǐng)是申請(qǐng)?zhí)枮?01180067139.2、申請(qǐng)日為2011年2月10日、發(fā)明名稱為“調(diào)度方法、設(shè)計(jì)輔助方法以及系統(tǒng)”的申請(qǐng)的分案申請(qǐng)。

本發(fā)明涉及對(duì)程序的執(zhí)行進(jìn)行調(diào)度的調(diào)度方法以及系統(tǒng)。另外,本發(fā)明涉及對(duì)系統(tǒng)的設(shè)計(jì)進(jìn)行輔助的設(shè)計(jì)輔助方法。



背景技術(shù):

以往,在多核處理器系統(tǒng)中,作為抑制負(fù)載峰值時(shí)的發(fā)熱量的技術(shù),公知有一種按照單位時(shí)間的消耗電力均勻的方式進(jìn)行調(diào)度的技術(shù)(例如參照下述專利文獻(xiàn)1)。

另外,以往在多核處理器系統(tǒng)中,作為減少消耗電力的技術(shù),公知有一種使向cpu(centralprocessingunit)供給的時(shí)鐘頻率與電源電壓動(dòng)態(tài)變更的dvfs(dynamicvoltagefrequencyscaling,動(dòng)態(tài)電壓頻率調(diào)整)。并且,在多核處理器中,通過將某個(gè)處理分散給多個(gè)cpu來執(zhí)行,能夠使處理時(shí)間高速化。

鑒于此,基于多核處理器系統(tǒng)的處理時(shí)間與運(yùn)轉(zhuǎn)cpu數(shù)成比例,公知有一種按運(yùn)轉(zhuǎn)cpu數(shù)計(jì)算處理時(shí)間和消耗電力,來決定最佳的運(yùn)轉(zhuǎn)cpu數(shù)、電源電壓的值和時(shí)鐘的頻率的技術(shù)(以下稱為“現(xiàn)有技術(shù)1”)(例如參照下述專利文獻(xiàn)2)。然而,如果使用多核處理器系統(tǒng)來使處理并列化,則由于實(shí)際上存在并列化系統(tǒng)開銷(overhead),所以無法與運(yùn)轉(zhuǎn)cpu數(shù)成比例地使處理時(shí)間高速化。

圖23是表示并列化系統(tǒng)開銷例的說明圖。并列化系統(tǒng)開銷的重要因素大致有兩個(gè)。一個(gè)是因?yàn)槌绦蛘w不能并列動(dòng)作。例如,程序存在不可并列化部分和可并列化部分。例如,如果1個(gè)cpu動(dòng)作時(shí)的執(zhí)行時(shí)間中有10[%]不可并列化部分,則即使有多個(gè)cpu,也受到不能并列動(dòng)作的10[%]的部分的影響,從而無法發(fā)揮10倍以上的性能。

另一個(gè)是因?yàn)槿绻谶M(jìn)行并列處理時(shí)將一個(gè)處理分割而由多個(gè)cpu進(jìn)行,則需要在跨cpu的處理之間進(jìn)行同步、通信(在圖23中,是同步/通信部分)。在利用2個(gè)以上cpu來執(zhí)行的情況下,被追加在1個(gè)cpu的執(zhí)行中不需要的同步、通信的處理。并且,在利用2個(gè)以上cpu執(zhí)行的情況下,在一個(gè)cpu執(zhí)行不可并列化部分的過程中其他cpu成為待機(jī)處理(待機(jī)部分)。

圖24是表示并列化系統(tǒng)開銷的影響例的說明圖。在圖表中,縱軸為性能,橫軸為cpu數(shù)。這里,表示了在將運(yùn)轉(zhuǎn)cpu數(shù)為1時(shí)的性能設(shè)為1的情況下,通過運(yùn)轉(zhuǎn)cpu數(shù)的增加性能提高多少。這里的性能是處理時(shí)間。例如,如果處理時(shí)間從40[ms]變?yōu)?0[ms],則表示性能變?yōu)?倍。在圖表中的理想值下,運(yùn)轉(zhuǎn)cpu數(shù)的增加與性能的增加成比例。然而,在圖表中的實(shí)際性能下,運(yùn)轉(zhuǎn)cpu數(shù)越增加,則性能的提高越遲鈍。

鑒于此,公知有一種對(duì)應(yīng)用程序進(jìn)行解析來確定各cpu的空閑時(shí)間,通過維持最高性能并變更利用dvfs向cpu提供的時(shí)鐘的頻率,來削減消耗電力的技術(shù)(以下稱為“現(xiàn)有技術(shù)2”)(例如參照下述專利文獻(xiàn)3)。例如,在現(xiàn)有技術(shù)2中有處理a、處理b、處理c這三個(gè)處理,由于處理c利用處理a與處理b的結(jié)果,所以若這兩個(gè)處理不結(jié)束則無法開始。此時(shí),當(dāng)在基準(zhǔn)頻率下處理a以5秒結(jié)束,處理b以10秒結(jié)束時(shí),即使由不同的cpu執(zhí)行處理a和處理b,并使向執(zhí)行處理a的cpu提供的執(zhí)行處理a過程中的時(shí)鐘的頻率為基準(zhǔn)頻率的一半,處理c的開始時(shí)刻也不變。因此,通過dvfs能夠削減消耗電力。

專利文獻(xiàn)1:日本專利第3567354號(hào)公報(bào)

專利文獻(xiàn)2:日本特開2005-85164號(hào)公報(bào)

專利文獻(xiàn)3:日本特開2006-293768號(hào)公報(bào)

然而,在現(xiàn)有技術(shù)2中,當(dāng)同時(shí)執(zhí)行了多個(gè)應(yīng)用程序時(shí),由于不清楚空閑時(shí)間如何變化,所以存在無法變更時(shí)鐘的頻率的問題。另外,若以移動(dòng)電話為例,則在利用者長時(shí)間寫郵件的過程中等時(shí)性能不怎么重要,若考慮因跨處理器的同步、通信引起的系統(tǒng)開銷,則存在不進(jìn)行并列化反而效率高的可能性。然而,在現(xiàn)有技術(shù)2中沒有考慮到這樣的方面,由于想要最大限度利用全部的cpu來進(jìn)行并列處理,所以如果使用現(xiàn)有技術(shù)2則存在消耗電力增加的問題。



技術(shù)實(shí)現(xiàn)要素:

為了消除上述現(xiàn)有技術(shù)的問題點(diǎn),本發(fā)明的目的在于,提供能夠在確保一定以上的性能并使消耗電力減少的調(diào)度方法以及系統(tǒng)。另外,本發(fā)明的目的在于,提供一種能夠容易地確定消耗電力最少的運(yùn)轉(zhuǎn)cpu數(shù)與時(shí)鐘頻率的組合、可縮短系統(tǒng)的設(shè)計(jì)期間的設(shè)計(jì)輔助方法。

為了解決上述課題而實(shí)現(xiàn)目的,根據(jù)本發(fā)明的一個(gè)方式,提出下述的調(diào)度方法以及系統(tǒng):檢測從第一處理向第二處理的變更,從存儲(chǔ)器取得執(zhí)行所述第二處理的cpu的數(shù)和動(dòng)作頻率,基于所述cpu的數(shù)來使運(yùn)轉(zhuǎn)中的cpu停止或者起動(dòng)停止中的cpu,對(duì)執(zhí)行所述第二處理的cpu分配所述動(dòng)作頻率。

另外,根據(jù)本發(fā)明的另一個(gè)方式,提出下述的設(shè)計(jì)輔助方法:測定執(zhí)行第一處理時(shí)的第一數(shù)的cpu的第一動(dòng)作時(shí)間和第一停止時(shí)間,設(shè)定比第一最小動(dòng)作頻率大的第一動(dòng)作頻率,基于所述第一動(dòng)作時(shí)間和所述第一停止時(shí)間來計(jì)算以所述第一動(dòng)作頻率動(dòng)作的所述第一數(shù)的cpu的第一消耗電力,測定執(zhí)行所述第一處理時(shí)的與所述第一數(shù)不同的第二數(shù)的cpu的第二動(dòng)作時(shí)間和第二停止時(shí)間,設(shè)定比第二最小動(dòng)作頻率大的第二動(dòng)作頻率,基于所述第二動(dòng)作時(shí)間和所述第二停止時(shí)間來計(jì)算以所述第二動(dòng)作頻率動(dòng)作的所述第二數(shù)的cpu的第二消耗電力,基于所述第一消耗電力與所述第二消耗電力的比較結(jié)果來決定所述第一處理執(zhí)行時(shí)的cpu的數(shù)。

根據(jù)本發(fā)明的一個(gè)方式,起到可保持一定以上的性能,同時(shí)使消耗電力減少這一效果。另外,根據(jù)本發(fā)明的另一個(gè)方式,起到能夠容易地確定消耗電力最少的運(yùn)轉(zhuǎn)cpu數(shù)和時(shí)鐘頻率的組合這一效果。

附圖說明

圖1是表示本發(fā)明的一個(gè)例子的說明圖。

圖2是表示多核處理器系統(tǒng)的硬件例的說明圖。

圖3是表示實(shí)施方式1涉及的設(shè)計(jì)輔助裝置的硬件例的框圖。

圖4是表示實(shí)施方式1涉及的設(shè)計(jì)輔助裝置300的功能框圖的說明圖。

圖5是表示測定數(shù)據(jù)的一個(gè)例子的說明圖。

圖6是表示dvfs控制信息表600的一個(gè)例子的說明圖。

圖7是表示實(shí)施方式1涉及的設(shè)計(jì)輔助裝置300所執(zhí)行的設(shè)計(jì)支援處理步驟的一個(gè)例子的流程圖。

圖8是實(shí)施方式2涉及的多核處理器系統(tǒng)200的功能框圖。

圖9是表示事件的產(chǎn)生例的說明圖。

圖10是表示運(yùn)轉(zhuǎn)中的cpu的數(shù)發(fā)生變化的例子的說明圖。

圖11是表示實(shí)施方式2涉及的os220所執(zhí)行的控制處理步驟的一個(gè)例子的流程圖。

圖12是表示設(shè)計(jì)輔助裝置300的功能框圖的說明圖。

圖13是表示運(yùn)轉(zhuǎn)時(shí)間表例的說明圖。

圖14是表示頻率/電力表例的說明圖。

圖15是表示實(shí)施方式3涉及的設(shè)計(jì)輔助裝置300所執(zhí)行的設(shè)計(jì)支援處理步驟的一個(gè)例子的流程圖。

圖16是實(shí)施方式4涉及的多核處理器系統(tǒng)200的功能框圖。

圖17是表示多個(gè)程序同時(shí)被執(zhí)行的例子的說明圖。

圖18是表示合計(jì)運(yùn)轉(zhuǎn)時(shí)間的說明圖。

圖19是表示確定消耗電力最低的cpu數(shù)的例子的說明圖。

圖20是表示運(yùn)轉(zhuǎn)cpu數(shù)的變更例的說明圖。

圖21是表示實(shí)施方式4涉及的os220所執(zhí)行的控制處理步驟的一個(gè)例子的流程圖。

圖22是表示實(shí)施方式4涉及的os220所執(zhí)行的控制處理步驟的一個(gè)例子的流程圖。

圖23是表示并列化系統(tǒng)開銷例的說明圖。

圖24是表示并列化系統(tǒng)開銷的影響例的說明圖。

具體實(shí)施方式

以下,參照附圖對(duì)本發(fā)明涉及的調(diào)度方法、設(shè)計(jì)輔助方法以及系統(tǒng)的實(shí)施方式詳細(xì)進(jìn)行說明。這里,在多核處理器系統(tǒng)中,多核處理器是搭載有多個(gè)核的處理器。只要搭載有多個(gè)核即可,則可以是搭載多個(gè)核的單一處理器,也可以是單核處理器并列的處理器組。其中,在本實(shí)施方式中,為了簡化說明,以單核處理器并列而成的處理器組為例來進(jìn)行說明。

圖1是表示本發(fā)明的一個(gè)例子的說明圖。例如,在表100中按每個(gè)利用場景(scene)存儲(chǔ)有運(yùn)轉(zhuǎn)cpu數(shù)和時(shí)鐘的頻率。這里,利用場景例如是利用者起動(dòng)動(dòng)態(tài)圖像再生、音樂再生等特定處理、執(zhí)行通話、郵件的來電等設(shè)備的主要功能、正在執(zhí)行設(shè)備的開閉等規(guī)定的事件的狀態(tài)。由于該設(shè)備具有什么樣的主要功能是在設(shè)備的企畫階段決定,所以可基于主要功能來決定設(shè)備的利用場景。os在每當(dāng)利用場景被切換便從表100取得運(yùn)轉(zhuǎn)cpu數(shù)和時(shí)鐘的頻率。

例如,在郵件中,設(shè)運(yùn)轉(zhuǎn)cpu數(shù)為2,向運(yùn)轉(zhuǎn)中的cpu提供的時(shí)鐘的頻率為300[mhz]。而且,如果在郵件中終端被關(guān)閉,則os從表100取得與終端被關(guān)閉的事件對(duì)應(yīng)的運(yùn)轉(zhuǎn)cpu數(shù)和時(shí)鐘的頻率。運(yùn)轉(zhuǎn)cpu數(shù)為3,頻率為100[mhz]。os向與運(yùn)轉(zhuǎn)cpu數(shù)對(duì)應(yīng)的cpu提供所取得的頻率的時(shí)鐘,利用與運(yùn)轉(zhuǎn)cpu數(shù)對(duì)應(yīng)的cpu來執(zhí)行正在執(zhí)行中的程序。

這里,利用實(shí)施方式1~實(shí)施方式4詳細(xì)進(jìn)行說明。在實(shí)施方式1、2中,表示了每當(dāng)利用場景發(fā)生變化,便以與變化后的利用場景對(duì)應(yīng)的cpu數(shù)和時(shí)鐘的頻率進(jìn)行動(dòng)作的例子。在實(shí)施方式3、4中,表示了在同時(shí)執(zhí)行多個(gè)程序的情況下,根據(jù)執(zhí)行中的程序的組合來決定最佳的cpu數(shù)和時(shí)鐘的頻率的例子。

(實(shí)施方式1)

首先,在實(shí)施方式1中,表示了在設(shè)計(jì)時(shí)確定與利用場景對(duì)應(yīng)的cpu數(shù)和時(shí)鐘的頻率的例子。

(多核處理器系統(tǒng)的硬件例)

圖2是表示多核處理器系統(tǒng)的硬件例的說明圖。多核處理器系統(tǒng)200具有cpu201~cpu204、dvfs控制機(jī)構(gòu)205、ram(randomaccessmemory)206、rom(readonlymemory)207、閃存rom208。并且,多核處理器系統(tǒng)200具有閃存rom控制器209、閃存rom210、顯示器211、鍵盤212、i/f(interface)213。各部經(jīng)由總線214連接。

首先,cpu201~cpu204分別具有寄存器、核心(core)和高速緩沖存儲(chǔ)器。cpu201~cpu204執(zhí)行smp(symmetricmultiprocessing,對(duì)稱多處理)型的os220。在smp型的os220中,除了一部分的例外之外,理論上os220的內(nèi)部處理和在os220上動(dòng)作的應(yīng)用程序均跨所有cpu而被執(zhí)行。各處理由多核處理器上的任意一個(gè)cpu執(zhí)行,不需要意識(shí)由哪個(gè)cpu執(zhí)行。

因此,在smp型的os220中,由于不需要意識(shí)運(yùn)轉(zhuǎn)中的cpu的數(shù)量,os220恰當(dāng)?shù)貙?duì)運(yùn)轉(zhuǎn)中的cpu分配處理,所以即使不特別變更軟件也能以各種cpu數(shù)使設(shè)備動(dòng)作。實(shí)際上,只有os220的中核部分按每個(gè)cpu獨(dú)立動(dòng)作,通過中核部分在cpu間進(jìn)行通信,并且決定由哪個(gè)cpu執(zhí)行哪個(gè)處理。

rom207、ram206、閃存rom208、閃存rom控制器209、閃存rom210是被cpu201~cpu204共享的存儲(chǔ)器。

閃存rom208、rom207中存儲(chǔ)有記述啟動(dòng)順序的引導(dǎo)加載等程序。閃存rom208、rom207中存儲(chǔ)有os等系統(tǒng)軟件、應(yīng)用程序軟件、os220控制的表。

ram206被用作各cpu的工作區(qū)域。閃存rom控制器209按照各cpu的控制來控制針對(duì)閃存rom210的數(shù)據(jù)的讀取/寫入。閃存rom210存儲(chǔ)在閃存rom控制器209的控制下寫入的數(shù)據(jù)。作為數(shù)據(jù)的具體例,是使用多核處理器系統(tǒng)200的用戶通過i/f213取得的圖像數(shù)據(jù)、映像數(shù)據(jù)等。閃存rom210例如可采用存儲(chǔ)卡、sd卡等。

dvfs控制機(jī)構(gòu)205向各cpu提供電源電壓、時(shí)鐘。例如,dvfs控制機(jī)構(gòu)205能夠向cpu201~cpu204提供的電源電壓的值在以0.1[v]刻度為1.0[v]~1.6[v]和0[v]。從dvfs控制機(jī)構(gòu)205分別經(jīng)由電源布線vdd1~vdd4向cpu201~cpu204提供電源電壓。dvfs控制機(jī)構(gòu)205能夠向cpu201~cpu204提供的時(shí)鐘的頻率在以100[mhz]刻度為100[mhz]~500[mhz]和0[hz]。從dvfs控制機(jī)構(gòu)205分別經(jīng)由時(shí)鐘布線clk1~clk4向cpu201~cpu204提供時(shí)鐘。在所提供的電源電壓為0[v]或者時(shí)鐘的頻率為0[hz]的情況下,cpu為停止?fàn)顟B(tài)。

顯示器211以光標(biāo)、圖標(biāo)或者工具箱為代表,顯示文件、圖像、功能信息等數(shù)據(jù)。并且,顯示器211是觸摸面板,具有用于輸入數(shù)字、各種指示等的鍵,可進(jìn)行數(shù)據(jù)的輸入。顯示器211例如可采用tft液晶顯示器211等。鍵盤212具有用于輸入數(shù)字、各種指示等的鍵,進(jìn)行數(shù)據(jù)的輸入。另外,鍵盤212也可以是觸摸面板式的輸入板或數(shù)字鍵等。

i/f213通過通信線路與lan(localareanetwork,局域網(wǎng))、wan(wideareanetwork,廣域網(wǎng))、英特網(wǎng)等網(wǎng)絡(luò)連接,經(jīng)由網(wǎng)絡(luò)與其他裝置連接。而且,i/f213掌管網(wǎng)絡(luò)與內(nèi)部的接口,對(duì)來自外部裝置的數(shù)據(jù)的輸入輸出進(jìn)行控制。i/f213例如可采用調(diào)制解調(diào)器、lan適配器等。

(設(shè)計(jì)輔助裝置的硬件例)

圖3是表示實(shí)施方式1涉及的設(shè)計(jì)輔助裝置的硬件例的框圖。設(shè)計(jì)輔助裝置300能夠與具有多核處理器系統(tǒng)200的設(shè)備連接,來計(jì)測處理時(shí)間、消耗電力。在圖3中,設(shè)計(jì)輔助裝置300具備cpu301、rom302、ram303、磁盤驅(qū)動(dòng)器304、磁盤305、光盤驅(qū)動(dòng)器306、光盤307、顯示器308、i/f309、鍵盤310、鼠標(biāo)311、掃描儀312、打印機(jī)313。另外,各部通過總線315分別連接。

這里,cpu301掌控設(shè)計(jì)輔助裝置300的整體控制。rom302存儲(chǔ)有引導(dǎo)程序等程序。ram303作為cpu301的工作區(qū)域而被使用。磁盤驅(qū)動(dòng)器304按照cpu301的控制來控制針對(duì)磁盤305的數(shù)據(jù)的讀取/寫入。磁盤305存儲(chǔ)在磁盤驅(qū)動(dòng)器304的控制下寫入的數(shù)據(jù)。

光盤驅(qū)動(dòng)器306按照cpu301的控制來控制針對(duì)光盤307的數(shù)據(jù)的讀取/寫入。光盤307存儲(chǔ)在光盤驅(qū)動(dòng)器306的控制下寫入的數(shù)據(jù),或使計(jì)算機(jī)讀取光盤307中存儲(chǔ)的數(shù)據(jù)。

顯示器308以光標(biāo)、圖標(biāo)或者工具箱為代表,顯示文件、圖像、功能信息等數(shù)據(jù)。該顯示器308例如可采用crt、tft液晶顯示器、等離子顯示器等。

i/f309通過通信線路與lan(localareanetwork)、wan(wideareanetwork)、英特網(wǎng)等網(wǎng)絡(luò)314連接,經(jīng)由該網(wǎng)絡(luò)314與其他裝置連接。而且,i/f309掌控網(wǎng)絡(luò)314與內(nèi)部的接口,對(duì)來自外部裝置的數(shù)據(jù)的輸入輸出進(jìn)行控制。i/f309例如可采用調(diào)制解調(diào)器、lan適配器等。

鍵盤310具備用于輸入文字、數(shù)字、各種指示等的鍵,來進(jìn)行數(shù)據(jù)的輸入。另外,也可以是觸摸面板式的輸入板、數(shù)字鍵等。鼠標(biāo)311進(jìn)行光標(biāo)的移動(dòng)、范圍選擇,或者窗口的移動(dòng)、尺寸的變更等。只要具備與定點(diǎn)設(shè)備(pointingdevice)同樣的功能即可,也可以是跟蹤球、控制桿等。

掃描儀312以光學(xué)方式讀取圖像,將圖像數(shù)據(jù)取入到設(shè)計(jì)輔助裝置300內(nèi)。此外,掃描儀312也可以具有ocr(opticalcharacterreader,光符閱讀機(jī))功能。另外,打印機(jī)313打印圖像數(shù)據(jù)、文件數(shù)據(jù)。打印機(jī)313例如可采用激光打印機(jī)、噴墨打印機(jī)。

(實(shí)施方式1涉及的設(shè)計(jì)輔助裝置300的功能框圖)

圖4是表示實(shí)施方式1涉及的設(shè)計(jì)輔助裝置300的功能框圖的說明圖。設(shè)計(jì)輔助裝置300具有測定部401、頻率計(jì)算部402、消耗電力計(jì)算部403、決定部404、輸出部405。具體而言,例如,具有測定部401~輸出部405的程序被存儲(chǔ)在rom302、磁盤305、光盤307等存儲(chǔ)裝置。cpu301訪問該存儲(chǔ)裝置來讀出該程序,通過執(zhí)行編碼于該程序內(nèi)的處理,來執(zhí)行測定部401~輸出部405的處理。

測定部401測定使具有多核處理器系統(tǒng)200的設(shè)備發(fā)生對(duì)象事件而按運(yùn)轉(zhuǎn)cpu數(shù)執(zhí)行與基準(zhǔn)頻率下的對(duì)象事件對(duì)應(yīng)的處理時(shí)的運(yùn)轉(zhuǎn)時(shí)間和總計(jì)空閑時(shí)間。空閑時(shí)間是沒有os220對(duì)各cpu分配的處理的狀態(tài)的時(shí)間,在多核處理器系統(tǒng)200的情況下,空閑時(shí)間在各個(gè)cpu中零亂地產(chǎn)生。因此,測定部401測定在進(jìn)行典型的處理的期間正運(yùn)轉(zhuǎn)的全部cpu所產(chǎn)生的空閑時(shí)間的合計(jì)作為總計(jì)空閑時(shí)間。由于在多核處理器系統(tǒng)200中os220管理運(yùn)轉(zhuǎn)時(shí)間和空閑時(shí)間,所以設(shè)計(jì)輔助裝置300使os220測定運(yùn)轉(zhuǎn)時(shí)間和總計(jì)空閑時(shí)間。

圖5是表示測定數(shù)據(jù)的一個(gè)例子的說明圖。利用場景1測定數(shù)據(jù)501具有cpu數(shù)的項(xiàng)目、運(yùn)轉(zhuǎn)時(shí)間的項(xiàng)目和等待時(shí)間的項(xiàng)目。由于多核處理器系統(tǒng)200的cpu為4個(gè),所以在cpu數(shù)的項(xiàng)目中登記了1~4。在運(yùn)轉(zhuǎn)時(shí)間的項(xiàng)目中登記了利用場景1中的各cpu數(shù)下的運(yùn)轉(zhuǎn)時(shí)間,在等待時(shí)間的項(xiàng)目中登記了利用場景1中的各cpu數(shù)下的空閑時(shí)間。

利用場景2測定數(shù)據(jù)502具有cpu數(shù)的項(xiàng)目、運(yùn)轉(zhuǎn)時(shí)間的項(xiàng)目和等待時(shí)間的項(xiàng)目。由于多核處理器系統(tǒng)200的cpu為4個(gè),所以在cpu數(shù)的項(xiàng)目中登記了1~4。在運(yùn)轉(zhuǎn)時(shí)間的項(xiàng)目中登記了利用場景2中的各cpu數(shù)下的運(yùn)轉(zhuǎn)時(shí)間,在等待時(shí)間的項(xiàng)目中登記了利用場景2中的各cpu數(shù)下的空閑時(shí)間。利用場景1測定數(shù)據(jù)501、利用場景2測定數(shù)據(jù)502被存儲(chǔ)在rom302、磁盤305、光盤307等存儲(chǔ)裝置。

返回到圖4,頻率計(jì)算部402根據(jù)由測定部401測定出的指定cpu數(shù)下的運(yùn)轉(zhuǎn)時(shí)間與由測定部401測定出的按cpu數(shù)的運(yùn)轉(zhuǎn)時(shí)間的比率,按cpu數(shù)計(jì)算出能夠滿足指定cpu數(shù)下的運(yùn)轉(zhuǎn)時(shí)間的頻率。這里,設(shè)指定cpu數(shù)為1。具體而言,例如cpu利用下述式(1)來按cpu數(shù)計(jì)算頻率。

頻率=基準(zhǔn)頻率×測定出的運(yùn)轉(zhuǎn)時(shí)間/指定cpu數(shù)下的運(yùn)轉(zhuǎn)時(shí)間……(1)

消耗電力計(jì)算部403利用與由頻率計(jì)算部402按cpu數(shù)計(jì)算出的頻率對(duì)應(yīng)的在存儲(chǔ)裝置中存儲(chǔ)的單位時(shí)間的1個(gè)cpu的消耗電力,按cpu數(shù)計(jì)算消耗電力量。決定部404將由消耗電力計(jì)算部403按cpu數(shù)計(jì)算出的消耗電力量中最小的消耗電力量的cpu數(shù)決定為對(duì)象事件的運(yùn)轉(zhuǎn)cpu數(shù)。輸出部405將由決定部404決定的運(yùn)轉(zhuǎn)cpu數(shù)和計(jì)算出的頻率與對(duì)象事件的識(shí)別信息建立關(guān)聯(lián)輸出。

圖6是表示dvfs控制信息表600的一個(gè)例子的說明圖。dvfs控制信息表600是輸出結(jié)果的一個(gè)例子。在dvfs控制信息表600中定義了每個(gè)被指定的事件的運(yùn)轉(zhuǎn)cpu數(shù)、頻率和電源電壓的值。dvfs控制信息表600具有事件的項(xiàng)目601、運(yùn)轉(zhuǎn)cpu數(shù)的項(xiàng)目602、頻率的項(xiàng)目603、電源電壓的項(xiàng)目604。

在事件的項(xiàng)目601中登記有利用場景轉(zhuǎn)移條件。這里,在事件的項(xiàng)目601中登記有郵件程序(mailer)的起動(dòng)、動(dòng)態(tài)圖像再生軟件的起動(dòng)、瀏覽器的起動(dòng)、終端的關(guān)閉、鍵y的按下。在運(yùn)轉(zhuǎn)cpu數(shù)的項(xiàng)目602中登記有運(yùn)轉(zhuǎn)cpu數(shù)。在頻率的項(xiàng)目603中登記有向運(yùn)轉(zhuǎn)cpu提供的時(shí)鐘的頻率。在電源電壓的項(xiàng)目604中登記有向運(yùn)轉(zhuǎn)中的cpu提供的電源電壓。

(實(shí)施方式1涉及的設(shè)計(jì)輔助裝置300所執(zhí)行的設(shè)計(jì)支援處理步驟)

圖7是表示實(shí)施方式1涉及的設(shè)計(jì)輔助裝置300所執(zhí)行的設(shè)計(jì)支援處理步驟的一個(gè)例子的流程圖。首先,設(shè)計(jì)輔助裝置300根據(jù)未決定運(yùn)轉(zhuǎn)cpu數(shù)的利用場景設(shè)定任意的利用場景(步驟s701),設(shè)運(yùn)轉(zhuǎn)cpu數(shù)=1(步驟s702),設(shè)定運(yùn)轉(zhuǎn)cpu數(shù)和利用場景,然后起動(dòng)設(shè)備(步驟s703)。這里,設(shè)備具有上述的多核處理器系統(tǒng)200。設(shè)計(jì)輔助裝置300測定運(yùn)轉(zhuǎn)時(shí)間和總計(jì)空閑時(shí)間(步驟s704),計(jì)算不小于單核下的性能的最小頻率(步驟s705)。

設(shè)計(jì)輔助裝置300測定cpu以計(jì)算出的頻率動(dòng)作的最小電源電壓和計(jì)算出的頻率下的消耗電力(步驟s706),然后計(jì)算在計(jì)算出的頻率下的消耗電力量(步驟s707)。設(shè)計(jì)輔助裝置300設(shè)運(yùn)轉(zhuǎn)cpu數(shù)=運(yùn)轉(zhuǎn)cpu數(shù)+1(步驟s708),判斷是否是運(yùn)轉(zhuǎn)cpu數(shù)>所有cpu數(shù)(步驟s709)。在判斷為不是運(yùn)轉(zhuǎn)cpu數(shù)>所有cpu數(shù)的情況下(步驟s709:否),設(shè)計(jì)輔助裝置300返回到步驟s702。

在判斷為運(yùn)轉(zhuǎn)cpu數(shù)>所有cpu數(shù)的情況下(步驟s709:是),設(shè)計(jì)輔助裝置300決定消耗電力量為最小的cpu數(shù)(步驟s710),然后判斷是否在所有利用場景下決定了cpu數(shù)(步驟s711)。當(dāng)判斷為沒有在所有利用場景下決定cpu數(shù)時(shí)(步驟s711:否),設(shè)計(jì)輔助裝置300返回到步驟s701。

當(dāng)判斷為在所有利用場景下決定了cpu數(shù)時(shí)(步驟s711:是),設(shè)計(jì)輔助裝置300輸出決定結(jié)果(步驟s712),結(jié)束一系列的處理。作為輸出形式,例如有向顯示器308的顯示、向打印機(jī)313的打印輸出、借助i/f309向外部裝置發(fā)送。另外,也可以存儲(chǔ)到ram303、磁盤305、光盤307等存儲(chǔ)區(qū)域。

(實(shí)施方式2)

首先,在實(shí)施方式2中,表示了利用在實(shí)施方式1中決定的各利用場景下的運(yùn)轉(zhuǎn)cpu數(shù)和時(shí)鐘頻率,每當(dāng)利用場景切換時(shí),以與該利用場景對(duì)應(yīng)的運(yùn)轉(zhuǎn)cpu數(shù)和時(shí)鐘的頻率使與利用場景對(duì)應(yīng)的處理動(dòng)作的例子。

(實(shí)施方式2涉及的多核處理器系統(tǒng)200的功能框圖)

圖8是實(shí)施方式2涉及的多核處理器系統(tǒng)200的功能框圖。實(shí)施方式2涉及的多核處理器系統(tǒng)200具有存儲(chǔ)部801、事件檢測部802、場景決定部803、dvfs控制部804、調(diào)度部805。

具體而言,例如具有事件檢測部802~調(diào)度部805的程序被存儲(chǔ)在rom207等存儲(chǔ)裝置。通過cpu訪問該存儲(chǔ)裝置而讀出該程序,并執(zhí)行在該程序內(nèi)編碼的處理,來執(zhí)行事件檢測部802~調(diào)度部805的處理。這里,該程序是os220。

存儲(chǔ)部801存儲(chǔ)保持按多個(gè)事件的每一個(gè)事件以指定數(shù)的cpu執(zhí)行的情況的性能且消耗電力量最少的cpu數(shù)、頻率和電源電壓的值。具體而言,例如上述的dvfs控制信息表600被存儲(chǔ)在rom207、閃存rom208中。

事件檢測部802檢測事件,場景決定部803判斷由事件檢測部802檢測出的事件是否包含于dvfs控制信息表600中登記的事件。在判斷為由事件檢測部802檢測出的事件(對(duì)象事件)是dvfs控制信息表600中登記的事件的情況下,dvfs控制部804取得存儲(chǔ)部801中存儲(chǔ)的與對(duì)象事件相關(guān)的運(yùn)轉(zhuǎn)cpu數(shù)。dvfs控制部804取得存儲(chǔ)部801中存儲(chǔ)的與對(duì)象事件相關(guān)的頻率。dvfs控制部804向與所取得的運(yùn)轉(zhuǎn)cpu數(shù)對(duì)應(yīng)的cpu提供所取得的頻率的時(shí)鐘。

當(dāng)多核處理器中的運(yùn)轉(zhuǎn)過程中的cpu的數(shù)比與運(yùn)轉(zhuǎn)cpu數(shù)對(duì)應(yīng)的cpu多時(shí),dvfs控制部804從運(yùn)轉(zhuǎn)中的cpu使超過運(yùn)轉(zhuǎn)cpu數(shù)的數(shù)量的cpu停止。當(dāng)多核處理器中的運(yùn)轉(zhuǎn)過程中的cpu的數(shù)比與運(yùn)轉(zhuǎn)cpu數(shù)對(duì)應(yīng)的cpu少時(shí),dvfs控制部804使不足量的cpu起動(dòng)。而且,調(diào)度部805以與運(yùn)轉(zhuǎn)cpu數(shù)對(duì)應(yīng)的cpu執(zhí)行對(duì)象事件所對(duì)應(yīng)的處理。按照以上內(nèi)容來說明詳細(xì)的具體例。

圖9是表示事件的產(chǎn)生例的說明圖。在圖9中,cpu201處于運(yùn)轉(zhuǎn)中,但cpu202~cpu204處于停止中。如果用戶起動(dòng)了郵件程序,則os220檢測(1)郵件程序的起動(dòng)指示。os220確認(rèn)(2)dvfs控制表600的事件項(xiàng)目601中是否登記有郵件程序的起動(dòng)。由于在dvfs控制表600的事件項(xiàng)目601中登記有郵件程序的起動(dòng),所以判斷為os220滿足利用場景轉(zhuǎn)移條件。

os220從(3)dvfs控制信息表600取得與郵件程序起動(dòng)相關(guān)的運(yùn)轉(zhuǎn)cpu數(shù)、時(shí)鐘的頻率和電源電壓的值。os220通過將當(dāng)前運(yùn)轉(zhuǎn)中的cpu的數(shù)與所取得的運(yùn)轉(zhuǎn)cpu數(shù)進(jìn)行比較,來判斷是否需要對(duì)運(yùn)轉(zhuǎn)中的cpu的數(shù)進(jìn)行變更。當(dāng)前運(yùn)轉(zhuǎn)中的cpu的數(shù)為1,所取得的運(yùn)轉(zhuǎn)cpu數(shù)為2。因此,不足的cpu數(shù)為1。

os220為了使運(yùn)轉(zhuǎn)中的cpu的數(shù)增加一個(gè)而決定從停止中的cpu起動(dòng)的cpu。這里,cpu202被決定為起動(dòng)的cpu。os220按照(4)將所取得的電源電壓的值和所取得的時(shí)鐘的頻率賦予給cpu201和cpu202的方式來控制dvfs控制機(jī)構(gòu)205。

圖10是表示運(yùn)轉(zhuǎn)中的cpu的數(shù)發(fā)生變化的例子的說明圖。電源布線vdd1與電源布線vdd2的電源電壓的值為1.3[v],時(shí)鐘布線clk1與時(shí)鐘布線clk2的時(shí)鐘的頻率為300[mhz]。電源布線vdd3與電源布線vdd4的電源電壓的值為0[v],時(shí)鐘布線clk3與時(shí)鐘布線clk4的時(shí)鐘的頻率為0[hz]。而且,os220使郵件程序起動(dòng)。

(實(shí)施方式2涉及的os220所執(zhí)行的控制處理步驟)

圖11是表示實(shí)施方式2涉及的os220所執(zhí)行的控制處理步驟的一個(gè)例子的流程圖。首先,os220判斷是否檢測出事件(步驟s1101)。os220在判斷為沒有檢測出事件的情況下(步驟s1101:否),返回到步驟s1101。

os220在判斷為檢測出事件的情況下(步驟s1101:是),對(duì)dvfs控制信息表600的利用場景轉(zhuǎn)移條件進(jìn)行檢查(步驟s1102)。os220判斷檢測出的事件是否與利用場景轉(zhuǎn)移條件一致(步驟s1103),在判斷為不一致的情況下(步驟s1103:否),移至步驟s1112。

os220在判斷為檢測出的事件與利用場景轉(zhuǎn)移條件一致的情況下(步驟s1103:是),從dvfs控制信息表600取得與檢測出的事件對(duì)應(yīng)的運(yùn)轉(zhuǎn)cpu數(shù)、時(shí)鐘的頻率、電源電壓的值(步驟s1104)。接著,os220判斷運(yùn)轉(zhuǎn)cpu數(shù)是否存在變更(步驟s1105),在判斷為運(yùn)轉(zhuǎn)cpu數(shù)沒有變更的情況下(步驟s1105:否),移至步驟s1111。

os220在判斷為運(yùn)轉(zhuǎn)cpu數(shù)存在變更的情況下(步驟s1105:是),判斷運(yùn)轉(zhuǎn)cpu數(shù)是否增加了(步驟s1106)。os220在判斷為運(yùn)轉(zhuǎn)cpu數(shù)增加了的情況下(步驟s1106:是),決定從停止中的cpu起動(dòng)的cpu(起動(dòng)cpu)(步驟s1107)。os220進(jìn)行向起動(dòng)cpu和運(yùn)轉(zhuǎn)中的cpu提供所取得的電源電壓的值和頻率的時(shí)鐘的控制(步驟s1108),然后移至步驟s1112。

os220在判斷為運(yùn)轉(zhuǎn)cpu數(shù)沒有增加的情況下(步驟s1106:否),決定使之停止的cpu(停止cpu)(步驟s1109),進(jìn)行使停止cpu的電源供給、頻率輸入停止的控制(步驟s1110)。os220進(jìn)行向運(yùn)轉(zhuǎn)中的cpu提供所取得的電源電壓的值和頻率的時(shí)鐘的控制(步驟s1111)。在步驟s1103為否的情況下,緊接著步驟s1108或者步驟s1111,os220通過運(yùn)轉(zhuǎn)中的cpu執(zhí)行與檢測出的事件對(duì)應(yīng)的處理(步驟s1112),然后移至步驟s1101。

(實(shí)施方式3)

在實(shí)施方式3中,表示了按每個(gè)程序來測定基準(zhǔn)頻率下的按cpu數(shù)的處理時(shí)間,并按每個(gè)頻率測定單位時(shí)間的1個(gè)核的消耗電力量的例子。

(實(shí)施方式3涉及的設(shè)計(jì)輔助裝置300的功能框圖)

圖12是表示設(shè)計(jì)輔助裝置300的功能框圖的說明圖。設(shè)計(jì)輔助裝置300具有測定部1201和輸出部1202。具體而言,例如具有測定部1201和輸出部1202的程序被存儲(chǔ)在rom302、磁盤305或光盤307等存儲(chǔ)裝置。cpu301通過訪問該存儲(chǔ)裝置而讀出該程序,并執(zhí)行在該程序內(nèi)編碼的處理,來執(zhí)行測定部1201和輸出部1202的處理。

測定部1201使用具有多核處理器系統(tǒng)200的設(shè)備,按每個(gè)程序來測定基準(zhǔn)頻率下的按cpu數(shù)的運(yùn)轉(zhuǎn)時(shí)間。輸出部1202將測定結(jié)果與程序的識(shí)別信息建立關(guān)聯(lián)地輸出。圖13表示了輸出例。

圖13是表示運(yùn)轉(zhuǎn)時(shí)間表例的說明圖。運(yùn)轉(zhuǎn)時(shí)間表1300例如是登記有與郵件程序相關(guān)的運(yùn)轉(zhuǎn)時(shí)間的表,按cpu數(shù)登記有以該cpu數(shù)執(zhí)行郵件程序時(shí)所涉及的運(yùn)轉(zhuǎn)時(shí)間。運(yùn)轉(zhuǎn)時(shí)間表1310例如是登記有與瀏覽器相關(guān)的運(yùn)轉(zhuǎn)時(shí)間的表,按cpu數(shù)登記有以該cpu數(shù)執(zhí)行郵件程序時(shí)所涉及的運(yùn)轉(zhuǎn)時(shí)間。

運(yùn)轉(zhuǎn)時(shí)間表1300具有cpu數(shù)的項(xiàng)目1301、運(yùn)轉(zhuǎn)時(shí)間的項(xiàng)目1302、空閑時(shí)間的項(xiàng)目1303。cpu數(shù)的項(xiàng)目1301中登記有1~4。運(yùn)轉(zhuǎn)時(shí)間的項(xiàng)目1302中按cpu數(shù)的項(xiàng)目1301中登記的cpu數(shù)登記有以該cpu數(shù)執(zhí)行郵件程序時(shí)所涉及的單位時(shí)間的運(yùn)轉(zhuǎn)時(shí)間。空閑時(shí)間的項(xiàng)目1303中按cpu數(shù)的項(xiàng)目1301中登記的cpu數(shù)登記有以與該cpu數(shù)對(duì)應(yīng)的cpu執(zhí)行郵件程序時(shí)所產(chǎn)生的總計(jì)空閑時(shí)間。

運(yùn)轉(zhuǎn)時(shí)間表1310具有cpu數(shù)的項(xiàng)目1311、運(yùn)轉(zhuǎn)時(shí)間的項(xiàng)目1312、空閑時(shí)間的項(xiàng)目1313。cpu數(shù)的項(xiàng)目1311中登記有1~4。運(yùn)轉(zhuǎn)時(shí)間的項(xiàng)目1312中按cpu數(shù)的項(xiàng)目1311中登記的cpu數(shù)登記有以該cpu數(shù)執(zhí)行瀏覽器時(shí)所涉及的單位時(shí)間的運(yùn)轉(zhuǎn)時(shí)間??臻e時(shí)間的項(xiàng)目1313中按cpu數(shù)的項(xiàng)目1311中登記的cpu數(shù)登記有以與該cpu數(shù)對(duì)應(yīng)的cpu執(zhí)行瀏覽器時(shí)產(chǎn)生的總計(jì)空閑時(shí)間。

返回到圖12,測定部1201按每個(gè)頻率測定單位時(shí)間的1個(gè)cpu的消耗電力量。輸出部1203輸出測定結(jié)果。圖14中表示了輸出例。

圖14是表示頻率/電力表例的說明圖。頻率/電力表1400具有頻率的項(xiàng)目1401、電源電壓的項(xiàng)目1402、每個(gè)cpu的消耗電力的項(xiàng)目1403。頻率的項(xiàng)目1401中登記有可向各cpu提供的時(shí)鐘的頻率。這里,頻率的項(xiàng)目1401中登記有100[mhz]、200[mhz]、300[mhz]、400[mhz]、500[mhz]。

電源電壓的項(xiàng)目1402中登記有以頻率的項(xiàng)目1401中登記的頻率提供時(shí)鐘時(shí)所需要的電源電壓的值。例如,在頻率/電力表1400中表示了當(dāng)提供的時(shí)鐘的頻率為500[mhz]時(shí),如果所提供的電源電壓的值不是1.6[v]以上,則cpu不動(dòng)作。

每個(gè)cpu的消耗電力的項(xiàng)目1403中登記有在所提供的時(shí)鐘的頻率是頻率的項(xiàng)目1401中登記的值、且所提供的電源電壓的值是電源電壓的項(xiàng)目1402中登記的值的情況下的每個(gè)cpu的消耗電力的值。例如,在頻率/電力表1400中表示了當(dāng)對(duì)cpu提供的時(shí)鐘的頻率為200[mhz]、對(duì)cpu提供的電源電壓的值為1.1[v]時(shí),每個(gè)cpu的消耗電力的值為40[mw]。

(實(shí)施方式3涉及的設(shè)計(jì)輔助裝置300所執(zhí)行的設(shè)計(jì)支援處理步驟)

圖15是表示實(shí)施方式3涉及的設(shè)計(jì)輔助裝置300所執(zhí)行的設(shè)計(jì)支援處理步驟的一個(gè)例子的流程圖。首先,設(shè)計(jì)輔助裝置300從未測定的程序中選擇任意的程序(步驟s1501),設(shè)運(yùn)轉(zhuǎn)cpu數(shù)=1(步驟s1502),起動(dòng)設(shè)定了運(yùn)轉(zhuǎn)cpu數(shù)的程序(步驟1503)。然后,設(shè)計(jì)輔助裝置300測定每個(gè)單位時(shí)間的運(yùn)轉(zhuǎn)時(shí)間和總計(jì)空閑時(shí)間(步驟s1504)。

設(shè)計(jì)輔助裝置300設(shè)運(yùn)轉(zhuǎn)cpu數(shù)=運(yùn)轉(zhuǎn)cpu數(shù)+1(步驟s1505),并判斷是否是運(yùn)轉(zhuǎn)cpu數(shù)>所有cpu數(shù)(步驟s1506)。在設(shè)計(jì)輔助裝置300判斷為不是運(yùn)轉(zhuǎn)cpu數(shù)>所有cpu數(shù)的情況下(步驟s1506:否),返回到步驟s1502。在設(shè)計(jì)輔助裝置300判斷為是運(yùn)轉(zhuǎn)cpu數(shù)>所有cpu數(shù)的情況下(步驟s1506:是),判斷在所有程序中是否結(jié)束測定(步驟s1507)。

當(dāng)判斷為沒有在所有程序中結(jié)束測定時(shí)(步驟s1507:否),設(shè)計(jì)輔助裝置300返回到步驟s1501。當(dāng)判斷為在所有程序中結(jié)束測定時(shí)(步驟s1507:是),設(shè)計(jì)輔助裝置300設(shè)定cpu的動(dòng)作頻率(步驟s1508),然后測定cpu以所設(shè)定的動(dòng)作頻率動(dòng)作的最小的電源電壓和消耗電力(步驟s1509)。

設(shè)計(jì)輔助裝置300判斷是否以能夠設(shè)定的所有動(dòng)作頻率進(jìn)行了測定(步驟s1510)。在判斷為沒有以能夠設(shè)定的所有動(dòng)作頻率進(jìn)行測定的情況下(步驟s1510:否),設(shè)計(jì)輔助裝置300返回到步驟s1508。在判斷為以能夠設(shè)定的所有動(dòng)作頻率進(jìn)行了測定的情況下(步驟s1510:是),設(shè)計(jì)輔助裝置300輸出測定結(jié)果(步驟s1511)。

(實(shí)施方式4)

接著,在實(shí)施方式4中表示了在同時(shí)執(zhí)行了多個(gè)程序的情況下,保持由1個(gè)cpu執(zhí)行的情況的性能,并確定消耗電力最少的cpu數(shù)和頻率,以該cpu數(shù)和頻率使多個(gè)程序動(dòng)作的例子。在實(shí)施方式4中,對(duì)與實(shí)施方式1~3中說明的構(gòu)成相同的構(gòu)成賦予相同的附圖標(biāo)記,省略該被賦予相同附圖標(biāo)記的構(gòu)成的詳細(xì)說明。

(實(shí)施方式4涉及的多核處理器系統(tǒng)200的功能框圖)

圖16是實(shí)施方式4涉及的多核處理器系統(tǒng)200的功能框圖。多核處理器系統(tǒng)200具有存儲(chǔ)部1601、進(jìn)程(process)管理部1602、運(yùn)轉(zhuǎn)cpu數(shù)決定部1603、dvfs控制部1604、調(diào)度部1605。

具體而言,例如具有進(jìn)程管理部1602~調(diào)度部1605的程序被存儲(chǔ)于rom207、閃存rom208等存儲(chǔ)裝置。cpu通過訪問該存儲(chǔ)裝置而讀出該程序,并執(zhí)行在該程序內(nèi)編碼的處理,來執(zhí)行進(jìn)程管理部1602~調(diào)度部1605的處理。這里,該程序是os220。

存儲(chǔ)部1601按每個(gè)程序存儲(chǔ)基準(zhǔn)頻率下的按cpu數(shù)的運(yùn)轉(zhuǎn)時(shí)間,按每個(gè)頻率存儲(chǔ)單位時(shí)間的1個(gè)cpu的消耗電力量。具體而言,例如rom207、閃存rom208存儲(chǔ)有運(yùn)轉(zhuǎn)時(shí)間表1300、運(yùn)轉(zhuǎn)時(shí)間表1310、頻率/電力表1400。

進(jìn)程管理部1602檢測對(duì)象程序的起動(dòng)。運(yùn)轉(zhuǎn)cpu數(shù)決定部1603決定對(duì)象程序和執(zhí)行執(zhí)行過程中的程序的運(yùn)轉(zhuǎn)cpu數(shù)。運(yùn)轉(zhuǎn)cpu數(shù)決定部1603具有提取部1611、頻率計(jì)算部1612、消耗電力計(jì)算部1613、決定部1614。提取部1611在由進(jìn)程管理部1602檢測出對(duì)象程序的起動(dòng)的情況下,按cpu數(shù)從存儲(chǔ)部1601提取由多核處理器執(zhí)行中的程序的運(yùn)轉(zhuǎn)時(shí)間。提取部1611按cpu數(shù)從存儲(chǔ)部1601提取對(duì)象程序的運(yùn)轉(zhuǎn)時(shí)間。

頻率計(jì)算部1612根據(jù)由提取部1611按cpu數(shù)提取出的執(zhí)行中的程序的運(yùn)轉(zhuǎn)時(shí)間與對(duì)象程序的運(yùn)轉(zhuǎn)時(shí)間的合計(jì)運(yùn)轉(zhuǎn)時(shí)間的比率,按cpu數(shù)計(jì)算滿足指定cpu數(shù)的合計(jì)運(yùn)轉(zhuǎn)時(shí)間的頻率。

消耗電力計(jì)算部1613基于由頻率計(jì)算部1612按cpu數(shù)計(jì)算出的頻率所對(duì)應(yīng)的在存儲(chǔ)部1601中存儲(chǔ)的單位時(shí)間的1個(gè)cpu的消耗電力,按cpu數(shù)計(jì)算消耗電力量。決定部1614將由消耗電力計(jì)算部1613按cpu數(shù)計(jì)算出的消耗電力量中最少消耗電力量的cpu數(shù)決定為運(yùn)轉(zhuǎn)cpu數(shù)。

dvfs控制部1604向與由運(yùn)轉(zhuǎn)cpu數(shù)決定部1603決定的cpu數(shù)對(duì)應(yīng)的cpu提供由運(yùn)轉(zhuǎn)cpu數(shù)決定部1603計(jì)算出的頻率的時(shí)鐘。dvfs控制部1604在多核處理器中的運(yùn)轉(zhuǎn)中的cpu的數(shù)比所決定的cpu數(shù)多的情況下,從運(yùn)轉(zhuǎn)中的cpu使超過運(yùn)轉(zhuǎn)cpu數(shù)的數(shù)量的cpu停止。dvfs控制部1604在多核處理器中的運(yùn)轉(zhuǎn)中的cpu的數(shù)比所決定的cpu數(shù)少的情況下,起動(dòng)不足量的cpu。另外,調(diào)度部1605以與所決定的cpu數(shù)對(duì)應(yīng)的cpu執(zhí)行對(duì)象程序和執(zhí)行中的程序。按照以上內(nèi)容來詳細(xì)進(jìn)行說明。

圖17是表示多個(gè)程序被同時(shí)執(zhí)行的例子的說明圖。在多核處理器系統(tǒng)200中瀏覽器處于執(zhí)行中,運(yùn)轉(zhuǎn)cpu數(shù)為4。如果利用者使郵件程序起動(dòng),則os220檢測郵件程序的起動(dòng)指示。而且,os220取得執(zhí)行中的程序的識(shí)別信息。os220取得與取得了該識(shí)別信息的程序?qū)?yīng)的運(yùn)轉(zhuǎn)時(shí)間表和與檢測出起動(dòng)指示的程序?qū)?yīng)的運(yùn)轉(zhuǎn)時(shí)間表。這里,從rom207、閃存rom208等存儲(chǔ)裝置讀出與郵件程序相關(guān)的運(yùn)轉(zhuǎn)時(shí)間表1300和與瀏覽器相關(guān)的運(yùn)轉(zhuǎn)時(shí)間表1310。

圖18是表示合計(jì)運(yùn)轉(zhuǎn)時(shí)間的說明圖。os220利用運(yùn)轉(zhuǎn)時(shí)間表1300和運(yùn)轉(zhuǎn)時(shí)間表1310,按cpu數(shù)計(jì)算郵件程序與瀏覽器的合計(jì)運(yùn)轉(zhuǎn)時(shí)間。在cpu數(shù)為1的情況下,合計(jì)運(yùn)轉(zhuǎn)時(shí)間為165[ms]。在cpu數(shù)為2的情況下,合計(jì)運(yùn)轉(zhuǎn)時(shí)間為125[ms]。在cpu數(shù)為3的情況下,合計(jì)運(yùn)轉(zhuǎn)時(shí)間為100[ms]。在cpu數(shù)為4的情況下,合計(jì)運(yùn)轉(zhuǎn)時(shí)間為75[ms]。

圖19是表示確定消耗電力最低的cpu數(shù)的例子的說明圖。接著,os220計(jì)算在各cpu數(shù)下能夠維持cpu數(shù)為1的情況的運(yùn)轉(zhuǎn)時(shí)間的時(shí)鐘的頻率。具體而言,例如os220利用下述式(2)來計(jì)算各cpu數(shù)下的時(shí)鐘的頻率。

頻率=基準(zhǔn)頻率×各cpu數(shù)下的所有運(yùn)轉(zhuǎn)時(shí)間/指定cpu數(shù)下的所有運(yùn)轉(zhuǎn)時(shí)間……(2)

例如,這里設(shè)基準(zhǔn)頻率為500[mhz]。在cpu數(shù)為2的情況下,基于式(2)的計(jì)算結(jié)果為378[mhz],時(shí)鐘的頻率為400[mhz]。在cpu數(shù)為3的情況下,基于式(2)的計(jì)算結(jié)果為303[mhz],時(shí)鐘的頻率為400[mhz]。在cpu數(shù)為4的情況下,基于式(2)的計(jì)算結(jié)果為227[mhz],時(shí)鐘的頻率為300[mhz]。

os220利用頻率/電力表1400,來計(jì)算以各cpu數(shù)執(zhí)行的情況的消耗電力的值。由于400[mhz]的情況的每個(gè)cpu的消耗電力為85[mw],所以在cpu數(shù)為2的情況下,所有消耗電力為85×2=170[mw]。在cpu數(shù)為3的情況下,所有消耗電力為85×3=255[mw]。由于300[mhz]時(shí)的每個(gè)cpu的消耗電力為60[mw],所以在cpu數(shù)為4的情況下,所有消耗電力為60×4=240[mw]。因此,由于與cpu數(shù)為1的情況下的性能相同性能且消耗電力最低的cpu數(shù)為2,所以os220將運(yùn)轉(zhuǎn)cpu數(shù)決定為2。

圖20是表示運(yùn)轉(zhuǎn)cpu數(shù)的變更例的說明圖。os220為了使運(yùn)轉(zhuǎn)cpu數(shù)減少而決定使之停止的停止cpu。這里,將cpu203和cpu204設(shè)為停止cpu。os220使從dvfs控制機(jī)構(gòu)205向cpu203和cpu204的時(shí)鐘/電源電壓的提供停止。os220將向cpu201和cpu202提供的時(shí)鐘的頻率設(shè)定為400[mhz],將電源電壓的值設(shè)定為1.4[v]。

(實(shí)施方式4涉及的os220所執(zhí)行的控制處理步驟)

圖21和圖22是表示實(shí)施方式4涉及的os220所執(zhí)行的控制處理步驟的一個(gè)例子的流程圖。首先,os220判斷是否檢測出進(jìn)程的起動(dòng)或者結(jié)束(步驟s2101),在判斷為沒有檢測出進(jìn)程的起動(dòng)以及結(jié)束的情況下(步驟s2101:否),返回到步驟s2101。os220在判斷為檢測出進(jìn)程的起動(dòng)或者結(jié)束的情況下(步驟s2101:是),確定運(yùn)轉(zhuǎn)中的全部進(jìn)程(步驟s2102)。

os220參照與確定出的進(jìn)程對(duì)應(yīng)的運(yùn)轉(zhuǎn)時(shí)間表(步驟s2103),計(jì)算各cpu數(shù)下的運(yùn)轉(zhuǎn)時(shí)間的所有進(jìn)程量的總計(jì)(步驟s2104)。os220從頻率/電力表1400取得與計(jì)算出的各cpu數(shù)下的頻率對(duì)應(yīng)的每個(gè)cpu的消耗電力的值(步驟s2105),然后計(jì)算各cpu數(shù)下的所有消耗電力的值(步驟s2106)。

os220將計(jì)算出的所有消耗電力的值最小的cpu數(shù)決定為運(yùn)轉(zhuǎn)cpu數(shù)(步驟s2107),然后判斷運(yùn)轉(zhuǎn)cpu數(shù)是否有變更(步驟s2108)。os220在判斷為運(yùn)轉(zhuǎn)cpu數(shù)沒有變更的情況下(步驟s2108:否),移至步驟s2101。

os220在判斷為運(yùn)轉(zhuǎn)cpu數(shù)存在變更的情況下(步驟s2108:是),判斷運(yùn)轉(zhuǎn)cpu數(shù)是否增加(步驟s2109)。os220在判斷為運(yùn)轉(zhuǎn)cpu數(shù)增加的情況下(步驟s2109:是),從停止中的cpu決定使之起動(dòng)的cpu(起動(dòng)cpu)(步驟s2110)。os220進(jìn)行向起動(dòng)cpu和運(yùn)轉(zhuǎn)中的cpu提供所取得的電源電壓的值和頻率的控制(步驟s2111),然后移至步驟s2101。

os220在判斷為運(yùn)轉(zhuǎn)cpu數(shù)沒有增加的情況下(步驟s2109:否),決定使之停止的cpu(停止cpu)(步驟s2112),進(jìn)行使停止cpu的電源供給、頻率輸入停止的控制(步驟s2113)。os220進(jìn)行向處于運(yùn)轉(zhuǎn)中的cpu提供所取得的電源電壓的值和頻率的控制(步驟s2114),然后移至步驟s2101。

如以上在實(shí)施方式1、3中說明那樣,根據(jù)設(shè)計(jì)輔助方法,按每個(gè)事件確定消耗電力量最小的運(yùn)轉(zhuǎn)cpu數(shù)與時(shí)鐘的頻率的組合。由此,能夠以消耗電力量最小的運(yùn)轉(zhuǎn)cpu數(shù)和時(shí)鐘的頻率運(yùn)用系統(tǒng)。

另外,基于按每個(gè)事件由1個(gè)cpu執(zhí)行與事件對(duì)應(yīng)的處理的情況的運(yùn)轉(zhuǎn)時(shí)間和基準(zhǔn)頻率來計(jì)算時(shí)鐘的頻率。由此,能夠維持通過1個(gè)cpu執(zhí)行的情況的性能。

如以上在實(shí)施方式2中說明那樣,根據(jù)調(diào)度方法以及系統(tǒng),按每個(gè)規(guī)定事件將運(yùn)轉(zhuǎn)cpu數(shù)和時(shí)鐘的頻率存儲(chǔ)到存儲(chǔ)器中。而且,每當(dāng)發(fā)生規(guī)定事件時(shí),便切換運(yùn)轉(zhuǎn)cpu數(shù)和頻率,執(zhí)行與該事件對(duì)應(yīng)的處理。由此,可通過消耗電力最少的運(yùn)轉(zhuǎn)cpu數(shù)和時(shí)鐘頻率的組合來執(zhí)行與事件對(duì)應(yīng)的處理,能夠使消耗電力減少。

另外,當(dāng)運(yùn)轉(zhuǎn)中的cpu的數(shù)比運(yùn)轉(zhuǎn)cpu數(shù)多時(shí),通過從運(yùn)轉(zhuǎn)中的cpu使超過運(yùn)轉(zhuǎn)cpu數(shù)的數(shù)量的cpu停止,能夠以消耗電力最小的最佳cpu數(shù)來運(yùn)用系統(tǒng)。

另外,當(dāng)運(yùn)轉(zhuǎn)中的cpu的數(shù)比運(yùn)轉(zhuǎn)cpu數(shù)量少時(shí),通過起動(dòng)不足量的cpu,能夠維持由1個(gè)cpu執(zhí)行的情況的性能。

另外,按每個(gè)規(guī)定事件將運(yùn)轉(zhuǎn)cpu數(shù)、時(shí)鐘的頻率和電源電壓的值存儲(chǔ)到存儲(chǔ)器中,每當(dāng)發(fā)生規(guī)定事件時(shí),便切換運(yùn)轉(zhuǎn)cpu數(shù)、頻率和電源電壓的值,執(zhí)行與該事件對(duì)應(yīng)的處理。消耗電力與頻率和電源電壓的平方成比例。由于通過降低時(shí)鐘的頻率,可降低電源電壓,所以能夠使消耗電力量減少。

如以上在實(shí)施方式4中說明那樣,根據(jù)調(diào)度方法以及系統(tǒng),按每個(gè)程序存儲(chǔ)由各cpu數(shù)量的cpu執(zhí)行的情況的運(yùn)轉(zhuǎn)時(shí)間,并按每個(gè)頻率存儲(chǔ)每個(gè)cpu的消耗電力量。而且,在多個(gè)程序被同時(shí)執(zhí)行的情況下,保持由1個(gè)cpu執(zhí)行的情況的性能,并且確定消耗電力最少的最佳運(yùn)轉(zhuǎn)cpu數(shù)和頻率,以該運(yùn)轉(zhuǎn)cpu數(shù)和頻率使多個(gè)程序動(dòng)作。由此,可削減消耗電力量。

另外,當(dāng)運(yùn)轉(zhuǎn)中的cpu的數(shù)比運(yùn)轉(zhuǎn)cpu數(shù)多時(shí),通過從運(yùn)轉(zhuǎn)中的cpu使超過運(yùn)轉(zhuǎn)cpu數(shù)的數(shù)量的cpu停止,能夠以消耗電力最小的最佳cpu數(shù)來運(yùn)用系統(tǒng)。

另外,當(dāng)運(yùn)轉(zhuǎn)中的cpu的數(shù)比運(yùn)轉(zhuǎn)cpu數(shù)量少時(shí),通過起動(dòng)不足量的cpu,能夠維持由1個(gè)cpu執(zhí)行的情況的性能。

附圖標(biāo)記說明

207-rom;208-閃存rom;401-測定部;402-頻率計(jì)算部;403-消耗電力計(jì)算部;404-決定部;405-輸出部;801、1601-存儲(chǔ)部;802-事件檢測部;803-場景決定部;804、1604-dvfs控制部;805、1605-調(diào)度部;1602-進(jìn)程管理部;1603-運(yùn)轉(zhuǎn)cpu數(shù)決定部;200-多核處理器系統(tǒng);300-設(shè)計(jì)輔助裝置。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
铅山县| 溧阳市| 龙江县| 靖边县| 上杭县| 张家港市| 南雄市| 天峻县| 三原县| 留坝县| 休宁县| 苏州市| 钟祥市| 来凤县| 大兴区| 黄山市| 普陀区| 贺州市| 洛宁县| 肃宁县| 平陆县| 孟州市| 南汇区| 潮州市| 合肥市| 万宁市| 长武县| 浮山县| 梅州市| 景泰县| 宁远县| 新竹县| 永和县| 营口市| 彰化市| 玉林市| 邳州市| 邵东县| 新竹市| 木里| 鹤山市|