多内核处理器的系统开发挑战

最新更新时间:2008-03-06来源: 电子系统设计关键字:架构  异质  编程  晶体管  线程  应用  系统 手机看文章 扫描二维码
随时随地手机看文章
  当讨论到多内核处理时,对硬件人员来说是好的东西不一定对软件人员来说也是好事。多内核设计的理想硬件架构是异质(不对称)单指令集架构(ISA),它本质上同时包含高复杂度内核和低复杂度内核来实现更低的功耗和更大的吞吐量。

  现在想象一下:先不考虑阿姆达尔定律(它用于发现仅当系统的某一部分改进时系统的最大期望改进量),以及不限制裸片尺寸。从应用编程的角度来看,理想的多内核架构应该是同质(对称)的,因此依赖性并不建立在一个特殊的ISA基础之上。IBM、索尼和东芝联合开发的Cell微处理器采用了异质架构,尽管它并没有采用单一的ISA。目前对多内核处理器的编程还是相当费劲的,因为软件开发人员编的代码在很大程度上与架构有关。Raza微电子公司的首席架构师Dave Haas表示,当你可以避免的时候,你应当小心地不要将自己归附到某个特定的供应商或架构,从而使同质架构在有选择时成为一个更安全的选择。

  如果不考虑最佳的方法,那么对于今天的嵌入式和通用系统设计师来说还是有一些选择。如果你从事嵌入式领域的工作,那么你会有好几种异质多内核处理器选择。如果你从事的是通用领域的工作,那么你可能只有一个同质的多内核处理器选择。

  编程决策指南

  在给多内核处理器编程时,现有好几种折衷方法可以让晶体管发挥出最大的性能(见表)。例如,有一个线程对内核的折衷方法。MIPS公司首席架构师Kevin Kissell指出,你必须首先通过分析你的系统来决定哪些应用程序可以被分解成众多的子任务或线程。

传统的多芯片可视电话架构多内核处理器的系统开发挑战

  “单片多内核处理器的并行化常常是可能的,但很少是容易的,而且开发一个较大的科学代码通常比开发一个较小的嵌入式实时应用程序要容易些。”Kissell说。如果希望进一步节省裸片面积,可以考虑采用多线程架构。该想法的意图是最大化每瓦的性能,以及选择可以充分利用存储器和功率预算的架构。“当单线程内核由于存储器时延和缓慢的功能单元而无法充分利用其管道时,多线程可以在面积相对温和增加的情况下提高吞吐量,而且在许多情况下可以取得超线性的性能。”他说。

  举例来说,你可以在增加15%的CPU和缓存子系统面积的情况下将吞吐量提高30%。“如果丢失带宽的恢复允许多线程内核运行在一个比等效单线程内核更低的频率上,而且仍能满足性能目标,那么这就相当于实现了功率优化。”Kissell表示。

传统的多芯片可视电话架构多内核处理器的系统开发挑战

  因此,如果你的应用不需要大量的共享数据或指令,那么分布式存储器方案可能就是最佳选择。“每个处理单元的存储器容量可以针对其专注任务进行调整。”Kissell说,“而且你可以为不同的处理单元使用不同的处理器频率、不同的处理器型号、甚至不同的处理器架构,以取得最佳的面积/功耗/性能值。”但如果有大量的代码和/或数据共享,对称配置可能就是你最好的选择。Kissell指出:“与分布式存储器模型相比,这一方法增加了复杂性,并损失了一点峰值性能,因为共享存储器阵列会有一些竞争,而且各个内核之间必须使用缓存一致性协议,以确保各个内核在每个存储位置能看到相同的值,不管是否存在缓存。”

  但AMD公司的高级研究员Chuck Moore认为,最终用户可能对多内核技术抱有不正确的期望。“多内核架构对提高吞吐量和响应能力非常好,但由于大多数应用仍是串行的,因此它们实际上不会推动多内核架构的发展。”Moore表示,“随着时间的推移,将会有越来越多的并行应用出现,但这需要的时间似乎比大多数人认为的要更长。”

  不同的开发观点

  当谈到多内核处理器时,所有的“教练”都相信他们的团队采用了最好的开发战略。以AMD和英特尔为例,众所周知它们在下一代多内核处理器上采用了截然相反的开发战略,英特尔公司坚信同质内核是正确的方向,而AMD认为未来的方向是异质内核。

  “明天的多内核解决方案将是异质的,”AMD公司的Moore表示,“它们最初将包含架构上兼容但性能不同的内核,但未来将包含更多专用和更高功效的硬件,这些硬件可通过精心定义的应用编程接口(API)进行访问。”

  英特尔和Vivace半导体公司在针对嵌入式应用领域的多内核处理器方面的观点也完全不同。“英特尔公司的嵌入式与通信部门估计,在今后三到四年中该部门开发的所有多核平台中,使用不对称多处理(AMP)的多核设计的比例约为10%。”英特尔公司嵌入式与通信部门平台解决方案架构师Edwin Verplanke表示。“一旦内核数量达到或超过32个,采用AMP的设计可能就会增加。”Verplanke补充道,“我们的一些客户拥有专有的且通常是实时的操作系统,它们不能提供对称多处理(SMP)。这些客户可能对在不同的内核上运行一些特定功能感兴趣。这些功能包括转发引擎、加密、模式匹配等。”这与Vivace半导体公司总裁兼首席执行官Cary Ussery的观点绝然相反。他认为,AMP约占所有嵌入式多核设计的90%。令我们感到奇怪的是,为什么来自不同机构的两位专家对市场抱有全然相反的意见?

  系统优化

  一旦你为下一个系统选择好架构后,假定是一个多处理环境,你很可能需要回顾一下你的代码,以决定如何自然地利用多核和/或多线程的优势。

  异质多处理架构要求预先理解如何对应用代码做出最佳划分,以充分利用可用的线程/内核。换句话说,如何将目标程序最佳地划分成较小的块?同类多处理方案一般没有这种要求,因为操作系统可以根据某些基本的任务定义和预先计算执行大部分的划分工作。

  今天的部分并行性是虚拟的,并知道何时使用它。根据英特尔,如果你的现有代码有较低的性能要求,那么它可能就是一个很好的虚拟化对象。但Sun公司微电子部门负责Niagara项目的首席技术官Rick Hetherington提供了一个略微不同的观点。“对单个内核进行虚拟化没有任何意义。”Hetherington说。当然,Sun的看法可能更局限于通用计算领域。嵌入式领域在复杂度允许的情况下允许对单个内核进行虚拟化。

  如果你对多处理环境不熟悉,你可以考虑一步步用“what-if”方法来找到瓶颈和最佳并行化方案。你还可能会发现,需要将你的代码移植到能够充分利用多处理架构的标准操作系统,如Linux。如果移植数百万行代码行不通的话,系统管理程序也许是你最好的选择。另外一种方法是从内核上卸载通用的任务,如数据加密和解密,从而释放出内核资源去处理更通用的任务。

  多核的未来

  马萨诸塞州科技大学教授、半导体新创公司Tilera的首席技术官Anant Agarwal在今年于美国圣克拉拉举办的Multicore Expo会议上指出,编程和调试多核处理器的工具还处于“黑暗时代”。很显然,多核处理器上有不少未被利用的内核和线程在等待着工作。但问题并不仅仅与工具有关。“第一代多核处理器只是将一组内核简单地集成进系统级芯片(SoC)。”AMCC解决方案架构总监Dan Bouvier指出。由于对付多处理和存储器瓶颈需要不少开销,因此这样做反而会降低性能。“新一代的多核处理器需要更多地关注处理器间的动态变化以及它们对软件配置和性能的影响。”Bouvier说,“在非对称多处理器子系统中集成更上层(第3层以上)加速器的主要挑战是缺少标准和API。”

传统的多芯片可视电话架构多内核处理器的系统开发挑战

  采用OpenGL的计算机图形有这样的标准,OpenGL标准定义了用于产生2D和3D图形程序的交叉语言和交叉平台API。遗憾的是,由于没有在由跨领域专家推动的开源API基础上开发的工具标准,我们只能使用现有的工具,也许我们需要重新考虑我们的设计策略。

  “编程模型和软件堆栈是将多核架构升级到下一层次的关键使能因素(或抑制因素)。”AMD公司的Moore表示,“通过与软件团队的紧密合作,我们将提供相应的解决方案,它可为用户带来巨大的价值。”

  在软件领域又有哪些新进展呢?“随着多核、一致性和均衡的处理器间通信方案被采纳,多处理器设计正在发生根本性的转变,所使用的软件范例和模型也在发生相关变化。”ARM公司负责多处理业务的项目经理John Goodacre表示。上述转变不仅导致了嵌入式领域的全面断裂,而且也迫使系统工程师重新考虑决策过程。“随着SoC设计师考虑从ARM+DSP到多核+DSP+加速器+RISC的转变,以及存储器一致性、连续性和任务同步的挑战,硬件和软件将发生根本性的改变。”Goodacre指出。

  部分这种根本性改变使得系统工程师必须重新考虑他们的设计方法。如果是自底向上的设计方法,其中处理要求基于性能、存储器和其它与系统有关参数决定,那么这可能导致下游出现灾难性问题。

  “如果你在考虑商业应用软件,你应采用自顶向下、从软件到硬件的考虑方式。在嵌入式领域,如果我们仍然采用从底向上的考虑方式,那么因为产品推出太晚将造成开发进度缓慢并丧失市场机会。”Virtutech公司行销副总裁Michel Genard说道。Genard认为,约有50%的嵌入式设计从未成功,就是因为这种有问题的思维方式,而且设计受性能参数而不是商业要求驱动。“相反,我们需要不断重复硬件和软件开发来加快产品上市。”Genard表示。为了增加市场机会,在软件方面最好考虑系统级虚拟化方法,而不要考虑器件级方法。如果做法正确,Genard表示:“这种方法可以为成功的并行软硬件开发提供必要的速度、灵活性和控制能力。”

  本文小结

  随着越来越多的硅片采用多核架构,或大或小的公司市场部门都会不断发现它们的使用价值。因此,我们必须支持多核架构,继续开发理想的架构/软件混合方案,才能保持领先水平。

  最终所有多核方案都将导致并行编程,并使处理器间通信采用更复杂的架构方案,软件事务存储器也大有用处。Agarwal认为,我们必须改变内核的连接方式,确定理想的资源大小,坚信分布式网络和更小的缓存是未来的发展趋势。

  由于有如此多的问题困扰着多核,对新创企业来说就有很大的机会胜出,也许某一天就会发现所有这些未用线程和内核的用武之地。

关键字:架构  异质  编程  晶体管  线程  应用  系统 编辑:汤宏琳 引用地址:https://news.eeworld.com.cn/news/control/200803/article_18155.html

上一篇:Silverthorne上市,MID时代将来临
下一篇:Intel 2008年下半年推出六核处理器

推荐阅读

NVIDIA下一代Hopper架构曝光!采用5nm工艺 晶体管超1400亿
据媒体报道,NVIDIA下一代主要面向高性能计算、人工智能等Hopper架构,将会采用5nm工艺制程,晶体管多达1400亿个,面积核心达到了900平方毫米,是有史以来最大的GPU。  作为参考,NVIDIA自家旗舰Ampere架构的A100为542亿个晶体管(每平方毫米约为6560万个晶体管),AMD阵营中采用Aldebaran架构的Instinct MI200系列为582亿个晶体管(每平方米约为7360万个晶体管),GH100是它们的2.5倍左右。Hopper架构的GH100在5nm的加持下,能够在单芯片封装下轻松做到每平方毫米1.5亿个晶体管。  不过这一说法遭到了存疑,因为当前EUV光罩的限制为858平方毫米,而GH100
发表于 2022-02-10
NVIDIA下一代Hopper架构曝光!采用5nm工艺 <font color='red'>晶体管</font>超1400亿
硬刚台积电!Intel大手笔进军代工业:扶植第三大CPU架构
2月8日最新消息,Intel宣布,它已经准备了一笔规模可观的基金,以帮助大公司、小公司、新公司和老公司利用Intel代工服务公司(IFS)打造颠覆性技术。  这笔10亿美元(约合63.58亿元人民币)投资基金旨在利用Intel最新的创新芯片架构和先进的封装技术,加快客户产品进入市场的时间。此外,它不会对体系架构支持过于挑剔,支持范围涵盖x86、ARM和RISC-V等。  作为新CEO基辛格IDM 2.0战略的一部分,这是Intel再度对向外开放其晶圆代工服务明确示好。Intel还预计其3D封装技术等允许在一块芯片产品上集成不同架构,比如x86+ARM这样的混合模块化芯片等。  与此同时,Intel宣布成为RISC-V国际成员并加入
发表于 2022-02-08
硬刚台积电!Intel大手笔进军代工业:扶植第三大CPU<font color='red'>架构</font>
纯电动汽车动力电池高压充电架构体系方案探讨
的电气架构方案 ●800V动力电池和800V高压系统 目前主流电动汽车乘用市场动力电池系统充电等级为400V,充电桩和车辆高压组件受电流物理限制,提升充电功率的直接方式提高电池的电压。如图1。将动力电池和高压组件提升至800V系统。 ( △图片1 ) ●800V动力电池和400V高压系统考虑成本等因素,利用现有400V电压等级下的零部件平台和充电基础设施,可以考虑在车辆充电接口和动力电池与高压组件之间增加DCDC装置。如图2。 ( △图片2 ) ●400V动力电池和400V高压系统通过电池的串并联分配,设计可配置的动力电池系统,串联时
发表于 2022-01-27
纯电动汽车动力电池高压充电<font color='red'>架构</font>体系方案探讨
BMW的下一代电子电气架构
我其实一直想跟踪全球汽车企业的软件化进度,一个很好的抓手是看电子电气架构和对应的软件功能分配,以及基于SOA的软件开发进度。最近看到IEEE以太网年会里面BMW分享的两份材料: ●《AUTOMOTIVE MACSEC ARCHITECTURE》Dr. Oliver Creighton & Dr. Lars Völker  ●《FROM VEHICLE CENTRIC TO PEOPLE CENTRIC HOW THIS TREND IS CHANGING VEHICLES E/E ARCHITECTURES》G.Smethurst ▲图1.BMW的历史架构发展 主要结论
发表于 2022-01-25
BMW的下一代电子电气<font color='red'>架构</font>
Arm发布Morello SoC原型,使用CHERI架构显著改善内存安全
Arm Morello SoC十多年来,剑桥大学的研究人员一直在开发能力 硬件增强 RISC 指令 (Capability Hardware Enhanced RISC Instructions) 架构模型。今天,Arm 宣布推出首款基于 Arm 的 SoC 与 CHERI 架构集成的硬件,这是其为期五年的 Morello 计划的一个重要里程碑。Arm 与剑桥研究人员密切合作,开发了一个 64 位 Armv8-A 驱动的 SBC(单板计算机),以允许测试其声称的“显着改进”的硬件增强设备安全性。剑桥大学和 Arm 一直在规划一个新架构,以增强基于 Arm SoC的内存访问安全。根据微软和谷歌的研究,通过补丁解决的漏洞中,超过
发表于 2022-01-21
Arm发布Morello SoC原型,使用CHERI<font color='red'>架构</font>显著改善内存安全
EE架构 | 国内主流OEM的中央计算+区域控制架构信息梳理
://mp.weixin.qq.com/s/jJvwOAx7wS3VSaDOjbDjeg3. 比你想象中的要强 解析小鹏汽车 X-EEA 3.0 电子电气架构https://mp.weixin.qq.com/s/O1evq-Qx4WddEX-Tz4SYWA4. 功能域架构火爆之后,区域架构或在2023-2025年迎大规模应用https://mp.weixin.qq.com/s/xvvG_cuhbGplBHN3taWOAg5. 软件定义汽车的核心是什么?谈一谈新一代特斯拉电子电气架构http://www.eeaconference.com/news/751649/6. 浅谈特斯拉的EEAhttps
发表于 2022-01-19
EE<font color='red'>架构</font> | 国内主流OEM的中央计算+区域控制<font color='red'>架构</font>信息梳理
小广播
换一换 更多 相关热搜器件

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 数字电视 安防电子 医疗电子 物联网

词云: 1 2 3 4 5 6 7 8 9 10

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved