本发明专利技术适用于计算机技术领域,提供了一种NUMA平台中非核部件数据流缓冲管理的优化方法及系统,NUMA平台中非核部件数据流缓冲管理的优化方法包括以下步骤:步骤A、建立NUMA平台下的处理器非核部件数据流缓冲部件中缓冲项的资源池;所述资源池用于对缓冲部件中的不同数据流队列的缓冲项进行动态管理;步骤B、提取处理器非核部件不同数据流的负载特征;步骤C、资源池的缓冲项根据所述负载特征采用动态管理的策略进行动态分配,并在所述缓冲项使用结束后进行回收。所述的NUMA平台中非核部件数据流缓冲管理的优化方法采用动态管理缓冲项的机制,能有效地提高非核部件数据流缓冲部件中的缓冲项的使用效率,减少数据流的停顿周期。
【技术实现步骤摘要】
-种NUMA平台中非核部件数据流缓冲管理的优化方法及 系统
本专利技术属于计算机
,尤其涉及一种NUMA平台中非核部件数据流缓冲管 理的优化方法及系统。
技术介绍
NUMA (Non-Uniform Memory Access,非均勻内存访问)架构已经出现了快30年, 目前已经被广大厂商采用,并且成为了商用服务器的主流架构。在NUMA架构中虽然所有的 处理器共享内存空间,但是本地节点访问本地内存的延迟时间要少于访问远程内存,所以 传统的研究方向主要集中在应用程序的线程绑定和数据映射问题上,或是通过启发式搜索 的方法、或是机器学习的方法,来减少远程访问,通过最大化本地访问的方法来提高程序的 性能。但是,随着硬件结构的不断进步与发展,在NUMA平台上又出现了许多新的研究问题。 在研究时,选取了 Intel Westmere NUMA平台,对其Uncore (非核部件)子系统的 结构和数据流进行了详细的分析,并使用了 NPB(NAS Parallel Benchmark,美国国家科学 院并行基准测试程序)和STREAM两种不同的基准测试程序和一系列不同的软件配置,测试 了非核部件子系统中GQ(Global Queue,全局队列)和QHL(QuickPath Home Logic,快速通 道宿主逻辑)部件的数据流。我们发现GQ和QHL部件中的数据流存在严重的不均衡和拥 塞问题,在很多时候,GQ和QHL中的某一条队列因为请求压力大而溢出,但是此时其它队列 请求压力小,还有空闲的Entries (缓冲项)未被使用,这样Entries的利用率比较低,而且 会造成队列停顿等待的情况出现。
技术实现思路
本专利技术所要解决的技术问题在于提供一种NUMA平台中非核部件数据流缓冲管理 的优化方法及系统,旨在解决NUMA平台下数据流缓冲项的利用率低的问题。 本专利技术是这样实现的,一种NUMA平台中非核部件数据流缓冲管理的优化方法,包 括以下步骤: 步骤A、建立NUMA平台下的处理器非核部件数据流缓冲部件中缓冲项的资源池; 所述缓冲部件用于暂存处理器非核部件中等待处理的数据流中的数据请求或应答,所述资 源池用于对缓冲部件中的不同数据流队列的缓冲项进行动态管理; 步骤B、提取处理器非核部件不同数据流的负载特征; 步骤C、资源池的缓冲项根据所述步骤B中的负载特征采用动态管理的策略进行 动态分配,并在所述缓冲项使用结束后进行回收。 进一步地,步骤B中所述负载特征提取包含数据到达的数据类型、到达时间间隔 和处理所需的时间,所述数据类型、到达时间间隔和处理所需的时间表征不同数据流队列 中数据流负载压力的特征。 进一步地,所述步骤C中动态管理的策略为:缓冲项的分配根据所述负载特征的 参数,并按照数据流请求的达到密度的变化而调整,请求密集程度高的数据流将获得较多 的缓冲项,请求密集程度小的数据流将获得较少的缓冲项资源。 进一步地,所述缓冲项动态管理的分配采用全部参与动态分配和部分固定部分动 态分配这两种方法相结合的方式。 进一步地,所述动态管理的策略分配缓冲项的组织方法为做标签分类方法,所述 做标签分类方法具体包括以下步骤: 步骤C101、当相应的非核部件接收到数据请求或答复时,从所述资源池中取出一 个缓冲项对数据请求或答复进行缓冲,同时将相应的缓冲项进行标记或归类,其中来自同 一数据流队列的缓冲项所做的标记或归类相同; 步骤C102、将相同标记或归类的缓冲项进行排队,等待接受处理; 步骤C103、数据请求或答复处理结束后,清除缓冲项上所做的标记,并将清除标记 后的缓冲项重新放入所述资源池中,以便下一次动态分配。 本专利技术还提供一种NUMA平台中非核部件数据流缓冲管理的优化系统,包括资源 池建立模块、数据流队列负载特征提取模块和资源池缓冲项动态分配和回收模块; 所述资源池建立模块用于建立NUMA平台下的处理器非核部件数据流缓冲部件中 缓冲项的资源池;所述缓冲部件用于暂存处理器非核部件中等待处理的数据流中的数据请 求或应答,所述资源池用于对缓冲部件中的不同数据流队列的缓冲项进行动态管理; 所述数据流队列负载特征提取模块用于提取处理器非核部件数据流队列的负载 特征; 所述资源池缓冲项动态分配和回收模块中资源池的缓冲项根据负载特征采用动 态管理的策略进行动态分配,并在所述缓冲项使用结束后进行回收。 进一步地,所述数据流队列负载特征提取模块提取的参数包括:数据类型、到达时 间间隔和处理所需的时间,所述数据类型、到达时间间隔和处理所需的时间表征不同数据 流队列中数据流负载压力的特征。 进一步地,所述资源池缓冲项动态分配和回收模块中动态管理的策略为:缓冲项 的分配根据所述负载特征的参数,并按照数据流请求的达到密度的变化而调整,请求密集 程度高的数据流将获得较多的缓冲项,请求密集程度小的数据流将获得较少的缓冲项资 源。 进一步地,所述缓冲项动态管理的分配采用全部参与动态分配和部分固定部分动 态分配这两种方法相结合的方式。 进一步地,当资源池缓冲项动态分配和回收模块接收到数据请求或答复时,从所 述资源池中取出一个缓冲项对数据请求或答复进行缓冲,同时所述做标签单元将相应的缓 冲项进行标记或归类,其中来自同一数据流队列的缓冲项所做的标记或归类相同;并将相 同标记或归类的缓冲项进行排队,等待接受处理;当数据请求或答复处理结束后,所述做标 签单元清除缓冲项上所做的标记,并将清除标记后的缓冲项重新放入所述资源池中,以便 下一次动态分配。 本专利技术与现有技术相比,所述的NUMA平台中非核部件数据流缓冲管理的优化方 法采用动态管理非核部件部件中的缓冲项的机制,能有效地提高缓冲项的使用效率,和减 少非核部件数据流的停顿周期。 【附图说明】 图1是Intel Westmere处理器的NUMA平台及其非核部件的结构示意图; 图2是Intel Westmere处理器的NUMA平台访存不意图; 图3是Intel Westmere处理器非核部件部分的详细结构示意图; 图4是Intel处理器中GQ组件中三条队列固定管理缓冲项的机制的示意图; 图5是Intel处理器中QHL组件中三条队列固定管理缓冲项的机制的示意图; 图6是Intel处理器中GQ组件中三条队列动态管理缓冲项的机制的示意图; 图7是Intel处理器中QHL组件中三条队列动态管理缓冲项的机制的示意图; 图8是NUMA平台下的非核部件数据流的优化方法的流程图; 图9是请求压力大时基于固定管理缓冲项的机制(FEM)和动态管理缓冲项的机制 (DEM)停顿时间的对比图; 图10是有突发情况下基于固定管理缓冲项的机制(FEM)和动态管理缓冲项的机 制(DEM)的平均停顿时间的对比图; 图11是提高请求的完成时间的示意图; 图12是NUMA平台下的非核部件数据流的优化系统的结构示意图。 【具体实施方式】 为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发本文档来自技高网...
【技术保护点】
一种NUMA平台中非核部件数据流缓冲管理的优化方法,其特征在于,包括以下步骤:步骤A、建立NUMA平台下的处理器非核部件数据流缓冲部件中缓冲项的资源池;所述缓冲部件用于暂存处理器非核部件中等待处理的数据流中的数据请求或应答,所述资源池用于对缓冲部件中的不同数据流队列的缓冲项进行动态管理;步骤B、提取处理器非核部件不同数据流的负载特征;步骤C、资源池的缓冲项根据所述步骤B中的负载特征采用动态管理的策略进行动态分配,并在所述缓冲项使用结束后进行回收。
【技术特征摘要】
1. 一种NUMA平台中非核部件数据流缓冲管理的优化方法,其特征在于,包括以下步 骤: 步骤A、建立NUMA平台下的处理器非核部件数据流缓冲部件中缓冲项的资源池;所述 缓冲部件用于暂存处理器非核部件中等待处理的数据流中的数据请求或应答,所述资源池 用于对缓冲部件中的不同数据流队列的缓冲项进行动态管理; 步骤B、提取处理器非核部件不同数据流的负载特征; 步骤C、资源池的缓冲项根据所述步骤B中的负载特征采用动态管理的策略进行动态 分配,并在所述缓冲项使用结束后进行回收。2. 根据权利要求1所述的NUMA平台中非核部件数据流缓冲管理的优化方法,其特征在 于,步骤B中所述负载特征提取包含数据到达的数据类型、到达时间间隔和处理所需的时 间,所述数据类型、到达时间间隔和处理所需的时间表征不同数据流队列中数据流负载压 力的特征。3. 根据权利要求1所述的NUMA平台中非核部件数据流缓冲管理的优化方法,其特征在 于,所述步骤C中动态管理的策略为:缓冲项的分配根据所述负载特征的参数,并按照数据 流请求的达到密度的变化而调整,请求密集程度高的数据流将获得较多的缓冲项,请求密 集程度小的数据流将获得较少的缓冲项资源。4. 根据权利要求1所述的NUMA平台中非核部件数据流缓冲管理的优化方法,其特征在 于,所述缓冲项动态管理的分配采用全部参与动态分配和部分固定部分动态分配这两种方 法相结合的方式。5. 根据权利要求1所述的NUMA平台中非核部件数据流缓冲管理的优化方法,其特征在 于,所述动态管理的策略分配缓冲项的组织方法为做标签分类方法,所述做标签分类方法 具体包括以下步骤: 步骤C101、当相应的非核部件接收到数据请求或答复时,从所述资源池中取出一个缓 冲项对数据请求或答复进行缓冲,同时将相应的缓冲项进行标记或归类,其中来自同一数 据流队列的缓冲项所做的标记或归类相同; 步骤C102、将相同标记或归类的缓冲项进行排队,等待接受处理; 步骤C103、数据请求或答复处理结束后,清除缓冲项上所做的标记,并将清除标记后的 缓冲项重新放入所述资源池中,以便下一次动态分配。6. -种NUMA平台中非...
【专利技术属性】
技术研发人员:罗秋明,蔡晔,周远远,冯禹洪,
申请(专利权)人:深圳大学,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。