AWS“芯”事:从Nitro“神卡”到ARM服务器芯片

云厂商(超大规模数据中心)是服务器厂商又爱又恨的客户,早在几年前,云厂商要求定制化服务器,去掉不用的组件,因为采购规模很大,所以还可以进一步压价,这使得部分强调高价值的服务器厂商直接放弃了这部分市场。

而现在,随着规模的增长,考虑到规模经济效应,越来越多的厂商开始考虑定制芯片,甚至自己研发芯片,这其中,亚马逊云服务(AWS)绝对是先锋式的存在,自研芯片不仅降低了成本,还能成为竞争中的有力武器。

最近,AWS大中华区产品部计算与存储总监周舸介绍了AWS在芯片定制化方面的一些细节。

Nitro:能把各种硬件(包括Mac Mini)变成EC2实例的神器

AWS是云厂商里较早(可能是最早)自行设计芯片的,其根本的出发点还是要用上自己真正适合的东西,在我看来,Nitro是AWS主机区别于友商的一大因素。

AWS从2013年开始用Nitro卡,业内部分技术实力比较强的云厂商也于近年来推出了类似方案。

AWS“芯”事:从Nitro“神卡”到ARM服务器芯片

2020年,Nitro迎来了第四代

为了开开心心的用上自己的芯片,AWS在2015年收购了以色列芯片公司Annapurna Labs(此前双方合作做出了Nitro卡)。

随着芯片实力的加强,AWS的Nitro从一个网卡一步步演进,变成了AWS基础设施非常非常重要的一个组成部分。

Nitro的能力可以总结为三个方面:

Nitro Hypervisior:在专有硬件上承载hypervisior,hypervisior不占用主机资源不影响主机性能,让主机实现近似裸机服务器的性能表现;

Nitro Cards:专有硬件承载存储、网络功能,以及控制EC2实例的业务逻辑;

Nitro安全芯片:硬件层的安全验证能力;

也就是说,Nitro既能作为网卡,也能连接和控制硬盘,控制EBS块存储,它Offload了CPU运行Hypervisior的工作负载,而且还能做一些硬件安全检查,按照周舸的介绍说,有了Nitro,AWS可以快速发展多种EC2实例。

AWS“芯”事:从Nitro“神卡”到ARM服务器芯片

前不久AWS发布的产品中,EC2 Mac实例让人眼前一亮,有人开玩笑说,“Mac滞销了,救救苹果吧”,有人说,“又少了一个买苹果电脑的理由”。

在实际架构中,Mac Mini被直接放在机架里,另一端连的就是Nitro卡,接入了Nitro卡之后就意味着可以像别的EC2实例一样,可以对接各种云服务。

在Nitro卡的帮助下,AWS今年发布了许多新的实例,去年re:Invent的时候还只有270多种实例,而现在有了400个实例,Nitro的贡献很大。在Nitro的帮助下,AWS可以提供支持包括AMD、Intel和ARM在内的多个计算平台。

处理器芯片:ARM处理器Graviton的性价比

如果说苹果发布搭载M1处理器的Mac电脑,让PC厂商觉得ARM个人电脑有搞头,那么AWS在发布搭载Graviton处理器的服务器的做法,则是让ARM服务器芯片厂商和ARM服务器厂商备受鼓舞。

当国内ARM服务器厂商还在强调跑安卓虚拟机的优势的时候,暴露出的是应用场景发展匮乏的根本性问题。

而当看到Graviton实例能支撑包括Web场景,包括MySQL、PostGresql等场景时,才真正看到了ARM服务器真正的用武之地,ARM发展诚可期待。

从周舸的介绍中可以看出来AWS要发展ARM的必要性:

比如在Web网站场景中,用户需要的是更强的IO性能,如果是原来的处理器平台,有许多CPU资源被浪费了,如果改用ARM处理器,则可以省下很多成本。

看一个数字:第一代Graviton靠这一特性能节省40%的成本。

Graviton2推出的时候,AWS对处理器架构有了更深入的思考。

AWS“芯”事:从Nitro“神卡”到ARM服务器芯片

周舸解释说,多核以及多线程技术固然有优势,但并不是所有应用都需要,通用处理器发展了这么多年,既要发展多核多线程,也要照顾那些不需要多核多线程的应用,这使得架构会很复杂,会有很多功能模块,成本会很高,用不到的时候会造成浪费。


AWS“芯”事:从Nitro“神卡”到ARM服务器芯片

Graviton2单核单线程,线程间不争抢Cache,大Cache,性能稳的一批

而Graviton2没什么历史负担,用化繁为简的思路来看,只强调构建好多核能力,而不考虑再构建超线程的能力,比如类似SMT的那种超线程技术。

实测数据发现,Graviton2即使是在跑数据库这种重型工作负载的时候,仍有非常优秀的表现,下图是Postgres TPC HammerDB的测试数据。

AWS“芯”事:从Nitro“神卡”到ARM服务器芯片

采用Graviton2的M6g实例与采用至强处理器的M5实例相比,同等线程数不用超线程的M6g性能表现要比用超线程的M5要强,性能全面压制。

要注意的是,采用了超线程技术的M5实例在48线程之后,64线程到96线程,再增加线程数性能增长很小,可以说是SMT的瓶颈了,而M6g则大概继续保持线性增长。

AWS“芯”事:从Nitro“神卡”到ARM服务器芯片

相同成本比性能,还是m6g赢

如果觉得物理内核对比超线程不公平,那么可以比性价比,实际上,M6g的性价比要高于M5实例(大约30%-40%)。

如果用户有运行在ARM上的实例,那M6g将是非常理想的选择,周舸也表示,有很多在Linux上面跑的程序都可以快速、简单的转到Graviton上面去,用起来并不难。

目前,国外以及国内很多用户都用上了Graviton处理器支撑的实例,既包括Nginx Web服务器类基础的,也包括MySQL和Redis数据库类以及HPC、大数据等IO密集型场景中,应用类型还是挺丰富的。

AWS“芯”事:从Nitro“神卡”到ARM服务器芯片

能效高:Graviton单位能耗释放的性能是x86的两三倍

多元化的算力是必然趋势,随着应用的深入,相信ARM架构会获得更进一步的发展。

现在看来,AWS应该算的上是ARM阵营的一面旗帜。

--------

PS:刚发现AWS在B站发了视频,有兴趣的朋友可以学习下,翻译的字幕也还凑活可以看。

https://b23.tv/zWYgXI

展开阅读全文

页面更新:2024-05-04

标签:多核   芯片   服务器   线程   架构   处理器   性价比   实例   性能   成本   厂商   主机   能力   硬件   技术   科技

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top