工作负载使用教程
迪丽瓦拉
2024-05-28 23:29:06
0

主要包括YCSB和

  • 背景
  • 一、安装Java
  • 二、安装Memcached数据库并配置
  • 三、修改YCSB脚本文件
  • 四、运行YCSB脚本
  • 五、运行GAPBS
  • 总结


背景

测试multi-clock内核的内存性能有啥提升
YCSB:雅虎推出的云数据库基准测试套件
参考论文MULTI-CLOCK: Dynamic Tiering for Hybrid Memory Systems(动态分层混合存储系统)使用的数据库是Memcached,测量内存吞吐量和延时。
运行工作负载 6 个步骤
核心工作负载包属性
下载工作包
GAPBS:GAP基准测试套件旨在通过标准化评估来帮助图形处理研究。图形处理评估之间的差异越小,就越容易比较不同的研究工作和量化改进。基准测试的完整运行可能要求很高,可能不应该在笔记本电脑上完成。构建输入图形需要大约 275 GB 的磁盘空间和 64 GB 的 RAM。根据您的文件系统和互联网带宽,构建图形最多可能需要 8 小时。构建输入图形后,您可以删除以释放一些磁盘空间。执行基准测试本身只需要几个小时。github下载工作负载和快速入门


更新apt包列表sudo apt update

一、安装Java

总的一句命令可以直接sudo apt install openjdk-8-jdk直接用安装JDK的命令也行,会把JRE也安装上的。8版本兼容会好一些,11版本是最新的。

  1. 检查是否已安装Javajava -version
  2. 如果没有执行安装命令apt installopenjdk-11-jre-headless命令安装Java运行时环境(JRE)这将允许运行几乎所有Java软件。
  3. 验证一下安装上了没java -version
  4. 还需要Java DevelopmentKit(JDK)才能编译和运行某些特定的基于Java的软件,验证是否已安装JDKjavac -version
  5. 安装JDK命令apt install openjdk-11-jdk-headless
  6. 再次检查Java编译器的javac版本,来验证是否已安装JDK javac -version
  7. 设置JAVA_HOME环境变量,许多使用Java编写的程序使用JAVA_HOME环境变量来确定Java安装位置。首先确定Java的安装位置。使用update-alternatives命令:sudo update-alternatives --config java此命令显示Java的每个安装及其安装路径
  8. 复制路径然后使用文本编辑器打开sudo gedit /etc/environment
  9. 在此文件的末尾,添加以下行或者替换已有路径,修改此文件将为系统上的所有用户设置JAVA_HOME路径。
 JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64/bin/java" 

但是可能会出现如下报错,在运行脚本时,通过最后一项报错,可以发现最后两段路径/bin/java可能是脚本自己加上去的或者这个工作负载某处规定的,所以这里我们在文件里只添加前半部分。

 JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64" 

在这里插入图片描述

  1. 保存文件并退出编辑器。
  2. 重新加载此文件source /etc/environment
  3. 验证是否已设置环境变量echo $JAVA_HOME
    这部分转载自https://www.jianshu.com/p/5a25b9535016

如果不小心装错了,可以参照如下方式卸载:

  1. 首先,检查是安装的哪个 OpenJDK包dpkg --list | grep -i jdk
  2. 移除 openjdk包apt-get purge openjdk*
  3. 卸载 OpenJDK 相关包apt-get purge icedtea-* openjdk-*
  4. 检查所有 OpenJDK包是否都已卸载完毕dpkg --list | grep -i jdk
    这部分转载自https://www.cnblogs.com/jaysonteng/p/13453244.html

二、安装Memcached数据库并配置

转载自https://www.lxlinux.net/5406.html

  1. 安装Memcached
sudo apt install memcached libmemcached-tools
  1. 查看memcached服务状态
 sudo systemctl status memcached

三、修改YCSB脚本文件

在这篇论文的仓库里其实已经有脚本了,但是由于multi-clock内核的Python版本问题,要想运行需要做一些修改。在正常的内核上面运行整个程序是不用改的。通过报错信息可以看到文件位于路径:ycsb-0.15.0/bin/ycsb
在这里插入图片描述
第一句,改为python3:
在这里插入图片描述
全局查找>>替换为括号
在这里插入图片描述
抛出错误的逗号分隔改为as
在这里插入图片描述

四、运行YCSB脚本

原论文的路径看一看,脚本应该放在放ycsb-0.15.0文件夹的地方,和它同级。
脚本第一句#! /bin/sh有的脚本第一句是不完整的
运行该脚本的命令./run_ycsb_workloads.sh

五、运行GAPBS

下载:

wget https://github.com/sbeamer/gapbs/archive/refs/heads/master.zip
unzip master.zip

单独来跑的话:

  1. 构建项目:make
  2. 覆盖默认C++编译器:CXX=g++-8 make
  3. 测试构建:make test
  4. 在 1,024 个顶点上运行 BFS 进行 1 次迭代: ./bfs -g 10 -n 1
    自动执行基准测试:
  5. 构建输入图:make bench-graphs
  6. 执行基准测试套件:make bench-run

总结

我想重要的不是做出来,是解决问题时学到的方法和知识,和解决问题时的思路。

相关内容