扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
在本页阅读全文(共5页)
简介
本文既可以看作是对如今多核处理器的意义做出解释,也可以看作试图从多种不同角度让人了解多核处理器的作用的一种期望。我们更倾向于后一种方式,因为随着时间的推移,多核处理器将在计算行业的转型中扮演不同的重要角色。
本文旨在深入讨论微处理器设计领域中“平衡”与“优化”的含义。章节1介绍了术语表。接下来的章节将按时间顺序排列,展示随着时间的推移,微处理器设计中“平衡”与“优化”复杂度的逐步提高。
章节2回顾了“我们为何开始设计多核处理器?”。
章节3讨论了与多核处理器相关的系统与软件设计领域的发展情况。
章节4根据目前趋势预测未来的复杂度。
在文章结尾,我们还预测了日渐成熟的多核处理器技术的未来发展。
1. 背景
1.1. 核心概念
在试图介绍多核计算发展之前,我们有必要先在术语和目标方面达成共识。令人讶异的是,这一领域中的很多常用词汇用在计算产品的生产方、采购方和用户方,涵义迥然不同。若针对这些不同的涵义进行研究,将显著增加复杂度和权衡取舍的难度,而它们对于工程设计流程却是至关重要的。
1.1.1. 平衡
对于“平衡”,韦氏在线辞典共列出了 12 个定义,其中与本文关系最为密切的定义有两个。
第5项
a:由于在垂直轴的两端分布等量的重量而产生的稳定性。
b:在对比、对立或交互元素间的均衡性。
c:账目两端的总值相等。
第6项
a:在美学意义上多个元素的完美整合
在计算机系统中,人们对于“平衡”的理解多是这两种概念。前者是定量、分析性的,但却试图迅速将这一定义结合到各种复杂因素之中。计算机系统应该在哪些属性上体现出“对称分布”?我们认为,这些重要的属性包括:成本、价格、功耗、物理尺寸、可靠性以及众多相对独立的性能属性的任意主体。在选择哪些属性实现“平衡”,或如何将多种属性比较整合成单一的“平衡”标准时,将不会存在显而易见的“正确答案”。
当考虑计算机系统的多维设计/配置空间时,“平衡”的美学定义带有设计者强烈的个人色彩,但应用到工程和业务空间上时,如果忽略定量因素,则会使整个 “平衡”概念失去效用。
这些标准定义的缺乏表明了一种不容忽视的微妙关系。在本文中,我们很高兴能够继续使用“平衡”一词,但需要指出,在清晰定义的定量环境中(包括如何将它们组成单一的优化问题),该词只具有数量含义。
1.1.2. 优化
对于“优化”,韦氏在线辞典中仅列出 1 个定义:使事物(例如一个设计、系统或决策)尽可能完美、起作用或有效的一种行动、流程或方法;具体指参与其中的数学程序(例如找到函数的最大值)。
对于此术语,计算机用户最常见的使用错误,是错误地将编译器理解为“优化器”,在此情况下,往往只将“优化”用作“改进”的同义词。虽然词意相近,但优化(在其数学含义中)指的是在存在约束的条件下(也可能只是由目标功能自身产生的约束限制),将特定的目标功能最小化或最大化。与之对照,“改进”是指“使事物变得更好”,并不具有“优化”概念中至关重要的“权衡”的意义。
计算机系统设计中的优化是指,选择使特定目标功能最大化或最小化的参数,同时,还通常为其他目标功能提供“次级优化”解决方案。在普遍使用的目标功能中,有很多参数相互矛盾,例如,低成本与高性能、低功耗与高性能等。设计参数一旦相互抵触,就将根据具体目标功能的量化公式找到“最优”设计点——例如明确要求,提升10%的性能(或把功耗降低 10%)对其他设计目标会产生怎样的影响?
1.2. 方法
为撰写本文,我们将使用一个带有调整后的系数,并最适应SPEC_fp2000和SPECfp_rate2000基准测试大型子集(截至2006年 3 月)的分析模型,估算多种配置选项的性能影响。
该分析模型包括508个SPEC_fp2000结果730个SPECfp_rate2000结果。另有233个结果被排除在分析之外,因为它们使用了先进的编译器优化或特殊的硬件配置,而这都会导致其与大部分结果进行比较毫无意义。
前面已经对该性能模型进行了介绍,但是,此处对其进行了扩展以纳入更完整的数据集,并已经将它应用到每个SPEC_fp2000基准测试结果的14 个测试项目和几何平均值中。虽然该模型没有捕捉这些基准测试的某些性能特征细节,但它对大量结果进行最小二乘法,能够大幅度减少与单个结果相关的随机“干扰”,并提供很高的平台独立性。
简而言之,该模型假定每个基准测试的执行时间为“CPU 时间”和“内存时间”之和。其中,内存子系统完成的“工作”数量是缓存规模的简单函数,从“大型”缓存(其中“大型”也是该模型的一个参数)最大值线性减少到无缓存的最小值,对大于大型规模的缓存,内存工作量恒定不变。假定 CPU 工作的完成率与芯片采用 64 位 IEEE 算法的峰值浮点性能成正比,而内存工作的完成率与系统在 171.swim(基础)基准测试上的性能成正比。此前的研究已经显示,在 171.swim 基准测试上的性能和使用 STREAM 基准测试直接测量的持续内存性能之间有很强的联系。
该模型的模拟结果与测量结果有很强的相关性,75% 的测量结果都具有15%的模拟映射。这指出,基础的模型假设与这些系统在这些基准测试上的实际性能特征一致。虽然模型中存在某些体系性错误,但模型与观察结果之间的差异并非都来自于硬件假定的过度简化,很多差异也可能来自于编译器、编译器选项、操作系统和基准配置方面的差异。总的来说,该模型足够健壮,可以作为说明微处理器系统中性能和性能价格比灵敏度的基础。
1.3. 假设与建模
为进行性能和性能价格比分析,我们将假定:
双插槽“裸”系统(带有磁盘、内存和网络接口,但没有 CPU)成本为 1,500 美元。
基本CPU 配置为 2.4 GHz 单核处理器,配备 1 MB L2 缓存,成本为 300 美元。
Die设定为CPU 核心和L2 缓存约各占一半,其他片上功能限制在Chip全部区域的小区间中。
“小型芯片”配置为 2.8 GHz 单核心处理器,配备 1 MB L2 缓存,成本为 150 美元。
“大缓存”配置为 2.8 GHz 单核心处理器,配备 3 MB L2 缓存,成本为 300 美元。
“多核”配置为 2.0 GHz 双核心处理器,每个核心配备 1MB L2 缓存,成本为 300 美元。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者