驱蚊器喵的翻译平台

Can you hear the gravity?

  1. 1. 服务器面向加速的未来
  2. 2. 第十代CPU基准测试
  3. 3. 缓存定位的影响
  4. 4. 第十代服务器的性能调校
  5. 5. 在 EPYC 规模下确保内存安全

原文地址:https://blog.cloudflare.com/technical-details-of-why-cloudflare-chose-amd-epyc-for-gen-x-servers/
原文标题:Why Cloudflare Chose AMD EPYC for Gen X Servers
原文作者:Nitin Rao
原文写于:2020/03/01

译者:驱蚊器喵#ΦωΦ
翻译水平有限,有不通顺的语句,请见谅。


从一开始,Cloudflare 就使用了基于 Intel CPU 的服务器(还有,Intel 的组件,比如网卡和 SSD )。但是,我们一直对优化我们的服务运行成本感兴趣,以便我们能够以低成本和高毛利提供产品。

我们也注意到像 Spectre 和 Meltdown 漏洞这样的事件,并一直在与外界合作研究解决方案和漏洞利用问题,我们希望在今年晚些时候公布。

我们非常认真地研究了基于 ARM 的 CPU,并继续保持我们的软件对 ARM 架构的更新,以便在每瓦特提供的请求数满足我们的要求时,我们可以使用基于 ARM 的 CPU。

同时,我们已经部署了 AMD 的 EPYC 处理器作为第十代服务器平台的一部分,并且首次完全不使用任何 Intel 的组件。本周,我们公布了第十代服务器的细节。以下是我们的总结,关于我们为什么对最新硬件的设计、规格和性能感到兴奋。

服务器面向加速的未来

每台服务器都可以运行任何服务。这一架构决定有助于我们在整个 Cloudflare 网络中实现更高的效率。它还使我们有更大的灵活性来构建新的软件或采用最新的可用硬件。

值得注意的是,我们没有使用 Intel 的组件。我们没有使用他们的主要服务器组件,比如 CPU、电路板、内存、存储、网络接口卡(或任何类型的加速器)。

这一次,我们用的是 AMD。

与我们之前的服务器(第9代)相比,我们的第十代服务器能够处理的请求提升了 36%,而成本却大大降低。此外,它的L3缓存失误率减少了约 50%,NGINX p99 延迟减少了高达 50%,提供动力的CPU,每个核心的 TDP(thermal design power,热设计功率)降低了 25% 。

第十代CPU基准测试

为了确定与我们的软件堆栈搭配的最有效CPU,我们对关键的工作负载进行了一些基准测试,如密码学、压缩、正则表达式和 LuaJIT。然后,我们模拟了我们看到的典型请求,然后在现场生产中测试服务器,以测量每瓦特提供的请求数。

基于我们的发现,我们选择了单插槽 48 核 AMD 第二代 EPYC 7642。

缓存定位的影响

我们在实验室中测试发现单个 AMD EPYC 7642 表现非常好,击败了我们的第 9 代服务器,AMD EPYC 7642 和服务器的双路英特尔至强白金 6162 CPU 核心总数相同。我们注意到,关键因素是7642的大型L3缓存,这减少了 L3 缓存的失误率,提升了持续工作频率。

第十代服务器的性能调校

与 AMD 合作,我们调整了第二代 EPYC 7642 处理器,以提升额外 6% 的性能。我们通过使用电源确定性和配置 CPU 的热设计功率(TDP, Thermal Design Power)来实现这一目标。

在 EPYC 规模下确保内存安全

最后,我们描述了我们如何使用安全内存加密(SME,Secure Memory Encryption),这是 AMD EPYC 系列的芯片系统架构中一个有趣的安全功能。在不显著降低性能的情况下实现 RAM 加密,给我们留下了深刻的印象。这减少了用户对服务器被盗后泄漏数据的担忧。

我们热衷于设计能够提高我们全球网络的安全性、性能和可靠性的硬件,得到超过 2600 万互联网财产的信任。

本文作者 : meow
This blog is under a CC BY-NC-SA 4.0 Unported License
本文链接 : https://translation.meow.page/post/technical-details-of-why-cloudflare-chose-amd-epyc-for-gen-x-servers/

本文最后更新于 天前,文中所描述的信息可能已发生改变