CN100377042C - 结合静态编译器和动态调频技术优化运行频率的节能方法 - Google Patents
结合静态编译器和动态调频技术优化运行频率的节能方法 Download PDFInfo
- Publication number
- CN100377042C CN100377042C CNB2006100522863A CN200610052286A CN100377042C CN 100377042 C CN100377042 C CN 100377042C CN B2006100522863 A CNB2006100522863 A CN B2006100522863A CN 200610052286 A CN200610052286 A CN 200610052286A CN 100377042 C CN100377042 C CN 100377042C
- Authority
- CN
- China
- Prior art keywords
- frequency
- main memory
- processor
- code segment
- dynamic
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- 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
Abstract
本发明公开了一种结合静态编译器和动态调频技术优化运行频率的节能方法。本发明采用通过静态编译器的划分,将代码段分为相关的三段,分别为运行初始化段,动态调频段和运行结束段,根据动态调频段中处理器和主存的关系,然后通过动态频率管理技术设置相应处理器和主存的运行频率来进行节能。本发明提出了一种结合静态编译器和动态调频技术优化处理器和主存运行频率的方法,对原来的节能方法做出改进,使得内核对能耗控制更加全面,因为在目前的大多出系统中,能耗最大的系统部件除了处理器便是主存,在这种情况下,有必要结合考虑处理器和主存特性,因此本发明的能耗控制包括处理器能耗和主存的能耗,能够降低系统运行时消耗的能量。
Description
技术领域
本发明涉及基于嵌入式系统软件节能技术领域,特别是涉及一种结合静态编译器和动态调频技术优化处理器和主存运行频率的节能方法。
背景技术
2005年世界半导体业的持续稳定增长将带动全球电子信息产品市场的进一步发展,通信、消费类电子及汽车电子领域将成为先导。3G手机的视频多媒体等各种新应用对传统的电池寿命和电源管理技术提出了更高的要求和更严峻的挑战。而且,随着中国汽车业的迅猛发展,汽车电子中的电源技术问题同样迫使工程师们拿出更好的解决方案。高工作频率、高效率、高功率密度、高可靠性、小体积和低成本等是今后模块电源和便携式电源管理产品的发展方向。同时,业界也在期待各种高新技术,包括高频开关技术、软开关技术、功率因数校正技术、同步整流技术、智能化技术、表面贴装技术的进一步突破。所以,任何设备基于其自身的特有本质以及市场对其的更高需要都已经对电源技术提出更高的要求。
随着人们生活水平的不断提高,便携式设备的发展将会越来越快。便携式消费类电子设备市场是最近几年才成长起来的,特别是手机市场突飞猛进的发展速度,更使很多的厂商们趋之若鹜。随着用户需求不断增加,智能手机、便携设备中新增加的音视频、数据输入、无线连接等功能将对电源管理形成新的需求。便携式产品日益丰富的功能给电源管理IC带来越来越多的挑战。未来电源管理将向高集成度、开关、SOC发展,电源管理IC的发展是集设计、工艺、封装为一体的综合发展体系,需要考虑多方面的因素。很难有一个万全的解决方案。例如在无线便携式产品中,就要权衡开关频率的提升和效率的关系,也要考虑电源噪声对射频的干扰。
在便携式嵌入式设备电源管理领域,目前的困难在于既要满足便携式终端对电源供电的要求,又要做到占用空间小、重量轻和供电时间更长。现在嵌入式设备的功能变得越来越强大,功能也越来越丰富。随着嵌入式设备功能越来越多,用户对嵌入式设备电池的能量需求也越来越高,现有的锂离子电池已经越来越难以满足消费者对正常使用时间的要求。对此,业界主要采取两种方法,一是开发具备更高能量密度的新型电池技术,如燃料电池,在能够预见的5年内,电池技术不可能有很大的突破;二是在电池的能量转换效率和节能方面下功夫。在目前新的高能电池技术(如燃料电池)仍不成熟的情况下,下一代手持设备的电源管理只能从提高电源利用率和降低功耗这二个方面着手。如何延长电池的使用寿命,以及尽量减少电池能量的消耗已经成为嵌入式领域的一个研究热点。
在操作系统领域,现在主要的电源管理方法是利用操作系统内核,动态的调整系统处理器和总线的频率,降低系统的整体能耗。而且系统能够通过动态频率指令改变系统状态,是系统处于低功耗状态,以达到节能的目的。
操作系统能够很好的管理整个系统的能耗,但是对特定的应用不了解,不能针对特定的应用采用贴切的方法节能,在特定的运行时间段内做出比较好的系统资源调度,缺少对运行系统的快速反应。
发明内容
本发明的目的在于提供一种结合静态编译器和动态调频技术优化运行频率的节能方法。
本发明解决其技术问题采用的技术方案如下:
1)静态编译器划分代码段:
静态编译器将代码段划分为三个相关代码段,分别为运行初始化代码段,动态调频代码段以及运行结束代码段。运行初始化代码段是为动态调频代码段以及运行结束代码段的运行做准备的;在动态调频代码段中操作系统将根据处理器和主存的关系对处理器和主存的频率做出优化,优化系统能耗,将这个代码段中的指令分为处理器相关指令和主存相关指令,而划分得到这个代码段的要求是两种相关指令是能够同时运行的;在运行结束代码段中的执行指令是必须依赖动态调频代码段的执行结果才能运行的;
2)得到优处理器和主存运行频率:
操作系统能够降低执行时间比较短的系统部件包括处理器或主存的执行频率,也能够将改变后的频率称为目的频率,执行频率降低的同时也伴随着电压的降低,同时还能考虑升高执行时间比较长的系统部件的执行频率,达到更好的节能效果,而且处理器和主存所能提供的频率变化有限,对应于每种频率的能耗亦能够推断出来,在能够节能的情况下,根据处理器和主存频率的关系,改变两者或其中一个的频率;
3)使动态调频代码段运行在优化的处理器和主存频率上:
在动态调频代码段运行之前,改变处理器和主存频率,使其运行在目的频率之上,在这段代码段相关指令执行完后重新回到初始频率,频率改变是通过对寄存器的相关得到的,这些寄存器控制处理器和主存频率,不需要通过调用中间过程,这种方法在调节完频率后便能看到调频结果。
本发明与背景技术相比,具有的有益的效果是:
本发明利用静态编译器对代码段的划分,在动态调频代码段运行过程中,通过动态调频技术对处理器和主存的执行频率进行相应的设置,综合考虑两者的能耗,使动态调频代码段运行在更有利于系统节能的目的频率上。本发明能够用于任何提供了处理器和主存频率调节支持的系统上。在目前的大多出系统中,能耗最大的系统部件除了处理器便是主存,在这种情况下,有必要结合考虑处理器和主存特性,共同调节处理器和主存频率,以达到更加良好的能耗控制结果。
(1)全面性。在目前的大多出系统中,能耗最大的系统部件除了处理器便是主存,在这种情况下,有必要结合考虑处理器和主存特性,共同调节处理器和主存频率,以达到更加良好的能耗控制结果。本方法正是考虑到这个原因,所以同时考虑了处理器和贮存两者的能耗。
(2)安全性。本方法通过静态编译器将代码段划分为三个相关代码段,分别为运行初始化代码段,动态调频代码段以及运行结束代码段。在动态调频代码段运行前通过动态调频方法调节处理器和主存频率。保护其余代码段的顺利执行,有利于代码的安全性。
(3)即时性。频率改变是通过对控制处理器和主存频率的寄存器的相关设置,不需要通过调用中间过程,这种方法更直接,更实效,在调节完频率后便能够马上看到调频结果。在经过反复的认证,这个方法能够很好的到达动态调频的结果,达到节能的目的。
附图说明
图1是本发明的系统流程图;
图2是动态调频代码段中处理器相关指令执行时间大大长于主存相关指令的情况;
图3是动态调频代码段中主存相关指令执行时间大大长于处理器相关指令的情况;
图4是本发明的流程图。
具体实施方式
具体实施方式是静态编译器将代码段划分为三个相关代码段,分别为运行初始化代码段,动态调频代码段以及运行结束代码段。运行初始化代码段是为以下的代码运行做准备的;在动态调频代码段中操作系统将根据处理器和主存的关系对处理器和主存的频率做出优化,优化系统能耗,能够将这个代码段中的指令分为处理器相关指令和主存相关指令,而划分得到这个代码段的要求是两种相关指令是能够同时运行的;在运行结束代码段中的执行指令是必须依赖动态调频代码段的执行结果才能运行。本方法关注的是动态调频代码段,在此代码段中使用动态调频技术。如图1所示。
动态调频代码段中的运行情况能够分为两种,主存相关指令执行时间大于处理器相关指令执行时间,如图2所示,以及处理器相关指令执行时间大于主存相关指令执行时间,如图3所示。在图中,tprepare表示初始化代码段的执行时间,tmem表示初始化代码段中主存相关指令执行时间,tindep表示初始化代码段处理器相关指令执行时间,tdep表示运行结束代码段指令执行时间。tdvfs表示动态调频时间段,tmem′表示调频后初始化代码段中主存相关指令执行时间,tindep′表示调频后初始化代码段处理器相关指令执行时间。
第二步,因为在动态调频代码段中的处理器相关指令和主存相关指令能够同时运行,而两种相关指令的运行时间肯定存在或多或少的差别,也就是tmem和tindep的不同,由于时间差的存在,操作系统能够降低执行时间比较短的系统部件(处理器或主存)的执行频率(也能够将改变后的频率称为目的频率),执行频率降低的同时也伴随着电压的降低,同时还能够考虑升高执行时间比较长的系统部件的执行频率,达到更好的节能效果。而且处理器和主存所能提供的频率变化有限,对应于每种频率的能耗亦能够推断出来,在能够节能的情况下,根据处理器和主存频率的关系,改变两者或其中一个的频率。如图2的情况中,由于主存相关指令执行时间大于处理器相关指令执行时间,即tmem>tindep,操作系统在时间段tdvfs内,能够根据动态调频算法,考虑提高主存频率和降低处理器频率,达到一个折中值,来加大对能耗的控制;而图3中的情况恰好相反,由于处理器相关指令执行时间大于主存相关指令执行时间,即tindep>tmem,操作系统在时间段tdvfs内,能够根据动态调频算法,考虑降低主存频率和提高处理器频率,达到一个折中值,来加大对能耗的控制。整个系统的流程如图4所示。操作系统根据能耗计算公式,计算出系统在硬件所能提供的处理器和主存频率对的组合下所有的系统能耗,在代码执行时间不会改变太大的前提下(方法约定系统执行时间变更不可超过15%,由于代码执行时间跟处理器频率成反比,由此能够得到处理器的目的频率范围),得到最优的处理器频率和主存频率。
第三步,在动态调频代码段运行之前,改变处理器和主存频率,使其运行在目的频率之上,在这段代码段相关指令执行完后重新回到初始频率。频率改变是通过对控制处理器和主存频率的寄存器的相关设置,不需要通过调用中间过程,这种方法更直接,更实效,在调节完频率后便能够马上看到调频结果。操作系统按照如下步骤设置目的频率,根据前面得到的目的频率,计算出各寄存器所要修改的目的值,然后直接对操作系统内控制处理器和主存频率的寄存器进行配置,最后使处理器和主存的目的频率生效。操作系统是通过地址来直接修改寄存器的,所以在通过地址来对寄存器操作的时候,需要注意实地址和虚地址的转换,根据内核版本和处理器的不同会有不同的转换方式。
在这里,以使用英特尔公司的PXA255处理器的开发平台为例,上面的操作系统为Linux,内核版本为2.4.10。此开发平台提供了对处理器和主存的调频支持。处理器和主存的频率控制由寄存器CCCR控制,直接对系统内控制频率的寄存器CCCR进行配置,修改之后再配置寄存器CCLKCFG的FCS位使内核的频率设置生效。通过内部函数ioremap来实现实地址和虚地址的转换。如果目前平台上有代码程序,通过静态编译器划分后,发现动态调频代码段中,tmem<tindep,目前处理器频率和主存频率都为132.7MHZ,tmem为1ms,tindep为25ms,那么操作系统根据本方法,如图3所示,将降低主存频率,而升高处理器频率,根据平台硬件支持,处理器频率有298.6MHZ和398.1MHZ两种选择,由于处理器相关指令执行时间大大大于主存时间,为主存相关指令执行时间的25倍,所以操作系统将选择398.1MHZ为处理器频率,由于主存频率只有99.5MHZ可供选择,所以操作系统将选择99.5MHZ为主存频率,处理器和主存的频率改变通过将CCCR对应L,M,N三段的值改为27,2和2来达到。选择后还是tmem′<tindep′,tmem′增加到1.5ms,tindep′下降为9ms,但两者的时间差大大缩小,而且整体执行时间也有减少,整个代码段的能耗亦由原来的450MW减少为380MW。体现了本发明的节能效果。
Claims (1)
1.一种结合静态编译器和动态调频技术优化运行频率的节能方法,其特征在于:
1)静态编译器划分代码段:
静态编译器将代码段划分为三个相关代码段,分别为运行初始化代码段,动态调频代码段以及运行结束代码段;运行初始化代码段是为动态调频代码段以及运行结束代码段的运行做准备的;在动态调频代码段中操作系统将根据处理器和主存的关系对处理器和主存的频率做出优化,优化系统能耗,将这个代码段中的指令分为处理器相关指令和主存相关指令,而划分得到这个代码段的要求是两种相关指令是能同时运行的;在运行结束代码段中的执行指令是必须依赖动态调频代码段的执行结果才能运行的;
2)得到最优处理器和主存运行频率:
操作系统能够降低执行时间比较短的系统部件包括处理器和主存的执行频率,也能够将改变后的频率称为目的频率,执行频率降低的同时也伴随着电压的降低,同时还能考虑升高执行时间比较长的系统部件的执行频率,达到更好的节能效果,而且处理器和主存所能提供的频率变化有限,对应于每种频率的能耗亦能够推断出来,在能够节能的情况下,根据处理器和主存频率的关系,改变两者或其中一个的频率;
3)使动态调频代码段运行在优化的处理器和主存频率上:
在动态调频代码段运行之前,改变处理器和主存频率,使其运行在目的频率之上,在这段代码段相关指令执行完后重新回到初始频率,频率改变是通过对寄存器的相关得到的,这些寄存器控制处理器和主存频率,不需要通过调用中间过程,这种方法在调节完频率后便能看到调频结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100522863A CN100377042C (zh) | 2006-07-04 | 2006-07-04 | 结合静态编译器和动态调频技术优化运行频率的节能方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100522863A CN100377042C (zh) | 2006-07-04 | 2006-07-04 | 结合静态编译器和动态调频技术优化运行频率的节能方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1877490A CN1877490A (zh) | 2006-12-13 |
CN100377042C true CN100377042C (zh) | 2008-03-26 |
Family
ID=37509948
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006100522863A Expired - Fee Related CN100377042C (zh) | 2006-07-04 | 2006-07-04 | 结合静态编译器和动态调频技术优化运行频率的节能方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100377042C (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2008239696B2 (en) | 2007-04-11 | 2011-09-08 | Apple Inc. | Data parallel computing on multiple processors |
CN103927150B (zh) * | 2007-04-11 | 2016-09-07 | 苹果公司 | 多处理器上的并行运行时执行 |
US8341611B2 (en) | 2007-04-11 | 2012-12-25 | Apple Inc. | Application interface on multiple processors |
US8286196B2 (en) | 2007-05-03 | 2012-10-09 | Apple Inc. | Parallel runtime execution on multiple processors |
US11836506B2 (en) | 2007-04-11 | 2023-12-05 | Apple Inc. | Parallel runtime execution on multiple processors |
US8276164B2 (en) | 2007-05-03 | 2012-09-25 | Apple Inc. | Data parallel computing on multiple processors |
US8286198B2 (en) | 2008-06-06 | 2012-10-09 | Apple Inc. | Application programming interfaces for data parallel computing on multiple processors |
US8225325B2 (en) | 2008-06-06 | 2012-07-17 | Apple Inc. | Multi-dimensional thread grouping for multiple processors |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1151416C (zh) * | 2000-12-18 | 2004-05-26 | 联想(北京)有限公司 | 根据cpu的利用率调节cpu频率的方法 |
WO2004095247A1 (en) * | 2003-03-24 | 2004-11-04 | Intel Corporation | Reducing cpu and bus power when running in power-save modes |
CN1229719C (zh) * | 2002-03-20 | 2005-11-30 | 精工爱普生株式会社 | 运算器的功率控制方法 |
-
2006
- 2006-07-04 CN CNB2006100522863A patent/CN100377042C/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1151416C (zh) * | 2000-12-18 | 2004-05-26 | 联想(北京)有限公司 | 根据cpu的利用率调节cpu频率的方法 |
CN1229719C (zh) * | 2002-03-20 | 2005-11-30 | 精工爱普生株式会社 | 运算器的功率控制方法 |
WO2004095247A1 (en) * | 2003-03-24 | 2004-11-04 | Intel Corporation | Reducing cpu and bus power when running in power-save modes |
Also Published As
Publication number | Publication date |
---|---|
CN1877490A (zh) | 2006-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100377042C (zh) | 结合静态编译器和动态调频技术优化运行频率的节能方法 | |
CN100465857C (zh) | 一种面向嵌入式系统低功耗实时任务调度的简化方法 | |
CN100416463C (zh) | 面向嵌入式系统低功耗实时任务参数模型调度方法 | |
CN1993669B (zh) | 多核处理器内的电源管理协调 | |
CN100590571C (zh) | 实时嵌入式系统edf低功耗调度的msr方法 | |
CN102734895A (zh) | 变频空调控制方法 | |
CN100410847C (zh) | 具有节电功能的电脑系统及电脑系统节电模式的实现方法 | |
CN103051793B (zh) | 一种移动终端控制数据传输模式的方法及装置 | |
CN100365543C (zh) | 内核动态调节处理器频率的节能方法 | |
CN101237656A (zh) | 提高终端业务持续时间的方法及使用该方法的终端装置 | |
CN103605421B (zh) | 一种便携式计算机功耗最小化的设计方法 | |
CN102799115B (zh) | 组合电源管理方法及装置 | |
CN101719964B (zh) | 移动终端电源管理方法及移动终端 | |
CN206627940U (zh) | 一种移动声卡 | |
CN102096462B (zh) | 基于Android的智能用电控制装置、系统和方法 | |
Chéour et al. | Hybrid energy-efficient power management for wireless sensors networks | |
CN202535438U (zh) | 智能手机双系统切换装置 | |
CN102567264B (zh) | 通用串行总线集线器及其电源管理方法 | |
Mao et al. | Modeling energy consumption of virtual machines in dvfs-enabled cloud data centers | |
US20210152090A1 (en) | Stacked buck converter with inductor switching node pre-charge and conduction modulation control | |
Janacek et al. | Data center smart grid integration considering renewable energies and waste heat usage | |
Wu et al. | Revisiting the System Energy Footprint and Power Efficiency on the Way to Sustainable 6G Systems | |
CN102541245A (zh) | 低功耗的平板电脑以及降低平板电脑功耗的方法 | |
CN202009430U (zh) | 低功耗手机 | |
Akinlabi et al. | Using renewable energy sources for power saving: Home appliances and femtocells |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080326 Termination date: 20120704 |