LINPACK测试

LINPACK是一种流行的测试高性能计算机系统浮点性能的benchmark,主要用于线性代数方程组的求解。测试包括Linpack100、Linpack1000和HPL,其中HPL应用广泛。测试前需设置内存大页面(Hugepage),以提高CPU内存访问效率。测试分为单板和集群测试,涉及环境配置、MPI并行环境搭建、HPL优化设置等步骤。优化配置文件HPL.dat对测试结果至关重要,包括矩阵规模、处理器网格布局等参数设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1简介

LINPACK是线性系统软件包(Linear system package) 的缩写。

 Linpack现在在国际上已经成为最流行的用于测试高性能计算机系统浮点性能的benchmark。通过利用高性能计算机,用高斯消元法求解一元N次稠密线性代数方程组的测试,评价高性能计算机的浮点性能。

Linpack测试包括三类,Linpack100、Linpack1000和HPL。Linpack100求解规模为100阶的稠密线性代数方程组,它只允许采用编译优化选项进行优化,不得更改代码,甚至代码中的注释也不得修改。Linpack1000要求求解规模为1000阶的线性代数方程组,达到指定的精度要求,可以在不改变计算量的前提下做算法和代码上做优化。HPL即High Performance Linpack,也叫高度并行计算基准测试,它对数组大小N没有限制,求解问题的规模可以改变,除基本算法(计算量)不可改变外,可以采用其它任何优化方法。前两种测试运行规模较小,已不是很适合现代计算机的发展,因此现在使用较多的测试标准为HPL,而且阶次N也是linpack测试必须指明的参数。

LINPACK压力测试的目的主要为检测系统中CPU的工作的稳定性及内存访问的稳定性。

2测试分类

Linpack测试分为两种测试方式,一 单板测试 二 集群测试

测试前的准备

为了提高CPU访问的内存的效率,及降低页表占用CPU资源。采用内存hugepage,系统进程是通过虚拟地址访问内存,但是CPU必须把它转换成物理内存地址才能真正访问内存。为了提高这个转换效率,CPU会缓存最近的虚拟内存地址和物理内存地址的映射关系,并保存在一个由CPU维护的映射表中。为了尽量提高内存的访问速度,需要在映射表中保存尽量多的映射关系。 
    而在Linux中,内存都是以页的形式划分的,默认情况下每页是4K,这就意味着如果物理内存很大,则映射表的条目将会非常多,会影响CPU的检索效率。因为内存大小是固定的,为了减少映射表的条目,可采取的办法只有增加页的尺寸。这种增大的内存页尺寸在Linux 2.1中,称为Big page;在AS 3/4中,称为Hugepage。 
如果系统有大量的物理内存(大于8G),则物理32位的操作系统还是64位的,都应该使用Hugepage。 
   注意:使用Hugepage内存是共享内存,它会一直keep在内存中的,不会被交换出去,也就是说使用hurgepage的内存不能被其他的进程使用,所以,一定要合理设置这个值,避免造成浪费。

   所以在进行测试之前,一定要确保系统内核支持Hugepage内存分页。

测试步骤

第一部分:环境设置

1设置内存大页面

# umount /mnt

首先将临时挂载文件夹的目录/mnt卸载

# mount -t hugetlbfs none /mnt

挂载一个大页面系统,将hugetlbfs挂载到/mnt目录

# echo 3 >/proc/sys/vm/drop_caches

通过修改proc系统的drop_caches清理free的cach

# echo 80> /proc/sys/vm/nr_hugepages

设置大页面的数量

计算方式:

1 确定物理内存的大小

2 确定大页面单页的大小

大页面单页的大小,可以在

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值