CN115657839A - 一种处理器低功耗控制方法、系统、设备及存储介质 - Google Patents
一种处理器低功耗控制方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN115657839A CN115657839A CN202211318780.5A CN202211318780A CN115657839A CN 115657839 A CN115657839 A CN 115657839A CN 202211318780 A CN202211318780 A CN 202211318780A CN 115657839 A CN115657839 A CN 115657839A
- Authority
- CN
- China
- Prior art keywords
- memory
- processor
- expansion node
- data
- node
- 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
-
- 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
- Power Sources (AREA)
Abstract
本发明属于计算机芯片领域,具体涉及一种处理器低功耗控制方法、系统、设备及可读存储介质。其中方法包括:基于内存中对应的内存数据在执行时与扩展节点的工作状态的关联关系构建映射关系或模型;根据所述映射关系或模型以及处理器读取的内存数据确定所述扩展节点的工作状态。通过本发明提出的一种处理器低功耗控制方法,基于处理器加载的内存数据对扩展节点的工作状态的影响,在处理器读取能够影响扩展节点的内存数据时,若对应的扩展节点处于关闭状态,则将对应的扩展节点开启。可以实现以时钟周期为粒度的功耗控制方案。
Description
技术领域
本发明属于计算机芯片领域,具体涉及一种处理器低功耗控制方法、系统、设备及可读存储介质。
背景技术
随着半导体工艺的不断进步,单位面积上包含的晶体管越来越多,计算性能也越来越强大,随之带来的问题就是芯片的功耗也越来越高,同时带来了对电力资源的更高质量需求,这会增加额外的资金投入。因此,降低芯片功耗成了芯片业界的热点方向之一。
然而在传统的实现方式上,通常采用电源门控技术,电源门控是指芯片中某个区域的供电电源被关掉,即该区域内的逻辑电路的供电电源断开。如果某一模块在一段时间内不工作,可以关掉它的供电电源。断电后,设计进入睡眠模式,其漏电功率很小。唤醒时,为了使模块尽快恢复工作模式,需要保持关电前的状态。保持寄存器可用于记忆状态。也即通过电源门控来控制芯片中对应模块的功能是一种较为合适的功耗控制方法。
电源门控技术需要增加保持寄存器,增大芯片面积,虽然保持寄存器功耗比普通寄存器低,但依然有一定功耗。电源控制需要软件控制软件,在使用过程中,需提前多个时钟进行开关操作,会影响系统的响应速度。电源控制需要提前针对具体的应用场景编写控制软件,通用性较差,无法做到通用型的适配。
因此,亟需一种有效的解决方案以解决上述问题。
发明内容
为解决上述问题,本发明提出一种处理器低功耗控制方法,包括:
基于内存中对应的内存数据在执行时与扩展节点的工作状态的关联关系构建映射关系或模型;
根据所述映射关系或模型以及处理器读取的内存数据确定所述扩展节点的工作状态。
在本发明的一些实施方式中,基于内存中对应的内存数据在执行时与扩展节点的工作状态的关联关系构建映射关系或模型包括:
监控处理器发出的内存读请求,并记录所述内存读请求所对应的内存数据在内存中的内存地址;
监控处理器与扩展节点的总线通信数据,并根据所述总线通信判断所述读请求对应的内存数据在加载到处理器后所述处理器是否向扩展节点发出的访问请求;
响应于所述处理器向对应的扩展节点发出访问请求,将所述内存地址与所述扩展节点建立映射关系或模型。
在本发明的一些实施方式中,根据所述映射关系或模型以及处理器读取的内存数据确定所述扩展节点的工作状态包括:
实时监控处理器发出的内存读请求,并判断所述读请求对应的内存地址在所述映射关系或模型中是否存在对应的扩展节点;
响应于所述映射关系或模型中存在所述内存地址对应的扩展节点,判断所述扩展节点的工作状态,响应于所述扩展节点的工作状态为关闭,开启所述扩展节点。
在本发明的一些实施方式中,方法还包括:
响应于对应的扩展节点的状态为关闭,且所述处理器在所述扩展节点相连的总线上发出对应的访存请求,则通过所述总线代理所述扩展节点向所述处理器发送状态为忙碌的工作状态。
在本发明的一些实施方式中,基于内存中对应的内存数据在执行时与扩展节点的工作状态的关联关系构建映射关系或模型还包括:
收集处理器发出的内存读请求,以及所述内存读请求对应的内存数据在处理器中执行时处理器发出的总线通信,并确认所述总线通信所对应的扩展节点,将所述内存数据的地址和扩展节点作为训练数据训练第一神经网络模型。
在本发明的一些实施方式中,方法还包括:
响应于处理器发出内存读请求,通过所述第一神经网络分析所述内存读请求对应的内存地址上的内存数据在处理器中执行时是否会访存对应的扩展节点;以及
响应于所述内存地址所对应的内存数据在处理器中执行时访存对应的扩展节点,且所述扩展节点处于关闭状态,则将所述扩展节点开启。
在本发明的一些实施方式中,方法还包括:
获取处理器缓存中所有缓存的内存数据的内存地址,并基于缓存的内存数据的内存地址以及在缓存所内存数据时处理器发出的访存扩展节点的总线通信请求作为训练数据训练第二神经网络模型;
实时获取处理器缓存中的内存数据对应的内存地址,并将内存地址输入到所述第二神经网络模型,通过所述第二神经网络模型确认是否关闭对应的扩展节点。
本发明的另一方面还提出一种处理器低功耗控制系统,包括:
数据处理模块,所述数据处理模块配置用于基于内存中对应的内存数据在执行时与扩展节点的工作状态的关联关系构建映射关系或模型;
状态仲裁模块,所述状态仲裁模块配置用于根据所述映射关系或模型以及处理器读取的内存数据确定所述扩展节点的工作状态。
本发明的又一方面还提出一种计算机设备,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现上述实施方式中任意一项所述方法的步骤。
本发明的再一方面还提出一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述实施方式中任意一项所述方法的步骤。
通过本发明提出的一种处理器低功耗控制方法,基于处理器加载的内存数据对扩展节点的工作状态的影响,在处理器读取能够影响扩展节点的内存数据时,若对应的扩展节点处于关闭状态,则将对应的扩展节点开启。可以实现以时钟周期为粒度的功耗控制方案。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种处理器低功耗控制方法的方法流程图;
图2为本发明实施例提供的一种处理器低功耗控制系统的系统结构示意图;
图3为本发明实施例提供的一种计算机设备的结构示意图;
图4为本发明实施例提供的一种计算机可读存储介质的结构示意图。
图5为本发明实施例提供的一种处理器低功耗控制方法的实施原理示意图;
图6为本发明实施例提供的一种处理器低功耗控制方法的部分实施原理示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
本发明旨在解决芯片的低功耗控制方案中控制效率低下的问题。随着半导体技术的发展,芯片的计算能力、数据处理能力得到大力提升,同时越来越多的功能被整合到芯片中,即便存在工艺与架构的提升但仍然导致芯片的功耗越来越高、发热越来越严重。因此,出现很多的功耗控制方案,例如在桌面平台上以intel及AMD主流的CPU的降频、“降压超频”等技术,或者是操作系统的电源管理方案,在一定程度上都会降低CPU的功耗但往往带来的是频率降低、性能损失。再如采用芯片电源门控技术的功耗控制,由于需要添加一些保持寄存器导致芯片面积增大,功耗降低有限。同时需要由适配的软件进行控制,又因软件层面的控制受制于软件执行的影响同样会带来性能降低,并且还要根据不同的应用场景修改软件的控制逻辑,不具有普适性。
如图1所示,为解决上述问题,本发明提出一种处理器低功耗控制方法,包括:
步骤S1、基于内存中对应的内存数据在执行时与扩展节点的工作状态的关联关系构建映射关系或模型;
步骤S2、根据所述映射关系或模型以及处理器读取的内存数据确定所述扩展节点的工作状态。
在本发明的实施例中,扩展节点是指处理器中除核心的计算单元外用于与其他外设或计算机上其他设备相连的功能模块,例如以常见的x86平台的处理器为例,处理器需要提供多种数据连接方式,即提供多种类型的总线,例如PCIE、I2C、UART等诸多总线均有处理器内部对应的电路模块实现对应的功能。在本实施例中将CPU的核心之外的对处理器的计算能力无影响的模块或者是其运行状态受制于处理器调度的模块称作扩展节点。工作状态是指扩展节点是否被处理器调用。
具体的,在步骤S1中,通过监控内存中对应的内存数据在加载到处理器之后,处理器执行时是否产生访问(包括向扩展节点发送数据和从扩展节点获取数据)对应扩展节点的总线请求。如果内存中的数据在加载到处理器并执行后,处理器向某扩展节点发出读取数据的访问请求,则认为该内存数据会对该扩展节点工作状态产生影响。进一步将对扩展节点的工作状态产生影响的内存属于与扩展节点建立对应的映射关系,或者是人工智能模型。建立的映射关系可以是多对多,即对某个扩展节点的工作状态产生影响的内存数据可能存在多个。也可能存在一个内存数据影响多个扩展节点的工作状态。
在步骤S2中,根据步骤S1中建立的映射关系或模型,实时监控处理器发出的从内存中读取数据的请求,再根据映射关系或模型进行判断,如果处理器所要读取的内存数据在加载到处理器执行时会向某个扩展节点发起数据访问请求。则对应的扩展节点应该处于工作状态,如果该扩展节点处于正常的开启并待机状态,则对扩展节点不作处理。如果该扩展节点处于关闭状态,则对该扩展节点进行上电并初始化启动。
在本发明的一些实施例中,根据映射关系或模型对处理器发出的内存读请求的判断结果,在根据结果对扩展节点进行控制时可以选择现有的门控技术对扩展节点进行控制,通过门控技术可以快速启动扩展节点。无需通过软件以在处理器执行时触发。
同样,可以对扩展节点采用上电和下电的启动和关闭方式进行控制,具体需根据不同的扩展节点的初始化时间和处理器从内存或缓存中读取时间而定,如果某个扩展模块的初始化时间超过处理器从内存中取数据的时间,则不采用上电和下电的方式对该扩展节点的工作状态进行控制。
在本发明的一些实施方式中,基于内存中对应的内存数据在执行时与扩展节点的工作状态的关联关系构建映射关系或模型包括:
监控处理器发出的内存读请求,并记录所述内存读请求所对应的内存数据在内存中的内存地址;
监控处理器与扩展节点的总线通信数据,并根据所述总线通信判断所述读请求对应的内存数据在加载到处理器后所述处理器是否向扩展节点发出的访问请求;
响应于所述处理器向对应的扩展节点发出访问请求,将所述内存地址与所述扩展节点建立映射关系或模型。
在本实施例中,参考图5,图5示出了本发明实施例的实施示意图,通过实现的硬件电路即图中的数据处理模块,将其挂载到内存总线上用以实时监控处理器通过内存控制器发出的内存读请求,同时将数据处理模块再与多个扩展节点与处理器连接的总线相连,并监控处理器是否发出访问对应扩展节点的总线请求。
进一步,对于监控到的内存读请求,截取内存读请求中的地址信息中除低6位之外的全部信息,即内存读请求所请求的内存数据在内存中的地址用内存数据的地址代替内存数据。在通过内存控制器将内存数据加载到内存之后,则监控各个扩展节点与处理器的总线通信,如果存在处理器向某个或多个扩展节点发起访问请求,则认为该内存数据的执行会调用某个扩展节点或多个扩展节点。则将该内存地址和一个或多个扩展节点建立映射关系保存。
在本发明的一些实施例中,可采用训练对应人工智能模型的方式对内存地址和扩展节点的状态建立预测模型。
在本发明的一些实施方式中,根据所述映射关系或模型以及处理器读取的内存数据确定所述扩展节点的工作状态包括:
实时监控处理器发出的内存读请求,并判断所述读请求对应的内存地址在所述映射关系或模型中是否存在对应的扩展节点;
响应于所述映射关系或模型中存在所述内存地址对应的扩展节点,判断所述扩展节点的工作状态,响应于所述扩展节点的工作状态为关闭,开启所述扩展节点。
在本实施例中,如图5所示,在映射关系或模型已经建立之后,仍然通过数据处理模块监控内存控制器发出的内存读请求,并截取内存读请求的内存地址,进一步通过状态仲裁模块的中的映射关系或模型查询该内存地址是否存在对应的扩展节点,如果存在对应的扩展节点,则判断该扩展节点是否处于关闭状态,如果处于关闭状态,则将该扩展节点开启。
在本发明的一些实施方式中,方法还包括:
响应于对应的扩展节点的状态为关闭,且所述处理器在所述扩展节点相连的总线上发出对应的访存请求,则通过所述总线代理所述扩展节点向所述处理器发送状态为忙碌的工作状态。
在本实施例中,本发明上述实施例建立的映射关系或模型是基于计算机开机后在处理器中执行的内存数据与对应的扩展节点的状态的关系建立,因此,在计算机运行中可能存在某些内存数据第一次加载到处理器且该内存数据的地址未被映射关系或模型识别,导致在对应的扩展节点状态为关闭,但处理器在于该扩展节点连接的总线上发出对应的总线请求,以通过该扩展节点与对应的外接设备通信。此时,由于扩展节点处于关闭状态,无法响应处理器的请求,则通过数据处理模块代替对应的扩展节点向处理器发送忙碌状态的响应,即返回一个busy状态码。
在本发明的一些实施方式中,基于内存中对应的内存数据在执行时与扩展节点的工作状态的关联关系构建映射关系或模型还包括:
收集处理器发出的内存读请求,以及所述内存读请求对应的内存数据在处理器中执行时处理器发出的总线通信,并确认所述总线通信所对应的扩展节点,将所述内存数据的地址和扩展节点作为训练数据训练第一神经网络模型。
在本实施例中,参考图5在状态仲裁模块中建立简易的神经网络模型,并将内存地址作为特征与多个扩展节点的工作状态作为结果进行训练对应的第一神经网络模型。第一神经网络模型的算法可采用多分类预测算法,例如SVM等算法,将扩展节点作为分类结果,将内存地址作为输入数据进行训练。
在本发明的一些实施方式中,方法还包括:
响应于处理器发出内存读请求,通过所述第一神经网络分析所述内存读请求对应的内存地址上的内存数据在处理器中执行时是否会访存对应的扩展节点;以及
响应于所述内存地址所对应的内存数据在处理器中执行时访存对应的扩展节点,且所述扩展节点处于关闭状态,则将所述扩展节点开启。
在本实施例中,根据训练好的分类模型对处理器发出的内存读请求中的地址进行分类,如果该地址存在对应的分类结果,即该地址对应的内存数据在加到处理器执行后会调用对应的扩展节点,则判断对应的扩展节点的状态,如果是关闭状态则将其开启。
在本发明的一些实施方式中,方法还包括:
获取处理器缓存中所有缓存的内存数据的内存地址,并基于缓存的内存数据的内存地址以及在缓存所内存数据时处理器发出的访存扩展节点的总线通信请求作为训练数据训练第二神经网络模型;
实时获取处理器缓存中的内存数据对应的内存地址,并将内存地址输入到所述第二神经网络模型,通过所述第二神经网络模型确认是否关闭对应的扩展节点。
在本实施例中,参考图6,在状态仲裁模块中建立用于保存处理器缓存中所有内存数据的地址缓存模块,通过地址缓存模块将处理器缓存中的所有缓存对应的地址进行截取除低6位之外的内存地址保存到地址缓存模块。
处理器缓存(cache)是指一组称之为缓存行(cache line)的固定大小的数据块,现代计算机缓存行大小基本都是64byte。当从内存中取单元到cache中时,会一次取一个cache line大小的内存区域到cache中,然后存进相应的cacheline中。只需要保存对应64字节内存数据的的起始地址即可,起始地址低六位都是0,所以,保留低六位之上的地址以达到节省空间的目的。
进一步,根据上述实施例中的映射关系或模型以及缓存的内存数据的地址,确定处理器缓存中缓存的内存数据哪些在加载到内存之后会影响对应的扩展节点的运行状态,将缓存中所有的内存数据所影响的扩展节点作为结果,且将缓存中所有的内存数据的地址作为特征,基于小脑神经网络算法训练分类模型,即将缓存中的内存数据的多个内存地址和多个内存地址所能影响的扩展节点作为特征数据训练对应的神经网络模型。
具体地,读取处理器缓存中对应的内存数据的地址,然后通过映射关系或第一神经网络模型,对内存数据地址所影响的扩展节点进行标记,然后基于内存数据的地址和对应的扩展节点组成的特征数据进行训练小脑神经网络模型。在本实施例中,以内存中每64字节的地址空间的内存地址为一个特征构建特征与内存地址的映射关系,假设内存为1GB,其对应特征维度为1024*16=16384个特征,如果内存数据的地址(64字节的内存空间的起始地址)为0x0000000,即内存空间的第一个起始地址,如果该内存地址对应的数据处于缓存中,则将第一个特征维度的特征置为1。如图6所示,特征a1的值为1,进一步如果该内存地址的数据在加载到处理器运行后会调用扩展节点0会被调用,且此时假设缓存中只有该内存数据,则此时的特征记录的数据应为(1,0,0,0...;1,0,0)第一个1表示该存储数据在内存中的地址为第一个,后续其他内存地址的数据未被加载到缓存中,第二个1表示缓存中的数据加载到处理器时会调用扩展节点0,不会调用其他扩展节点。通过上述方式将每一次缓存更新时缓存中的内存数据的地址,以及内存数据所影响的扩展节点作为特征数据,参照图6的方式动态训练小脑神经网络模型。
进一步在训练好的小脑神经网络模型(收敛到合适的范围)后,监控处理器缓存中的数据更新,将处理器缓存中更新的内存数据的地址同步更新到地址缓存模块(只保存内存地址),同时将地址缓存模块中内存地址转换成对应的特征数据输入到训练好的小脑神经网络模块,根据小脑神经网络模型的输出结果确定是否关闭对应的扩展节点,即当处理器缓存中不存在对应的内存数据可以将对应的扩展节点关闭。
在本发明的一些实施例中,地址缓存可以只保存对应的内存数据在内存中的分块序号,基于此来降低地址缓存的数据大小。即以0x0000000为例,0x0000000表示第一个64字节的内存空间,则保存时只需保存序号为0,0x0000001保存为序号为1,0x0000003保存为3,可省去大量存储空间,在输入到神经网络模型时,如果地址缓存中保存有1、2、3则将特征维度的第一个特征、第二个特征、第三个特征的值置为1即可。
在本发明的一些实施例中,由于内存地址空间是根据Cache line分块表示,因此在构建内存地址与扩展节点的映射关系时可采用内存数据的启示地址所在的分块序号进行表示其内存地址,即当序号为0时,表示0x0000000开始的64字节的内存空间,序号1表示从内存地址为0x0000001开始的64字节大小的内存空间。因此,在本实施例中内存数据与扩展节点的映射关系可简化为数据占用更小的数据空间,以{0:0}为例,可以表示内存地址为0x0000000的内存数据在加载到处理器后会调用扩展节点0。
再者,由于能够驱使处理器调用触发扩展节点和外部设备进行访问的内存数据大多都是驱动程序,在计算机开机后会由操作系统将指定的驱动程序加载到内存中的固定位置(有些设备的驱动程序安装后必须重启才能生效就是因为驱动程序在加载到内存中时,会因为和现有的设备的驱动程序的内存地址空间冲突,而不能重新加载对应的设备的驱动程序到其他地址空间),因此具备调用扩展节点的内存数据是有限的,所以计算机上用户安装的程序访问网络、磁盘等设备都是有操作系统的API实现。
进一步,内存地址与特征数的映射关系可以进一步压缩,例如上述实施例中是每64字节的内存空间对应一个维度,1GB的内存空间对应1024*16=16384,则可以选择以128字节为作为空间。则对应的特征维度降至8192个。
需要说明的是,本发明所提出的处理器低功耗控制系统是由硬件实现的功能逻辑,通过监控处理器的内存控制器发出的内存读请求,然后根据内存读取请求中所访问的内存数据在处理器中执行是对扩展节点的行为进行学习即建立映射关系或模型,将能够影响对应扩展节点的内存数据的地址进行保存,并在检测到内存控制器再次发出对应的内存数据的读请求时,通过内存地址并基于映射关系或模型对内存数据的行为进行判断,如果该内存数据在执行时会调用对应的扩展节点,则在该扩展节点关闭的情况下及时开启该扩展节点。
另外,在实施时需要考虑处理器发起内存读请求→内存响应读请求并向处理器反回对应内存数据→处理器→向扩展节点发出访存请求的时间内,能否开启对应的扩展节点,对于无法开启的可以选择不关闭或者向处理器反馈busy状态。
通过本发明提出的一种处理器低功耗控制方法,基于处理器加载的内存数据对扩展节点的工作状态的影响,在处理器读取能够影响扩展节点的内存数据时,若对应的扩展节点处于关闭状态,则将对应的扩展节点开启。可以实现以时钟周期为粒度的功耗控制方案。无需受制于软件控制的滞后影响,在有限的时钟周期内即可实现对扩展节点功能的开启与关闭,实现更高效的处理器功耗控制。如图2所示,本发明的另一方面还提出一种处理器低功耗控制系统,包括:
数据处理模块1,所述数据处理模块1配置用于基于内存中对应的内存数据在执行时与扩展节点的工作状态的关联关系构建映射关系或模型;
状态仲裁模块2,所述状态仲裁模块2配置用于根据所述映射关系或模型以及处理器读取的内存数据确定所述扩展节点的工作状态。
如图3所示,本发明的又一方面还提出一种计算机设备,包括:
至少一个处理器21;以及
存储器22,所述存储器22存储有可在所述处理器21上运行的计算机指令23,所述指令23由所述处理器21执行时实现上述实施方式中任意一项所述方法的步骤。
如图4所示,本发明的再一方面还提出一种计算机可读存储介质401,所述计算机可读存储介质401存储有计算机程序402,所述计算机程序402被处理器执行时实现上述实施方式中任意一项所述方法的步骤。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上所述的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (10)
1.一种处理器低功耗控制方法,其特征在于,包括:
基于内存中对应的内存数据在执行时与扩展节点的工作状态的关联关系构建映射关系或模型;
根据所述映射关系或模型以及处理器读取的内存数据确定所述扩展节点的工作状态。
2.根据权利要求1所述的方法,其特征在于,所述基于内存中对应的内存数据在执行时与扩展节点的工作状态的关联关系构建映射关系或模型包括:
监控处理器发出的内存读请求,并记录所述内存读请求所对应的内存数据在内存中的内存地址;
监控处理器与扩展节点的总线通信数据,并根据所述总线通信判断所述读请求对应的内存数据在加载到处理器后所述处理器是否向扩展节点发出的访问请求;
响应于所述处理器向对应的扩展节点发出访问请求,将所述内存地址与所述扩展节点建立映射关系或模型。
3.根据权利要求2所述的方法,其特征在于,所述根据所述映射关系或模型以及处理器读取的内存数据确定所述扩展节点的工作状态包括:
实时监控处理器发出的内存读请求,并判断所述读请求对应的内存地址在所述映射关系或模型中是否存在对应的扩展节点;
响应于所述映射关系或模型中存在所述内存地址对应的扩展节点,判断所述扩展节点的工作状态,响应于所述扩展节点的工作状态为关闭,开启所述扩展节点。
4.根据权利要求3所述的方法,其特征在于,还包括:
响应于对应的扩展节点的状态为关闭,且所述处理器在所述扩展节点相连的总线上发出对应的访存请求,则通过所述总线代理所述扩展节点向所述处理器发送状态为忙碌的工作状态。
5.根据权利要求1所述的方法,其特征在于,所述基于内存中对应的内存数据在执行时与扩展节点的工作状态的关联关系构建映射关系或模型还包括:
收集处理器发出的内存读请求,以及所述内存读请求对应的内存数据在处理器中执行时处理器发出的总线通信,并确认所述总线通信所对应的扩展节点,将所述内存数据的地址和扩展节点作为训练数据训练第一神经网络模型。
6.根据权利要求5所述的方法,其特征在于,还包括:
响应于处理器发出内存读请求,通过所述第一神经网络分析所述内存读请求对应的内存地址上的内存数据在处理器中执行时是否会访存对应的扩展节点;以及
响应于所述内存地址所对应的内存数据在处理器中执行时访存对应的扩展节点,且所述扩展节点处于关闭状态,则将所述扩展节点开启。
7.根据权利要求1所述的方法,其特征在于,还包括:
获取处理器缓存中所有缓存的内存数据的内存地址,并基于缓存的内存数据的内存地址以及在缓存所内存数据时处理器发出的访存扩展节点的总线通信请求作为训练数据训练第二神经网络模型;
实时获取处理器缓存中的内存数据对应的内存地址,并将内存地址输入到所述第二神经网络模型,通过所述第二神经网络模型确认是否关闭对应的扩展节点。
8.一种处理器低功耗控制系统,其特征在于,包括:
数据处理模块,所述数据处理模块配置用于基于内存中对应的内存数据在执行时与扩展节点的工作状态的关联关系构建映射关系或模型;
状态仲裁模块,所述状态仲裁模块配置用于根据所述映射关系或模型以及处理器读取的内存数据确定所述扩展节点的工作状态。
9.一种计算机设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现权利要求1-7任意一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211318780.5A CN115657839A (zh) | 2022-10-26 | 2022-10-26 | 一种处理器低功耗控制方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211318780.5A CN115657839A (zh) | 2022-10-26 | 2022-10-26 | 一种处理器低功耗控制方法、系统、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115657839A true CN115657839A (zh) | 2023-01-31 |
Family
ID=84991727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211318780.5A Pending CN115657839A (zh) | 2022-10-26 | 2022-10-26 | 一种处理器低功耗控制方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115657839A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116680206A (zh) * | 2023-08-04 | 2023-09-01 | 浪潮电子信息产业股份有限公司 | 内存扩展方法、装置、系统、电子设备及可读存储介质 |
-
2022
- 2022-10-26 CN CN202211318780.5A patent/CN115657839A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116680206A (zh) * | 2023-08-04 | 2023-09-01 | 浪潮电子信息产业股份有限公司 | 内存扩展方法、装置、系统、电子设备及可读存储介质 |
CN116680206B (zh) * | 2023-08-04 | 2024-01-12 | 浪潮电子信息产业股份有限公司 | 内存扩展方法、装置、系统、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5632038A (en) | Secondary cache system for portable computer | |
CN103257701B (zh) | 在低功耗模式下保留被缓存的信息的技术 | |
US6918012B2 (en) | Streamlined cache coherency protocol system and method for a multiple processor single chip device | |
US7254676B2 (en) | Processor cache memory as RAM for execution of boot code | |
JP5392404B2 (ja) | 動的なシステムを再構成する方法および装置 | |
JP4837456B2 (ja) | 情報処理装置 | |
US7529955B2 (en) | Dynamic bus parking | |
CN102646446B (zh) | 硬件动态高速缓存电源管理 | |
JP3857661B2 (ja) | 情報処理装置、プログラム、及び記録媒体 | |
US20100228922A1 (en) | Method and system to perform background evictions of cache memory lines | |
US11320890B2 (en) | Power-conserving cache memory usage | |
CN112486312A (zh) | 一种低功耗的处理器 | |
CN114580344A (zh) | 测试激励生成方法、验证方法、验证系统及相关设备 | |
US11922172B2 (en) | Configurable reduced memory startup | |
CN115657839A (zh) | 一种处理器低功耗控制方法、系统、设备及存储介质 | |
CN114860329A (zh) | 动态一致性偏置配置引擎及方法 | |
US6862675B1 (en) | Microprocessor and device including memory units with different physical addresses | |
US6993674B2 (en) | System LSI architecture and method for controlling the clock of a data processing system through the use of instructions | |
CN115729312A (zh) | 自动切换处理器时钟的控制系统及芯片 | |
CN114721464A (zh) | 片上系统和计算装置 | |
CN116049033B (zh) | 一种高速缓冲存储器Cache读写方法、系统、介质及设备 | |
US10180907B2 (en) | Processor and method | |
WO2024001994A1 (zh) | 节能管理方法、装置、计算设备及计算机可读存储介质 | |
US10403351B1 (en) | Save and restore scoreboard | |
CN113138657A (zh) | 一种降低cache访问功耗的方法和电路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |