当前位置: 首页 > 专利查询>英特尔公司专利>正文

最小化运行工作负载上的热/冷页面检测开销的方法技术

技术编号:37159846 阅读:27 留言:0更新日期:2023-04-06 22:24
最小化运行工作负载上的热/冷页面检测开销的方法和装置。利用与一个或多个远存储器层中的存储器页面相关联的元数据填充页面元数据结构。结合访问存储器页面以执行工作负载的一个或多个进程,页面元数据结构被更新以反映对存储器页面的访问。反映存储器当前状态的页面元数据用于确定哪些页面是“热”页面以及哪些页面是“冷”页面,其中热页面是具有相对较高访问频率的存储器页面,并且冷页面是具有相对较低访问频率的存储器页面。该方法的变型包括过滤对感兴趣的存储器区域中的页面的元数据更新,以及基于(一个或多个)条件应用(一个或多个)过滤器来触发元数据更新。回调函数也可以被触发以与存储器页面访问同步执行。以被触发以与存储器页面访问同步执行。以被触发以与存储器页面访问同步执行。

【技术实现步骤摘要】
最小化运行工作负载上的热/冷页面检测开销的方法

技术介绍

[0001]资源分解在诸如云(也称为超大规模)使用之类的新兴计算场景中正变得越来越普遍,其中分解提供了有效管理资源的手段,并且具有统一的形势以便更易于管理。虽然存储分解在若干部署(例如亚马逊S3)中常见,但计算和存储器分解在如Google Cloud之类的超大规模下也变得普遍。
[0002]图1图示了计算和存储分解的最新演进。如所示出的,在Web规模/超融合架构100下,存储资源102和计算资源104被组合在同一机箱、抽屉、橇状件(sled)或托盘中,如机架108中的机箱106所描绘的。在机架规模分解架构110下,存储和计算资源被分解为同一机架中的池化资源。如所示出的,这包括多个池化的计算抽屉112中的计算资源104和机架116中的池化的存储抽屉114。在该示例中,池化存储抽屉114包括机架顶“只是一堆闪存”(JBOF)。在完全分解架构118下,池化的计算抽屉112中的计算资源和池化的存储抽屉114中的存储资源被部署在单独的机架120和122中。
[0003]图2示出了分解架构的示例。诸如第一机架206中的两个计算砖块202和204中的刀片服务器或服务器模块(未示出)中的多核处理器(也称为CPU(中央处理单元))的计算资源选择性地耦合到第二机架212中的存储器砖块208和210中的存储器资源(例如,DRAM DIMM、NVDIMM等)。计算砖块202和204中的每一个包括FPGA(现场可编程门阵列)214和多个端口216。类似地,存储器砖块208和210中的每一个包括FPGA 218和多个端口220。计算砖块还具有一个或多个计算资源,诸如CPU或其他处理单元(统称为XPU),其包括图形处理器单元(GPU)或通用GPU(GP

GPU)、张量处理单元(TPU)数据处理器单元(DPU)、人工智能(AI)处理器或AI推理单元和/或其他加速器、FPGA和/或其他可编程逻辑(用于计算目的)等中的一个或多个。计算砖块202和204经由端口216和220以及交换机或互连222连接到存储器砖块208,交换机或互连222表示任何类型的交换机或互连结构。例如,在采用以太网组构(fabric)的实施例下,交换机/互连222可以是以太网交换机。也可以使用光学交换机和/或组构,以及诸如以太网、InfiniBand、RDMA(远程直接存储器访问)、NVMe

oF(组构上的快速非易失性存储器、汇聚以太网上的RDMA(RoCE)、CXL(计算快速链路)等各种协议。FPGA 214和218被编程为在硬件中执行路由和转发操作。作为选项,诸如CXL交换机之类的其他电路可以与CXL组构一起使用。
[0004]一般而言,计算砖块可以具有几十个或者甚至几百个核心,而存储器砖块(在本文中也称为池化存储器)可以具有实现为分解存储器的万亿字节(TB)或数十TB的存储器。一个优点是从存储器砖块中切割出特定用途的存储器部分,并将其分配给计算砖块(和/或计算砖块中的计算资源)。计算砖块上的本地存储器量相对较小,并且一般限于操作系统(OS)引导和其他此类用途的裸机功能性。
[0005]分解架构的挑战之一是存储器的整体延时增加。节点内的本地存储器可以在100nm(纳秒)左右内被访问,而通过网络或组构访问分解存储器资源的延时惩罚高得多。
[0006]除了分解架构之外,其他存储器架构采用多层,有时被称为“近”存储器和“远”存储器。与分解架构一样,访问远存储器的延时显著大于访问近存储器的延时。
附图说明
[0007]通过结合附图时参考下面的详细描述,本专利技术的前述方面和许多伴随的优点将因其变得更好理解而变得更容易被领会,其中除非另外指明,否则遍及各个视图同样的参考数字指代同样的部分:图1是图示了计算和存储分解的最新演进的图解;图2是图示了分解架构的示例的图解;图3是图示了采用三层的分层存储器架构的抽象视图的图解;图4a是图示了第一采样操作的图解,在该第一采样操作期间,执行页面遍历并且最初填充页面元数据结构;图4b是图示了第二采样操作的图解,在该第二采样操作期间,页面元数据结构被持续采样;图5a是图示了在第一时间帧期间使用页面访问探测器的采样进程的图解;图5b是图示了在第二时间帧期间被更新的页面元数据结构的示例的图解;图5c是图示了在第三时间帧期间对更新的页面元数据结构进行采样的图解;图6是图示了根据一个实施例的过滤示例的图解;图7是图示了使用选择性更新钩子来更新热页面的图解,所述热页面用于热/冷页面检测、预测和移动算法;图8是图示了根据一个实施例在内核存储器中维护相对页面热度数据结构的图解;图9a是图示了根据一个实施例的分解架构中的系统的图解,在该分解架构下,平台通过组构访问远程池化存储器;图9b是包括计算平台的系统架构的高级视图,在该计算平台中CXL存储卡在远存储器层中实现;和图10是其中实现了四层存储器的云环境的示意性图解;和图11是图示了根据一个实施例的在正在进行的运行时操作期间由操作系统执行的操作和逻辑的流程图。
具体实施方式
[0008]本文描述了最小化运行工作负载上的热/冷页面检测开销的方法和装置的实施例。在以下描述中,阐述了许多具体细节,以提供对本专利技术实施例的全面理解。然而,相关领域的技术人员将认识到,本专利技术可以在没有一个或多个具体细节的情况下实践,或者利用其他方法、组件、材料等实践。在其他实例中,没有详细示出或描述公知的结构、材料或操作,以避免模糊本专利技术的各个方面。
[0009]贯穿本说明书提到“一个实施例”或“实施例”意味着结合该实施例描述的特定特征、结构或特性包括在本专利技术的至少一个实施例中。因此,短语“在一个实施例中”或“在实施例中”贯穿本说明书各处的出现不一定都指代同一实施例。此外,在一个或多个实施例中,特定特征、结构或特性可以以任何合适的方式组合。
[0010]为了清楚,本文附图中的各个组件也可以通过它们在附图中的标注来指代,而不是通过特定的参考数字来指代。附加地,指代特定类型组件(与特定组件相对)的参考数字
可以用参考数字继之以“(typ)”(意味着“典型”)而示出。将理解的是,这些组件的配置将是可能存在但是为了简单和清楚没有在附图中示出的类似组件或者其他方面没有用单独的参考数字标注的类似组件的典型配置。相反,“(typ)”不应被解释为意味着组件、元件等典型用于其公开的功能、实现、目的等。
[0011]对多层存储器架构的应用本文描述的教导和原理可以使用各种类型的分层存储器架构来实现。例如,图3图示了采用以下三层的分层存储器架构的抽象视图:1)“近”存储器;2)“远”存储器;以及3) SCM(存储类存储器)。术语“近”和“远”存储器不是指代CPU和相关联的存储器设备之间的物理距离,而是指代用于访问存储在存储器设备中的数据的延时和/或带宽。
[0012]图3示出了平台300,其包括耦合到近存储器304和远存储器306的中央处理单元(CPU)302。计算节点300进一步连接到SCM存储器节点314和316中的SC本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种利用计算平台实现的方法,所述计算平台被配置为访问多个存储器层中的存储器页面,所述多个存储器层包括近存储器层和至少一个远存储器层,所述近存储器层包括耦合到所述计算平台中的处理器的本地存储器,所述方法包括:利用与所述多个存储器层中的存储器页面相关联的元数据填充页面元数据结构;结合在访问存储器页面的所述处理器上执行的一个或多个进程,更新所述页面元数据结构以反映对所述存储器页面的访问;以及使用所述页面元数据来确定哪些页面是热页面以及哪些页面是冷页面,其中热页面是具有相对较高访问频率的存储器页面,并且冷页面是具有相对较低访问频率的存储器页面。2.根据权利要求1所述的方法,进一步包括:检测远存储器层中的存储器页面是热存储器页面;检测所述近存储器层中的存储器页面是冷存储器页面;以及将所述热存储器页面复制到所述近存储器层。3.根据权利要求1或2所述的方法,其中通过执行包括以下各项的操作来初始填充所述页面元数据结构:执行所述远存储器层中的存储器页面的页面遍历;在遍历所述存储器页面时对它们执行采样;根据所述采样生成页面元数据;以及利用生成的页面元数据填充所述页面元数据结构。4.根据前述权利要求中任一项所述的方法,进一步包括:在操作系统内核中注册钩子以触发与内核事件相关联的注册进程,所述内核事件包括访问存储器页面;以及当所述内核事件被触发时,使用所述注册进程来更新所述页面的页面元数据。5.根据前述权利要求中任一项所述的方法,进一步包括:使得能够针对过滤定义一个或多个感兴趣的存储器区域中的页面;以及对页面元数据更新执行过滤,其中对于针对过滤而定义的页面的存储器页面访问更新页面元数据,而对于未针对过滤而定义的页面的存储器页面访问不更新页面元数据。6.根据前述权利要求中任一项所述的方法,其中所述多个存储器层包括远存储器层,所述远存储器层包括通过计算快速链路(CXL)链路或柔性总线链路访问的存储器。7.根据前述权利要求中任一项所述的方法,其中所述多个存储器层包括包含远程存储器池的远存储器层。8.根据前述权利要求中任一项所述的方法,进一步包括:注册当对所述页面元数据结构中的至少一部分页面元数据进行更新时要调用的回调函数;以及在对所述页面元数据结构同步更新时执行所述回调函数。9.根据权利要求8所述的方法,进一步包括在所述回调函数上实现过滤器,所述过滤器具有基于预定条件的触发器,其中当所述过滤器被触发时调用所述回调函数。10.一种计算平台,包括:包括中央处理单元(CPU)的片上系统(SoC),所述中央处理单元(CPU)具有在其上执行
软件的一个或多个核心,所述软件包括具有内核的操作系统和与应用相关联的一个或多个进程;耦合到SoC的本地存储器,包括近存储器层;以及至少一个输入

输出(IO)接口,被配置为耦合到远存储器层中的存储器;其中所述软件的执行使得所述计算平台能够:利用与所述近存储器层和所述远存储器层中的存储器页面相关联的元数据填充页面元数据结构;结合访问近和远存储器层中的存储器页面的一个或多个进程,更新所述页面元数据结构以反映对所述存储器页面的访问;以及采用所述页面元数据来确定哪些页面是热页面以及哪些页面是冷页面,其中热页面是具有相对较高访问频率的存储器页面,并且冷页面是具有相对较低访问频率的存储器页面。11.根据权利要求10所述的计算平台,其中所述软件的执行进一步使得所述计算平台能够:检测远存储器层中的存储器页面是热存储器页面;...

【专利技术属性】
技术研发人员:F
申请(专利权)人:英特尔公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1