企业数据中心当前所采用的标准化服务器是浪费资源的,但未来的系统或将是可配置的,以便能够更好的匹配企业工作负载的需求。
根据一些市场调研的估计,当前在全球范围内,云计算的高速增长已然引起了数据中心业界的高度关注。毕竟,这些数据中心目前已经消耗了至少7%的全球电力供应,并且其耗电量还在进一步的持续增长。这导致IT行业亟待寻求提高数据中心基础设施效率的有效方法,其中甚至包括一些重新考虑计算机和数据中心构建方式方面的尝试努力。
2018年1月在英国曼彻斯特召开的计算机系统与高性能计算领域的顶级盛会HiPEAC 2018上,来自IBM公司的研究人员发表了一篇关于分解式计算机体系架构的论文。这项工作是由欧盟所资助的dReDBox项目的一部分,而该项目又是Horizo??n 2020研究和创新计划的一部分。
服务器解耦意味着将服务器分解为其组成的计算和内存资源,以便根据每项工作负载的具体需要来分配服务器资源。目前,服务器是IT基础架构的基本组成部分,但一项工作负载无法使用比单台服务器更多的内存或CPU资源,也无法轻松地从服务器外部共享任何备用资源。
“部署到数据中心的工作负载往往在其使用资源的方式上存在很大的不成比例。有些工作负载会消耗大量的CPU资源,但并不需要太多的内存;而另一方面,其他的某些工作负载则将消耗比CPU的使用多出高达4个数量级的内存资源。”来自IBM公司的研究工程师Andrea Reale博士说。
在整个企业数据中心内,这意味着一些服务器将用到他们所有的CPU资源,但仍有大量的空闲内存;而对于其他一些服务器则情况正好相反,即使这些资源其实并没有被充分使用,但这些资源也会继续消耗电力资源。在一处典型的数据中心中,大约可能有16%的CPU资源和30%的内存资源会被白白浪费掉了。
但是,如果你企业的数据中心可以在软件控制下调解服务器资源,以便让您企业的每项特定工作负载拥有尽可能多的CPU和具体所需要的内存资源的话,那岂不是更好吗?
计算和内存的分离dReDBox项目旨在通过使用称为“块(brick)”的分解计算和内存模块来解决这个问题。他们通过高速链接连接在一起,并且让足够的计算块与足够的内存块配对,以满足在既定时刻运行的任何工作负载的要求。从理论上讲,这使得企业数据中心的服务器可以针对特定应用程序进行资源的配置调解,以分配尽可能多的CPU核心和内存资源给工作负载,满足作业所需,然后可以将这些资源返回到资源池中,并在工作负载不再需要这些资源时将资源用于其他目的。
作为其研究项目的一部分,dRedBox团队已经构建了一款演示系统,其中brick块是围绕基于ARM的片上系统(SoC)芯片Xilinx Zynq Ultrascale +构建的。计算brick块拥有少量的本地内存,而内存brick块拥有更多数量的DDR4内存,可用于计算brick块。
在dRedBox体系架构中还有另外两种类型的brick块;加速器块可以提供GPU或FPGA硬件来加速应用程序(如机器学习或分析);以及一个控制器块,其是一种管理所有其他块的特殊块。
为了适应匹配现有的数据中心基础设施,dRedBox团队设想任何生产环境中部署的块都应安装在类似标准机架式服务器系统的2U机柜中。这些机柜外壳可能包含任何块类混合。
这种模块化安排的优点在于:其还可以轻松实现升级;企业数据中心的操作运营人员们可以简单地采用具备更高性能的新的计算块来替换,或者将内存块替换为具有更大内存容量的块,而不会让垃圾填满整个服务器。
然而,整个架构的关键部分是将块连接在一起的互连技术。这必须是高速和低延迟性的,否则当计算块读取存储在内存块中的数据时性能会受到影响。
低延迟架构对于其演示系统,dRedBox团队在机箱内使用一款电气交换机矩阵连接块,而光学交换机矩阵连接到机架中另一个机箱内的块。对于IT环境而言,这些交换矩阵通常是电路交换的,这意味着它们在配置块之后会创建专用通道,不像以太网那样的分组交换网络,后者会根据数据分组中的地址将数据路由到其目的地。
根据Reale的介绍,选择这种安排恰恰是因为需要低延迟性。
“通过电路交换与分组交换相比,当从计算机块到内存块时,可以让内存请求的延迟低得多。”他说。
实际上,Reale声称即使使用研究级硬件,dRedBox系统也能够以远远低于1微秒的端到端延迟时间所需对远程存储器的访问,并且生产级处理器芯片以全时钟速度运行,性能会更高。