专栏首页陌上风骑驴看IC软硬件融合的时代

软硬件融合的时代

定义

按照单位计算的复杂度,处理器平台大致分为CPU、协处理器、GPU、FPGA、ASIC。从左往右,单位计算越来越复杂,灵活性越来越低。也即是说CPU具有最高的灵活性以及相对最低的性能;而ASIC则具有最高的性能以及相对最低的灵活性。

如果一个任务在CPU运行,则认为为此任务为软件运行;如果一个任务在协处理器、GPU、FPGA或ASIC运行,则认为此任务是硬件加速运行。而通常除CPU之外,其他处理器都不是图灵完备的,因此异构计算通常是CPU+xPU的架构,也即异构计算是软件和硬件加速协同运行。

硬件

硬件工艺的发展:

苹果公司自研的ARM CPU M1基于TSMC 5nm工艺,具有160亿个晶体管,如此巨大规模的设计,使得M1集成了8核CPU和8核GPU,并且每个处理器都可以非常奢侈的使用内部Register、Buffer或Cache资源(这些是晶体管消耗大户)。

TSMC 5nm刚刚量产,其3nm工艺已经在路上,2nm、1nm也都在未来几年的路线图中。并且,TSMC已经开始在攻关0.1nm工艺,半导体工艺即将进入亚纳米(埃米)时代。近些年来还兴起了3D封装技术,使得集成电路从二维进入三维。以及芯粒(chiplet)机制,把多个芯片裸DIE集成到一起,都进一步的增强了单位面积的晶体管集成度。

这些技术的进步,都意味着在芯片这个尺度,可以容纳更多的晶体管,也意味着更庞大的设计规模。

硬件设计的挑战:

就像是一个硬币的正反两面,硬件工艺的进步,单芯片容纳更多晶体管的同时,芯片的一次性成本也在快速上升。在单个芯片里集成更多的设计,容纳不同架构的大规模处理引擎。如此大规模的设计,其复杂度势必成倍增加,失败的可能性也在增加。成本增高,失败可能性增加,一里一外的影响,共同推高了硬件设计的风险。

另外,软件系统如何驾驭如此大规模的硬件,也是一个非常大的挑战,这需要从体系结构层面,结合软件和硬件一起,来协同应对挑战。

软件

新技术层出不穷,并且快速迭代:

IT行业发展太快,唯一不变的只有“更加快速的变化”。基本上2年一个行业热点技术方向,云计算、大数据、物联网、人工智能、区块链、自动驾驶、5G等新的场景或技术在持续不断的推进着信息技术的迅猛向前。

人工智能是这一切技术的核心,人工智能训练需要大数据,大数据的价值挖掘需要人工智能,人工智能促使云计算落地到更多的场景,人工智能使得自动驾驶可以快速落地。

更加重要的是,已经出现的技术方向还以非常快的速度在快速迭代。例如,云计算在五六年前还主要聚焦在互联网相关的虚拟世界,现如今已经深入到各行各业,并且还在不断的演进。据IDC报告,2020年,全球云IT基础设施支出首次超过传统IT。未来,一切IT设施都将云化。

新的技术对性能提出了更高的要求:

大数据对数据的传输、处理、分析和存储都提出了更高的要求;人工智能需要更多的算力和数据进行训练和推理;区块链通过分布式的共识算法来提高整个系统的可信度,意味着更高的算力和数据吞吐要求;自动驾驶对服务的实时性和可靠性提出了更加苛刻的要求;5G是催化剂,催生了更多的应用和数据;还有更多的新技术在挑战底层的硬件平台的性能极限,无法一一列举。

云计算的发展,对硬件提出了更多的要求:

云计算便捷了IT基础设施的扩容,也方便了更多的用户可以上云。云计算多租户的模式,促使了单个数据中心数以万计的硬件服务器规模。例如AWS在全球拥有 22个地理区域和69个可用区,服务器数量为400万台左右。

与此同时,云计算为用户提供了各种类型的基于云服务的全球性产品,如AWS的服务包括计算、存储、数据库、分析、联网和内容分发、机器学习、移动产品、开发人员工具、管理工具、物联网、安全性和企业应用程序等大类。丰富的服务类型,意味着针对各种特定的场景,如高性能计算、机器学习、内存数据库、网络转发、存储等,进行了定制的、优化的服务设计。

趋势

以TPU为代表的DSA兴起:

2017年图灵奖获得者John M. Hennessy和David A. Patterson认为,随着CPU的性能增加越来越缓慢,未来十年将是体系结构的黄金年代,通过DSA(Domain Specific Architecture, 特定领域架构)的设计,可以进一步提升性能。

DSA是一种ASIC(相比CPU、协处理器、GPU、FPGA),是在传统ASIC基础上向灵活性的一种回调。例如谷歌TPU,支持一些简单的特定指令集,可以通过软件编程,但本质上是ASIC的一种变种。DSA因为其灵活性,相比ASIC能够覆盖相对更多的场景,实现定制设计成本和性能的兼顾。

单芯片多种架构处理器共存:

未来芯片设计规模越来越大,单芯片集成更多架构的处理器成为一种非常常见的设计,也可以称为,多异构混合计算。如何驾驭如此复杂的异构混合计算平台,如何实现更友好的软件编程能力,则成为一个尤为重要的事情。

英特尔推出的One API是一个统一的软件架构,希望能够跨硬件、跨厂商地把不同硬件加速能力统一。OneAPI可以支持CPU、GPU、FPGA以及AI加速等类DSA处理器。

基于容器虚拟化的云原生:

近些年来,随着Docker和Kubernetes的快速流行,云原生的概念深入人心。容器相比虚拟化具有更轻量的安全封装,更小的运行实体粒度以及更多产品服务的相互配合。

表现在硬件上,容器场景对迁移的需求相对不高,但对硬件更细粒度的虚拟化要求非常之高,并且,其灵活性对接口弹性的要求也非常之高,与此同时,会产生更多的东西向流量以及对网络延迟的敏感等。

云计算业务和管理分离:

云最典型的特征是多租户,基于多租户的视角,可以把云简单的分为业务和管理两个层次。在传统计算机虚拟化架构里,业务层也即虚拟机,而管理层则为宿主机,业务和管理共存于CPU运行。

AWS的NITRO系统,创造性的架构重构,把业务和管理分离到两个硬件实体中,业务运行在CPU,而管理则运行在NITRO芯片中。这个趋势最本质的价值在于硬件加速提升性能,而最大的价值则是业务和管理完全分离,提高了安全性。

总结

在云的场景组织下,不再是传统如硬件设备级的资源映射,而是更细粒度级的服务调用映射,庞大系统架构的同时多租户、多系统、多服务共存。

站在硬件加速的角度,CPU的性能瓶颈需要更多专用DSA来加速,而云的场景下则需要更多灵活性的资源及任务调度,甚至是跨CPU、跨异构处理器平台的调度。如何平衡硬件性能和软件灵活性,则是需要重点考虑的事情。

我们要突破软件和硬件的界限,在整个系统的层次,更好的软硬件划分,更好的软硬件协同。更进一步的,则是通过深度的软硬件融合,软件中有硬件,硬件中有软件。这样才能真正构建最优的系统。才能真正的构建更优的硬件架构,以及通过软件来更好的驾驭如此强大的硬件。

从量变到质变,未来必然是软硬件深度融合的发展大趋势!

本文分享自微信公众号 - 陌上风骑驴看IC(MoShangFengQiLv)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-01-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 低功耗 | 从综合到PostRoute 功耗的Gap 有多大

    PPA, Performance, Power, Area 是衡量一颗芯片的基本指标,这三大指标中Power 是最诡诈的,它不像Performance 跟Are...

    老秃胖驴
  • Cadence发布Tempus电源完整性签核方案

    中国上海,2019年11月15日——楷登电子(美国Cadence公司,NASDAQ:CDNS)发布Tempus电源完整性解决方案,业界首款全面的静态时序/信号完...

    老秃胖驴
  • 论STA | SOCV timing report 进一步解析

    昨天发了《论STA | POCV/ SOCV 时序报告解析》后,有好学的朋友提到如下两点没有解释清楚:

    老秃胖驴
  • 给移动互联网做硬件浇盆冷水

    1.移动互联网应用公司做硬件,主要目的有三个:商业变现,用户粘性,跟风; 2.“软件+硬件”并不一定就能提升盈利能力,硬件的品质和体验是关键; 3.移动互联网公...

    腾讯大讲堂
  • 云计算前进之路:硬件的作用仍然重要

    云计算将硬件资源集中化、虚拟化,这种模式在为企业提供灵活的发展空间之余,还带来成本上的降低。当下,很多中小企业对硬件设备的需求疲软,直接导致硬件厂商销售额下降。...

    静一
  • 云计算前进路上绊脚石 硬件作用仍然重要

    云计算将硬件资源集中化、虚拟化,这种模式在为企业提供灵活的发展空间之余,还带来成本上的降低。当下,很多中小企业对硬件设备的需求疲软,直接导致硬件厂商销售额下降。...

    静一
  • 硬件复兴时代真的来了吗?——Makeblock创始人王建军谈智能硬件创业

    镁客网
  • 生物信息学命令行入门的十个简单规则

    随着测序技术的发展,基因组学变得越来越受欢迎,并且已经应用到农业医学环境保护等不同的领域。这使得许多具有生物学和遗传学背景的研究员,面临着大数据分析的挑战。在这...

    生信菜鸟团
  • [TensorFlow深度学习入门]实战八·简便方法实现TensorFlow模型参数保存与加载(pb方式)

    在上篇博文中,我们探索了TensorFlow模型参数保存与加载实现方法采用的是保存ckpt的方式。这篇博文我们会使用保存为pd格式文件来实现。 首先,我会在上...

    小宋是呢
  • YouTube开源播放器中文使用指南

    在这之前笔者使用原生的MediaPlayer、B站开源的IJKVideoView等播放器。直到发现ExoPlayer,这款由YouTube开发的播放器真的是非常...

    吴延宝

扫码关注云+社区

领取腾讯云代金券

,,