CN102110017A - 处理器多进程技术 - Google Patents
处理器多进程技术 Download PDFInfo
- Publication number
- CN102110017A CN102110017A CN2009102509852A CN200910250985A CN102110017A CN 102110017 A CN102110017 A CN 102110017A CN 2009102509852 A CN2009102509852 A CN 2009102509852A CN 200910250985 A CN200910250985 A CN 200910250985A CN 102110017 A CN102110017 A CN 102110017A
- Authority
- CN
- China
- Prior art keywords
- cmp
- scheduling
- cpu
- operating system
- framework
- 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
Landscapes
- Multi Processors (AREA)
Abstract
本发明涉及处理器多进程技术,采用算法实践结合理论分析方法对CMP(处理器多核单芯片)构架下的操作系统进程优化调度进行策略研究,探索在基于Linux系统的高效CMP构架下进程平衡负载的调度算法问题,完成调度算法和调度平衡的模型,实现以该模型为基础的调度Linux内核示范系统。研究对操作Linux系统结合进行CPU特性高性能调度和计算优化有着重大意义,为实现从传统模式SMP到新的模式CMP的转变奠定基础。CMP的结构相对简单,可以直接使用现有的内核处理器,因此开发周期与成本相对较低,结构简单带来的另一个好处是更易获得高的主频。由于多个处理器集成在一块芯片上,且cache共享,处理器之间的通信延迟会明显降低,有利于提高系统的整体性能。
Description
【技术领域】
本发明涉及一种处理器多进程技术,尤其是研究CMP系统高效调度的理论与优化算法,实现基于CMP构架的Linux内核进程调度算法补丁(Patch),在Linux内核上提供一个针对CMP构架的编译选项。
【背景技术】
处理器多核是随着集成电路制造工艺的进步与微处理器体系结构的发展而发展起来的,在一个芯片上集成了多个相同通用处理器的单芯片对称多处理器(Chip Multi Processors,简称CMP)。最早是由美国斯坦福大学提出的,其思想是在一块芯片内SMP(对称多处理)架构,且并行执行不同的进程。和目前在服务器领域广泛采用的对称多处理器(Symmetric Multi-Processor,SMP)结构类似。
SMP架构的灵活性比较突出。当半导体工艺提升至0.18微米以后,线时已经超过了门延迟,要求微处理器的设计通过划分许多规模更小、局部更好的基本单结构来进行。相比之下,由于结构CMP已经被划分成多个核来设计,每个核都比较简单,有利于优化设计,因此更有发展前途。多处理器核可以在芯片内部缓存共享,提高利用率缓存,同时简化并行系统设计的复杂度,在CMP系统中,位于同一个芯片内部所有处理器内核以平等的身份参与任务调度和中断处理,共享内存和外部设备,而且也可以共享片内的(部分或全部)高速缓存。
【发明内容】
本发明要解决的技术问题是提供一种处理器多进程技术,它在支持的操作SMP系统中,每个维护一个自己的CPU就绪进程队列,称为局部任务队列,这样大大降低竞争CPU。
为解决上述技术问题,本发明所采用技术方案是:就绪进程按时间片是否用完分为active和exired两大类,actve类包括那些时间片没用完、当前可被调度的就绪进程,exired类包括那些时间片已用完的就绪进程。同时,进程按照每类中的其优先级的不同处于不同的优先级链表中。
与现有技术相比,本发明的有益效果是:保证了运行调度器的时间上限,降低了不必要的开销;同时在内存中保留更加丰富的信息的做法也加速了定位过程候选进程。当队列activ中没有可调度进程时,内核简单地对调ctive和exired队列,将原来的exired队列作为新的acive队列后即可进行调度新一轮。
【具体实施方式】
1、支持操作CMP的系统内核的调度系统需要很好地解决进程与CPU之间的“亲和”问题。一个进程可能在比较频繁CPU之间地迁移,交互式进程(或高优先级的进程)可能还会在CPU之间不断“跳跃”,这样,每一次迁移之后,都可能造成频繁的内存访问,导致整体性能下降。
2、支持CMP操作系统的调度内核系统尽量使每个进程一直在固定的CPU上执行,这样可以Cache提高的命中率;但是如果某个CPU的就绪队列过长,不断的进程切换反而造成命中率Cache的下降,而且还造成其他CPU不能充分发挥效能。
3、无论当前CPU是繁忙或空闲,时钟中断每隔一段时间都会启动一次平衡当前系统负载。当然,CPU一旦当前发现自己的就绪队列为空时,也会主动进行负载平衡。
4、引入调度域(stucts ched_dmain)的概念,将全体一层一层CPU划分成不同的区域,每个调度域中的CPU分成若干个CPU,且满足任一CPU存在于一个组中。每个CPU属于一个基本的调度(该域至少包括本CPU),但是CPU同时还属于一个或多个调度域。CPU的调度域通过构成一个单向链表。
5、必须满足:A.父调度域是子调度域的集;B.每个CPU的最高层调度域必须包括系统中的处理器。例如在一个CMP支持超线程的系统中,每个逻辑的基本CPU调度域包含所在传统物理CPU上的全部的逻辑CPU,基本域的每个CPU分组包含一个CPU逻辑;基本调度域的父调度域是这个系统的最高层调度域,它包含系统中所有的逻辑CPU,该域的每个CPU分组包含一个物理CPU上的全部CPU逻辑。
6、对于操作Linux系统下结构CMP的内核进程调度进行研究,主要在多队列调度、进程调度的平衡负载和进程队列重新调度三个方面提出比较先进的处理器CMP的进程动态调度模型、平衡负高效载调度算法模型,CMP系统高效调度的理论与方法,实现从传统模式SMP到新的模式CMP的转变。
Claims (4)
1.一种处理器多进程技术,针对体系CMP结构进行优化算法、操作系统优化调度,从而充分利用CMP的优势结构,提高计算的性能成为目前在算法和操作系统研究领域的一个热点问题。
2.在将已有的并行算法到CMP迁移构架下,并进行优化;对于采用结构的数据库CMP系统、桌面系统等的性能进行分析和比较,设计更好的操作系统;设计构架CMP的仿真系统,以加快对于构架的CMP研究进程
3.对于LinuX系统,没有如微软这样的核心厂商进行支持,对于CMP构架下的操作系统优化的成果还比较少,也比较分散。因此借鉴支持操作系统CMP的关键技术对于设计基于的操作CMP系统有着非常重要的意义。为了最大限度的发挥CMP的优势构架,提高操作系统进程调度效率是最能够产生效果的方案。
4.所有进程就绪(TASK_RUNNING)被组织到同一个双向链表之中,称为任务全局队列,调度过程中将此链表中的所有进程,调用计算每一个进程,从中选择权值的进程投入运行。由于调度要所有就绪进程,因此选择下一个运行进程的时间复杂度是0(n)(n为就绪进程的个数)。同时,因为就绪队列是全局性的,对单CPU系统来讲只可能有一个CPU访问这个队列,而在多处理器CPU结构中,必须通过一个全局的保证同一时刻只有一个CPU进行访问,这样导致系统中其他的自旋锁等待。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102509852A CN102110017A (zh) | 2009-12-24 | 2009-12-24 | 处理器多进程技术 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102509852A CN102110017A (zh) | 2009-12-24 | 2009-12-24 | 处理器多进程技术 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102110017A true CN102110017A (zh) | 2011-06-29 |
Family
ID=44174188
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009102509852A Pending CN102110017A (zh) | 2009-12-24 | 2009-12-24 | 处理器多进程技术 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102110017A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104090826A (zh) * | 2014-06-30 | 2014-10-08 | 中国电子科技集团公司第三十二研究所 | 基于相关性的任务优化部署方法 |
CN104503831A (zh) * | 2014-12-22 | 2015-04-08 | 北京奇虎科技有限公司 | 设备优化方法及装置 |
CN112416052A (zh) * | 2020-12-10 | 2021-02-26 | 王志平 | 一种内核时间片超频的实现方法 |
-
2009
- 2009-12-24 CN CN2009102509852A patent/CN102110017A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104090826A (zh) * | 2014-06-30 | 2014-10-08 | 中国电子科技集团公司第三十二研究所 | 基于相关性的任务优化部署方法 |
CN104090826B (zh) * | 2014-06-30 | 2017-07-11 | 中国电子科技集团公司第三十二研究所 | 基于相关性的任务优化部署方法 |
CN104503831A (zh) * | 2014-12-22 | 2015-04-08 | 北京奇虎科技有限公司 | 设备优化方法及装置 |
CN104503831B (zh) * | 2014-12-22 | 2017-10-13 | 北京奇虎科技有限公司 | 设备优化方法及装置 |
CN112416052A (zh) * | 2020-12-10 | 2021-02-26 | 王志平 | 一种内核时间片超频的实现方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102193779A (zh) | 一种面向MPSoC的多线程调度方法 | |
CN100562854C (zh) | 多核处理器操作系统负载均衡的实现方法 | |
JP5406149B2 (ja) | イベント処理のためのターボ性能を向上させる方法および装置 | |
CN104679593B (zh) | 一种基于smp系统的任务调度优化方法 | |
EP0352490B1 (en) | A technique for parallel synchronization | |
CN101894047B (zh) | 一种基于内核虚拟机调度策略的实现方法 | |
CN102779024B (zh) | 提供用户级多线程操作的方法和系统 | |
US20160203025A1 (en) | Methods and systems to identify and migrate threads among system nodes based on system performance metrics | |
CN101366004A (zh) | 用于带有专用线程管理的多核处理的方法和设备 | |
CN102110017A (zh) | 处理器多进程技术 | |
Abellán et al. | Efficient hardware barrier synchronization in many-core cmps | |
CN101604263A (zh) | 一种实现操作系统核心代码段多副本运行的方法 | |
CN1825286A (zh) | 嵌入式sram操作系统线程实现和线程状态转换的方法 | |
CN108920267A (zh) | 任务处理装置 | |
US20240211020A1 (en) | Processor micro-architecture, soc chip and low-power-consumption intelligent device | |
Chéour et al. | Microcontrollers for IoT: optimizations, computing paradigms, and future directions | |
CN106030559A (zh) | 用于降低功耗的中断处理的同步 | |
CN102707765B (zh) | 一种使用混合时钟源的计时方法 | |
Abellán et al. | A g-line-based network for fast and efficient barrier synchronization in many-core cmps | |
CN102662636A (zh) | 一种基于两层虚拟机的并行作业调度的方法 | |
CN117215801B (zh) | 一种适用于多核处理器的片上负载性能优化装置 | |
JP2012159920A (ja) | マルチプロセッサ装置 | |
WO2024041625A1 (zh) | 多线程处理器的指令分发方法、装置和存储介质 | |
CN102495762B (zh) | 一种线程调度方法、线程调度装置及多核处理器系统 | |
CN105704827B (zh) | 一种用于rtt测量定位的跨信道调度方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
DD01 | Delivery of document by public notice |
Addressee: Yang Huai Document name: Notification of Passing Preliminary Examination of the Application for Invention |
|
C06 | Publication | ||
PB01 | Publication | ||
DD01 | Delivery of document by public notice |
Addressee: Yang Huai Document name: Notification of before Expiration of Request of Examination as to Substance |
|
DD01 | Delivery of document by public notice |
Addressee: Yang Huai Document name: Notification that Application Deemed to be Withdrawn |
|
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110629 |