首页 / 一种性能可精确控制多核多线程处理器

一种性能可精确控制多核多线程处理器失效专利 实用

技术领域

[0001] 本实用新型涉及一种多核多线程(multi-core multi-threading)处理器技术,特别涉及性能可精确控制的多核多线程处理器技术。该实用新型属于计算机系统设计领域,用于对多核多线程计算机系统、特别是多核多线程处理器的硬件资源的显式调控和线程性能的精确控制。具体应用领域是多核多线程计算机系统、特别是对线程性能、实时性、确定性要求较高的多核多线程计算机系统结构设计,包括对应OS级的资源分配和线程性能控制等功能的设计和实现。

相关背景技术

[0002] 计算机系统已进入片上多线程(CMT)架构时代,即多核多线程(multi-core multi-threading)处理器时代。多个线程在处理器内部同时运行,竞争并共享处理器内部的各种资源,用线程级并行(TLP)克服单线程运行时指令级并行(ILP)相对不足的缺点,提高计算机系统的整体处理能力和资源利用率。CMT的架构形式包括片上多处理器(CMP)、同时多线程(SMT)或二者的混合体。与操作系统(OS)通过时间片调度实现的并发(concurrency)机制不同,CMT是硬件上、时间上的物理并行,多个线程同时在片运行,“竞争式共享”处理器内部及整个计算机系统的各类资源,这使得系统吞吐率(throughput)和资源利用率显著提升。
[0003] 然而,多个线程对处理器内部资源的竞争存在很大的盲目性,线程间存在相互干扰、耦合甚至恶性竞争现象,即使进入处理器内部也是走走停停,而不是一路畅行,容易导致线程的饥饿和停滞、资源滥用、优先级颠倒、实时性被破坏、服务质量(QoS)降低等不良后果,严重影响计算机系统的可预测性和可控制性,整体性能也随之降低。此外,各线程的最坏运行时间(WCET)难以分析和估测,形成确定性问题,这对实时计算、特别是硬实时计算(HRT)来说是危险甚至致命的。究其原因,可归纳为以下三方面:
[0004] (1)硬件级措施的“重总体、轻个体”:多核多线程处理器的设计和实现,靠片上硬件逻辑实现的资源分配和线程调度策略通常比较简单,在灵活性和适应性方面先天不足,一般是追求系统整体性能和资源利用率的提升,对各个线程的性能和资源需求的不断变化、资源的效率、公平和占用均衡度、线程间互相干扰、恶性竞争等方面则鲜有监督和控制机制。
[0005] (2)OS级调度的“黑盒”效应:OS对多线程的性能管理止步于将选定的线程或线程组合调度到处理器上运行,对多核多线程处理器的片上资源如何分配、各个线程的片内实际运行状态等方面则难以监控和管理。
[0006] (3)系统级综合设计的缺失:缺少针对多核多线程处理器上同时运行的多个线程的性能和资源分配的系统级的监测和控制机制和方法,缺少相关的系统级协同设计。
[0007] 综上,多核多线程虽然带来计算性能的大幅提升,但迄今仍缺少对多线程性能及资源占用进行精确控制的方法、设计和实现。

具体实施方式

[0020] 图1是N线程性能可精确控制的多核多线程处理器的逻辑框图,其结构包括两大部分及二者间的通用互联总线:1)性能精确控制逻辑部分,具体包括性能记录寄存器组N个,资源记录寄存器组N个,硬件级监管线程处理核1个,OS级配置及监控接口1个,以及贯穿各部件间的通用总线连接;2)CMP、SMT或二者组合形式多核多线程基础硬件架构部分,作为多线程并行的基础运行环境,包括N个线程的上下文寄存器,中央控制单元,以及共享的硬件处理逻辑,其中共享硬件处理逻辑包括取指及分支预测、指令译码、整数指令队列、浮点数指令队列、重命名寄存器、访存单元、整数单元、浮点数单元、I/O单元以及各部件间的互联总线,各部件以流水线形式贯穿并受中央控制器控制。
[0021] 性能可精确控制的多核多线程处理器的工作原理如下:当某线程被调入处理器开始执行时,用户根据其性能特性和资源需求特性(预先离线学习掌握)通过OS级配置及监控接口向HIST发送设置指令,由HIST对该线程对应的资源记录寄存器组的内容进行初始设置;如果该线程没有特殊的性能要求,则HIST采用缺省设置。当出现各线程的资源需求之和大于该处理器的既有配置时,HIST将重新计算并配置各线程的资源记录寄存器组,可采用等比例下降或根据优先级递次排列的策略,具体可根据各线程的实时性要求、优先级等灵活设置。此后,该线程连同处理器内既有的其它线程一道,在HIST的监管下同时运行。在多线程同时运行过程中,中心控制单元与HIST协同,根据各线程资源记录寄存器组的设置内容对共享的处理资源进行分配和调控,并对每个线程的性能记录寄存器组和资源记录寄存器组进行持续跟踪记录和监管。当某线程被调出处理器时,其对应的性能记录寄存器组和资源记录寄存器组的内容被清空,清空之前亦可通过OS级配置及监控接口读出;如没有新的线程调入,HIST为处理器内其余线程进行重新计算并调整资源分配。此外,各线程的性能记录寄存器组和资源记录寄存器组的内容亦可通过OS级配置及监控接口由OS级或用户性能管理程序随时读出,供更高层级的线程性能分析和调度管理,此举可弥补单纯依赖多核多线程处理器内部硬件级调度和分配措施的灵活性和适应性差的问题,进一步增加线程调度和资源管理的灵活性、适应性。
[0022] 本实用新型的特点:
[0023] (1)通过设计体系结构级、微体系结构级实时的线程性能记录和资源调控的设计和措施,实现对多线程性能和资源配置的显式调控和精确控制。
[0024] (2)提供OS级管理接口,弥补单纯依赖处理器内部硬件级设计和措施的局限性,增加线程调度和资源管理的灵活性、适应性。
[0025] (3)支持系统级协同设计,对应用程序透明,无需对既有应用程序的重新编写或编译。
[0026] 实施例:
[0027] 参照说明书附图对本实用新型的性能可精确控制多核多线程处理器作以下详细说明。设本实施例中N=16,即16线程性能可精确控制多核多线程处理器,如图2所示,其结构包括两大部分及二者间的通用互联总线:1)性能精确控制逻辑部分,具体包括性能记录寄存器组16个,资源记录寄存器组16个,硬件级监管线程处理核1个,OS级配置及监控接口1个,以及贯穿各部件间的通用总线连接;2)CMP、SMT或二者组合形式的多核多线程基础硬件架构部分,包括16个线程的上下文寄存器,中央控制单元,以及共享的硬件处理逻辑,其中共享的硬件处理逻辑包括取指及分支预测、指令译码、整数指令队列、浮点数指令队列、重命名寄存器、访存单元、整数单元、浮点数单元、I/O单元等,各部件以流水线形式贯穿并受中央控制器控制。
[0028] 本实用新型的具体实施需要预先掌握应用程序的线程性能变化和资源需求的特性(需预先学习和建模,相关技术措施已成熟并广泛采用,如应用程序WCET的估测、运行过程的跟踪和分段记录等),且需要OS级线程性能设置和监管例程(supervisor routine, 简称SR)的配合设计和共同完成。这里通过一个典型的应用场景来说明该实用新型的运行过程。设N=16,即有16个独立线程(T1-T16)同时运行于采用该设计的包含16个逻辑处理核(C1-C16)的多核多线程处理器上,其中T1、T2、T3是实时计算任务,其余线程是一般计算任务。设某一时刻SR与处理器的HLST的OS级配置及监控接口进行交互,发现线程T1、T2运行正常,而T3运行略为滞后,则开启调控措施如下:首先读取各线程在该时刻(或之前若干时段的平均值)的性能记录寄存器组和资源记录寄存器组的内容;其次,对各线程特别是T3的各项实际记录值与该时刻(或之前若干时段的平均值)的预先资源分配和预期性能目标比较,找出T3性能滞后的原因,例如是因为线程T5的某I/O操作阻塞,导致其大量无效占用重命名寄存器(RRF),使得T3连续几个时段的RRF分配相对不足;再次,根据各线程特别是T3在未来若干时段的性能变化和资源需求的特性,重新计算并通过HLST的OS级配置及监控接口重新设置各线程资源记录寄存器组的内容,即重新调整RRF等资源的分配,给T3以相对充裕的运行资源并且尽量不损害其它线程特别是实时任务的正常运行,让T3在随后时段加速运行,达到预期进度。这样,经过按时段实时连续的跟踪调整,确保各线程特别是实时任务线程T1、T2、T3的性能精确控制和按预定进度运行完成。
[0029] 附:英文缩写的含义、中文名称
[0030] CMT:chip multi-threading,片上多线程
[0031] CMP:chip multi-processor,片上多处理器
[0032] SMT:simultaneous multithreading,同时多线程
[0033] TLP:thread level parallelism,线程级并行
[0034] ILP:instruction level parallelism,指令级并行
[0035] OS:operating system,操作系统
[0036] QoS:quality of service,服务质量
[0037] WCET:worst case execution time,最坏运行时间
[0038] HRT:hard real-time,硬实时
[0039] IPC:instruction per cycle,指令/节拍,计算机系统性能单位
[0040] I/O:input and output,输入输出
[0041] HLST:hardware level supervisor thread,硬件级管理线程
[0042] RRF: rename register file,重命名寄存器
[0043] PC: program counter,程序计数器
[0044] SR:supervisor routine,监管例程。

当前第1页 第1页 第2页 第3页
相关技术
控制核相关技术
核线相关技术
杨华发明人的其他相关专利技术