多核心计算装置的动态睡眠制造方法及图纸

技术编号:10077603 阅读:131 留言:0更新日期:2014-05-24 16:20
方面使得多核心处理器或片上系统能够取决于可接受的系统时延、动态操作条件(例如,温度)、预期闲置时间及特定装置的独特电特性而确定低功率配置,所述低功率配置通过将选定资源置于低功率模式中而提供大部分系统功率节约。以对称方式处理核心/处理单元中的每一者,且每一核心可与其它核心独立地选择其操作状态,而无需执行复杂的信号交换或发信号操作。

【技术实现步骤摘要】
【国外来华专利技术】多核心计算装置的动态睡眠相关申请案本申请案主张2011年9月19日申请的题为“多核心计算装置的动态睡眠(DynamicSleepForMulticoreComputingDevices)”的第61/536,207号美国临时申请案的优先权权益,所述申请案的全部内容特此以引用的方式并入。
技术介绍
在过去的几年内,蜂窝式及无线通信技术已见证了爆炸性发展。已通过较佳通信、硬件、较大网络及更可靠协议刺激了此发展。无线服务提供者现能够向其客户提供不断扩展的一大批特征及服务,且向用户提供对信息、资源及通信的空前存取级别。为了保持与这些服务增强同步,移动电子装置(例如,蜂窝式电话、平板计算机、膝上型计算机等)变得比以前更强大和复杂。举例来说,移动电子装置现通常包含嵌入于单个衬底上的片上系统(SoC)及/或多个微处理器核心,从而允许移动装置用户在其移动装置上执行复杂且耗电量大的软件应用程序。结果,移动装置的电池寿命及功率消耗特性变为对于移动装置的消费者而言比以往更重要的考虑事项。
技术实现思路
各种方面包含节省多核心计算装置中的功率的方法,所述多核心计算装置可包含用于管理由两个以上执行环境共享的资源的资源功率管理器(RPM)处理器,所述方法包含:在存储器中为由所述多核心计算装置的一个以上核心共享的每一低功率资源维持参考计数;通过存取运行线程的核心与运行闲置线程的核心之间共享的变量确定哪些核心在睡眠,其中所述共享的变量由每一核心在执行闲置线程的进入功能之后递增且由每一核心在执行所述闲置线程的离开功能之后递减;基于所述低功率资源的与所述存储器位置相关联的每一核心的功率状态及每一核心的使用量独立地调整存储于存储器中的值;及使用所述存储器位置处的所述参考计数值来确定何时进入系统低功率配置。方面方法可进一步包含:基于旗标位设定识别可被置于低功率模式中的资源;在每个核心或全局的基础上登记时延要求;从所述登记的时延要求中选择最严格的时延要求;对可被置于低功率模式中的每一资源的计算装置低功率模式进行评估,以基于存在于所述核心上的时延限制消除具有超过所述选定最严格时延容限的组合时延要求的任何低功率资源模式或低功率资源模式的任何组合;选择低功率资源模式的组合,所述组合最大化潜在功率节约且具有小于或等于所述当前核心上的选定最坏状况下的时延要求的总时延要求;及通过对所述所识别资源中的每一者执行所述选定低功率模式中的每一者的进入功能而进入低功率资源模式的所述选定组合。在一方面中,通过对所述所识别资源中的每一者执行所述选定低功率模式中的每一者的进入功能而进入低功率资源模式的所述选定组合可包含在对于共享模式参考计数值等于零时执行所述进入功能。在一方面中,所述方法可进一步包含基于当前温度下每单位时间的潜在功率节约乘以所述当前核心上所预期的闲置时间的预期闲置时间确定每一评估的低功率资源模式的潜在功率节约。在一方面中,所述多核心计算装置的每一核心可在不同于所述多核心计算装置中的其它核心中的一者或一者以上的操作系统的操作系统下操作。在一方面中,所述多核心计算装置的至少一个核心共享将所述核心绑定到至少一个其它核心的操作的至少一个资源,且每一核心经配置以与所述其它核心中的每一者独立地进入及离开低功率模式。在一方面中,所述多核心计算装置可包含用于管理由两个或两个以上执行环境共享的资源的资源功率管理器(RPM)处理器。在一方面中,所述方法可包含通过存取运行线程的核心与运行闲置线程的核心之间共享的变量确定哪些核心在睡眠,其中所述共享变量由每一核心在执行闲置线程的进入功能之后递增且由每一核心在执行所述闲置线程的离开功能之后递减。在一方面中,所述方法进一步可包含使用自旋锁以防止一个核心开始RPM事务而另一核心发送另一RPM事务。在一方面中,使用自旋锁以防止一个核心开始RPM事务而另一核心正发送RPM事务可包含在RPM开始操作期间及在RPM停止操作期间持有所述自旋锁。在一方面中,所述多核心计算装置中的每一核心可写入到睡眠集的不相交部分,且使用自旋锁以防止一个核心开始RPM事务而另一核心正发送RPM事务可包含在将资源加入到所述睡眠集时释放所述自旋锁。在一方面中,所述方法可包含:标记资源为自动失效;及在所述RPM处理器中使与所述标记的资源相关联的睡眠集失效。在一方面中,所述方法可包含使先前事务失效以使得来自所述先前事务的资源不会不合需要地进入其睡眠集。在一方面中,所述多核心计算装置中的每一核心可具有子系统功率管理(SPM)硬件块,所述子系统功率管理(SPM)硬件块控制所述核心的所述功率状态且在所述核心进入其低功率模式时与所述RPM处理器进行信号交换,且所述方法可进一步包含:在RPM睡眠驱动程序中检测当前正持有自旋锁;忽略所述事务且不响应于检测到当前正持有所述自旋锁而发送睡眠集事务;及尽管每一核心的所述SPM硬件块执行与所述RPM的信号交换,仍不将所述睡眠集应用于所述RPM处理器上。在一方面中,所述方法可包含:在RPM驱动程序中接收在作用中上下文中的自旋锁;进入所述多核心计算装置的第一核心的睡眠模式;起始所述多核心计算装置的第零核心上的闲置过程同时等待RPM确认中断;解算所述第零核心上的睡眠模式及选择进入所述第零核心的全局低功率模式;进入所述第零核心上的所述全局低功率模式;接收所述第零核心上的所述RPM确认中断;及释放所述自旋锁。在一方面中,所述方法可包含:起始第零核心上的RPM消息的发送;在RPM驱动程序中接收操作系统锁;进入所述多核心计算装置的第一核心上的睡眠模式及建立RPM事务;起始所述第一核心上的睡眠集的发送;在所述RPM驱动程序上从所述第一核心接收睡眠集事务请求及进行检查以确定是否持有所述操作系统锁;及在确定持有所述操作系统锁的情况下忽略睡眠集事务请求及将中断信号发送到所述第一核心。其它方面包含一种计算装置,其可包含:存储器;及一个或一个以上处理器,其耦合到所述存储器,其中所述一个或一个以上处理器经配置有处理器可执行指令,因此所述计算装置执行包括以下各者的操作:在存储器中为由所述多核心计算装置的一个以上核心共享的每一低功率资源维持参考计数;基于所述低功率资源的与所述存储器位置相关联的每一核心的功率状态及每一核心的使用量独立地调整存储于存储器中的值;及使用所述存储器位置处的所述值来确定何时进入系统低功率配置。在一方面中,所述一个或一个以上处理器经配置有处理器可执行指令,因此所述计算装置执行操作可进一步包含:基于旗标位设定识别可被置于低功率模式中的资源;在每个核心或全局的基础上登记时延要求;从所述登记的时延要求中选择最严格的时延要求;对可被置于低功率模式中的每一资源的计算装置低功率模式进行评估,以基于存在于所述核心上的时延限制消除具有超过所述选定最严格时延容限的组合时延要求的任何低功率资源模式或低功率资源模式的任何组合;选择低功率资源模式的组合,所述组合最大化潜在功率节约且具有小于或等于所述当前核心上的选定最坏状况下的时延要求的总时延要求;及通过对所述所识别资源中的每一者执行所述选定低功率模式中的每一者的进入功能而进入低功率资源模式的所述选定组合。在一方面中,所述一个或一个以上处理器可经配置有处理器可执行指令,因此所述计算装置执行操作以使得通过对所述所识别资源中的每本文档来自技高网...
多核心计算装置的动态睡眠

【技术保护点】
一种用于节省多核心计算装置中的功率的方法,所述方法包括:在存储器中为由所述多核心计算装置的一个以上核心共享的每一低功率资源维持参考计数;基于所述低功率资源的与所述存储器位置相关联的每一核心的功率状态及每一核心的使用量独立地调整存储于存储器中的值;及使用所述存储器位置处的所述值来确定何时进入系统低功率配置。

【技术特征摘要】
【国外来华专利技术】2011.09.19 US 61/536,207;2011.12.06 US 13/312,6781.一种用于节省多核心计算装置中的功率的方法,所述多核心计算装置可包含用于管理由两个以上执行环境共享的资源的资源功率管理器(RPM)处理器,所述方法包括:在存储器中为由所述多核心计算装置的一个以上核心共享的每一低功率资源维持参考计数值;通过存取运行线程的核心与运行闲置线程的核心之间共享的变量确定哪些核心在睡眠,其中所述共享的变量由每一核心在执行闲置线程的进入功能之后递增且由每一核心在执行所述闲置线程的离开功能之后递减;基于所述低功率资源的与存储器位置相关联的每一核心的功率状态及每一核心的使用量独立地调整存储于存储器中的值;及使用所述存储器位置处的所述参考计数值来确定何时进入系统低功率配置。2.根据权利要求1所述的方法,其中所述多核心计算装置的每一核心在不同于所述多核心计算装置中的其它核心中的一者或一者以上的操作系统的操作系统下操作。3.根据权利要求1所述的方法,其中所述多核心计算装置的至少一个核心共享将所述核心绑定到至少一个其它核心的操作的至少一个资源,且每一核心经配置以与所述其它核心中的每一者独立地进入及离开低功率模式。4.根据权利要求1所述的方法,其进一步包括:基于旗标位设定识别可被置于低功率模式中的资源;在每个核心或全局的基础上登记时延要求;从所述登记的时延要求中选择最严格的时延要求;对可被置于低功率模式中的每一资源的计算装置低功率模式进行评估,以基于存在于所述核心上的时延限制消除具有超过选择的最严格时延容限的组合时延要求的任何低功率资源模式或低功率资源模式的任何组合;选择低功率资源模式的组合,所述组合最大化潜在功率节约且具有小于或等于当前核心上的选定最坏状况下时延要求的总时延要求;及通过对所识别资源中的每一者执行选定低功率模式中的每一者的进入功能而进入低功率资源模式的选择的组合。5.根据权利要求4所述的方法,其中通过对所述所识别资源中的每一者执行所述选定低功率模式中的每一者的进入功能而进入低功率资源模式的所述选择的组合包括在对于共享模式参考计数值等于零时执行所述进入功能。6.根据权利要求4所述的方法,其进一步包括:基于当前温度下每单位时间的潜在功率节约乘以所述当前核心上所预期的闲置时间的预期闲置时间确定每一评估的低功率资源模式的潜在功率节约。7.根据权利要求1所述的方法,其中所述多核心计算装置包含用于管理由两个或两个以上执行环境共享的资源的资源功率管理器RPM处理器。8.根据权利要求7所述的方法,其进一步包括:通过存取运行线程的核心与运行闲置线程的核心之间共享的变量确定哪些核心在睡眠,其中所述共享变量由每一核心在执行闲置线程的进入功能之后递增且由每一核心在执行所述闲置线程的离开功能之后递减。9.根据权利要求7所述的方法,其进一步包括:标记资源为自动失效;及在所述RPM处理器中使与所述标记的资源相关联的睡眠集失效。10.根据权利要求7所述的方法,其进一步包括:使先前事务失效以使得来自所述先前事务的资源不会不合需要地进入其睡眠集。11.根据权利要求7所述的方法,其中所述多核心计算装置中的每一核心具有子系统功率管理SPM硬件块,所述子系统功率管理SPM硬件块控制所述核心的所述功率状态且在所述核心进入其低功率模式时与所述RPM处理器进行信号交换,所述方法进一步包括:在RPM睡眠驱动程序中检测当前正持有自旋锁;忽略事务且不响应于检测到当前正持有所述自旋锁而发送睡眠集事务;及尽管每一核心的所述SPM硬件块执行与所述RPM的信号交换,仍不将所述睡眠集应用于所述RPM处理器上。12.根据权利要求7所述的方法,其进一步包括:在RPM驱动程序中接收在作用中上下文中的自旋锁;进入所述多核心计算装置的第一核心的睡眠模式;起始所述多核心计算装置的第零核心上的闲置过程同时等待RPM确认中断;解算所述第零核心上的睡眠模式及选择进入所述第零核心的全局低功率模式;进入所述第零核心上的所述全局低功率模式;接收所述第零核心上的所述RPM确认中断;及释放所述自旋锁。13.根据权利要求7所述的方法,其进一步包括:起始第零核心上的RPM消息的发送;在RPM驱动程序中接收操作系统锁;进入所述多核心计算装置的第一核心上的睡眠模式及建立RPM事务;起始所述第一核心上的睡眠集的发送;在所述RPM驱动程序上从所述第一核心接收睡眠集事务请求及进行检查以确定是否持有所述操作系统锁;及在确定持有所述操作系统锁的情况下忽略睡眠集事务请求及将中断信号发送到所述第一核心。14.根据权利要求7所述的方法,其进一步包括使用自旋锁以防止一个核心开始RPM事务而另一核心发送另一RPM事务。15.根据权利要求14所述的方法,其中使用自旋锁以防止一个核心开始RPM事务而另一核心正发送RPM事务包括在RPM开始操作期间及在RPM停止操作期间持有所述自旋锁。16.根据权利要求14所述的方法,其中所述多核心计算装置中的每一核心写入到睡眠集的不相交部分,且其中使用自旋锁以防止一个核心开始RPM事务而另一核心正发送RPM事务包括在将资源加入到所述睡眠集时释放所述自旋锁。17.一种多核心计算装置,其包括:用于通过资源功率管理器(RPM)处理器在所述多核心计算装置管理由两个以上执行环境共享的资源的装置;用于在存储器中为由所述多核心计算装置的一个以上核心共享的每一低功率资源模式维持参考计数值的装置;用于通过存取运行线程的核心与...

【专利技术属性】
技术研发人员:特雷西·A·厄尔默安德鲁·J·弗朗茨诺曼·S·加尔加石迈克尔·埃布尔
申请(专利权)人:高通股份有限公司
类型:
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1