早在20世纪50年代末出台的摩尔定律就指出,计算机CPU每18个月性能提高一倍,成本降低一半。因此,芯片性能通过单纯的提高时钟频率、缓存容量和流水线级并行能力等手段,会受到制造工艺及流水线算法复杂度的限制,已无法满足实际应用需求。多核处理器代表的进程级/线程级并行处理机制已经成为处理器芯片研究领域公认的未来发展方向。
现在,我们以H3C无线控制器为例,介绍多核多线程处理架构(Multi-Core/Multi-Thread)硬件平台。它以在保持通用处理器高灵活高可扩展性的优势的前提下,大幅度提升数据处理的性能。同时,H3C无线控制器在控制平面采用独立的高速通用处理器,可以满足大规模用户的认证和管理等需求。
理解多核处理器
多核处理器本质上是通过硬件进程/线程级并行处理来提高性能。处理器在线程级/进程级并行处理的应用包括两个发展方向:一个是同时多线程微处理器技术(SMT),一个是单芯片多处理器技术(CMP)。
SMT技术的核心思想是,在处理器中增加对多线程硬件自动切换的支持,以及相应的硬件执行资源,使每个时钟周期的指令可以取自不同的线程,且没有时钟损耗,提高了流水线效率。因此SMT技术用很小的代价就能使处理器的性能有了质的提高。
CMP技术在芯片内集成多个微处理器核,其思想是将传统的对称多处理器(SMP)体系结构集成到同一芯片内,各个处理器并行执行不同的进程。
H3C无线控制器数据平面采用的多核多线程处理器(Multi-Core/Multi-Thread),结合了SMT技术和CMP技术,在单芯片上集成多个拥有SMT技术的处理器核以及存储、I/O、互连、高速缓存控制器等部件,如图所示。
多核硬件架构图