VMA On K1 Powerlinux
VMA On K1 PowerLinux
VMA是一个消息加速器messaging accelerator(MPI-Massage passing Interface);The VMA library is delivered as a user-space library
install the default VMA version compiled with MLNX_OFED
环境背景
一台FP5280G2 做server 一台FP5280G2 做client
2块Mellanox的卡 CCAT_LC_PCIE16X_100G_XR_D 用光纤线直连。
测试架构
安装mellanox 套件 mlnx_ofed
安装依赖库
yum install python-devel lsof redhat-rpm-config rpm-build gcc kernel-devel-4.14.0-49.el7a.ppc64le
yum install tcl gcc-gfortran tcsh tk pciutils createrepo
./mlnxofedinstall --add-kernel-support --skip-distro-check
/etc/init.d/openibd restart
安装AT11
手动安装如下安装包
advance-toolchain-atX.X-runtime
advance-toolchain-atX.X-devel
advance-toolchain-atX.X-perf
advance-toolchain-atX.X-mcore-libs
下载AT 11地址https://developer.ibm.com/linuxonpower/advance-toolchain/
安装sockperf
yum install sockperf-3.5-1.el7.ppc64le.rpm
下载地址
http://mirror.hmc.edu/epel/7/ppc64le/Packages/s/
编译安装libVMA
yum install Autoconf Automake libtool unzip patch libnl-devel gcc
yum -y install libnl3-devel libnl3-route-devel gcc-c++-4.8.5-28.el7.ppc64le libibverbs-devel
1. ./autogen.sh
2. ./configure --with-ofed=/usr --prefix=/usr --libdir=/opt/at11.0/lib64 --includedir=/opt/at11.0/include --docdir=/usr/share/doc/libvma --sysconfdir=/etc
3. make
4.make install
配置网卡
nmcli conn add type ethernet con-name enP51p1s0f1 ifname enP51p1s0f1 ip4 192.168.100.101/24
运行测试工具
yum -y install numactl
systemctl stop firewalld
Server:
VMA_MTU=200 VMA_RX_BUFS=30000 VMA_RX_POLL_OS_RATIO=0 VMA_SELECT_POLL_OS=0 VMA_SPEC=latency LD_PRELOAD=/opt/at11.0/lib64/libvma.so numactl --cpunodebind=8 taskset -c 156 sockperf sr -i 192.168.100.100 -p 12345 --tcp --msg-size 14
Client:
VMA_MTU=200 VMA_RX_BUFS=30000 VMA_RX_POLL_OS_RATIO=0 VMA_SELECT_POLL_OS=0 VMA_SPEC=latency LD_PRELOAD=/opt/at11.0/lib64/libvma.so numactl --cpunodebind=8 taskset -c 172 sockperf pp -i 192.168.100.100 -p 12345 --tcp --msg-size 14
调优
设置大页面
# echo 4096 > /sys/devices/system/node/node0/hugepages/hugepages-16384kB/nr_hugepages
# echo 4096 > /sys/devices/system/node/node8/hugepages/hugepages-16384kB/nr_hugepages
#mount -t hugetlbfs nodev /mnt/hugevim /etc/modprobe.d/mlnx.conf
options mlx4_core log_num_mgm_entry_size=-1 VMA_MEM_ALLOC_TYPE=1
/etc/init.d/openibd restart
关闭SMT
ppc64_cpu –smt=off
设置CPU模式
cpupower frequency-set --governor performance
vim /etc/tuned/tuned-main.conf
sleep_interval = 1 ===> change to 100
update_interval = 10 ===> change to 10000
vim /usr/lib/tuned/network-latency/tuned.conf
[bootloader]
cmdline = audit=0 idle=poll nosoftlockup mce=ignore_ce
减少系统调用
echo 100000000 > /proc/sys/kernel/sched_min_granularity_ns
echo 50000000 > /proc/sys/kernel/sched_migration_cost_ns
echo 0 > /proc/sys/vm/swappiness
sysctl -w vm.swappiness=0
sysctl -w vm.zone_reclaim_mode=0
echo never > /sys/kernel/mm/transparent_hugepage/enabled
更改网卡MTU的值
echo “200” > /sys/class/net/enP51p1s0f1/mtu
MLNX设置
mlnx_tune -p LOW_LATENCY_VMA
软件版本
Testing Envrionment
Hardware | Two FP5280G2 with Two CX5 MCX516A-CDAT |
---|---|
OS Version | rhel-alt-server-7.5-ppc64le |
Kernel Version | 4.14.0-49.el7a.ppc64le |
CX5 OFED | MLNX_OFED_LINUX-4.4-2.0.7.0-rhel7.5alternate-ppc64le |
VMA Version | libvma-8.7.1 https://github.com/Mellanox/libvma |
Sockperf | sockperf-3.5-1 |
yum –y install numactl
Client:
VMA_MTU=200 VMA_RX_BUFS=30000 VMA_RX_POLL_OS_RATIO=0 VMA_SELECT_POLL_OS=0 VMA_SPEC=latency LD_PRELOAD=/opt/at11.0/lib64/libvma.so numactl --cpunodebind=8 taskset -c 172 sockperf pp -i 192.168.100.100 -p 12345 --tcp --msg-size 14
Server:
VMA_MTU=200 VMA_RX_BUFS=30000 VMA_RX_POLL_OS_RATIO=0 VMA_SELECT_POLL_OS=0 VMA_SPEC=latency LD_PRELOAD=/opt/at11.0/lib64/libvma.so numactl --cpunodebind=8 taskset -c 156 sockperf sr -i 192.168.100.100 -p 12345 --tcp --msg-size 14
测试结果
VMA成功在哦K1 PowerLinux上部署,TCP协议下不同字节大小的延迟如数据如下。
调优参考:
https://community.mellanox.com/docs/DOC-2797
VMA On K1 Powerlinux相关推荐
- K1 Power Linux上Stream测试内存带宽
K1 Power Linux上Stream测试内存带宽 本篇文章介绍在K1 Power Linux上理论内存带宽结算,实测内存带宽方法,衡量服务器的内存带宽水平.需要说明的是,对于Scale UP的P ...
- 素数c语言k1k2,1.编写一程序,输入两个整数k1,k2,(k1k2)。求出k1,k2间的素数...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 # include main () { int K1,K2,K3: //定义两个整数K1和K2,比较常量K3 printf("请输入整数: K1 ...
- vMA学习笔记之一:将vMA加入域
目的: 将vMA加入域的方法 操作步骤: 1. 开启vMA 2. 按住Alt+F2切换到虚拟终端界面,使用vi-admin用户登录 2 3. 已经登录进来了 4. 在进行加域操作之前,必须确保DNS配 ...
- c语言if(!k1)x=1,C语言选择题题库2
5.s是int型变量,且S=6,则下面表达式:s%2+( s+1)%2的值为 1 6.若a是int型变量,则计算表达式:a=25/3%3后a的值为 2 7.若x和n均是int型变量,且x和n的初值均为 ...
- hdu4982 暴搜+剪枝(k个数和是n,k-1个数的和是平方数)
题意: 给你两个数n,k问你是否怎在这样一个序列: (1)这个序列有k个正整数,且不重复. (2)这k个数的和是n. (3)其中有k-1个数的和是一个平方数. ...
- 内存管理vma_(十三)Linux内存管理之vma/malloc/mmap
背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本 ...
- 笛卡尔树 (25 分)笛卡尔树是一种特殊的二叉树,其结点包含两个关键字K1和K2。首先笛卡尔树是关于K1的二叉搜索树,即结点左子树的所有K1值都比该结点的K1值小,右子树则大。其次所有结点的K2关键字
立志用最少的代码做最高效的表达 笛卡尔树是一种特殊的二叉树,其结点包含两个关键字K1和K2.首先笛卡尔树是关于K1的二叉搜索树,即结点左子树的所有K1值都比该结点的K1值小,右子树则大.其次所有结点的 ...
- 斐讯k1潘多拉专版固件_斐讯K1刷专版潘多拉固件以及教程(使用感受)
本帖最后由 Super131 于 2016-3-5 10:09 编辑 QQ图片20160225010211.png (24.22 KB, 下载次数: 2) 2016-2-25 01:02 上传 K1的 ...
- 斐讯k1路由器刷Breed BootLoader(不死UBoot)
前段时间斐讯搞活动,我入手了一部139元的斐讯K1路由器,感觉硬件配置不错,于是就给K1路由器刷入了Breed启动程序. 路由器外观: 路由器内观: 硬件配置: CPU:MediaTek MT7620 ...
最新文章
- Datawhale实验室
- js设置元素class方法小结及classList相关
- 功能性农业投融资-农业大健康·周荣江:国情讲坛体制创新
- battlesvr结构
- phonegap html 缩放,phonegap常用事件总结(必看篇)
- ubuntu 系统下的Caffe环境搭建
- 开源监控Prometheus二进制安装
- Flutter ColorTween实现颜色过渡动画效果
- go语言php编译,Golang模板编译引擎FET
- 设为首页 添加到收藏夹 (share)
- android 显示多条数据格式,Multipart上传的进度条,包含多个Android文件
- 201671010415+词频统计软件项目报告
- 安卓和ios的ui设计区别_简析Android系统与ios系统界面设计区别
- 算法题目打卡:Ques20201020
- python3网络爬虫开发实战6.3爬取微博处理since_id
- (附源码)springboot电影院售票与管理系统 毕业设计 011449
- 【华为诺亚方舟实验室】2022届毕业生招聘--决策(强化学习)推理方向
- mysql 1032 1062_【转】如何使用slave_exec_mode优雅的跳过1032 1062的复制错误
- AHRS 原理算法+代码实现(好文记录)
- js实现深拷贝与浅拷贝