Linux系统下测试磁盘读写IO性能(物理机和虚拟机的测试)

简介:

1、写速度测试
    用dd命令进行测试,以每次写入8k的数据,执行300000次,time命令显示执行过程的时间,执行完成后生成/test.disk文件,大小为2.3G,下面是两台物理服务器和一台虚拟机的写入速度对比:

物理机1:10.0.0.11

linux-t10u:~ # time dd if=/dev/zero of=/test.disk bs=8k count=300000
300000+0 records in
300000+0 records out
2457600000 bytes (2.5 GB) copied, 2.07894 s, 1.2 GB/s    # 每秒写入1.2G

real    0m2.081s
user    0m0.032s
sys    0m1.112s
linux-t10u:~ # du -sh /test.disk 
2.3G    /test.disk        # 执行完后生成的文件

物理机2:10.0.0.12

linux-rnqg:~ # time dd if=/dev/zero of=/test.disk bs=8k count=300000
300000+0 records in
300000+0 records out
2457600000 bytes (2.5 GB) copied, 3.03114 s, 811 MB/s     # 每秒写入811MB

real    0m3.032s
user    0m0.052s
sys    0m1.504s
linux-rnqg:~ # du -sh /test.disk 
2.3G    /test.disk        # 执行完后生成的文件

VMWare虚拟机:

hm:~ # time dd if=/dev/zero of=/test.disk bs=8k count=300000
300000+0 records in
300000+0 records out
2457600000 bytes (2.5 GB) copied, 37.0812 s, 66.3 MB/s     # 每秒写入66.3MB

real    0m37.094s
user    0m0.288s
sys    0m33.174s
hm:~ # du -sh /test.disk 
2.3G    /test.disk


2、读取速度测试

    使用dd命令读取/test.disk文件

物理机1:10.0.0.11

linux-t10u:~ # time dd if=/test.disk of=/dev/null bs=8k
300000+0 records in
300000+0 records out
2457600000 bytes (2.5 GB) copied, 0.398211 s, 6.2 GB/s

real    0m0.400s
user    0m0.016s
sys    0m0.380s

物理机2:10.0.0.12

linux-rnqg:~ # time dd if=/test.disk of=/dev/null bs=8k
300000+0 records in
300000+0 records out
2457600000 bytes (2.5 GB) copied, 0.813786 s, 3.0 GB/s

real    0m0.815s
user    0m0.032s
sys    0m0.500s

VMWare虚拟机:

hm:~ # time dd if=/test.disk of=/dev/null bs=8k
300000+0 records in
300000+0 records out
2457600000 bytes (2.5 GB) copied, 29.2684 s, 84.0 MB/s

real    0m29.296s
user    0m0.068s
sys    0m14.401s


3、读取和写入测试
    用刚刚在上面测试写速度生成的大小为2.3G的test.disk文件,将其拷贝为/tmp/test.disk2文件,测试磁盘读取和写入的速度

物理机1:10.0.0.11

linux-t10u:~ # time dd if=/test.disk of=/tmp/test.disk2 bs=8k
300000+0 records in
300000+0 records out
2457600000 bytes (2.5 GB) copied, 2.42679 s, 1.0 GB/s    # 读取写入速度

real    0m2.428s
user    0m0.012s
sys    0m1.352s
linux-t10u:~ # du -sh /tmp/test.disk2 
2.3G    /tmp/test.disk2

物理机2:10.0.0.12

linux-rnqg:~ # time dd if=/test.disk of=/tmp/test.disk2 bs=8k
300000+0 records in
300000+0 records out
2457600000 bytes (2.5 GB) copied, 3.52278 s, 698 MB/s     # 读取写入速度

real    0m3.524s
user    0m0.052s
sys    0m1.972s
linux-rnqg:~ # du -sh /tmp/test.disk2 
2.3G    /tmp/test.disk2

VMWare虚拟机:

hm:~ # time dd if=/test.disk of=/tmp/test.disk2 bs=8k
300000+0 records in
300000+0 records out
2457600000 bytes (2.5 GB) copied, 70.0314 s, 35.1 MB/s      # 读取写入速度

real    1m10.098s
user    0m0.124s
sys    0m16.901s
hm:~ # du -sh /tmp/test.disk2 
2.3G    /tmp/test.disk2



3、使用hdparm工具测试磁盘的读取速度
物理机1:10.0.0.11:

linux-t10u:~ # hdparm -Tt /dev/sda

/dev/sda:
 Timing cached reads:   24714 MB in  2.00 seconds = 12368.87 MB/sec
 Timing buffered disk reads: 1904 MB in  3.00 seconds = 634.53 MB/sec
测试结果:2秒钟读取了24714 MB(缓存读)的数据,每秒的速度12368.87 MB/sec
      3秒钟读取了1904 MB (物理读)的数据,每秒的速度634.53 MB/sec

物理机2:10.0.0.12:

linux-rnqg:~ # hdparm -Tt /dev/sda

/dev/sda:
 Timing cached reads:   20446 MB in  2.00 seconds = 10233.63 MB/sec
 Timing buffered disk reads: 1918 MB in  3.00 seconds = 638.88 MB/sec

VMWare虚拟机:

hm:~ # hdparm -Tt /dev/sda

/dev/sda:
 Timing cached reads:   10748 MB in  1.99 seconds = 5388.49 MB/sec
 Timing buffered disk reads:  1974 MB in  3.00 seconds = 657.30 MB/sec


本文转自 HMLinux 51CTO博客,原文链接:http://blog.51cto.com/7424593/1841883

相关文章
|
缓存 算法 Linux
深入理解Linux内核调度器:公平性与性能的平衡####
真知灼见 本文将带你深入了解Linux操作系统的核心组件之一——完全公平调度器(CFS),通过剖析其设计原理、工作机制以及在实际系统中的应用效果,揭示它是如何在众多进程间实现资源分配的公平性与高效性的。不同于传统的摘要概述,本文旨在通过直观且富有洞察力的视角,让读者仿佛亲身体验到CFS在复杂系统环境中游刃有余地进行任务调度的过程。 ####
495 6
|
Linux C语言
Linux读写锁源码分析
本文分析了读写锁的实现原理与应用场景,基于glibc 2.17源码。读写锁通过读引用计数、写线程ID、条件变量等实现,支持读优先(默认)和写优先模式。读优先时,写锁可能饥饿;写优先时,读线程需等待写锁释放。详细解析了`pthread_rwlock_t`数据结构及加解锁流程,并通过实验验证:2000个读线程与1个写线程测试下,读优先导致写锁饥饿,写优先则正常抢占锁。
534 19
|
运维 监控 Linux
BPF及Linux性能调试探索初探
BPF技术从最初的网络数据包过滤发展为强大的系统性能优化工具,无需修改内核代码即可实现实时监控、动态调整和精确分析。本文深入探讨BPF在Linux性能调试中的应用,介绍bpftune和BPF-tools等工具,并通过具体案例展示其优化效果。
1017 14
|
存储 缓存 网络协议
Linux操作系统的内核优化与性能调优####
本文深入探讨了Linux操作系统内核的优化策略与性能调优方法,旨在为系统管理员和高级用户提供一套实用的指南。通过分析内核参数调整、文件系统选择、内存管理及网络配置等关键方面,本文揭示了如何有效提升Linux系统的稳定性和运行效率。不同于常规摘要仅概述内容的做法,本摘要直接指出文章的核心价值——提供具体可行的优化措施,助力读者实现系统性能的飞跃。 ####
|
缓存 Ubuntu Linux
Linux环境下测试服务器的DDR5内存性能
通过使用 `memtester`和 `sysbench`等工具,可以有效地测试Linux环境下服务器的DDR5内存性能。这些工具不仅可以评估内存的读写速度,还可以检测内存中的潜在问题,帮助确保系统的稳定性和性能。通过合理配置和使用这些工具,系统管理员可以深入了解服务器内存的性能状况,为系统优化提供数据支持。
2110 4
|
监控 网络协议 算法
Linux内核优化:提升系统性能与稳定性的策略####
本文深入探讨了Linux操作系统内核的优化策略,旨在通过一系列技术手段和最佳实践,显著提升系统的性能、响应速度及稳定性。文章首先概述了Linux内核的核心组件及其在系统中的作用,随后详细阐述了内存管理、进程调度、文件系统优化、网络栈调整及并发控制等关键领域的优化方法。通过实际案例分析,展示了这些优化措施如何有效减少延迟、提高吞吐量,并增强系统的整体健壮性。最终,文章强调了持续监控、定期更新及合理配置对于维持Linux系统长期高效运行的重要性。 ####
|
存储 监控 固态存储
Linux中提高性能
【10月更文挑战第6天】
310 2
|
数据可视化 前端开发 测试技术
接口测试新选择:Postman替代方案全解析
在软件开发中,接口测试工具至关重要。Postman长期占据主导地位,但随着国产工具的崛起,越来越多开发者转向更适合中国市场的替代方案——Apifox。它不仅支持中英文切换、完全免费不限人数,还具备强大的可视化操作、自动生成文档和API调试功能,极大简化了开发流程。
|
Java 测试技术 容器
Jmeter工具使用:HTTP接口性能测试实战
希望这篇文章能够帮助你初步理解如何使用JMeter进行HTTP接口性能测试,有兴趣的话,你可以研究更多关于JMeter的内容。记住,只有理解并掌握了这些工具,你才能充分利用它们发挥其应有的价值。+
1747 23