工作负载使用教程

news2024/11/17 13:32:11

主要包括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

总结

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/389295.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

03-产品解决方案:需求分析、功能优先级划分、功能价值、用户体验

文章目录3.1 需求分析3.1.1 需求分析的目的3.1.2 需求分析的方法(Y模型)3.1.3 需求分析的具体应用3.2 功能优先级划分Kano模型3.3 功能价值3.3.1 什么是功能价值?3.3.2 实际价值判断3.3.3 成本评估3.4 用户体验3.4.1 用户体验的定义及影响因素…

IDEA 每次新建工程都要重新配置 Maven 解决方案

IDEA 每次新建工程都要重新配置 Maven 解决方案 IDEA 每次新建工程都要重新配置 Maven,是一件相当浪费时间的事情。这是因为在创建一个项目后,在 File -> Settings -> Build,Execution,Deployment -> Build Tools -> Maven下配置了 Maven h…

华为OD机试用Python实现 -【停车找车位】 |2023.Q1 A卷

华为OD机试题 最近更新的博客华为 OD 机试 300 题大纲本篇题目:停车找车位题目描述输入描述输出描述示例一输入输出示例二输入输出代码编写思路Python 代码最近更新的博客 华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题

QML编码约定

QML中的国际化: QML使用以下函数来将字符串标记为可翻译的 qsTr()qsTranslate()qsTrld()QT_TR_NOOP()QT_TRANSLATE_NOOP()QT_TRID_NOOP最常用的还是qsTr() string qsTr(string sourceText, string disambiguation&…

Linux- 系统随你玩之--文件管理-双生姐妹花

文章目录1、前言2、文件管理-双生姐妹花2.1、 df2.1.1、 df 语法2.1.1 、常用参数2.2、 du2.2.1、du 语法2.1.1、 常用参数2.3、双生姐妹花区别2.3.1、 查看文件统计 的计算方式不同2.3.2 、删除文件情况下统计结果 不同2.3.3 、针对双生姐妹花区别 结语3、双生姐妹花实操3.1 、…

[2019红帽杯]childRE

题目下载:下载 参考:re学习笔记(24)BUUCTF-re-[2019红帽杯]childRE_Forgo7ten的博客-CSDN博客 这道题涉及到c函数的修饰规则,按照规则来看应该是比较容易理解的。上面博客中有总结规则,可以学习一下。 载…

不同的网络分层模型与其常见的协议和硬件

文章目录一、网络分层模型1.1 OSI七层参考模型1.2 TCP/IP分层模型1.3 数据的分层传输二、网络通信媒介和数据链路2.1 网卡2.2 中继器Repeater2.3 集线器交换机(二层设备) 比集线器升级了什么二层交换机和三层交换机说明:该博客粗略整理了下不同的网络模型&#xff0…

Vue3之组件间传值避坑指南

组件间传值的两个坑 我们都知道父组件可以把值传递到自组件中,但是有时候子组件需要修改这个父组件传递过来的这个值,我们可以想象下能修改成功吗?这是坑之一。我们在组件间传值的时候,都是一个属性名对应一个值,接收…

泛函分析导论

它的基本思想是将函数看作向量,从而将函数空间转化为向量空间,进而研究函数空间的性质。泛函分析的主要内容包括:线性空间、内积空间、赋范空间、希尔伯特空间、算子理论、谱理论、函数空间等。空间与算子度量空间赋范空间和巴拿赫空间线性算…

Mybatis插件开发及执行原理

mybatis源码下载 https://github.com/mybatis/mybatis-3,本文分析源码版本3.4.5 mybatis启动大致流程 在看这篇文章前,建议查看我另一篇文章,以了解框架启动的流程和框架中一些重要对象:https://blog.csdn.net/Aqu415/article/…

com.alibaba.nacos.shaded.io.grpc.netty.shaded.io.netty.channel.AbstractChannel

一 完成的错误信息 异常Message one Caused by: com.alibaba.nacos.shaded.io.grpc.netty.shaded.io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information 异常Message two [com.alibaba.nacos.client.remote.worker] ERROR…

K8S 实用工具之二 - 终端 UI K9S

开篇 📜 引言: 磨刀不误砍柴工工欲善其事必先利其器 第一篇:《K8S 实用工具之一 - 如何合并多个 kubeconfig?》 像我这种,kubectl 用的不是非常溜,经常会碰到以下情况: 忘记命令,先…

基于粒子群改进的支持向量机SVM的情感分类识别,pso-svm情感分类识别

目录 支持向量机SVM的详细原理 SVM的定义 SVM理论 Libsvm工具箱详解 简介 参数说明 易错及常见问题 SVM应用实例,基于SVM的情感分类预测 代码 结果分析 展望 支持向量机SVM的详细原理 SVM的定义 支持向量机(support vector machines, SVM)是一种二分类模型,它的基本模型…

【C++修炼之路】25.哈希应用--布隆过滤器

每一个不曾起舞的日子都是对生命的辜负 布隆过滤器前言一.布隆过滤器提出二.布隆过滤器概念三. 布隆过滤器的操作3.1 布隆过滤器的插入3.2 布隆过滤器的查找3.3 布隆过滤器的删除四.布隆过滤器的代码4.1 HashFunc的仿函数参考4.2 BloomFilter.h五.布隆过滤器的优缺点六.布隆过滤…

Spring——Bean管理-xml方式进行属性注入

目录 一、xml方式创建对象 二、xml方式注入属性 第①种方式注入:set方法注入 第②种方式注入:有参构造函数注入 constructor-arg:通过构造函数注入 用name标签属性: 不按照顺序也会自动匹配 使用index标签属性:…

使用Struts的论坛系统的设计与实现

技术:Java、JSP等摘要:随着互联网的高速发展,目前可通过论坛系统可随时取得国际最新的软件及信息,也可以通过论坛系统来和别人讨论计算机软件、硬件、多媒体、程序设计、以及影视等等各种有趣的话题。本系统按照小型公司的实际要求…

第三讲:ambari编译后的安装包制作流程说明

一、概述 前两讲,我们已经将 Ambari 源码编译成功。现在我们想将 Ambari 编译后的 rpm 包,都放到 yum 本地仓库中,这样 Ambari 与 HDP 在安装部署时,就直接使用的我们自己编译的安装包了。 Ambari 的 rpm 包,有这么几类: ambari-server rpmambari-agent rpmambari metr…

React.memo 解决函数组件重复渲染

为什么会存在重复渲染? react 在 v16.8 版本引入了全新的 api,叫做 React Hooks,它的使用与以往基于 class component 的组件用法非常的不一样,不再是基于类,而是基于函数进行页面的渲染,我们把它又称为 functional c…

id函数 / 可变类型变量 / 不可变类型变量 / +=操作

前言 再说正文之前,需要大家先了解一下对象,指针和引用的含义,不懂得同学可以参考我上一篇博客“(12条消息) 引用是否有地址的讨论的_xx_xjm的博客-CSDN博客” 正文 一:python中一切皆对象 “python中一切皆对象”这句话我相信…