新闻动态
当前位置:首页 > 新闻动态
【实践】云平台场景下验证Intel RDT技术对云关键工作负载性能保护
2023-09-11

在今天的云数据中心环境中,存在许多共享资源(如L3 Cache、内存带宽等)。虽然通过共享资源提供了良好的性能、可扩展性和吞吐量,但某些应用程序(如后台视频流或转码应用程序)可能会过度利用这些共享资源,从而降低关键工作负载的性能。

Intel RDT(资源调配技术,Resource Director Technology)正是为了保证关键工作负载对L3 Cache和内存带宽的资源需求而提出的。本文对Intel RDT进行了基本介绍,并在云峦服务器操作系统KeyarchOS和云海云操作系统InCloud OS环境下,对Intel RDT在云场景下Openstack和K8s的应用进行了系统验证。

一.   什么是Intel RDT特性


Intel RDT为应用程序、虚拟机和容器如何使用共享资源(如L3 Cache和内存带宽)提供了新的可见性和控制级别。该技术旨在通过一系列的CPU指令从而允许用户直接对每个CPU核心的L3缓存(LLC)以及内存带宽进行监控和分配,有助于提高整个数据中心的效率和灵活性,同时降低总体拥有成本。

在当前内核中,已经实现了对Intel RDT特性的完整支持,整体的架构如下图所示。为了支持RDT功能,Intel增加了新的寄存器MSR用于资源的监控和控制;内核架构实现了相应的MSR 寄存器操作,如功能枚举、资源监控和分配、CLOS/RMID 与线程和CPU核心关联等。这些功能均通过文件系统展现到用户空间。最终从用户的角度来看,Intel RDT 的监控和分配功能是通过默认装载在 /sys/fs/resctrl 下的资源控制文件系统来实现的。


640 (2).png

Intel RDT 架构图

二.   在Openstack虚拟机创建中的应用

在基于K8S底座的OpenStack控制面混布场景中,OpenStack的核心业务可能被运行在K8S上的容器或裸机上的其它工作负载干扰。对OpenStack来说,保证关键业务进程的L3 Cache资源使用很重要。

下图模拟了在不同场景条件下利用OpenStack创建虚拟机的时间。其中,WNN代表未启动NoiseNeighbor服务;NN代表启动NoiseNeighbor服务,未开启RDT服务;NN+RDT代表启动NoiseNeighbor服务,开启RDT服务。

640 (3).png

结果表明:未启用Intel RDT时,在有NoiseNeighbor情况下,OpenStack创建虚拟机的时间相比于没有NoiseNeighbor情况下的时间有明显的升高,增加约32.9%;启用RDT后,虚拟创建时间恢复到原来的94.7%。

三.   在K8s数据库性能保护中的应用

在K8S场景中,K8S上的工作负载可能被其它租户运行的容器干扰,例如数据库核心业务,因此可以使用Intel RDT来保护数据库业务不被其他业务影响。这里使用了CRI-RM+RDT的组合方案来保护数据库业务。


640 (4).png

混布场景下CRI-RM+RDT方案架构

下图给出了在不同场景条件下,NoiseNeighbor对Redis服务的影响。其中,NN代表启动NoiseNeighbor服务,未开启RDT服务;NN+RDT代表启动NoiseNeighbor服务,开启RDT服务。

结果表明:开启RDT特性后,能够减少NoiseNeighbor对Redis服务的影响,使用RDT后,Redis性能基本能恢复到原来的水平。存在NoiseNeighbor干扰的情况下,没有开启RDT时,Redis性能下降约21.59%;开启RDT保护后,Redis性能可恢复到原来的95.45%。同时,RDT对应用的保护能力几乎不受NoiseNeighbor数量的干扰。

四.   总结

通过验证Intel RDT技术在云平台场景下对关键工作负载的影响。结果显示:Intel RDT可以有效保护云平台下关键工作负载的性能,减少工作负载混布时低优先级工作负载对关键工作负载的干扰。

浪潮信息KeyarchOS系统全面适配了最新一代Intel相关的特性,后续IAA、QAT、DSA等硬件特性的场景化实践将会陆续和大家见面,敬请期待!




关注我们

Copyright © 2024 浪潮信息 鲁ICP备13028953号-12

售前咨询

售后服务

回到顶部

回到顶部

售前咨询
售后服务