线程还是频率多线程应用待普及
2017-04-27
CHIP新电脑 2017年4期
处理器的核心数以及倍增的线程数,一直是标识其档次的重要指標,至少从双核出现的那一天开始就是如此。要问为什么,结论无他,唯性能可解。
早在双核产品物理上出现之前,多处理器,特别是SMP(对称式多处理器)平台就早已出现,而其CPU及平台价格,可不是核心数增加那么“低廉”,单处理器到双处理器如此,双处理器到4处理器更是如此。今天的多核处理器,可以说是多处理器的廉价解决方案,但显然增加核心数量比增加处理器数量简单得多,但坏处也非常的明显,即多核心解决方案的内存和I/O带宽没有增加,而多处理器则不然,I/O带宽与处理器数量同步甚至更高幅度地增长。
回到现实生活中,多线程的应用优化并非始于多核心处理器,多处理器平台早就跑上了多线程操作系统和应用。不过,多线程优化对指令及数据调度机制有着严格的约束,通常考虑到效率因素以及分支预测因素,指令并行性逊色于数据并行性。如同CPU与GPU的差异,前者优先满足串行应用和通用任务,简单的说就是十项全能,而后者则为并行优化、专用性越强。于是乎就有了GPU专门用来加速图形应用,即便近年来流行的GPGPU应用,也需要专门优化并行性和数据结构,以确保并行计算的高度流水化。
在PC应用领域,近十多年来多线程应用的优化进度始终缓于核心数量增加,其根本原因是考虑到兼容性和效率因素,多线程应用通常会将带有负载的并行线程数量控制在4个以内——当年x86 SMT(对称式多线程,SMP衍生而来)+Windows平台处理器数量最多4个,再往上就是RISC+UNIX的世界了。……
登录APP查看全文
