CN102375528A - 具备可调效能的系统、以及用来调整系统效能的方法 - Google Patents
具备可调效能的系统、以及用来调整系统效能的方法 Download PDFInfo
- Publication number
- CN102375528A CN102375528A CN2011101969305A CN201110196930A CN102375528A CN 102375528 A CN102375528 A CN 102375528A CN 2011101969305 A CN2011101969305 A CN 2011101969305A CN 201110196930 A CN201110196930 A CN 201110196930A CN 102375528 A CN102375528 A CN 102375528A
- Authority
- CN
- China
- Prior art keywords
- unit
- integral body
- operation frequency
- usefulness
- policy
- 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.)
- Pending
Links
Images
Classifications
-
- 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/3206—Monitoring of events, devices or parameters that trigger a change in power modality
-
- 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/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- 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
-
- 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
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
Abstract
本发明提供一种具备可调效能的系统和用来调整系统效能的方法,该系统包含:多个单元,其中至少一单元包含硬件电路;至少一整体/局部忙碌等级侦测器,其包含至少一整体忙碌等级侦测器及/或至少一局部忙碌等级侦测器,每一整体/局部忙碌等级侦测器用来侦测该多个单元中的至少一部分单元的整体/局部忙碌等级;以及整体/局部系统效能管理器,用来依据该至少一整体/局部忙碌等级侦测器所侦测的至少一整体/局部忙碌等级来调整该系统的效能。本发明的好处之一是可调整至少一参数,以妥善地调整该系统的效能。
Description
技术领域
本发明有关于系统的效能调整,尤指一种具备可调效能的系统以及用来调整系统效能的方法。
背景技术
省电一直是电子装置诸如移动电话、个人/便携式导航装置(Personal/PortableNavigation Device,PND)、数码相机、个人计算机等实施的重要议题;这个事实不论在该多个电子装置是否为便携式的状况下都是不变的。为了减少该多个等电子装置的电力消耗,尤其是减少那些以电池供电的电子装置的电力消耗,相关技术中传统方法通常关注于牺牲效能来省电。然而,基于传统方法所实现的产品会出现许多问题。例如:当一个传统产品运作于省电模式时,可能出现音乐播放不顺畅的问题。又例如:不论电力是否充足,传统的产品为了要达到省电的目标会在以电池供电时饱受声音播放效能低劣之苦,令用户感到不便。如此,相关技术未能妥善地照顾到用户的需要,因此,需要一种新颖的方法来改善该多个电子装置的效能控制。
发明内容
本发明目的之一在于提供一种具备可调效能的系统以及用来调整系统效能的方法,以解决上述问题。
本发明的较佳实施例中提供一种具备可调效能的系统,该系统包含有:多个单元,其中该多个单元中的至少一单元包含硬件电路;至少一整体/局部忙碌等级侦测器,其包含至少一整体忙碌等级侦测器及/或至少一局部忙碌等级侦测器,其中每一整体/局部忙碌等级侦测器用来侦测该多个单元中的至少一部分单元的整体/局部忙碌等级;以及整体/局部系统效能管理器,用来依据该至少一整体/局部忙碌等级侦测器所侦测的至少一整体/局部忙碌等级来调整该系统的效能,其中基于该至少一整体/局部忙碌等级且基于关联于该系统的效能的至少一政策,该整体/局部系统效能管理器于需要时调整该系统的至少一参数,以省电及/或确保该系统的运作,并且该至少一参数对应于该系统的效能。
本发明的较佳实施例中提供一种用来调整系统效能的方法,侦测该系统的多个单元中的至少一部分单元的至少一整体/局部忙碌等级,其中该多个单元中的至少一单元包含硬件电路;以及依据该至少一整体/局部忙碌等级来调整该系统的效能。尤其是,依据该至少一整体/局部忙碌等级来调整该系统的效能的步骤另包含:基于该至少一整体/局部忙碌等级且基于关联于该系统的效能的至少一政策,于需要时调整该系统的至少一参数,以省电、及/或确保该系统的运作,其中该至少一参数对应于该系统的效能。
本发明的好处之一是,基于上述的至少一整体/局部忙碌等级且基于上述的至少一政策,上述的至少一参数可予以调整,以妥善地调整该系统的效能。另外,依据某些实施例,上述的至少一参数诸如一个或多个运作频率于需要时可予以增加以确保该多个单元中的至少一部分单元的运作、或是于需要时可予以减少以省电。
附图说明
图1为依据本发明第一实施例的一种具备可调效能的系统的示意图。
图2为依据本发明一实施例的一种用来调整系统效能的方法的流程图。
图3A至图3E为图1所示的系统于某些实施例中的实施细节。
图4为图1所示的系统于一实施例中的实施细节。
具体实施方式
在说明书及权利要求当中使用了某些词汇来指称特定组件。所属技术领域的技术人员应可理解,制造商可能会用不同名词来称呼同一个组件。本说明书及权利要求并不以名称的差异作为区分组件的方式,而是以组件在功能上的差异作为区分准则。在通篇说明书及权利要求中所提及的“包含”为开放式用语,故应解释成“包含但不限定于”。此外,“耦接”一词在此包含任何直接及间接的电气连接手段。藉由以下的较佳实施例的叙述并配合全文的图1至图4说明本发明,但以下叙述中的装置、组件与方法、步骤乃用以解释本发明,而不应当用来限制本发明。
请参考图1,图1为依据本发明第一实施例的一种具备可调效能的系统100的示意图。例如:系统100可为对称多处理(Symmetric Multiprocessing,SMP)系统或不对称多处理(Asymmetric Multiprocessing,AMP)系统。系统100包含:多个单元110,其包含单元112、114、与116;至少一整体/局部忙碌等级侦测器(Global/Local Busy Level Detector,以下简称为G/L-BD),其包含至少一整体忙碌等级侦测器(Global Busy Level Detector,以下简称为GBD)、及/或至少一局部忙碌等级侦测器(Local Busy Level Detector,以下简称为LBD),诸如GBD 120以及LBD 122与124;以及整体/局部系统效能管理器(Global/Local SystemPerformance Manger,以下简称为G/L-SPM)130。于本实施例中,该多个单元110中的至少一单元包含硬件电路。尤其是,该多个单元110中的至少一单元包含软件模块。例如:该多个单元110中的某些单元可为硬件电路,而该多个单元110中的某些单元可为软件模块。另外,本实施例的G/L-BD,诸如LBD 122与124以及GBD 120当中的任一者,可通过利用硬件电路或软件模块来实施,或通过利用硬件电路与软件模块的组合来实施。相仿地,G/L-SPM 130可通过利用硬件电路或软件模块来实施,或通过利用硬件电路与软件模块的组合来实施。请注意,于本实施例中,系统100可为SMP系统或AMP系统。这只是为了说明的目的而已,并非对本发明的限制。依据本实施例的某些变化例,系统100可为分布式(Distributed)系统。例如:该分布式系统可包含几台个人计算机(Personal Computer,以下简称为PC),每台PC可视为该多个单元110中的一者。尤其是,针对这些PC,可安排多个LBD来分别侦测对应于该多个PC的多个局部忙碌等级(Local Busy Level,以下简称为LBL)。依据本实施例的某些变化例,系统100可包含执行各自的操作系统(Operating Systems,以下简称为OS)的多个虚拟机(Virtual Machine),其中每一虚拟机可视为该多个单元110中的一者。尤其是,针对这些虚拟机,可安排多个LBD来分别侦测对应于该多个虚拟机的多个LBL。另外,于这些变化例中,在包含该多个虚拟机的系统100当中,执行该多个虚拟机的一部PC可被配置诸如图1所示的GBD。
依据本实施例,每一G/L-BD(例如:GBD 120,或LBD 122与124中的任一者)是用来侦测该多个单元110中的至少一部分单元(诸如该多个单元110中的一个或多个单元、或该多个单元110中的全部单元)的整体/局部忙碌等级(Global/Local Busy Level,以下简称为G/L-BL),其中一个G/L-BD可位于一个单元之外或一个单元之内。例如:本实施例的GBD 120可用来侦测该多个单元110中的上述至少一部分单元的整体忙碌等级(Global Busy Level,以下简称为GBL)且可位于该多个单元110之外,而本实施例的LBD 122可用来侦测单元112的一个LBL且可位于单元112之外。又例如:LBD 124可用来侦测单元114的一个LBL且可位于单元114之内。在本实施例的某些变化例中,该多个单元中的任一者,诸如单元112,可被动地受该LBD诸如LBD 122的侦测,且可不察觉到该LBD的存在。在本实施例的某些变化例中,该多个单元中的任一者,诸如单元114,可主动地回报其忙碌等级至该LBD诸如LBD 124。在本实施例的一特例中,单元114可备有对LBD 124的控制能力。在本实施例的另一特例中,单元114可利用来自LBD 124的LBL。
另外,本实施例的G/L-SPM 130是用来依据上述的至少一G/L-BD所侦测的至少一G/L-BL调整系统100的效能。基于上述的至少一G/L-BL且基于关联于系统100的效能的至少一政策(Policy),G/L-SPM 130可于需要时调整系统100的至少一参数,以省电及/或确保系统100的运作,其中上述的至少一参数对应于系统100的效能。尤其是,上述的至少一参数可包含系统100的至少一运作频率。基于上述的至少一G/L-BL且基于上述的至少一政策,G/L-SPM 130可于需要时减少系统100的上述至少一运作频率以省电。例如:在系统100以电池供电的状况下,当侦测到电池的电力低于阈值时,G/L-SPM 130可减少系统100的运作频率以省电。基于上述的至少一G/L-BL且基于上述的至少一政策,G/L-SPM 130可于需要时增加上述的至少一运作频率以确保系统100的运作,尤其是确保该多个单元110中的至少一部分单元的运作,诸如该多个单元110中的一部分单元或全部单元的运作。例如:在该多个单元110包含媒体播放器且发现该媒体播放器的音乐播放不平顺的状况下,G/L-SPM 130可增加该媒体播放器的运作频率以确保音乐播放平顺。
虽然上述的至少一G/L-BD包含至少一GBD(例如GBD 120)与至少一LBD(例如LBD 122与124),这绝对不表示G/L-SPM 130应当总是利用来自每一G/L-BD的G/L-BL。另外,这绝对不表示该GBD与该LBD两者应当总是于系统100当中同时被使用。实作上,上述的至少一G/L-BD中的一个LBD可暂时地或永久地被禁能(Disable)、及/或G/L-SPM 130可暂时地或永久地在不利用来自该LBD的任何LBL的状况下运作。相仿地,上述的至少一G/L-BD中的一个GBD可暂时地或永久地被禁能、及/或G/L-SPM 130可暂时地或永久地在不利用来自该GBD的任何GBL的状况下运作。
尤其是,上述的至少一政策可包含多个政策,且依照该多个政策中的至少一部分政策,诸如该多个政策中的一部分政策或全部政策,G/L-SPM 130动态地将该运作频率保持于优化值。例如:G/L-SPM 130可于第一时期动态地将该运作频率保持于第一优化值,且于第二时期动态地将该运作频率保持于第二优化值。于是,G/L-SPM 130可兼顾系统100的效能与功耗。
请注意,于本实施例中,改变上述的至少一运作频率可能会影响单元112与单元114两者的效能,故单元112与114可视为系统效能相依单元(SystemPerformance Dependent Unit,以下简称为SPDU),这是因为它们各自的效能中的每一者为可调整的。如此,单元112的效能与单元114的效能两者均能受G/L-SPM 130的控制。相反地,改变上述的至少一运作频率可能不会影响单元116的效能,故单元116可视为系统效能独立单元(System PerformanceIndependent Unit,以下简称为SPIU),这是因为它的效能是不可调整的。如此,单元116的效能可不受G/L-SPM 130所控制。尤其是,SPIU诸如单元116可拥有其自己的运作频率,这运作频率是独立于上述的至少一运作频率。这只是为了说明的目的而已,并非对本发明的限制。依据本实施例的某些变化例,在G/L-SPM 130通过改变该多个单元的各自的带宽(而非通过改变上述的至少一运作频率)来管理整体/局部系统效能的状况下,SPIU诸如单元116可具有与系统100相同的运作频率。
依据本实施例的某些变化例,不论系统100当中单元的数量、SPDU的数量、SPIU的数量、GBD的数量、与LBD的数量中的任一者改变与否,上述的至少一政策,诸如一个或多个政策,仍可使系统100的效能被妥善地调整。实作上,针对该多个单元110中的特定单元,G/L-SPM 130可决定该特定单元对该运作频率的需求值,其中对应于该特定单元的需求值代表该特定单元要妥善地运作时对该运作频率的数值的基本需求。例如:在该特定单元代表软件模块诸如音频播放应用程序(例如一媒体播放器)的状况下,对应于该特定单元的该需求值代表该音频播放应用程序要平顺地播放音乐时对该运作频率的数值的基本需求。相仿地,针对该多个单元110,G/L-SPM 130可分别决定各自对该运作频率的各个需求值。由于分别对应于该多个单元110的各个需求值代表该多个单元110各自的基本需求,G/L-SPM 130可基于分别对应于该多个单元110的各个需求值的至少一部分需求值(例如:一部分需求值或全部需求值)对该多个单元110进行效能管理。
依据该多个变化例中的一者,依照上述的至少一政策中的至少一部分政策,G/L-SPM 130暂时地将该运作频率保持于目标值,其中该目标值是该多个单元110中的至少一部分单元(例如该多个单元110中的一部分单元或全部单元)各自对该运作频率的各个需求值中的最大值。例如:来自LBD 122的LBL指出单元112对该运作频率的需求值等于第一值,而来自LBD 124的LBL指出单元114对该运作频率的需求值等于第二值,其中来自GBD 120的GBL指出该多个单元110对该运作频率的需求值等于第三值。请注意,该多个单元110对该运作频率的需求值可用来作为单元116对该运作频率的需求值。也就是说,已知该多个单元110对该运作频率的需求值等于该第三值,单元116对该运作频率的需求值亦可等于该第三值。在该第三值小于该第一值与该第二值中的任一者且第二值大于该第一值的状况下,G/L-SPM 130利用该第二值作为该目标值。于是,G/L-SPM 130可确保单元112、114、与116中的每一者的运作。因此,相关技术的问题,诸如为了省电而牺牲效能(例如牺牲单元114的效能)的问题,就不再发生了。
依据该多个变化例中的另一者,依照上述的至少一政策中的至少一部分政策,G/L-SPM 130暂时地将该运作频率保持于目标值,其中该目标值是该多个单元110中的至少一部分单元各自对该运作频率的各个需求值的总和,诸如该多个单元110中的一部分单元或全部单元各自对该运作频率的各个需求值的总和。例如:在来自LBD 122的LBL指出单元112对该运作频率的需求值等于第四值且来自LBD 124的LBL指出单元114对该运作频率的需求值等于第五值的状况下,G/L-SPM 130利用该第四值与该第五值的总和作为该目标值。又例如:在来自LBD 122的LBL指出单元112对该运作频率的需求值等于第六值、来自LBD 124的LBL指出单元114对该运作频率的需求值等于第七值、且GBD 120指出该多个单元110(尤其是单元116)对该运作频率的需求值等于第八值的状况下,G/L-SPM 130利用该第六值、该第七值与该第八值的总和作为该目标值。由于通过利用该多个单元110中的至少一部分单元各自对该运作频率的各个需求值的总和来妥善地估测该目标值,G/L-SPM 130可确保单元112、114与116中的每一者的运作。因此,相关技术的问题,诸如为了省电而牺牲效能的问题,就不再发生了。
依据该多个变化例中的另一者,依照上述的至少一政策中的至少一部分政策,G/L-SPM 130可在不妨碍该多个单元110中的至少一部分单元(例如该多个单元110中的一部分单元或全部单元)的运作的状况下,暂时地将该多个单元110的功耗最小化。例如:只要不妨碍该多个单元110中的至少一部分单元(例如该多个单元110中的一部分单元或全部单元)的运作,G/L-SPM 130暂时地将该运作频率减少至可达到的最小值。这只是为了说明的目的而已,并非对本发明的限制。依据该多个变化例中的另一者,依照上述的至少一政策中的至少一部分政策,G/L-SPM 130可在不严重地妨碍该多个单元110中的至少一部分单元(例如该多个单元110中的一部分单元或全部单元)的运作的状况下,暂时地将该多个单元110的功耗最小化。例如:只要不严重地妨碍该多个单元110中的至少一部分单元(例如该多个单元110中的一部分单元或全部单元)的运作,G/L-SPM 130暂时地将该运作频率减少至可达到的最小值。依据该多个变化例中的另一者,依照上述的至少一政策中的至少一部分政策,G/L-SPM 130可暂时地将该运作频率保持于可达到的最大值。例如:G/L-SPM 130暂时地将该运作频率增加至可达到的最大值,以达到所需的效能。
图2为依据本发明一实施例的一种用来调整系统效能的方法910的流程图。该方法可应用于图1所示的系统100,尤其是上述该多个G/L-BD 120至124、及/或G/L-SPM 130。另外,该方法可通过利用图1所示的系统100来实施,尤其是通过利用上述该多个G/L-BD 120至124、及/或G/L-SPM 130来实施。该方法说明如下:
于步骤912中,上述的至少一G/L-BD侦测系统100的多个单元中的至少一部分单元的至少一G/L-BL,诸如上述该多个单元110中的至少一部分单元的至少一G/L-BL。尤其是,GBD 120可侦测该多个单元110中的上述至少一部分单元的GBL,而LBD 122与124可分别侦测单元112与114各自的LBL。
于步骤914中,G/L-SPM 130依据上述的至少一G/L-BL调整系统100的效能。尤其是,基于上述的至少一G/L-BL且基于关联于系统100的效能的至少一政策,G/L-SPM 130于需要时调整系统100的至少一参数,以省电、及/或确保系统100的运作,其中上述的至少一参数对应于系统100的效能。
尤其是,步骤914所述的至少一参数可包含系统100的至少一运作频率,诸如图1所示实施例当中所述的至少一参数。基于上述的至少一G/L-BL且基于上述的至少一政策,G/L-SPM 130于需要时减少上述系统100的至少一运作频率以省电。例如:当一G/L-BL达到预定阈值时,G/L-SPM 130可决定需要减少该运作频率,其中该预定阈值可关联于一个或多个政策。另外,基于上述的至少一G/L-BL且基于上述的至少一政策,G/L-SPM 130于需要时增加该运作频率以确保系统100的运作,尤其是确保该多个单元110中的至少一部分单元的运作。例如:当一G/L-BL达到预定阈值时,G/L-SPM 130可决定需要增加该运作频率,其中该预定阈值可关联于一个或多个政策。这只是为了说明的目的而已,并非对本发明的限制。依据本实施例的某些变化例,步骤914所述的至少一参数可包含该多个单元110中的该至少一部分单元的至少一带宽。尤其是,上述的至少一带宽可对应于该多个单元110中的该至少一部分单元分别使用系统100中的一中央处理单元(Central Processing Unit,以下简称为CPU)的时间。
依据本实施例,该GBL可从各种侦测来取得。例如:该GBL可对应于至少一CPU的空闲时间(例如,于步骤912中,系统100当中该多个单元中的上述至少一部分单元包含该CPU),尤其是可对应于该CPU所虚拟执行的闲置任务(Idle Task)的至少一闲置时期(例如一个或多个闲置时期)。在上述的至少一CPU包含多个CPU的状况下,GBD的数量可等同于CPU的数量,其中该多个GBD用来侦测分别对应于该多个CPU各自的空闲时间的各个GBL。请注意,某些实施例(例如图2所示实施例的某些变化例)中的该多个GBL可通过观测频率或观测传输带宽(例如,观测是否存在任何数据传输运作、及/或观测至少一数据传输运作的至少一时期)来予以侦测。在其它例子中,该GBL可对应于该多个单元110中的上述至少一部分单元的至少一空闲时间,诸如该CPU的空闲时间、该多个单元110中的全部单元的整体空闲时间(例如当该多个单元110皆不忙碌时的整体空闲时间)、或该多个单元110各自的空闲时间。在该GBL对应于该多个单元110各自的空闲时间的状况下,该多个单元110可分别回报它们的空闲时间(尤其是,当它们分别不用该CPU时的空闲时间)予G/L-SPM130、或者G/L-SPM 130可侦测该多个单元110各自的空闲时间,因此,G/L-SPM130可依据该多个空闲时间来决定该GBL。
实作上,上述的至少一GBD诸如GBD 120可利用系统100中的周期性/非周期性量测装置(例如定时器)来侦测或计算该GBL。另外,该LBL可对应于系统100中的存储模块中的数据占有(Data Occupation)程度,其中该存储模块用来暂时地储存该多个单元中的至少一单元当中传送的数据、或暂时地储存传送至/自该至少一单元的数据。请注意,针对该存储模块的实施有许多选择。例如:该存储模块可为缓冲器。又例如:该存储模块可为队列(Queue)。又例如:该存储模块可为先进先出(First In First Out,FIFO)存储器(例如一先进先出内存),其可简称为FIFO。又例如:该存储模块可为管道(Pipe)。通过妥善地将一个LBD关联至对应于系统100当中一个单元的存储模块,该单元的LBL可被正确地侦测或计算。
在本实施例的一特例中,当该多个单元110中的特定单元的LBL达到预定阈值且因此指出需要增加该运作频率,G/L-SPM 130可增加该运作频率。尤其是,依据该特定单元相较于其它单元的优先级,G/L-SPM 130可决定是否优先考虑该LBL。如此,依据该多个单元110中的某些特定单元的各自的优先级,G/L-SPM 130决定是否优先考虑该多个特定单元的各自的LBL。例如:在第一单元对应于相较其它单元更高的优先级的状况下,G/L-SPM 130优先利用该第一单元的LBL来决定于此状况下是否改变或如何改变该运作频率。又例如:在第一单元对应于相较其它单元更高的优先级且该第一单元的LBL指出针对该运作频率的不同的改变方向(例如增加或减少该运作频率)的状况下,G/L-SPM 130仅仅利用该第一单元的LBL来决定于此状况下是否改变或如何改变该运作频率。这只是为了说明的目的而已,并非对本发明的限制。在本实施例的某些变化例中,在第一单元对应于相较其它单元更高的优先级且G/L-SPM 130已经决定该第一单元对该运作频率的需求值的状况下,G/L-SPM 130可将该运作频率设定为对应于该第一单元的需求值。
在本实施例的不同的特例中,上述的至少一运作频率的实施可予以变化。例如:上述的至少一运作频率可包含至少一CPU运作频率(例如至少一CPU的至少一运作频率,诸如一个或多个CPU的运作频率)、及/或至少一外围装置运作频率(例如至少一外围装置的至少一运作频率,诸如一个或多个外围装置的运作频率)。为了调整该运作频率,可对频率进行调整。例如:该CPU运作频率的调整可通过调整该CPU的频率来达成;该外围装置运作频率的调整可通过调整该外围装置的频率来达成。为了省电及/或确保该系统的运作,除了运作频率之外,亦可针对运作电压进行调整。例如:减少运作电压可降低功耗,而增加运作电压更能确保该系统的运作。在某些实施例中,该系统及/或该多个单元中的至少一部分单元的运作电压的调整可通过调整该系统及/或该多个单元中的至少一部分单元的至少一压降转换器(Buck Converter,以下简称为BK)电压(例如:BK诸如直流对直流转换器(DC-to-DC Converter)的电压)及/或至少一低压差稳压器(Low Drop-Out Regulator,以下简称为LDO)电压(例如:LDO的电压)来达成。
图3A为图1所示的系统100于一实施例中的实施细节,其中本实施例是图1所示实施例的变化例。因应架构上的改变,标号100代换为100A。在此,本实施例的该多个单元包含多个软件模块诸如多个任务(Task)310,尤其是内建(Built-In)任务T(1)、T(2)、T(3)与T(n)以及非内建(Non-Built-In)任务T(A)、T(B)与T(m)。于运作时间(Run Time)执行一个OS的CPU 305亦可执行该多个软件模块诸如任务310。另外,上述的GBD 120可代换为GBD 320,且LBD122与124可代换为LBD 322与324,其中本实施例的LBD 322可为针对动态影像专家群体(Moving Picture Experts Group,以下简称为MPEG)处理的一个LBD,而本实施例的LBD 324可为针对音频处理的一个LBD。此外,G/L-SPM130可代换为G/L-SPM 330。系统100A的运作说明如下:
GBD 320用来侦测任务310的一个GBL,而LBD 322用来侦测针对MPEG处理的内建任务T(2)(标示为MPEG内建任务)的一个LBL,且LBD 324用来侦测针对音频处理的内建任务T(1)(标示为音频内建任务)的一个LBL。实作上,该GBL可通过量测任务310当中闲置任务T(L)的某(些)闲置时期来予以侦测,且该多个LBL可通过量测关联于内建任务T(1)与T(2)的各个输出缓冲器的吞吐量(Throughput)来予以侦测。在此,当闲置任务T(L)被执行,它表示系统100正闲置着。更明确而言,本实施例的闲置任务T(L)可为系统100的闲置任务。另外,G/L-SPM 330可重新安排该多个单元当中或该多个单元的一个或多个任务以调整系统100A的效能。
请注意,针对改变上述的至少一运作频率诸如一个或多个运作频率的实施,在此提出一种新颖的动态电压与频率调节(Dynamic Voltage and FrequencyScaling,以下简称为DVFS)方案,其异于相关技术中的任一者(若存在),且可应用于系统100A。基于上述的至少一G/L-BL(例如来自GBD 320的GBL,以及分别来自LBD 322与324的LBL)且基于上述的至少一政策,该一个或多个运作频率可予以调整,以调整系统100A的效能。由于将本实施例的该DVFS方案应用于系统100A,该一个或多个运作频率于需要时可予以增加以确保该多个单元中的至少一部分单元的运作、或是于需要时可予以减少以省电。这只是为了说明的目的而已,并非对本发明的限制。为了调整该运作频率,可针对频率予以调整。例如:CPU 305的运作频率的调整可通过调整供予CPU 305的频率来达成;任务310的运作频率的调整可通过调整分别供予它们的各个频率来达成。为了省电及/或确保该系统的运作,除了运作频率之外,亦可针对运作电压进行调整。例如:减少运作电压可降低功耗,而增加运作电压较能确保该系统的运作。在某些实施例中,该系统及/或该多个单元中的至少一部分单元的运作电压的调整可通过调整该系统及/或该多个单元中的至少一部分单元的至少一BK电压(例如:一BK诸如直流到直流的电压)及/或至少一LDO电压(例如:LDO的电压)来达成。
于本实施例中,G/L-SPM 330包含定时器型(Timer-Based)DVFS模块(以下简称为T-DVFS模块)332与缓冲器型(Buffer-Based)DVFS模块(以下简称为B-DVFS模块)334,用来控制该一个或多个运作频率。尤其是,该T-DVFS模块用来依据本实施例的GBL来控制该一个或多个运作频率,其中该GBL通过量测该闲置任务的某(些)空闲时间而侦测到的;并且,依据由量测相关输出缓冲器的吞吐量所分别侦测到的各个LBL,该B-DVFS模块可控制该一个或多个运作频率。
请注意,只要不妨碍系统100A的运作,该第一实施例的某些变化例诸如以上揭露者的相关实施方法可分别应用于本实施例。为了简明起见,本实施例与前述实施例/变化例相仿之处不再重复赘述。
图3B为图1所示的系统100于一实施例中的实施细节,其中本实施例是图1所示实施例的变化例,且是图3A所示实施例的变化例。因应架构上的改变,标号100代换为100B。在此,本实施例的该多个单元可包含多个硬件电路,诸如前级(Front Stage)312-1、解多任务器312-2、视频译码器312-3、视频/音频同步电路312-4、显示电路312-5、视频输出电路312-6、音频输出电路312-7、以及分别关联于前级312-1、解多任务器312-2、视频译码器312-3、视频/音频同步电路312-4与显示电路312-5的缓冲器314-1、314-2、314-3、314-4与314-5。另外,本实施例的该多个单元可另包含多个软件模块,诸如核心(Core)模块316-1与音频译码器316-2,其中该多个硬件电路包含分别关联于核心模块316-1与音频译码器316-2的缓冲器318-1与318-2。尤其是,该多个缓冲器均为FIFO。这只是为了说明的目的而已,并非对本发明的限制。依据本实施例的某些变化例,该多个单元中的一部分单元当中起初以硬件电路实施的(例如视频译码器312-3)可改以软件模块(而非硬件电路)来实施。依据本实施例的某些变化例,该多个单元中的一部分单元当中起初以软件模块实施的(例如音频译码器316-2)可改以硬件电路(而非软件模块)来实施。
系统100B当中的G/L-SPM 330的定时器型控制机制(以下简称为TC机制)近似于系统100A当中的TC机制,其中系统100B当中G/L-SPM 330的缓冲器型控制机制(以下简称为BC机制)说明如下。G/L-SPM 330可控制前级312-1、解多任务器312-2、视频译码器312-3、视频/音频同步电路312-4、显示电路312-5、视频输出电路312-6、音频输出电路312-7、缓冲器314-1、314-2、314-3、314-4与314-5、核心模块316-1、音频译码器316-2、以及缓冲器318-1与318-2等诸多模块/组件/电路中的至少一部分(例如一部分或全部)。请参考图3B,缓冲器314-1、314-2与318-1中的每一者的两端未加阴影,这表示它们的数据输入速度与数据输出速度两者均未固定。另外,缓冲器314-4与314-5中的每一者的两端加上阴影,这表示它们的数据输入速度与数据输出速度两者均是固定的。此外,缓冲器314-3与318-2中的每一者的输入端未加阴影而缓冲器314-3与318-2中的每一者的输出端加上阴影,这表示它们的数据输入速度未固定且它们的数据输出速度是固定的。如此,缓冲器314-3与318-2可视为实时关键(Real TimeCritical,RT Critical)缓冲器(以下简称为RTCR缓冲器)。于本实施例中,缓冲器314-3与318-2可视为RTCR缓冲器的重要原因是:缓冲器314-3与318-2的不当控制可导致音频/视频播放不平顺、及/或音频/视频播放延迟。例如:在缓冲器314-3与318-2中的一者于音频/视频播放期间暂时地空着(例如其内数据用尽)的状况下,可能出现某些异常播放现象。
更明确而言,缓冲器314-3是视频RTCR缓冲器,且缓冲器318-2是音频RTCR缓冲器。依据本实施例,GBD 320用来侦测系统100B当中该多个单元中的该至少一部分单元的一GBL,而LBD 322用来侦测缓冲器314-3的一LBL,且LBD 324用来侦测缓冲器318-2的一LBL。也就是说,LBD 322与324两者被用来侦测这些RTCR缓冲器各自的LBL。于系统100B的运作期间,在一个或多个RTCR缓冲器的缓冲占用率(Occupancy)大于预定阈值的状况下,该多个相关的LBL可能指出上述的至少一运作频率诸如一个或多个运作频率可被减少,因此,G/L-SPM 330可减少该一个或多个运作频率,以便(举例而言)减少该一个或多个RTCR缓冲器的数据输入速度。相反地,在一个或多个RTCR缓冲器的缓冲占用率小于预定阈值的状况下,相关的LBL可能指出上述的至少一运作频率诸如一个或多个运作频率可被增加,因此,G/L-SPM 330可增加该一个或多个运作频率,以便(举例而言)增加该一个或多个RTCR缓冲器的数据输入速度。这只是为了说明的目的而已,并非对本发明的限制。依据本实施例的某些变化例,G/L-SPM 330依据该多个RTCR缓冲器的数据输入/输出速度(而非任何RTCR缓冲器的缓冲占用率)来决定是否增加/减少该一个或多个运作频率。例如:针对该多个RTCR缓冲器中的特定RTCR缓冲器,当数据输入速度大于数据输出速度加上预定值(例如正的预定值),G/L-SPM 330可减少该一个或多个运作频率,以便(举例而言)减少该特定RTCR缓冲器的数据输入速度。又例如:针对该多个RTCR缓冲器中的特定RTCR缓冲器,当数据输入速度小于数据输出速度减去预定值(例如正的预定值,诸如上述正的预定值),G/L-SPM 330可增加该一个或多个运作频率,以便(举例而言)增加该特定RTCR缓冲器的数据输入速度。
如此,通过利用对应于该多个LBL的BC机制与对应于该GBL的TC机制,系统100B的效能可妥善地调整。基于上述的至少一G/L-BL(例如来自GBD 320的GBL,以及分别来自LBD 322与324的LBL)且基于上述的至少一政策,该一个或多个运作频率可被优化,以调整系统100B的效能。由于将本实施例的该DVFS方案应用于系统100B,该一个或多个运作频率于需要时可予以增加以确保该多个单元中的至少一部分单元的运作、或是于需要时可予以减少以省电。
请注意,只要不妨碍系统100B的运作,该第一实施例的某些变化例诸如以上揭露者的相关实施方法可分别应用于本实施例。为了简明起见,本实施例与前述实施例/变化例相仿之处不再重复赘述。
图3C为图1所示的系统100于一实施例中的实施细节,其中本实施例是图1所示实施例的变化例,且是图3A与图3B所示实施例中的任一者的变化例。因应架构上的改变,标号100代换为100C。
某些内建多媒体任务诸如内建多媒体任务#1与内建多媒体任务#2被作为任务310的例子。于本实施例中,内建多媒体任务#1、内建多媒体任务#2、与某(些)其它任务不同时存在。这只是为了说明的目的而已,并非对本发明的限制。依据本实施例的某些变化例,内建多媒体任务#1、内建多媒体任务#2、与某(些)其它任务可同时存在。依据本实施例的某些变化例,内建多媒体任务#1、内建多媒体任务#2、与某(些)其它任务等诸多任务中的至少一部分任务(例如一部分任务或全部任务)可处于暂停(Suspended)模式。请参考图3C,可选用的各阶电压与频率绘示于纵轴附近,而横轴t代表时间轴。T-DVFS模块332收集整体忙碌信息以进行定时器型任务负载预测且因此侦测或计算该GBL。如图3C所示,内建多媒体任务#1的开始时间点与内建多媒体任务#2的结束时间点之间的时期被作为用来侦测或计算该GBL的监控时期的例子。另外,B-DVFS模块334收集局部忙碌信息以进行缓冲器型任务负载预测且因此侦测或计算该多个LBL。于本实施例中,G/L-SPM 330包含DVFS控制模块338,其中在G/L-SPM 330之内或之外可提供一个列有可选用的各阶电压与频率的对照表336。DVFS控制模块338可从对照表336取得针对DVFS选择之用的功率信息,且可另从T-DVFS模块332与B-DVFS模块334分别取得针对DVFS需求的历史信息。请注意,闭环控制可通过利用该历史信息来实施。这只是为了说明的目的而已,并非对本发明的限制。依据本实施例的某些变化例,开环控制可通过忽略该历史信息来实施。一般而言,依据本实施例及其变化例当中的任一者,基于针对DVFS选择之用的功率信息(例如对照表336的内容)、来自T-DVFS模块332的GBL、来自B-DVFS模块334的LBL、以及来自T-DVFS模块332与B-DVFS模块334的针对DVFS需求的历史信息(该历史信息为非必须(Optional)选项),DVFS控制模块338可从该多个可选用的各阶电压与频率决定供下一次使用的某阶电压及/或某阶频率。
请注意,只要不妨碍系统100C的运作,该第一实施例的某些变化例诸如以上揭露者的相关实施方法可分别应用于本实施例。为了简明起见,本实施例与前述实施例/变化例相仿之处不再重复赘述。
图3D为图1所示的系统100于一实施例中的实施细节,其中本实施例是图1所示实施例的变化例,且是图3A至图3C所示实施例中的任一者的变化例。因应架构上的改变,标号100代换为100D。尤其是,系统100D可用来实施低电力架构。
如图3D所示,系统100D可分成多层,其中该多层包含应用程序(Application)层、应用程序框架(Application Framework)层、函式库(Library)层、核(Kernel)层、与硬件平台(Hardware Platform)层。该应用层中可存在一个或多个应用程序。如图3D所示,该函式库层可包含媒体框架(MediaFramework),其包含核心模块316-1与可选用的其它模块,且该函式库层可另包含一个或多个其它框架与政策模块(Policy Module)。另外,该核层可包含音频驱动程序、视频驱动程序、其它多媒体驱动程序与其它驱动程序,其中这些驱动程序可视为上述的该多个单元,此外,该核层亦包括多个LBD、GBD 320与G/L-SPM 330。符号PLL与PMIC分别代表该硬件平台层中的某些硬件电路诸如锁相环与功率管理集成电路。此外,本实施例的这些驱动程序的每一者具有相关的LBD。
请注意,只要不妨碍系统100D的运作,该第一实施例的某些变化例诸如以上揭露者的相关实施方法可分别应用于本实施例。为了简明起见,本实施例与前述实施例/变化例相仿之处不再重复赘述。
图3E为图1所示的系统100于一实施例中的实施细节,其中本实施例是图1所示实施例的变化例,且是图3A至图3D所示实施例中的任一者的变化例。因应架构上的改变,标号100代换为100E。
于本实施例中,上述的至少一运作频率可包含一个或多个运作频率,诸如内存的内存频率、CPU 305的CPU频率、总线的总线频率、一个或多个装置的装置频率、与一个或多个处理器的处理器频率。GBD 320可实施成OS排程器(OSScheduler)。另外,本实施例的该多个单元可另包含软件应用程序、驱动程序及/或硬件装置。该多个LBD可侦测系统100E当中各个单元的各自的LBL,尤其是对应于系统100E当中这些单元的缓冲器的各个相关的LBL。此外,系统100E当中G/L-SPM 330的TC机制近似于系统100A当中的TC机制,且系统100E当中G/L-SPM 330的BC机制近似于系统100B当中的BC机制。
请注意,只要不妨碍系统100E的运作,该第一实施例的某些变化例诸如以上揭露者的相关实施方法可分别应用于本实施例。为了简明起见,本实施例与前述实施例/变化例相仿之处不再重复赘述。
依据图3E所示实施例的一变化例,系统100可为包含多个PC的分布式系统,而这些PC中的每一者依据一个或多个运作频率诸如图3E所示系统100E的该多个运作频率来运作。本变化例与前述实施例/变化例相仿之处不再重复赘述。
图4为图1所示的系统100于一实施例中的实施细节,其中本实施例是图1所示实施例的变化例,且是图3A至图3E所示实施例中的任一者的变化例。因应架构上的改变,标号100代换为400。如图4所示,系统400包含多处理器系统410。
于本实施例中,上述该多个单元可包含多个CPU,诸如多处理器系统410中的CPU 305-1、305-2、…、与305-N。该多个LBD侦测CPU 305-1、305-2、…、与305-N各自内部的LBL,且该多个GBD侦测CPU 305-1、305-2、…、与305-N的某些GBL,其中该多个GBD当中的某些GBD系耦接至CPU 305-1、305-2、…、与305-N,且因此可和CPU 305-1、305-2、…、与305-N互动。于本实施例中,该多个GBD可通过侦测CPU 305-1、305-2、…、与305-N的空闲时间来分别侦测CPU 305-1、305-2、…、与305-N各自的GBL。另外,CPU 305-1、305-2、…、与305-N可被动地受该多个GBD的侦测。这只是为了说明的目的而已,并非对本发明的限制。依据本实施例的某些变化例,该多个GBD可通过观测CPU305-1、305-2、…、与305-N的闲置任务来分别侦测CPU 305-1、305-2、…、与305-N各自的GBL。例如:CPU 305-1、305-2、…、与305-N中的至少一部分CPU(例如一部分CPU或全部CPU)可被动地受该多个GBD的侦测。又例如:CPU 305-1、305-2、…、与305-N的至少一部分CPU(例如一部分CPU或全部CPU)可主动地回报它们的忙碌等级予相对应的GBD。
另外,系统400当中G/L-SPM 330的TC机制近似于系统100A当中的TC机制,且系统400当中G/L-SPM 330的BC机制近似于系统100B当中的BC机制。
请注意,只要不妨碍系统400的运作,该第一实施例的某些变化例诸如以上揭露者的相关实施方法可分别应用于本实施例。为了简明起见,本实施例与前述实施例/变化例相仿之处不再重复赘述。
本发明的好处的一是,基于上述的至少一G/L-BL且基于上述的至少一政策,上述的至少一参数诸如上述的至少一运作频率可予以调整,以妥善地调整该系统的效能。另外,依据某些实施例,上述的至少一运作频率诸如一个或多个运作频率于需要时可予以增加以确保该多个单元中的至少一部分单元的运作、或是于需要时可予以减少以省电。
上述的实施例仅用来列举本发明的实施方式,以及阐释本发明的技术特征,并非用来限制本发明的范畴。任何所属技术领域的技术人员依据本发明的精神而轻易完成的改变或均等性安排均属于本发明所主张的范围,本发明的权利范围应以权利要求为准。
Claims (46)
1.一种具备可调效能的系统,该系统包含有:
多个单元,其中该多个单元中的至少一单元包含硬件电路;
至少一整体/局部忙碌等级侦测器,其包含至少一整体忙碌等级侦测器及/或至少一局部忙碌等级侦测器,其中每个整体/局部忙碌等级侦测器用来侦测该多个单元中的至少一部分单元的整体/局部忙碌等级;以及
整体/局部系统效能管理器,用来依据该至少一整体/局部忙碌等级侦测器所侦测的至少一整体/局部忙碌等级来调整该系统的效能,其中基于该至少一整体/局部忙碌等级且基于关联于该系统效能的至少一政策,该整体/局部系统效能管理器于需要时调整该系统的至少一参数,以省电及/或确保该系统的运作,并且该至少一参数对应于该系统的效能。
2.如权利要求1所述的系统,其特征在于,该多个单元中的至少一单元包含软件模块。
3.如权利要求1所述的系统,其特征在于,该至少一参数包含该系统的至少一运作频率;基于该至少一整体/局部忙碌等级且基于该至少一政策,该整体/局部系统效能管理器于需要时减少该至少一运作频率以省电;以及基于该至少一整体/局部忙碌等级且基于该至少一政策,该整体/局部系统效能管理器于需要时增加该至少一运作频率以确保该系统的运作。
4.如权利要求3所述的系统,其特征在于,该至少一政策包含多个政策;以及依照该多个政策中的至少一部分政策,该整体/局部系统效能管理器动态地将该运作频率保持于优化值。
5.如权利要求3所述的系统,其特征在于,依照该至少一政策中的至少一部分政策,该整体/局部系统效能管理器暂时地将该运作频率保持于目标值;以及该目标值是该多个单元中的至少一部分单元各自对该运作频率的各个需求值中的最大值。
6.如权利要求3所述的系统,其特征在于,依照该至少一政策中的至少一部分政策,该整体/局部系统效能管理器暂时地将该运作频率保持于目标值;以及该目标值是该多个单元中的至少一部分单元各自对该运作频率的各个需求值的总和。
7.如权利要求1所述的系统,其特征在于,依照该至少一政策中的至少一部分政策,该整体/局部系统效能管理器在不妨碍该多个单元中的至少一部分单元的运作的状况下,暂时地将该多个单元的功耗最小化。
8.如权利要求1所述的系统,其特征在于,该至少一参数包含该系统的至少一运作频率;以及依照该至少一政策中的至少一部分政策,该整体/局部系统效能管理器暂时地将该运作频率保持于可达到的最大值。
9.如权利要求1所述的系统,其特征在于,该至少一整体/局部忙碌等级侦测器包含至少一整体忙碌等级侦测器,该至少一整体忙碌等级侦测器用来侦测该多个单元中的该至少一部分单元的整体忙碌等级;以及该多个单元中的该至少一部分单元包含中央处理单元。
10.如权利要求9所述的系统,其特征在于,该至少一整体/局部忙碌等级侦测器包含局部忙碌等级侦测器;以及该局部忙碌等级侦测器暂时地被禁能及/或该整体/局部系统效能管理器暂时地在不利用来自该局部忙碌等级侦测器的任何局部忙碌等级的状况下运作。
11.如权利要求9所述的系统,其特征在于,该整体忙碌等级对应于该中央处理单元的空闲时间。
12.如权利要求9所述的系统,其特征在于,该整体忙碌等级对应于该多个单元中的该至少一部分单元的至少一空闲时间。
13.如权利要求9所述的系统,其特征在于,该至少一整体忙碌等级侦测器利用该系统中的周期性/非周期性量测装置来侦测或计算该整体忙碌等级。
14.如权利要求1所述的系统,其特征在于,该至少一整体/局部忙碌等级侦测器包含至少一局部忙碌等级侦测器,而该至少一局部忙碌等级侦测器用来侦测该多个单元中的特定单元的局部忙碌等级。
15.如权利要求14所述的系统,其特征在于,该至少一整体/局部忙碌等级侦测器包含整体忙碌等级侦测器;以及该整体忙碌等级侦测器暂时地被禁能及/或该整体/局部系统效能管理器暂时地在不利用来自该整体忙碌等级侦测器的任何整体忙碌等级的状况下运作。
16.如权利要求14所述的系统,其特征在于,该局部忙碌等级对应于该系统中的存储模块中的数据占有程度;以及该存储模块用来暂时地储存该多个单元中的至少一单元当中传送的数据、或暂时地储存传送至/自该至少一单元的数据。
17.如权利要求16所述的系统,其特征在于,该存储模块是缓冲器、队列、先进先出存储器或管道。
18.如权利要求14所述的系统,其特征在于,该至少一参数包含该系统的至少一运作频率;以及该至少一运作频率包含至少一中央处理单元运作频率与至少一外围装置运作频率。
19.如权利要求14所述的系统,其特征在于,该至少一参数包含该系统的至少一运作频率;以及当该局部忙碌等级达到预定阈值且因此指出需要增加该运作频率,该整体/局部系统效能管理器增加该运作频率。
20.如权利要求19所述的系统,其特征在于,依据该特定单元相较于其它单元的优先级,该整体/局部系统效能管理器决定是否优先考虑该局部忙碌等级。
21.如权利要求1所述的系统,其特征在于,该整体/局部系统效能管理器重新安排该多个单元当中或该多个单元的一个或多个任务以调整该系统的效能。
22.如权利要求1所述的系统,其特征在于,该系统为对称多处理系统、不对称多处理系统或分布式系统。
23.如权利要求1所述的系统,其特征在于,该至少一参数包含该多个单元中的该至少一部分单元的至少一带宽;以及该至少一带宽对应于该多个单元中的该至少一部分单元分别使用该系统中的中央处理单元的时间。
24.一种用来调整系统效能的方法,该方法包含有:
侦测该系统的多个单元中的至少一部分单元的至少一整体/局部忙碌等级,其中该多个单元中的至少一单元包含硬件电路;以及
依据该至少一整体/局部忙碌等级来调整该系统的效能,其中依据该至少一整体/局部忙碌等级来调整该系统的效能的步骤另包含:基于该至少一整体/局部忙碌等级且基于关联于该系统的效能的至少一政策,于需要时调整该系统的至少一参数,以省电及/或确保该系统的运作,其中该至少一参数对应于该系统的效能。
25.如权利要求24所述的方法,其特征在于,该多个单元中的至少一单元包含软件模块。
26.如权利要求24所述的方法,其特征在于,该至少一参数包含该系统的至少一运作频率;以及依据该至少一整体/局部忙碌等级来调整该系统的效能的步骤另包含:
基于该至少一整体/局部忙碌等级且基于该至少一政策,于需要时减少该至少一运作频率以省电;以及
基于该至少一整体/局部忙碌等级且基于该至少一政策,于需要时增加该至少一运作频率以确保该系统的运作。
27.如权利要求26所述的方法,其特征在于,该至少一政策包含多个政策,以及该方法另包含:
依照该多个政策中的至少一部分政策,动态地将该运作频率保持于优化值。
28.如权利要求26所述的方法,其另包含有:
依照该至少一政策中的至少一部分政策,暂时地将该运作频率保持于目标值,其中该目标值是该多个单元中的至少一部分单元各自对该运作频率的各个需求值中的最大值。
29.如权利要求26所述的方法,其另包含有:
依照该至少一政策中的至少一部分政策,暂时地将该运作频率保持于目标值,其中该目标值是该多个单元中的至少一部分单元各自对该运作频率的各个需求值的总和。
30.如权利要求24所述的方法,其另包含有:
依照该至少一政策中的至少一部分政策,在不妨碍该多个单元中的至少一部分单元的运作的状况下,暂时地将该多个单元的功耗最小化。
31.如权利要求24所述的方法,其特征在于,该至少一参数包含该系统的至少一运作频率;以及该方法另包含:
依照该至少一政策中的至少一部分政策,暂时地将该运作频率保持于可达到的最大值。
32.如权利要求24所述的方法,其特征在于,侦测该至少一整体/局部忙碌等级的步骤另包含:
侦测该多个单元中的该至少一部分单元的整体忙碌等级,其中该多个单元中的该至少一部分单元包含中央处理单元。
33.如权利要求32所述的方法,其另包含有:
暂时地在不利用任何局部忙碌等级的状况下运作。
34.如权利要求32所述的方法,其特征在于,该整体忙碌等级对应于该中央处理单元的空闲时间。
35.如权利要求32所述的方法,其特征在于,该整体忙碌等级对应于该多个单元中的该至少一部分单元的至少一空闲时间。
36.如权利要求32所述的方法,其特征在于,侦测该多个单元中的该至少一部分单元的该整体忙碌等级的步骤另包含:
利用该系统中的周期性/非周期性量测装置来侦测或计算该整体忙碌等级。
37.如权利要求24所述的方法,其特征在于,侦测该至少一整体/局部忙碌等级的步骤另包含:
侦测该多个单元中的特定单元的局部忙碌等级。
38.如权利要求37所述的方法,其另包含有:
暂时地在不利用任何整体忙碌等级的状况下运作。
39.如权利要求37所述的方法,其特征在于,该局部忙碌等级对应于该系统中的存储模块中的数据占有程度;以及该存储模块用来暂时地储存该多个单元中的至少一单元当中传送的数据、或暂时地储存传送至/自该至少一单元的数据。
40.如权利要求39所述的方法,其特征在于,该存储模块是缓冲器、队列、先进先出存储器、或管道。
41.如权利要求37所述的方法,其特征在于,该至少一参数包含该系统的至少一运作频率;以及该至少一运作频率包含至少一中央处理单元运作频率与至少一外围装置运作频率。
42.如权利要求37所述的方法,其特征在于,该至少一参数包含该系统的至少一运作频率,以及该方法另包含:
当该局部忙碌等级达到预定阈值且因此指出需要增加该运作频率,增加该运作频率。
43.如权利要求42所述的方法,其另包含有:
依据该特定单元相较于其它单元的优先级,决定是否优先考虑该局部忙碌等级。
44.如权利要求24所述的方法,其另包含有:
重新安排该多个单元当中或该多个单元的一个或多个任务以调整该系统的效能。
45.如权利要求24所述的方法,其特征在于,该系统为对称多处理系统、不对称多处理系统或分布式系统。
46.如权利要求24所述的方法,其特征在于,该至少一参数包含该多个单元中的该至少一部分单元的至少一带宽;以及该至少一带宽对应于该多个单元中的该至少一部分单元分别使用该系统中的中央处理单元的时间。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/855,707 US20120042313A1 (en) | 2010-08-13 | 2010-08-13 | System having tunable performance, and associated method |
US12/855,707 | 2010-08-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102375528A true CN102375528A (zh) | 2012-03-14 |
Family
ID=45565724
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011101969305A Pending CN102375528A (zh) | 2010-08-13 | 2011-07-14 | 具备可调效能的系统、以及用来调整系统效能的方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20120042313A1 (zh) |
CN (1) | CN102375528A (zh) |
TW (1) | TWI432955B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106484527A (zh) * | 2015-08-31 | 2017-03-08 | 三星电子株式会社 | 操作cpu的方法以及操作具有cpu的系统的方法 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI470402B (zh) * | 2012-04-25 | 2015-01-21 | Academia Sinica | 行動裝置cpu工作頻率控制方法 |
TWI477754B (zh) * | 2012-07-30 | 2015-03-21 | Universal Cement Corp | 壓力偵測電路 |
EP3014890B1 (en) * | 2013-06-25 | 2019-06-12 | Samsung Electronics Co., Ltd. | Dynamic voltage/frequency scaling for video processing using embedded complexity metrics |
US9609329B2 (en) | 2013-06-25 | 2017-03-28 | Samsung Electronics Co., Ltd | Dynamic voltage/frequency scaling for video processing using embedded complexity metrics |
US9866846B2 (en) * | 2014-10-14 | 2018-01-09 | Samsung Electronics Co., Ltd. | Method and apparatus for video processing with complexity information |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200305799A (en) * | 2002-04-26 | 2003-11-01 | Hewlett Packard Co | Managing system power |
US6802015B2 (en) * | 2000-12-29 | 2004-10-05 | Hewlett-Packard Development Company, L.P. | Method for accelerating the speed of a CPU using a system command having an operation not associated with changing the speed of the CPU |
CN1802620A (zh) * | 2003-04-09 | 2006-07-12 | 英特尔公司 | 使用多个约束的性能调度 |
US7219245B1 (en) * | 2004-06-03 | 2007-05-15 | Advanced Micro Devices, Inc. | Adaptive CPU clock management |
US20080028249A1 (en) * | 2006-03-31 | 2008-01-31 | Agrawal Parag V | System and method for adaptive frequency scaling |
US20090019449A1 (en) * | 2007-07-10 | 2009-01-15 | Samsung Electronics Co., Ltd. | Load balancing method and apparatus in symmetric multi-processor system |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5218704A (en) * | 1989-10-30 | 1993-06-08 | Texas Instruments | Real-time power conservation for portable computers |
US6158012A (en) * | 1989-10-30 | 2000-12-05 | Texas Instruments Incorporated | Real-time power conservation and thermal management for computers |
US5396635A (en) * | 1990-06-01 | 1995-03-07 | Vadem Corporation | Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system |
US6192479B1 (en) * | 1995-01-19 | 2001-02-20 | Texas Instruments Incorporated | Data processing with progressive, adaptive, CPU-driven power management |
US5719800A (en) * | 1995-06-30 | 1998-02-17 | Intel Corporation | Performance throttling to reduce IC power consumption |
US5745375A (en) * | 1995-09-29 | 1998-04-28 | Intel Corporation | Apparatus and method for controlling power usage |
US7010708B2 (en) * | 2002-05-15 | 2006-03-07 | Broadcom Corporation | Method and apparatus for adaptive CPU power management |
US7539885B2 (en) * | 2000-01-13 | 2009-05-26 | Broadcom Corporation | Method and apparatus for adaptive CPU power management |
KR100361340B1 (ko) * | 2000-05-15 | 2002-12-05 | 엘지전자 주식회사 | 씨피유 클럭 제어 방법 |
US7032119B2 (en) * | 2000-09-27 | 2006-04-18 | Amphus, Inc. | Dynamic power and workload management for multi-server system |
US7058824B2 (en) * | 2001-06-15 | 2006-06-06 | Microsoft Corporation | Method and system for using idle threads to adaptively throttle a computer |
US7171570B2 (en) * | 2001-11-16 | 2007-01-30 | Apple Computer, Inc. | Method and apparatus for selectively increasing the operating speed of an electronic circuit |
US7043649B2 (en) * | 2002-11-20 | 2006-05-09 | Portalplayer, Inc. | System clock power management for chips with multiple processing modules |
US7146514B2 (en) * | 2003-07-23 | 2006-12-05 | Intel Corporation | Determining target operating frequencies for a multiprocessor system |
-
2010
- 2010-08-13 US US12/855,707 patent/US20120042313A1/en not_active Abandoned
-
2011
- 2011-07-11 TW TW100124464A patent/TWI432955B/zh not_active IP Right Cessation
- 2011-07-14 CN CN2011101969305A patent/CN102375528A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6802015B2 (en) * | 2000-12-29 | 2004-10-05 | Hewlett-Packard Development Company, L.P. | Method for accelerating the speed of a CPU using a system command having an operation not associated with changing the speed of the CPU |
TW200305799A (en) * | 2002-04-26 | 2003-11-01 | Hewlett Packard Co | Managing system power |
CN1802620A (zh) * | 2003-04-09 | 2006-07-12 | 英特尔公司 | 使用多个约束的性能调度 |
US7219245B1 (en) * | 2004-06-03 | 2007-05-15 | Advanced Micro Devices, Inc. | Adaptive CPU clock management |
US20080028249A1 (en) * | 2006-03-31 | 2008-01-31 | Agrawal Parag V | System and method for adaptive frequency scaling |
US20090019449A1 (en) * | 2007-07-10 | 2009-01-15 | Samsung Electronics Co., Ltd. | Load balancing method and apparatus in symmetric multi-processor system |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106484527A (zh) * | 2015-08-31 | 2017-03-08 | 三星电子株式会社 | 操作cpu的方法以及操作具有cpu的系统的方法 |
CN106484527B (zh) * | 2015-08-31 | 2022-04-12 | 三星电子株式会社 | 操作cpu的方法以及操作具有cpu的系统的方法 |
Also Published As
Publication number | Publication date |
---|---|
TWI432955B (zh) | 2014-04-01 |
TW201207611A (en) | 2012-02-16 |
US20120042313A1 (en) | 2012-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107851042B (zh) | 使用命令流提示来表征gpu工作负载和电力管理 | |
CN102375528A (zh) | 具备可调效能的系统、以及用来调整系统效能的方法 | |
KR102114453B1 (ko) | 모바일 장치 및 그것의 제어 방법 | |
JP4376897B2 (ja) | プロセッサ電力状態を考慮するメモリコントローラ | |
US8874947B2 (en) | Method and apparatus of power management of processor | |
US9600059B2 (en) | Facilitating power management in a multi-core processor | |
US8624905B2 (en) | Data processing unit with multi-graphic controller and method for processing data using the same | |
US8122269B2 (en) | Regulating power consumption in a multi-core processor by dynamically distributing power and processing requests by a managing core to a configuration of processing cores | |
US8726055B2 (en) | Multi-core power management | |
US7103786B2 (en) | Method of portable computer power management using keyboard controller in detection circuit | |
US8140879B2 (en) | System and method for information handling system power management by variable direct current input | |
US20060248355A1 (en) | Power throttling system and method for a memory controller | |
US9703361B2 (en) | Memory control apparatus, memory control method, information processing apparatus and program | |
WO2016049095A1 (en) | Heterogeneous thread scheduling | |
US20060031695A1 (en) | Information processing apparatus, information processing method, and program | |
JP6161301B2 (ja) | 割り込みスプレッド方法、割り込み要求信号スプレッダ回路、及びそれを備えるシステムオンチップ | |
WO2017052985A1 (en) | Accessory-based power distribution | |
WO2000077599A1 (fr) | Systeme et procede de traitement de l'information; procede et dispositif d'attribution de taches; programme de stockage de supports | |
WO2014105194A1 (en) | Independent control of processor core retention states | |
KR20140111896A (ko) | 애플리케이션 프로세서 및 이의 동작 방법 | |
US10254813B2 (en) | Method of operating semiconductor device | |
US20210055958A1 (en) | Technology For Dynamically Grouping Threads For Energy Efficiency | |
JP2007172322A (ja) | 分散処理型マルチプロセッサシステム、制御方法、マルチプロセッサ割り込み制御装置及びプログラム | |
US7085944B1 (en) | Power management by transmitting single multiplexed signal to multiple system components to change settings of internal performance registers in response to change in power source | |
CN108694154A (zh) | 用于选择数据元素的硬件加速器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120314 |