前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >软硬件融合的时代

软硬件融合的时代

作者头像
老秃胖驴
发布2021-01-18 14:22:01
1.3K0
发布2021-01-18 14:22:01
举报
文章被收录于专栏:陌上风骑驴看IC陌上风骑驴看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、跨异构处理器平台的调度。如何平衡硬件性能和软件灵活性,则是需要重点考虑的事情。

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

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

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-01-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 陌上风骑驴看IC 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 定义
    • 软件
      • 趋势
        • 总结
        相关产品与服务
        全站加速网络
        全站加速网络(Enterprise Content Delivery Network,以下简称 ECDN)为您提供稳定高效的网络加速服务,适用于动静混合、纯动态、跨国、上传等多种加速场景。ECDN 网络资源丰富,同时融合静态缓存、智能路由、协议优化、多路传输、抗抖动等自研技术,加速效果更加显著;接入便捷,功能配置灵活多样,可满足您个性化的业务需求。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档