当前位置: 首页 > news >正文

戴尔R720服务器(4)虚拟机性能测试

  物理机环境

机型戴尔R720
系统环境PVE
CPUE5-2660V2 2.2GHz 双路
内存1333MHz 单通道
内存1333MHz 双通道
硬盘用6块转速1万的2.5寸盘组的RAID5,使用了H310mini阵列卡

  ‍

  测试工具:Sysbench。一个跨平台的基准测试工具,用于评估系统性能,包括CPU、内存、文件系统和数据库性能等。apt install sysbench​安装该工具。

  ‍

  虚拟机1配置

image

  ‍

  对照组1

机型组装 家用机
系统环境WSL2 ubuntu
CPUAMD 3600 3.33GHz
内存3200MHz 双通道
硬盘PCIE3.0 满速固态

CPU

  虚拟机1

soulio@vm-ubt1:~$ sysbench cpu --cpu-max-prime=20000 run
sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3)Running the test with following options:
Number of threads: 1
Initializing random number generator from current timePrime numbers limit: 20000Initializing worker threads...Threads started!CPU speed:events per second:   354.62General statistics:total time:                          10.0004stotal number of events:              3547Latency (ms):min:                                    2.69avg:                                    2.82max:                                    6.9495th percentile:                        2.81sum:                                 9997.72Threads fairness:events (avg/stddev):           3547.0000/0.00execution time (avg/stddev):   9.9977/0.00

  对照组1

是虚拟机1性能的 2x~ ❯ sysbench cpu --cpu-max-prime=20000 run
sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3)Running the test with following options:
Number of threads: 1
Initializing random number generator from current timePrime numbers limit: 20000Initializing worker threads...Threads started!CPU speed:events per second:   772.42General statistics:total time:                          10.0002stotal number of events:              7725Latency (ms):min:                                    1.26avg:                                    1.29max:                                    3.9095th percentile:                        1.32sum:                                 9996.58Threads fairness:events (avg/stddev):           7725.0000/0.00execution time (avg/stddev):   9.9966/0.00

内存

  虚拟机1

soulio@vm-ubt1:~$ sysbench memory --memory-block-size=1M --memory-total-size=2G --memory-oper=write run
sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3)Running the test with following options:
Number of threads: 1
Initializing random number generator from current timeRunning memory speed test with the following options:block size: 1024KiBtotal size: 2048MiBoperation: writescope: globalInitializing worker threads...Threads started!Total operations: 2048 ( 6334.09 per second)2048.00 MiB transferred (6334.09 MiB/sec)General statistics:total time:                          0.3185stotal number of events:              2048Latency (ms):min:                                    0.15avg:                                    0.15max:                                    0.2895th percentile:                        0.17sum:                                  315.02Threads fairness:events (avg/stddev):           2048.0000/0.00execution time (avg/stddev):   0.3150/0.00

  对照组1

吞吐性能是虚拟机1的 4.5x
延迟是虚拟机1的 0.35x~ ❯ sysbench memory --memory-block-size=1M --memory-total-size=2G --memory-oper=write ru
n
sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3)Running the test with following options:
Number of threads: 1
Initializing random number generator from current timeRunning memory speed test with the following options:block size: 1024KiBtotal size: 2048MiBoperation: writescope: globalInitializing worker threads...Threads started!Total operations: 2048 (25949.52 per second)2048.00 MiB transferred (25949.52 MiB/sec)General statistics:total time:                          0.0782stotal number of events:              2048Latency (ms):min:                                    0.04avg:                                    0.04max:                                    0.1095th percentile:                        0.04sum:                                   77.58Threads fairness:events (avg/stddev):           2048.0000/0.00execution time (avg/stddev):   0.0776/0.00

  ‍

  增加两条内存,组双通道

470f9d3ad43f38a9b07a6dfb470abbc

c74af8b6714b9fa1659aa0b7529e0a2

image

  接下来测试参数修改为2G、4G、8G、16G、32G (提前给虚拟机分配更大的内存容量)

2048.00 MiB transferred (6328.79 MiB/sec)
Latency (ms):min:                                    0.15avg:                                    0.15max:                                    0.3195th percentile:                        0.18sum:                                  315.194096.00 MiB transferred (6416.13 MiB/sec)
Latency (ms):min:                                    0.15avg:                                    0.15max:                                    0.3595th percentile:                        0.17sum:                                  628.688192.00 MiB transferred (8163.34 MiB/sec)
Latency (ms):min:                                    0.06avg:                                    0.12max:                                    0.3395th percentile:                        0.17sum:                                  994.5316384.00 MiB transferred (10341.60 MiB/sec)
Latency (ms):min:                                    0.06avg:                                    0.10max:                                    0.3195th percentile:                        0.15sum:                                 1572.5932768.00 MiB transferred (12636.04 MiB/sec)
Latency (ms):min:                                    0.06avg:                                    0.08max:                                    0.4195th percentile:                        0.15sum:                                 2577.01

  速度介于1~2x通道之间,不完全的双通道?读者,你知道原因吗?

  ‍

磁盘速度

  测试参数4GB

  ‍

  虚拟机1

soulio@vm-ubt1:~$ time dd if=/dev/zero of=/tmp/testw.dbf bs=4k count=1000000
1000000+0 records in
1000000+0 records out
4096000000 bytes (4.1 GB, 3.8 GiB) copied, 10.0372 s, 408 MB/s

  对照组

~ ❯ time dd if=/dev/zero of=/tmp/testw.dbf bs=4k count=1000000                 
记录了1000000+0 的读入
记录了1000000+0 的写出
4096000000字节(4.1 GB,3.8 GiB)已复制,2.92994 s,1.4 GB/s
dd if=/dev/zero of=/tmp/testw.dbf bs=4k count=1000000  0.14s user 2.77s system 99% cpu 2.939 total

  ‍

  虚拟机常用的磁盘格式有3种

image

  比对不同格式对读写速度的影响

# 测试磁盘写能力
time dd if=/dev/zero of=/data/testw.dbf bs=4k count=1000000# 测试磁盘读能力
time dd if=/dev/sda of=/dev/null bs=4k# 测试同时读写能力
time dd if=/dev/sda of=/tmp/testrw.dbf bs=4k

  测得数据如下(娱乐测试,请勿较真。)

image

image

image

image

  ‍

PVE不要用vmdk格式,太慢了

vmdk格式写入测试时太慢了,仅进行了一轮,所以5轮填的是同一个数据。vmdk格式写入时有几个问题:

  • 测试文件超过100MB就掉速严重,掉到10MB/s以下。

  • 速度不稳定,连续5轮测试

    
    40960000 bytes (41 MB, 39 MiB) copied, 5.07718 s, 8.1 MB/s40960000 bytes (41 MB, 39 MiB) copied, 0.485024 s, 84.4 MB/s40960000 bytes (41 MB, 39 MiB) copied, 5.12293 s, 8.0 MB/s40960000 bytes (41 MB, 39 MiB) copied, 4.8992 s, 8.4 MB/s40960000 bytes (41 MB, 39 MiB) copied, 0.48415 s, 84.6 MB/s
    
  • 上限很低,测试文件大小在4MB的时候测得最高分213 MB/s

    4096000 bytes (4.1 MB, 3.9 MiB) copied, 0.0192291 s, 213 MB/s
    

  ‍

  ‍

  ‍

IO基准测试

  虚拟机1

soulio@vm-ubt1:~$ sysbench fileio --file-test-mode=rndrw --file-total-size=2G --max-time=300 --max-requests=0 run
WARNING: --max-time is deprecated, use --time instead
sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3)Running the test with following options:
Number of threads: 1
Initializing random number generator from current timeExtra file open flags: (none)
128 files, 16MiB each
2GiB total file size
Block size 16KiB
Number of IO requests: 0
Read/Write ratio for combined random IO test: 1.50
Periodic FSYNC enabled, calling fsync() each 100 requests.
Calling fsync() at the end of test, Enabled.
Using synchronous I/O mode
Doing random r/w test
Initializing worker threads...Threads started!File operations:reads/s:                      1210.70writes/s:                     807.13fsyncs/s:                     2582.91Throughput:read, MiB/s:                  18.92written, MiB/s:               12.61General statistics:total time:                          300.0214stotal number of events:              1380211Latency (ms):min:                                    0.01avg:                                    0.22max:                                  266.3895th percentile:                        0.30sum:                               297289.13Threads fairness:events (avg/stddev):           1380211.0000/0.00execution time (avg/stddev):   297.2891/0.00

  对照组1


~ ❯ sysbench fileio --file-test-mode=rndrw --file-total-size=2G --max-time=300 --max-requests=0 run
WARNING: --max-time is deprecated, use --time instead
sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3)Running the test with following options:
Number of threads: 1
Initializing random number generator from current timeExtra file open flags: (none)
128 files, 16MiB each
2GiB total file size
Block size 16KiB
Number of IO requests: 0
Read/Write ratio for combined random IO test: 1.50
Periodic FSYNC enabled, calling fsync() each 100 requests.
Calling fsync() at the end of test, Enabled.
Using synchronous I/O mode
Doing random r/w test
Initializing worker threads...Threads started!File operations:reads/s:                      668.20writes/s:                     445.46fsyncs/s:                     1425.69Throughput:read, MiB/s:                  10.44written, MiB/s:               6.96General statistics:total time:                          300.0905stotal number of events:              761909Latency (ms):min:                                    0.00avg:                                    0.39max:                                  179.1795th percentile:                        0.67sum:                               299653.07Threads fairness:events (avg/stddev):           761909.0000/0.00execution time (avg/stddev):   299.6531/0.00

相关文章:

  • feedparser - Python 解析Atom和RSSfeed
  • 49.Python-web框架-Django解决多语言redirect时把post改为get的问题
  • 20块钱就能搞定的FOC无刷电机控制方案!miniFOC
  • AndroidX Navigation 反复创建Fragment问题修复
  • 黄金投资软件选择标准:多角度全面考量指南
  • DLL load failed while importing lib: 找不到指定的模块。(已解决)
  • 达索PLM在芯片行业的运用浅谈
  • LabVIEW Actor架构特点与适用范围
  • 【2024年计算机相关专业是否还值得选择】
  • 资源付费系统小程序APP公众号h5源码
  • 学习笔记——路由网络基础——环回接口(loopback)
  • 文本挖掘与可视化:生成个性化词云的Python实践【7个案例】
  • 【复旦邱锡鹏教授《神经网络与深度学习公开课》笔记】感知器
  • python实战根据excel的文件名称这一列的内容,找到电脑D盘的下所对应的文件位置,要求用程序实现
  • SQL Server中的FOR XML PATH以及Split
  • 【Under-the-hood-ReactJS-Part0】React源码解读
  • 【前端学习】-粗谈选择器
  • 5分钟即可掌握的前端高效利器:JavaScript 策略模式
  • canvas实际项目操作,包含:线条,圆形,扇形,图片绘制,图片圆角遮罩,矩形,弧形文字...
  • CODING 缺陷管理功能正式开始公测
  • flutter的key在widget list的作用以及必要性
  • gcc介绍及安装
  • JavaScript标准库系列——Math对象和Date对象(二)
  • JavaScript设计模式与开发实践系列之策略模式
  • Java深入 - 深入理解Java集合
  • Java知识点总结(JavaIO-打印流)
  • Laravel Mix运行时关于es2015报错解决方案
  • LeetCode算法系列_0891_子序列宽度之和
  • Linux各目录及每个目录的详细介绍
  • mysql 5.6 原生Online DDL解析
  • Mysql优化
  • oldjun 检测网站的经验
  • PHP 7 修改了什么呢 -- 2
  • Python 基础起步 (十) 什么叫函数?
  • text-decoration与color属性
  • 闭包,sync使用细节
  • 给自己的博客网站加上酷炫的初音未来音乐游戏?
  • 关于 Cirru Editor 存储格式
  • 关于使用markdown的方法(引自CSDN教程)
  • 实战:基于Spring Boot快速开发RESTful风格API接口
  • 我这样减少了26.5M Java内存!
  • 无服务器化是企业 IT 架构的未来吗?
  • 一个项目push到多个远程Git仓库
  • 掌握面试——弹出框的实现(一道题中包含布局/js设计模式)
  • 你对linux中grep命令知道多少?
  • #面试系列-腾讯后端一面
  • (2)nginx 安装、启停
  • (echarts)echarts使用时重新加载数据之前的数据存留在图上的问题
  • (笔记自用)LeetCode:快乐数
  • (纯JS)图片裁剪
  • (附源码)基于SSM多源异构数据关联技术构建智能校园-计算机毕设 64366
  • (附源码)计算机毕业设计大学生兼职系统
  • (汇总)os模块以及shutil模块对文件的操作
  • (六)DockerCompose安装与配置
  • (论文阅读26/100)Weakly-supervised learning with convolutional neural networks