一种基于NUMA架构平台下访存性能优化方法与流程

    技术2026-08-19  12


    本发明主要应用于计算机。


    背景技术:

    1、随着计算机硬件技术的飞速发展,numa(non uniform memory accessarchitecture,非统一内存访问结构)成为高性能计算的主流架构。numa系统中包含多个numa节点,每个numa节点上分布着不同的进程任务。

    2、飞腾信息技术有限公司在其申请的发明专利文献“numa系统的性能调优方法、装置及计算机设备”(公开号:cn114528075a,申请号:cn202111630836.6)中公开了一种uma系统的性能调优方法。该方法包括:获取待调numa系统中的节点信息;获取当前测试需求所需的内存量以及numa节点量;根据获取的所述节点信息以及所述内存量、numa节点量进行numa节点的调用,并将调用的numa节点绑定对应本地内存。但该方法没有阐述对节点分配的优化方法。

    3、以国产飞腾系列处理器为例,该处理器基于arm64体系架构,其下的ft2000p采用numa架构来加速程序运行。在工程运用中,经常出现程序内存跨numa节点分布的情况,导致跨节点内存访问频繁,程序运行效率下降。


    技术实现思路

    1、为了解决在numa架构平台下因跨numa节点导致程序运行效率低下的问题,本发明提出一种基于numa架构平台下访存性能优化方法。通过搜索程序numa节点最优排布来提高程序在飞腾平台下程序的运行效率,包括以下步骤:

    2、步骤a、记录该处理器的numa节点个数和各节点的访存距离;

    3、步骤b、初始化退火温度和实验次数,根据程序要用到的节点个数和节点距离随机选择初始访存距离;

    4、步骤c、随机选择节点,重新计算跨节点访存距离,若新的访存距离更短,则替换,否则继续;

    5、步骤d、设定退火概率,若满足条件,则选择接受新的访存距离,若不满足,则不接受新的访存距离;

    6、步骤e、根据实验次数循环,将循环结束时的节点排布作为程序最优numa节点排布。

    7、进一步的,所述步骤b中,初始化退火温度t和实验次数g,根据节点个数和节点距离随机选择初始访存距离r为:

    8、

    9、式中,n表示程序要用到的节点个数,r(m,k)表示m节点和k节点之间的访存距离。

    10、进一步的,步骤d中,设定退火概率p,如下式所示:

    11、

    12、式中,rand(0,1)表示0到1内的随机小数,r2表示节点访存距离。

    13、本发明解决跨numa节点导致的运行效率低下问题,有效提高飞腾平台下程序的运行效率,具有实施简单、可复用的优点。



    技术特征:

    1.一种基于numa架构平台下访存性能优化方法,其特征在于:

    2.根据权利要求1所述的一种基于numa架构平台下访存性能优化方法,其特征在于:所述步骤b中,初始化退火温度t和实验次数g,根据节点个数和节点距离随机选择初始访存距离r为:

    3.根据权利要求1所述的一种基于numa架构平台下访存性能优化方法,其特征在于:步骤d中,设定退火概率p,如下式所示:


    技术总结
    本发明提供了一种NUMA架构平台下访存性能优化方法,解决在工程中因跨节点内存访问导致的程序运行效率下降问题,属于计算机技术领域。首先记录该处理器的NUMA节点个数和各节点的访存距离;初始化退火温度和实验次数,根据程序要用到的节点个数和节点距离随机选择初始访存距离;随机选择节点,重新计算跨节点访存距离,若新的访存距离更短,则替换,否则继续;设定退火概率,若满足条件,则选择接受新的访存距离,若不满足,则不接受新的访存距离;最后根据实验次数循环,将循环结束时的节点排布作为程序最优NUMA节点排布。本发明使用模拟退火算法,搜索平台NUMA节点最优排布,提高程序在飞腾平台下程序的运行效率,具有实施简单、可复用的优点。

    技术研发人员:茆禹
    受保护的技术使用者:中国船舶集团有限公司第七二四研究所
    技术研发日:
    技术公布日:2024/10/24
    转载请注明原文地址:https://symbian.8miu.com/read-47153.html

    最新回复(0)