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