CN116302534A - 一种服务器存储设备性能优化方法、装置、设备及介质 - Google Patents
一种服务器存储设备性能优化方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN116302534A CN116302534A CN202310266114.XA CN202310266114A CN116302534A CN 116302534 A CN116302534 A CN 116302534A CN 202310266114 A CN202310266114 A CN 202310266114A CN 116302534 A CN116302534 A CN 116302534A
- Authority
- CN
- China
- Prior art keywords
- target
- cpu
- memory
- numa node
- configuration information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种服务器存储设备性能优化方法、装置、设备及存储介质,涉及计算机技术领域。该方法包括:获取操作系统的内存配置信息;根据所述内存配置信息筛选出内存资源最优的目标NUMA节点,并将所述目标NUMA节点内的CPU作为目标CPU;隔离所述目标CPU,并将目标进程绑定至所述目标CPU,以便所述目标进程独自在所述目标CPU上运行。将内存资源最优的目标NUMA节点内的CPU作为目标CPU,并通过隔离该目标CPU,避免系统使用其进行负载均衡操作,然后将目标进程绑定至该目标CPU,以便目标进程独自在上述目标CPU上运行,可以保证目标进程独占所绑定的最优的硬件资源,能够提升系统性能。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种服务器存储设备性能优化方法、装置、设备及存储介质。
背景技术
目前,服务器存储设备中CPU(Central Processing Unit,中央处理器)数量较少的设备通常采用SMP架构(即Symmetric Multi-Processor,对称多处理器结构,是指服务器中多个CPU对称工作,无主次或从属关系),其特点是各CPU可以平等地访问总线及内存资源,即所有的CPU资源是共享的,也称为UMA架构(即Uniform Memory Access,一致性内存访问架构),工作负载可以均匀地分配到所有的CPU之上。然而由于总线性能有限,对于拥有几十个甚至更多CPU的系统,CPU对于总线资源就会产生竞争,形成非常明显的性能瓶颈。因此多CPU的大型系统通常采用NUMA架构(Non Uniform Memory Access,非一致性内存访问架构,是指各节点拥有多个CPU及独立的本地内存和IO(Input/Output,输入/输出)资源,与其他节点可进行互联和信息交互),其特点是CPU除了可以访问本地内存资源外,还可以通过互联模块访问其他CPU的内存资源,但访问远地内存的延时较访问本地内存明显增大。
在低端服务器存储设备设计时出于对PCB(Printed Circuit Board,印制电路板)空间和成本的考虑,NUMA架构的多CPU系统通常不能实现满配内存插槽,在客户实际使用时也会出现插槽不能插满内存的情形。这样就导致了各CPU的内存资源分配不均的情况,即各NUMA节点(NUMA node)性能不均衡的情况,虽然CPU可以访问远地内存,但其性能会明显下降,不能发挥设备的最佳性能,同时也会导致关键进程的运行性能下降。
发明内容
有鉴于此,本发明的目的在于提供一种服务器存储设备性能优化方法、装置、设备及介质,能够保证目标进程独占所绑定的最优的硬件资源,提升系统性能,实现不更换设备,不扩容内存,在不增加成本的情况下进行设备性能提升,实现服务器存储设备硬件资源的有效利用。其具体方案如下:
第一方面,本申请公开了一种服务器存储设备性能优化方法,包括:
获取操作系统的内存配置信息;
根据所述内存配置信息筛选出内存资源最优的目标NUMA节点,并将所述目标NUMA节点内的CPU作为目标CPU;
隔离所述目标CPU,并将目标进程绑定至所述目标CPU,以便所述目标进程独自在所述目标CPU上运行。
可选的,所述根据所述内存配置信息筛选出内存资源最优的目标NUMA节点,包括:
根据所述内存配置信息确定每个NUMA节点对应的所有内存条,并计算每个NUMA节点对应的内存总容量;
根据所述内存总容量确定出内存总容量最大的NUMA节点,作为所述目标NUMA节点。
可选的,获取操作系统的内存配置信息,包括:
利用目标命令查看操作系统的内存配置信息;所述内存配置信息包括每个NUMA节点包含的处理器内核信息、每个内存对应的CPU套接字通道号、每个内存的容量、每个NUMA节点对应的内存条通道号。
可选的,所述将目标进程绑定至所述目标CPU之前,还包括:
确定所述目标进程依赖的目标设备,并利用所述目标NUMA节点对应的插槽连接所述目标设备。
可选的,所述隔离所述目标CPU,包括:
重新启动所述操作系统,并重新配置中断均衡服务,以便重启后所述目标CPU不支持操作系统的负载均衡操作。
可选的,所述将目标进程绑定至所述目标CPU,包括:
确定所述目标进程对应的设备中断号;所述目标进程包括核心进程、高计算量的进程、高运行时间要求的进程中的一个或多个;
将所述设备中断号绑定至所述目标NUMA节点内的目标CPU。
可选的,所述将所述设备中断号绑定至所述目标NUMA节点内的目标CPU,包括:
若所述设备中断号的数量大于所述目标CPU的数量,则按照均分方式将所述设备中断号分配给所述标NUMA节点内的每个目标CPU。
第二方面,本申请公开了一种服务器存储设备性能优化装置,包括:
信息获取模块,用于获取操作系统的内存配置信息;
筛选模块,用于根据所述内存配置信息筛选出内存资源最优的目标NUMA节点,并将所述目标NUMA节点内的CPU作为目标CPU;
隔离及绑定模块,用于隔离所述目标CPU,并将目标进程绑定至所述目标CPU,以便所述目标进程独自在所述目标CPU上运行。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述的服务器存储设备性能优化方法。
第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中计算机程序被处理器执行时实现前述的服务器存储设备性能优化方法。
本申请中,获取操作系统的内存配置信息;根据所述内存配置信息筛选出内存资源最优的目标NUMA节点,并将所述目标NUMA节点内的CPU作为目标CPU;隔离所述目标CPU,并将目标进程绑定至所述目标CPU,以便所述目标进程独自在所述目标CPU上运行。可见,将内存资源最优的目标NUMA节点内的CPU作为目标CPU,并通过隔离该目标CPU,避免系统使用其进行负载均衡操作,然后将目标进程绑定至该目标CPU,以便目标进程独自在上述目标CPU上运行,即保证目标进程独占所绑定的最优的硬件资源,由此提升系统性能,实现不更换设备,不扩容内存,在不增加成本的情况下进行设备性能提升,实现服务器存储设备硬件资源的有效利用,使关键进程可以得到更好的硬件资源配置,发挥设备的最佳性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请提供的一种服务器存储设备性能优化方法流程图;
图2为本申请提供的一种具体的服务器存储设备性能优化方法流程图;
图3为现有技术中负载均衡后服务器存储设备运行参数示意图;
图4为本申请提供的一种服务器存储设备性能优化后设备运行参数示意图;
图5为本申请提供的一种服务器存储设备性能优化装置结构示意图;
图6为本申请提供的一种电子设备结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有技术中,在低端服务器存储设备设计时出于对PCB空间和成本的考虑,NUMA架构的多CPU系统通常不能实现满配内存插槽,在客户实际使用时也会出现插槽不能插满内存的情形。这样就导致了各CPU的内存资源分配不均的情况,即各NUMA节点性能不均衡的情况,虽然CPU可以访问远地内存,但其性能会明显下降,不能发挥设备的最佳性能,同时也会导致关键进程的运行性能下降。为克服上述技术问题,本申请提出一种服务器存储设备性能优化方法,能够保证目标进程独占所绑定的最优的硬件资源,提升系统性能,实现不更换设备,不扩容内存,在不增加成本的情况下进行设备性能提升,实现服务器存储设备硬件资源的有效利用。
本申请实施例公开了一种服务器存储设备性能优化方法,应用于NUMA架构,参见图1所示,该方法可以包括以下步骤:
步骤S11:获取操作系统的内存配置信息。
本实施例中,首先获取操作系统的内存配置信息,具体的,利用目标命令查看操作系统的内存配置信息;其中,上述内存配置信息包括但不限于每个NUMA节点包含的处理器内核信息、每个内存对应的CPU套接字通道号、每个内存的容量、每个NUMA节点对应的内存条通道号,即为了后续根据内存配置信息筛选出内存资源最优的目标NUMA节点,需要先获取相关的内存资源池参数;其中,每类配置信息可以通过相应的命令获取。例如,使用lscpu命令查看各NUMA node所包含的(处理器内核CPU core);使用dmidecode-t memory命令查看各内存对应的CPU socket通道号(CPU套接字通道号),并确认各内存容量;查看CPU数据手册,确认各NUMA node所包含的DIMM(Dual-Inline-Memory-Modules,双列直插式存储模块)通道号,即内存条通道号。
步骤S12:根据所述内存配置信息筛选出内存资源最优的目标NUMA节点,并将所述目标NUMA节点内的CPU作为目标CPU。
本实施例中,根据内存配置信息筛选出内存资源最优的目标NUMA节点,并将目标NUMA节点内的CPU作为目标CPU,可以理解的是,NUMA节点包括CPU和内存资源,本实施例中,将内存资源最优的目标NUMA节点内的CPU作为目标CPU。
本实施例中,所述根据所述内存配置信息筛选出内存资源最优的目标NUMA节点,可以包括:根据所述内存配置信息确定每个NUMA节点对应的所有内存条,并计算每个NUMA节点对应的内存总容量;根据所述内存总容量确定出内存总容量最大的NUMA节点,作为所述目标NUMA节点。即根据内存配置信息可以确定出每个NUMA节点对应的所有内存条,然后通过分别计算每个NUMA节点对应的内存总容量,根据得到的所有内存总容量进行排序,选择内存总容量值最大的NUMA节点作为目标NUMA节点,即通常情况下内存总容量能够反映内存资源的优劣,因此内存总容量值最大的NUMA节点可以认为是内存资源最优的目标NUMA节点。
可以理解的是,现有技术中,对于NUMA架构服务器存储设备性能优化通常采用将任务绑定CPU或者绑定NUMA node的方法,一般而言如果各NUMA的内存资源达到满配,该方法可以通过提高L1/L2cache命中率,避免产生进程在CPU间切换时出现调度开销及大量L3cache失效的问题,来有效提高系统性能,cache为介于处理器和内存之间的高速小容量存储器,通常分为L1/L2/L3三级为。但对于内存非满配的NUMA架构服务器存储设备来说,由于各NUMA的内存资源不同,简单的绑定操作并不能保证所绑定的硬件资源是最优的,同时进行硬件资源绑定后也不能保证所绑定的资源不会被其他进程占用,这样就形成了性能提升的瓶颈。因此,本实施例针对内存非满配的NUMA架构服务器存储设备,根据内存配置信息筛选出内存资源最优的目标NUMA节点支持目标进程运行,提高设备性能。
步骤S13:隔离所述目标CPU,并将目标进程绑定至所述目标CPU,以便所述目标进程独自在所述目标CPU上运行。
本实施例中,确定目标NUMA节点后,对目标CPU进行隔离,即对标NUMA节点进行隔离,隔离后的目标CPU不再受系统的负载均衡控制,然后将目标进程绑定至目标CPU,以便目标进程能够独自在目标CPU上运行,即目标进程独占目标NUMA节点的资源,上述目标进程可以为关键的进程,例如系统的核心进程、计算量大的进程以及运行时间要求高的进程等,上述目标进程可以为一个或几个。
具体的,所述隔离所述目标CPU,包括:利用预设命令隔离所述目标CPU。例如,使用isolcpus命令将要隔离的CPU进行隔离设置。本实施例中,所述隔离所述目标CPU,包括:按照预设修改规则对目标文件进行修改,以隔离所述目标CPU。例如,通过修改Linux系统下/boot/grub/grub.conf文件,添加isolcpus=0,1,2,3,将CPU0-3隔离出来,系统就不会自动对其进行负载均衡操作。
本实施例中,所述隔离所述目标CPU,可以包括:重新启动所述操作系统,并重新配置中断均衡服务,以便重启后所述目标CPU不支持操作系统的负载均衡操作。即在隔离目标CPU后,重启操作系统,使CPU隔离设置生效。本实施例中,所述重新配置中断均衡服务包括,利用用于中断均衡服务的预设命令新配置中断均衡服务;如使用service irqbalancestop命令关闭中断均衡服务。本实施例中,可以仅关闭对目标CPU的负载均衡操作,即隔离后系统的均衡操作不会再对目标CPU生效。
本实施例中,所述将目标进程绑定至所述目标CPU之前,还可以包括:确定所述目标进程依赖的目标设备,并利用所述目标NUMA节点对应的插槽连接所述目标设备。可以理解的是,目标进程可能会存在必须依赖的一些设备,而为了保证目标进程的运行,需要将这些被依赖的设备也使用被隔离的资源,因此,本实施例中将目标进程绑定至目标CPU时,需要确定目标进程依赖的目标设备,并利用目标NUMA节点对应的插槽连接目标设备,即将目标设备插在目标NUMA节点所属的插槽上,当然在利用所述目标NUMA节点对应的插槽连接所述目标设备之前,还需要通过检测判断所述目标设备是否能够更换IO资源,若能更换IO资源,则执行所述利用所述目标NUMA节点对应的插槽连接所述目标设备的操作,若不能更换IO资源,则不对当前连接进行改变。即若目标进程所依赖的设备可更换NUMA node的IO资源,则将该设备插在目标NUMA node所属的插槽上。
本实施例中,所述将目标进程绑定至所述目标CPU,可以包括:确定所述目标进程对应的设备中断号;所述目标进程包括核心进程、高计算量的进程、高运行时间要求的进程中的一个或多个;将所述设备中断号绑定至所述目标NUMA节点内的目标CPU。即在进程绑定时,具体可以通过定目标进程对应的设备中断号,然后根据确定的设备中断号,将这些设备中断号绑定至目标NUMA节点内的目标CPU,由此完成目标进程与目标CPU的绑定,绑定后目标CPU仅支持存在绑定关系的这些目标进程在其上运行。
本实施例中,所述目标进程绑定至所述目标CPU之后,还可以包括:根据所述目标进程的信息以及所述目标CPU的信息,生成绑定列表,并保存所述绑定列表,以便后续根据所述绑定列表查看当前的进程绑定情况。
本实施例中,所述将所述设备中断号绑定至所述目标NUMA节点内的目标CPU,可以包括:若所述设备中断号的数量大于所述目标CPU的数量,则按照均分方式将所述设备中断号分配给所述标NUMA节点内的每个目标CPU。即设备中断号的数量并非固定的,上述目标CPU的数量可以为多个,也就是说,可能会存在设备中断号的数量大于所述目标CPU的数量的情况,在这种情况下,为了尽量保证负载均衡,尽量将设备中断号均匀分配到各CPU。
本实施例也可用于内核优化,通过相同的流程,实现内存非满配的NUMA架构服务器存储设备性能自动调优的目的。
由上可见,本实施例中获取操作系统的内存配置信息;根据所述内存配置信息筛选出内存资源最优的目标NUMA节点,并将所述目标NUMA节点内的CPU作为目标CPU;隔离所述目标CPU,并将目标进程绑定至所述目标CPU,以便所述目标进程独自在所述目标CPU上运行。可见,将内存资源最优的目标NUMA节点内的CPU作为目标CPU,并通过隔离该目标CPU,避免系统使用其进行负载均衡操作,然后将目标进程绑定至该目标CPU,以便目标进程独自在上述目标CPU上运行,即保证目标进程独占所绑定的最优的硬件资源,由此提升系统性能,实现不更换设备,不扩容内存,在不增加成本的情况下进行设备性能提升,实现服务器存储设备硬件资源的有效利用,使关键进程可以得到更好的硬件资源配置,发挥设备的最佳性能。
例如图2所示为一种具体的服务器存储设备性能优化方法,主要包括以下步骤:
步骤一:查询系统配置,判断内存资源最佳的CPU和NUMA node,具体包括:
1、使用lscpu命令查看各NUMA node所包含的CPU core;
2、使用dmidecode-t memory命令查看各内存对应的CPU socket通道号,并确认各内存容量;
3、查看CPU数据手册,确认各NUMA node所包含的DIMM通道号;
4、计算各NUMA node所插入的内存总容量;内存总容量=NUMA node所包含的各内存条容量之和;
5、内存总容量最大的NUMA node即为内存资源最佳的NUMA node,其包含的CPUcore即为内存资源最佳的CPU。
步骤二:将内存资源最佳NUMA node所包含的CPU设置隔离,具体包括:
1、使用isolcpus命令将要隔离的CPU进行隔离设置;例如,通过修改Linux系统下/boot/grub/grub.conf文件,添加isolcpus=0,1,2,3,将CPU0-3隔离出来,系统就不会自动对其进行负载均衡操作;
2、若关键进程所依赖的设备可更换NUMA node的IO资源,则将该设备插在目标NUMA node所属的插槽上;
3、重启系统,使CPU隔离设置生效;
4、使用service irqbalance stop命令关闭中断均衡服务。
步骤三:将系统关键进程绑定在隔离出的CPU或NUMA node上,具体包括:
1、查看进程所涉及的设备中断号,并将其绑定到内存资源最佳NUMA node的CPU。例如,查看设备ETH0的中断号:cat/proc/interrupts|grep eth0;
绑定至目标NUMA node的CPU0-3:
echo 0>/proc/irq/int0/smp_affinity
echo 1>/proc/irq/int1/smp_affinity
echo 2>/proc/irq/int2/smp_affinity
echo 3>/proc/irq/int3/smp_affinity
其中,int0-3为查询到的ETH0的中断号,若中断号明显多于待绑定的CPU,则尽量均匀将其分配到各CPU。
2、将进程绑定在选定的CPU或NUMA node上。例如,将iperf进程绑定在NUMA node0上:numactl-N 0-m 0iperf-s-p 4000;或将iperf进程绑定在CPU1上(CPU1属于NUMAnode0):numactl-C 1-m 0iperf-s-p 4000。
步骤四:运行已配置的进程,自动优化结束。
本实施例中,利用iperf网络性能测试工具进行测验,图3为现有技术中使用Linux自动负载均衡后服务器存储设备运行参数,图4为本实施例下服务器存储设备运行参数,可见,明显提高了设备的性能。
由此可见,通过查询系统内存配置情况来判断内存资源最佳的NUMA node,并将该部分NUMA node的CPU进行隔离设置,避免系统使用其进行负载均衡操作。然后将系统的核心进程和计算量大、运行时间要求高的进程绑定在隔离出的CPU或NUMA node上,实现关键进程对最优硬件资源的独占,从而达到性能最佳优化的目的。通过自动检测内存资源最佳的NUMA node并进行CPU隔离和进程绑定,能够优化低配置服务器存储设备或现场内存配置较少的设备的性能。
相应的,本申请实施例还公开了一种服务器存储设备性能优化装置,参见图5所示,该装置包括:
信息获取模块11,用于获取操作系统的内存配置信息;
筛选模块12,用于根据所述内存配置信息筛选出内存资源最优的目标NUMA节点,并将所述目标NUMA节点内的CPU作为目标CPU;
隔离及绑定模块13,用于隔离所述目标CPU,并将目标进程绑定至所述目标CPU,以便所述目标进程独自在所述目标CPU上运行。
由上可见,本实施例中获取操作系统的内存配置信息;根据所述内存配置信息筛选出内存资源最优的目标NUMA节点,并将所述目标NUMA节点内的CPU作为目标CPU;隔离所述目标CPU,并将目标进程绑定至所述目标CPU,以便所述目标进程独自在所述目标CPU上运行。可见,将内存资源最优的目标NUMA节点内的CPU作为目标CPU,并通过隔离该目标CPU,避免系统使用其进行负载均衡操作,然后将目标进程绑定至该目标CPU,以便目标进程独自在上述目标CPU上运行,即保证目标进程独占所绑定的最优的硬件资源,由此提升系统性能,实现不更换设备,不扩容内存,在不增加成本的情况下进行设备性能提升,实现服务器存储设备硬件资源的有效利用,使关键进程可以得到更好的硬件资源配置,发挥设备的最佳性能。
在一些具体实施例中,所述筛选模块12具体可以包括:
内存总容量计算单元,用于根据所述内存配置信息确定每个NUMA节点对应的所有内存条,并计算每个NUMA节点对应的内存总容量;
目标NUMA节点确定单元,用于根据所述内存总容量确定出内存总容量最大的NUMA节点,作为所述目标NUMA节点。
在一些具体实施例中,所述信息获取模块11具体可以包括:
内存配置信息获取单元,用于利用目标命令查看操作系统的内存配置信息;所述内存配置信息包括每个NUMA节点包含的处理器内核信息、每个内存对应的CPU套接字通道号、每个内存的容量、每个NUMA节点对应的内存条通道号。
在一些具体实施例中,所述服务器存储设备性能优化装置具体可以包括:
目标设备确定单元,用于确定所述目标进程依赖的目标设备,并利用所述目标NUMA节点对应的插槽连接所述目标设备。
在一些具体实施例中,所述隔离及绑定模块13具体可以包括:
重启单元,用于重新启动所述操作系统,并重新配置中断均衡服务,以便重启后所述目标CPU不支持操作系统的负载均衡操作。
在一些具体实施例中,所述隔离及绑定模块13具体可以包括:
中断号确定单元,用于确定所述目标进程对应的设备中断号;所述目标进程包括核心进程、高计算量的进程、高运行时间要求的进程中的一个或多个;
绑定单元,用于将所述设备中断号绑定至所述目标NUMA节点内的目标CPU。
在一些具体实施例中,所述绑定单元具体可以包括:
分配单元,用于若所述设备中断号的数量大于所述目标CPU的数量,则按照均分方式将所述设备中断号分配给所述标NUMA节点内的每个目标CPU。
进一步的,本申请实施例还公开了一种电子设备,参见图6所示,图中的内容不能被认为是对本申请的使用范围的任何限制。
图6为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的服务器存储设备性能优化方法中的相关步骤,包括获取操作系统的内存配置信息;根据所述内存配置信息筛选出内存资源最优的目标NUMA节点,并将所述目标NUMA节点内的CPU作为目标CPU;隔离所述目标CPU,并将目标进程绑定至所述目标CPU,以便所述目标进程独自在所述目标CPU上运行等步骤。由此将内存资源最优的目标NUMA节点内的CPU作为目标CPU,并通过隔离该目标CPU,避免系统使用其进行负载均衡操作,然后将目标进程绑定至该目标CPU,以便目标进程独自在上述目标CPU上运行,即保证目标进程独占所绑定的最优的硬件资源,由此提升系统性能,实现不更换设备,不扩容内存,在不增加成本的情况下进行设备性能提升,实现服务器存储设备硬件资源的有效利用,使关键进程可以得到更好的硬件资源配置,发挥设备的最佳性能。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统221、计算机程序222及包括内存配置信息在内的数据223等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,以实现处理器21对存储器22中海量数据223的运算与处理,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的服务器存储设备性能优化方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请实施例还公开了一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现前述任一实施例公开的服务器存储设备性能优化方法步骤,包括获取操作系统的内存配置信息;根据所述内存配置信息筛选出内存资源最优的目标NUMA节点,并将所述目标NUMA节点内的CPU作为目标CPU;隔离所述目标CPU,并将目标进程绑定至所述目标CPU,以便所述目标进程独自在所述目标CPU上运行等步骤。由此将内存资源最优的目标NUMA节点内的CPU作为目标CPU,并通过隔离该目标CPU,避免系统使用其进行负载均衡操作,然后将目标进程绑定至该目标CPU,以便目标进程独自在上述目标CPU上运行,即保证目标进程独占所绑定的最优的硬件资源,由此提升系统性能,实现不更换设备,不扩容内存,在不增加成本的情况下进行设备性能提升,实现服务器存储设备硬件资源的有效利用,使关键进程可以得到更好的硬件资源配置,发挥设备的最佳性能。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种服务器存储设备性能优化方法、装置、设备及介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种服务器存储设备性能优化方法,其特征在于,包括:
获取操作系统的内存配置信息;
根据所述内存配置信息筛选出内存资源最优的目标NUMA节点,并将所述目标NUMA节点内的CPU作为目标CPU;
隔离所述目标CPU,并将目标进程绑定至所述目标CPU,以便所述目标进程独自在所述目标CPU上运行。
2.根据权利要求1所述的服务器存储设备性能优化方法,其特征在于,所述根据所述内存配置信息筛选出内存资源最优的目标NUMA节点,包括:
根据所述内存配置信息确定每个NUMA节点对应的所有内存条,并计算每个NUMA节点对应的内存总容量;
根据所述内存总容量确定出内存总容量最大的NUMA节点,作为所述目标NUMA节点。
3.根据权利要求1所述的服务器存储设备性能优化方法,其特征在于,获取操作系统的内存配置信息,包括:
利用目标命令查看操作系统的内存配置信息;所述内存配置信息包括每个NUMA节点包含的处理器内核信息、每个内存对应的CPU套接字通道号、每个内存的容量、每个NUMA节点对应的内存条通道号。
4.根据权利要求1所述的服务器存储设备性能优化方法,其特征在于,所述将目标进程绑定至所述目标CPU之前,还包括:
确定所述目标进程依赖的目标设备,并利用所述目标NUMA节点对应的插槽连接所述目标设备。
5.根据权利要求1所述的服务器存储设备性能优化方法,其特征在于,所述隔离所述目标CPU,包括:
重新启动所述操作系统,并重新配置中断均衡服务,以便重启后所述目标CPU不支持操作系统的负载均衡操作。
6.根据权利要求1至5任一项所述的服务器存储设备性能优化方法,其特征在于,所述将目标进程绑定至所述目标CPU,包括:
确定所述目标进程对应的设备中断号;所述目标进程包括核心进程、高计算量的进程、高运行时间要求的进程中的一个或多个;
将所述设备中断号绑定至所述目标NUMA节点内的目标CPU。
7.根据权利要求6所述的服务器存储设备性能优化方法,其特征在于,所述将所述设备中断号绑定至所述目标NUMA节点内的目标CPU,包括:
若所述设备中断号的数量大于所述目标CPU的数量,则按照均分方式将所述设备中断号分配给所述标NUMA节点内的每个目标CPU。
8.一种服务器存储设备性能优化装置,其特征在于,包括:
信息获取模块,用于获取操作系统的内存配置信息;
筛选模块,用于根据所述内存配置信息筛选出内存资源最优的目标NUMA节点,并将所述目标NUMA节点内的CPU作为目标CPU;
隔离及绑定模块,用于隔离所述目标CPU,并将目标进程绑定至所述目标CPU,以便所述目标进程独自在所述目标CPU上运行。
9.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的服务器存储设备性能优化方法。
10.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中计算机程序被处理器执行时实现如权利要求1至7任一项所述的服务器存储设备性能优化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310266114.XA CN116302534A (zh) | 2023-03-17 | 2023-03-17 | 一种服务器存储设备性能优化方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310266114.XA CN116302534A (zh) | 2023-03-17 | 2023-03-17 | 一种服务器存储设备性能优化方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116302534A true CN116302534A (zh) | 2023-06-23 |
Family
ID=86786681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310266114.XA Pending CN116302534A (zh) | 2023-03-17 | 2023-03-17 | 一种服务器存储设备性能优化方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116302534A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117311994A (zh) * | 2023-11-28 | 2023-12-29 | 苏州元脑智能科技有限公司 | 一种处理核心隔离方法、装置及电子设备和存储介质 |
-
2023
- 2023-03-17 CN CN202310266114.XA patent/CN116302534A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117311994A (zh) * | 2023-11-28 | 2023-12-29 | 苏州元脑智能科技有限公司 | 一种处理核心隔离方法、装置及电子设备和存储介质 |
CN117311994B (zh) * | 2023-11-28 | 2024-02-23 | 苏州元脑智能科技有限公司 | 一种处理核心隔离方法、装置及电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107040407B (zh) | 一种高性能计算集群动态节点作业方法 | |
CN111580954B (zh) | 一种可扩展的分布式数据采集方法和系统 | |
CN109951325B (zh) | 一种网络线缆连接检查方法和装置 | |
CN108900626B (zh) | 一种云环境下数据存储方法、装置及系统 | |
US20070180453A1 (en) | On demand application scheduling in a heterogeneous workload environment | |
US7516108B2 (en) | Block allocation times in a computer system | |
US7895596B2 (en) | Processor assignment in multi-processor systems | |
US20140304306A1 (en) | Database Management System With Database Hibernation and Bursting | |
US10908940B1 (en) | Dynamically managed virtual server system | |
US11281511B2 (en) | Predictive microservice systems and methods | |
WO2019108465A1 (en) | Automated capacity management in distributed computing systems | |
US20220070099A1 (en) | Method, electronic device and computer program product of load balancing | |
CN116302534A (zh) | 一种服务器存储设备性能优化方法、装置、设备及介质 | |
KR20150117258A (ko) | 분산형 컴퓨팅 아키텍쳐 | |
US20230100484A1 (en) | Serverless function colocation with storage pools | |
CN109426544A (zh) | 虚拟机部署方法和装置 | |
US9755897B1 (en) | Enhanced throttle management system | |
US6598105B1 (en) | Interrupt arbiter for a computing system | |
CN112948113A (zh) | 一种集群资源管理调度方法、装置、设备及可读存储介质 | |
CN116974874A (zh) | 数据库的测试方法、装置、电子设备及可读存储介质 | |
US20210049071A1 (en) | Gpu-based advanced memory diagnostics over dynamic memory regions for faster and efficient diagnostics | |
WO2004090660A2 (en) | Controlling usage of system resources by a network manager | |
US20100306780A1 (en) | Job assigning apparatus, and control program and control method for job assigning apparatus | |
CN114564530A (zh) | 一种数据库访问方法、装置、设备及存储介质 | |
CN114020454A (zh) | 一种内存管理方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |