CN103473095A - Cpu二级缓存的加速初始化方法 - Google Patents
Cpu二级缓存的加速初始化方法 Download PDFInfo
- Publication number
- CN103473095A CN103473095A CN2013104080941A CN201310408094A CN103473095A CN 103473095 A CN103473095 A CN 103473095A CN 2013104080941 A CN2013104080941 A CN 2013104080941A CN 201310408094 A CN201310408094 A CN 201310408094A CN 103473095 A CN103473095 A CN 103473095A
- Authority
- CN
- China
- Prior art keywords
- core
- initialization
- cpu
- cache
- mailbox
- 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
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明公开了一种CPU二级缓存的加速初始化方法,包括以下步骤:1)初始化每个CPU核心的mailbox寄存器;2)CPU主核将二级缓存划分为n段,n为CPU核心数量;3)主核向每个从核发送初始化一段二级缓存命令,从核读取初始化命令;4)主核和从核完成各自的二级缓存初始化,从核初始化完成后通知主核;5)所有核心完成各自的二级缓存初始化后初始化任务完成。本发明通过多个核来协同完成任务,从而加快任务完成的速度,减少初始化二级缓存所花费的时间,同时加快了BIOS的启动速度。
Description
技术领域
本发明涉及一种CPU缓存的初始化方法,特别是涉及一种CPU二级缓存的加速初始化方法。
背景技术
CPU缓存(Cache Memory)位于CPU与内存之间的临时存储器,它的容量比内存小但交换速度快。在缓存中的数据是内存中的一小部分,但这一小部分是短时间内CPU即将访问的,当CPU调用大量数据时,就可避开内存直接从缓存中调用,从而加快读取速度。而二级缓存则是介于一级缓存和内存之间的存储器,其容量较大于一级缓存、远小于内存,主要用来协调一级缓存于内存之间的速率差。
在按下计算机电源按钮后,主板会reset CPU,然后CPU执行指令,跳到BIOS进行启动。在BIOS启动的过程中需要对CPU的二级cache进行初始化操作。在龙芯多核CPU上对二级cache的初始化是由0号核即主核来执行,其他的核即从核处于一直在空等即一直在做无用的功的状态,直到BIOS加载完内核后,内核来唤醒它。按照这样的方法初始化龙芯CPU的二级cache花费的时间是非常长,特别是在龙芯3B的双路的服务器上更是花费的时间按多,这样将导致BOIS的启动过程时间长的更是让人难以忍受。
发明内容
针对上述现有技术的不足,本发明的目的是提供一种CPU二级缓存的加速初始化方法,以加快二级缓存的初始化速度,减少等待时间。
本发明的技术方案是这样的:一种CPU二级缓存的加速初始化方法,其特征在于,包括以下步骤:
1)初始化每个CPU核心的mailbox寄存器;
2)CPU主核将二级缓存划分为n段,n为CPU核心数量;
3)主核向每个从核发送初始化一段二级缓存命令,从核读取初始化命令;
4)主核和从核完成各自的二级缓存初始化,从核初始化完成后通知主核;
5)所有核心完成各自的二级缓存初始化后初始化任务完成。
在本发明的一个具体实施例中,所述步骤3)中,主核向自身的mailbox发送各个从核的初始化一段二级缓存命令,从核读取主核mailbox获取初始化命令。
在本发明的另一个具体实施例中,所述步骤3)中,主核向每个从核的mailbox发送从核的初始化一段二级缓存命令,从核读取自身mailbox获取初始化命令。
在本发明的又一个具体实施例中,所述步骤4)中,从核初始化完成后向主核mailbox发送完成消息,主核读取自身mailbox获取从核完成消息。
在本发明的还一个具体实施例中,所述步骤4)中,从核初始化完成后向自身mailbox发送完成消息,主核读取从核mailbox获取从核完成消息。
本发明所提供的技术方案,充分的利用龙芯多核CPU的优势把一个任务进行切分成多个子任务,由主核和从核各自完成相应的子任务,让多个核来协同完成任务,从而加快任务完成的速度。这种技术能加快龙芯多核CPU上二级缓存的初始化的过程,减少初始化二级缓存所花费的时间,同时加快了BIOS的启动速度。
附图说明
图1为本发明CPU二级缓存初始化流程示意图。
具体实施方式
下面结合实施例对本发明作进一步说明,但不作为对本发明的限定。
请参见图1,以龙芯3B双路的服务器为例,该服务具有两个8核CPU共16个核心,对应具有16M的二级缓存,因此CPU中每个核心所要初始化的二级缓存为1M,一个核心初始化1M即为一个子任务。初始化任务具体过程和方法如下:
第一:所有的核初始化自身的MailBox寄存器或者是由主核初始化所有核的MailBox寄存器即把MailBox寄存器置0。
第二:根据EBase寄存器的值来区分主核和从核,从而使主核和从核走不同的流程。
第三:进行子任务的切分。如在龙芯3B的双路服务器上总共有16核和16M的二级cache,可以把初始化16M的二级cache空间切分成初始化16个子任务,每个子任务是初始化1M的二级cache空间。
第四:如果是从核则一直等待主核的消息即不断的读取自身MailBox消息或者是主核的MailBox消息来确认是否开始初始化一段固定大小的二级cache(如1M的二级cache)。当从核从MailBox得到的消息表明主核需要让从核自己初始化某段二级cache空间,则从核就开始执行主核分配给自己的任务,当任务完成后从核就向自己的Mailbox或者是主核的MailBox发送消息表示主核分配的任务已经完成,从核可以执行其他的任务或者是等待。
第五:如果是主核则发送消息给从核的的MailBox或者是自己的MailBox通知从核有任务即初始化某一段二级cache空间。通知完从核后主核开始自己的任务即初始化一段二级cache空间,任务完成后读取自己MailBox或者是从核的MailBox来确认各个从核是否完成分配的任务即是否已经初始化完了某段二级caceh空间。在确认了所有的从核都完成了分配的任务后继续执行接下来的流程如初始化内存控制器等。
分别用本发明方法及原二级缓存初始化方法在龙芯3B双路的服务器上进行了对比实验,实验的结果说明这种优化方法是有效的而且效果非常明显,在用原初始化方法初始化二级缓存需要50秒左右的时间,用本发明方法初始化二级缓存只需要6秒左右时间。
Claims (5)
1.一种CPU二级缓存的加速初始化方法,其特征在于,包括以下步骤:
1)初始化每个CPU核心的mailbox寄存器;
2)CPU主核将二级缓存划分为n段,n为CPU核心数量;
3)主核向每个从核发送初始化一段二级缓存命令,从核读取初始化命令;
4)主核和从核完成各自的二级缓存初始化,从核初始化完成后通知主核;
5)所有核心完成各自的二级缓存初始化后初始化任务完成。
2.根据权利要求1所述的CPU二级缓存的加速初始化方法,其特征在于:所述步骤3)中,主核向自身的mailbox发送各个从核的初始化一段二级缓存命令,从核读取主核mailbox获取初始化命令。
3.根据权利要求1所述的CPU二级缓存的加速初始化方法,其特征在于:所述步骤3)中,主核向每个从核的mailbox发送从核的初始化一段二级缓存命令,从核读取自身mailbox获取初始化命令。
4.根据权利要求2所述的CPU二级缓存的加速初始化方法,其特征在于:所述步骤4)中,从核初始化完成后向主核mailbox发送完成消息,主核读取自身mailbox获取从核完成消息。
5.根据权利要求3所述的CPU二级缓存的加速初始化方法,其特征在于:所述步骤4)中,从核初始化完成后向自身mailbox发送完成消息,主核读取从核mailbox获取从核完成消息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013104080941A CN103473095A (zh) | 2013-09-10 | 2013-09-10 | Cpu二级缓存的加速初始化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013104080941A CN103473095A (zh) | 2013-09-10 | 2013-09-10 | Cpu二级缓存的加速初始化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103473095A true CN103473095A (zh) | 2013-12-25 |
Family
ID=49797964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013104080941A Pending CN103473095A (zh) | 2013-09-10 | 2013-09-10 | Cpu二级缓存的加速初始化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103473095A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104731614A (zh) * | 2015-03-05 | 2015-06-24 | 广东欧珀移动通信有限公司 | 一种在开机过程中快速加载数据的方法及装置 |
CN106354535A (zh) * | 2016-08-31 | 2017-01-25 | 福建联迪商用设备有限公司 | 一种提高支付终端启动速度的方法及装置 |
CN107832238A (zh) * | 2017-10-09 | 2018-03-23 | 江苏航天龙梦信息技术有限公司 | 一种基于龙芯处理器平台的高速缓存作内存的方法 |
CN107924343A (zh) * | 2015-09-26 | 2018-04-17 | 英特尔公司 | 低等待时间节点间通信 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0684561A1 (en) * | 1993-12-15 | 1995-11-29 | Silicon Graphics, Inc. | System and method for synchronization in split-level data cache system |
CN101149704A (zh) * | 2007-10-31 | 2008-03-26 | 中国人民解放军国防科学技术大学 | 微处理器中分段高速缓存的设计方法及分段高速缓存 |
CN101201799A (zh) * | 2006-12-13 | 2008-06-18 | 英特尔公司 | 冻结环高速缓存 |
CN101286138A (zh) * | 2008-06-03 | 2008-10-15 | 浙江大学 | 基于数据划分的多线程共享多核处理器二级缓存的方法 |
-
2013
- 2013-09-10 CN CN2013104080941A patent/CN103473095A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0684561A1 (en) * | 1993-12-15 | 1995-11-29 | Silicon Graphics, Inc. | System and method for synchronization in split-level data cache system |
EP0684561A4 (en) * | 1993-12-15 | 1999-11-17 | Silicon Graphics Inc | DEVICE AND METHOD FOR SYNCHRONIZING DATABASE SYSTEMS AT MULTIPLE LEVELS. |
CN101201799A (zh) * | 2006-12-13 | 2008-06-18 | 英特尔公司 | 冻结环高速缓存 |
CN101149704A (zh) * | 2007-10-31 | 2008-03-26 | 中国人民解放军国防科学技术大学 | 微处理器中分段高速缓存的设计方法及分段高速缓存 |
CN101286138A (zh) * | 2008-06-03 | 2008-10-15 | 浙江大学 | 基于数据划分的多线程共享多核处理器二级缓存的方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104731614A (zh) * | 2015-03-05 | 2015-06-24 | 广东欧珀移动通信有限公司 | 一种在开机过程中快速加载数据的方法及装置 |
CN104731614B (zh) * | 2015-03-05 | 2018-03-23 | 广东欧珀移动通信有限公司 | 一种在开机过程中快速加载数据的方法及装置 |
CN107924343A (zh) * | 2015-09-26 | 2018-04-17 | 英特尔公司 | 低等待时间节点间通信 |
CN107924343B (zh) * | 2015-09-26 | 2021-10-08 | 英特尔公司 | 低等待时间节点间通信 |
CN106354535A (zh) * | 2016-08-31 | 2017-01-25 | 福建联迪商用设备有限公司 | 一种提高支付终端启动速度的方法及装置 |
WO2018040970A1 (zh) * | 2016-08-31 | 2018-03-08 | 福建联迪商用设备有限公司 | 一种提高支付终端启动速度的方法及装置 |
CN107832238A (zh) * | 2017-10-09 | 2018-03-23 | 江苏航天龙梦信息技术有限公司 | 一种基于龙芯处理器平台的高速缓存作内存的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1983196B (zh) | 用于将执行线程分组的系统和方法 | |
CN103473095A (zh) | Cpu二级缓存的加速初始化方法 | |
CN105893083A (zh) | 云环境下基于容器的移动代码卸载支撑系统及其卸载方法 | |
DE102012106830A1 (de) | Datenverarbeitungssystem und Verfahren zum Schalten zwischen heterogenen Beschleunigern | |
WO2016022492A1 (en) | Account processing method and apparatus | |
CN103064748A (zh) | 一种Linux下处理多进程间通讯的方法 | |
CN103634379A (zh) | 一种分布式存储空间的管理方法和分布式存储系统 | |
CN104683472A (zh) | 一种支持大数据量的数据传输方法 | |
CN105068769A (zh) | 一种基于消息中间件的消息管理方法及装置 | |
KR20210083222A (ko) | 음성 데이터 처리 방법, 장치, 기기 및 저장매체 | |
CN109542829B (zh) | 多系统中gpu设备的控制方法、装置及电子设备 | |
CN203455832U (zh) | 一种电子设备 | |
CN104468710A (zh) | 一种混合大数据处理系统及处理方法 | |
CN103164409A (zh) | 一种网络广告展现样式后验方法及系统 | |
CN101980170B (zh) | 一种微内核系统中软件模块的通信方法、系统及装置 | |
CN107402807A (zh) | 在计算机系统中有效提升多任务执行效率的方法、系统和处理器 | |
CN102819441B (zh) | 一种基于MPC5200B的Vxworks系统快速启动方法 | |
KR20200018188A (ko) | 메모리 시스템 | |
CN106911731B (zh) | 一种互联网信息资源的调度方法及装置 | |
CN114003388A (zh) | 大数据计算引擎任务参数确定方法及装置 | |
CN106776035B (zh) | 实现跨系统多单据算法的对接方法、系统及请求异构系统 | |
CN110109618B (zh) | 一种维护闪存操作时序的方法 | |
CN103309746A (zh) | 调研环境的搭建方法及装置 | |
US20230145253A1 (en) | Reducing latency in highly scalable hpc applications via accelerator-resident runtime management | |
CN105824704A (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: 20131225 |