阿里云架构师张先国:揭秘 ECS 倚天实例背后的技术
11 月 15 日,阿里云 ECS 倚天实例正式开始商业化。此前,阿里巴巴宣布阿里云未来两年 20% 的新增算力将使用自研 CPU。11 月 5 日,云栖大会“倚天开启云原生算力新时代”专场上,阿里云弹性计算高级架构师张先国作为分享嘉宾,带来了《云原生算力新时代:倚天 ECS 技术揭秘》的主题分享,本文根据该演讲整理而成。
背景:算力需求暴涨、摩尔定律失效
当前,企业云上业务需求趋势正在大幅增长,算力需求呈“爆炸式”递增。
直播 & 短视频行业每天有上亿用户产出 UGC 视频内容发布在不同平台,产生百万核级视频编码算力需求和高业务成本。基因 & 制药行业涉及到的分子动力学模拟、基因序列对比、蛋白结构分析,原来以实验为主,今天计算机模拟为主,从原子-分子单位的行为进行计算,消耗大量的算力。电商行业从流量为主转变为精益化运营过程中所需的 AI 推理、大数据画像,智能精准推荐对算力需求也越来越旺盛。以 AI 为代表的算力规模每三个半月就会翻一倍。
然而,在算力需求暴涨的同时,摩尔定律演进速度却在减慢,硬件技术进步的红利见底。
如今,每迭代一代 CPU,服务器和数据中心的功耗和成本攀升,每千瓦芯片功耗在生命周期内带来上万美金的成本,硬件和芯片的成本也在逐代上涨。
在这类面向多租户的云场景下,超线程(HT)架构的问题逐渐暴露出来,面对一些高密计算任务时很难满足业务需求,共享内存与物理核的机制导致租户之间处理任务可能需要相互排队,导致性能大幅下降;或者互相干扰的情况导致性能波动。
如何能在实现高性能(减少干扰)的同时实现低功耗、低成本?我们认为,此前的技术方案,无法解决业务需求和痛点,需要设计一款云原生芯片,结合现有的阿里云软硬件架构,才能更好地解决客户应用的需求。
我们先来看下结果:在编解码的场景下,ECS 倚天实例和传统实例相比,实现了 80% 的性价比提升,数据库场景、AI 推理场景、大数据场景也都分别有着 30%、70%、50% 的性价比有效提升。目前,ECS 倚天实例已应用于阿里巴巴集团核心业务,并服务科学研究、智能手机行业和多家知名互联网公司。2021 年双 11 期间,天猫核心交易系统平滑迁移至倚天 710 云实例,算力性价比提升 30%;汇量科技广告推理业务使用倚天 710 云实例,性能和网络带宽双双提升,性价比提升 40% 以上。
“倚天”利剑出鞘 软硬一体的云原生 ECS 架构
ECS 倚天实例是如何实现大幅的性价比提升的?我们从不同 ECS 产品架构层面,包括:云原生处理器倚天 710、云计算基础设施处理器 CIPU、云原生应用优化方案 ECS Booster 等不同层面,给大家分享。
倚天 710:高性能、低功耗
我们先来看下倚天 710 处理器在设计上,是如何解决上述问题的。从芯片层面看,主要影响应用性能的四大要素包括 ALU(逻辑计算单元)、Cache、主频、加速指令。
首先,倚天 710 单颗 CPU 即实现了 128 核的高密度设计,高规格实例可以实现线性的性能增长;同时处理器无超线程概念,避免了性能争抢的问题:独享物理核,性能更强劲;独享 Cache,应用缓存更高效。X86 架构是两个 vCPU/HT 共享一个物理核,1 份 ALU(算术逻辑运算单元)。ECS 倚天实例采用的是独享物理核心方式,这可以让算力密集的计算指令不必排队、不必争抢,计算速度更快。
在 Cache 维度,过去两个 vCPU/HT 共享一二级缓存,相互争抢,性能波动较为严重。采用倚天 CPU 独享 Cache 的设计,让 vCPU 之间相互不影响,为重负载计算带来更高性能。
影响算力性能的关键因素,除了核的资源,还有主频。
大家知道为什么多数 Web、App、DB 的生产业务 CPU 使用率的安全水位线是 50%,日常水位低于 30% 吗?
以下图中的视频编码为例,并发超过 4 路后,性能下降 40%;再加上前面说到的核争抢问题,如果客户的实际业务超过 50-60% 水位,关键生产应用将响应放慢,客户感知卡顿甚至超时问题。因此需要将 CPU 使用率安全水位压低,牺牲成本保证安全,浪费了另外 50% 资源。
背后的原因是 x86 功耗大,高算力负载很容易造成功耗过大,温度上升,因此采用降频规避,进而影响了性能。而倚天 710 的功耗是主流 x86 的 1/6,没有任何降频问题。同时也推荐倚天的安全水位可以提高到 70-80%,减少资源浪费。
在云上多租户共用平台,即使用户运行低负载应用,也存在相互影响的风险,倚天彻底解决了此问题。下图展示的案例就可以看到,在视频编解码四路以上时,代表倚天的橙色部分基本保持恒定,X86 则会降低幅度 40%。
值得一提的是,倚天 710 还针对特定算法场景进行了加速与优化。比如像 NEON、SVE 等矢量计算技术,可以让单条指令处理更长的数据,可以大幅提升机器学习、视频编码和高性能计算等场景性能。另外,倚天实例还支持 BF16 和 INT8,在机器学习场景下,大幅提升计算效率,为客户提供更多选择。
以 CIPU 为中心的架构:高密、稳定、强劲
除了芯片本身能力,为了实现降本增效,倚天 ECS 实例基于云原生的硬件架构设计。
传统的服务器常常设计为 2 路或 4 路,通过多 NUMA 互连的方式提升整机 CPU 密度,让一个 OS 调度更多 CPU 算力,却也增加了复杂度。在这种架构下,随着核数增加,网络和存储 IO 也快速翻番,还要保持跨 NUMA cache 一致性,导致应用性能下降;同时也带来爆炸半径过大的问题,在云计算场景下,多路的设计会让局部硬件故障的影响范围更大。
阿里云采用云原生的思想重新设计。倚天 710 CPU 单颗 CPU 即实现了 128 核的高密度设计,同时以 CIPU 为中心的硬件架构,通过 CIPU 连接 2 颗或者更多倚天的芯片,去 NUMA 方案下实现整机核密度更高,避免了跨 NUMA 带来的性能下降,同时整机的高密度又带来了成本下降,使得倚天实例更有竞争力。同时,多单路的硬件机型设计,爆炸半径减半,产品更稳定。
此外 CIPU 硬件本身也是创新性的设计,通过将虚拟化与 IO 转发等数据面卸载到专用硬件上进行加速,消除了原来虚拟化损耗与性能争抢,并大幅加速了 IO,也会使得整体性能更高;VPC 环境下支持弹性 RDMA 加速能力,相比 TCP 时延降低 70% 以上。
ECS Booster
ECS Booster 是阿里云在倚天实例上提供的软件性能优化方案,通过网络中断优化、操作系统优化、应用层优化等技术,针对 web、APP、数据库等主流场景进行优化,运行在倚天实例上阿里云 PaaS 产品的性能已经实现获得显著性能收益,相信也能给客户业务场景带来明显受益。
全场景性能大幅提升
11 月 15 日,ECS G8y(倚天实例)将正式上线,产品规格覆盖 1-128 核,全面搭载 eRDMA 加速能力,可以大大提升软件性能。
ECS G8y(倚天)有着性能卓越、生态丰富、绿色降本三个方向的业务价值,其中关于性能收益及增长方面有着很好的数据表现。前文说到的云原生处理器和创新的硬件架构,最终在应用上有哪些性能收益?我们从 Web、App、Media、DB、大数据、科学计算、AI 七个最广泛场景来看产品性能表现。
Web 场景:综合性能提升 30%
Web 场景是互联网中应用场景最多、消耗服务器资源最多的场景。为了解决移动场景流量和体验问题,服务端常常采用网页压缩方案节约带宽。但压缩算法非常消耗 CPU 算力和时间,导致队列中多客户请求时延变长。
倚天拥有独立 CPU 物理核,结合 SVE 指令加速,单 vCPU 数据压缩性能翻倍,前面提到的体验影响减半。Web 场景包括 Nginx、Apache、NodeJS、PHP 等排名靠前的应用,倚天对比阿里云 G7 系列实例,综合性能提升 30% 左右。
阿里云防火墙 CFW 已经实现倚天 ECS 迁移。CFW 为客户业务提供安全防护,需进行大量正则表达规则进行扫描,消耗大量算力,影响业务性能。采用独享物理核的 ECS 倚天实例,实现安全和体验收益兼得。在不同正则匹配性能优势分别为 23%、40%、28%。
App 编程语言性能:多数性能提升 40%
不管是编译型语言 C、Go 等还是无需编译的语言 Java、Python 等,都很好地平滑兼容 ARM 架构。我们可以看到,使用开源的 benchmark 进行测试,应用运行在 ECS 倚天实例上获得的性能提升多数有 40%。
编解码场景:20-40% 性能提升
短视频和直播是如今最火热的应用,UGC 时代内容指数级增长,编解码算力消耗也随之增长。如今最流行的 H.264 算法速度快,节约算力,但是编码后的文件更大,消耗更多存储和带宽。H.265 可以很好解决此问题,使用比重快速增长,但多消耗 1 倍算力成本。
无论是在哪种场景下,倚天的视频编解码性能均比 x86 实例更高,成本更低。
如图,上述两类视频编码规范的编码器 X.264、X.265 运行在 ECS 倚天实例上,都收获了 20-40% 性能提升;这个过程中我们进行了大量矢量指令优化,使性能大幅提高,优化软件可以向客户输出。
数据库场景:10-30% 性能提升
数据库场景下,运行在 ECS 倚天实例上,相较与 G7 实例,开源软件 Redis、Memcached 有 30% 性能优势,MySQL 和 PGSQL 有 10-20% 性能优势。
阿里集团电商业务所使用的 Tair 数据库也已经迁移到倚天平台,协议上兼容 Redis,性能是开源 Redis 数据库的 3 倍。Tair 支撑了多年天猫双 11 大促,有强大的缓存能力,需要把数据缓存到内存,消耗 Memory 资源。我们采用倚天强大的算力优势进行数据压缩,让内存成本降低 60%,叠加倚天实例自带的 eRDMA 加速能力,可以提升吞吐量 80%,时延降低 15% 以上。目前基于 ECS 倚天实例的 Tair 产品已经上线,大家可以在云上使用。
大数据场景:20-60% 性能提升
在需要消耗大量 IO、大量计算以及高内存带宽的大数据场景中,ECS 倚天实例由于拥有独立物理核、Cache 更大、网络时延更低等特点,运行 Spark 应用性能收益 20% 以上,搜索 Elastic Search 和流计算 Flink 场景性能收益达到 40% 和 60%。上述大数据开源软件,直接编译即可在倚天实例上运行,欢迎大家试用。
科学计算:20% 以上性能提升
在科学计算等场景下,相比于同规格 X86 云实例,运行在倚天实例上的基因、制药、汽车领域等方面的算法都有 20% 左右的收益,我们近期有两个伙伴测试分子动力学和 EDA 应用,甚至实现了性能翻倍。这主要是由于科学计算场景使用的主要是物理核资源,倚天实例与同规格的 X86 实例相比,核物理核数量是后者的两倍,计算性能更高。
阿里云弹性高性能计算平台 EHPC、弹性伸缩等云上工具已经支持 ARM 平台,主要科学算法也都可以平滑兼容。
AI 推理:性能提升 1 倍
AI 场景算力消耗增长飞快,成本占比急剧上升。推理场景下典型的搜推广客户都无法接受下调精度(影响模型准确度)降本。阿里云弹性计算团队和达摩院合作,推出了 HIE-Engine 动态量化方案,利用倚天实例的 INT8 加速能力,可将 RestNet 和 Bert 场景性能提升 1 倍,且精度没有损失。
降低碳排放、降低成本
对于企业客户来说,除了业务性能表现,IT 碳排放和成本也很重要的一环。今天的这款倚天处理器,可以让 CPU 负载 30% 的情况下,每 vCPU 功耗比 x86 降低 6 倍,整机功耗降低 60% 以上。碳排放也等比降低。全国 IDC 年耗电量约 2000 多亿度,相当于两个三峡大坝的发电量,采用倚天进行替换,可以省下一整个三峡的电量。
除了绿色低碳,企业还能降低 IT 成本,大家可以看图中的定价,倚天对比最新一代主售实例定价是 30%、23%、22% 的降本幅度,将技术收益让利给客户。使用这款产品会获得更好的性价比。在前面提到的七大主要应用场景,平均性价比(性能÷价格)收益可达 50-80%。
丰富的软件生态
下图为 ARM 服务器软件生态,包括主流 OS、编程语言、Lib 库、开源应用。这些软件我们都做过使用和测试,可以做到无需修改代码即可运行。迁移文档、迁移工具等方案可访问下方链接:
https://help.aliyun.com/document_detail/462190.html
丰富的应用案例
目前在阿里云产品中,RDS、容器、PAI、视频云等多款 PaaS 产品接入倚天 ECS,阿里集团电商业务也使用了倚天 ECS,有效支撑阿里 618、99 大促以及双 11 大促多个活动。外部有短视频、Web、游戏、广告等客户提前使用了新产品。
最后总结一下关键词。
技术关键词
倚天 710 云原生处理器(独立物理核、重新定义 CPU 水位)、CIPU 为中心的硬件架构(业界最高密度、NUMA less 提高稳定性、硬件加速)、ECS booster 方案(加速应用性能)
关键数字
性能提升 30% 以上,性价比提升 50%,节约用电 1 个三峡
再次感谢各位见证硬核技术的倚天专场,今天倚天的一小步,将是改变未来 IT 历史、改变云计算浪潮的一大步,感谢大家!
评论