本文实例讲述了Python实现测试磁盘性能的方法。分享给大家供大家参考。具体如下:
该代码做了如下工作:
create 300000 files (512B to 1536B) with data from /dev/urandom
rewrite 30000 random files and change the size
read 30000 sequential files
read 30000 random files
delete all files
sync and drop cache after every step
bench.py代码如下:
#!/usr/bin/python # -*- coding: utf-8 -*- filecount = 300000 filesize = 1024 import random, time from os import system flush = "sudo su -c 'sync ; echo 3 > /proc/sys/vm/drop_caches'" randfile = open("/dev/urandom", "r") print "\ncreate test folder:" starttime = time.time() system("rm -rf test && mkdir test") print time.time() - starttime system(flush) print "\ncreate files:" starttime = time.time() for i in xrange(filecount): rand = randfile.read(int(filesize * 0.5 + filesize * random.random())) outfile = open("test/" + unicode(i), "w") outfile.write(rand) print time.time() - starttime system(flush) print "\nrewrite files:" starttime = time.time() for i in xrange(int(filecount / 10)): rand = randfile.read(int(filesize * 0.5 + filesize * random.random())) outfile = open("test/" + unicode(int(random.random() * filecount)), "w") outfile.write(rand) print time.time() - starttime system(flush) print "\nread linear:" starttime = time.time() for i in xrange(int(filecount / 10)): infile = open("test/" + unicode(i), "r") outfile.write(infile.read()); print time.time() - starttime system(flush) print "\nread random:" starttime = time.time() outfile = open("/dev/null", "w") for i in xrange(int(filecount / 10)): infile = open("test/" + unicode(int(random.random() * filecount)), "r") outfile.write(infile.read()); print time.time() - starttime system(flush) print "\ndelete all files:" starttime = time.time() system("rm -rf test") print time.time() - starttime system(flush)
希望本文所述对大家的Python程序设计有所帮助。
本文向大家介绍Linux和Unix使用DD命令测试磁盘I / O性能,包括了Linux和Unix使用DD命令测试磁盘I / O性能的使用技巧和注意事项,需要的朋友参考一下 您知道如何检查硬盘性能,例如检查Linux操作系统上的读写速度吗?然后,这篇文章适合您!它的创建主要是为了向您提供DD命令的概述,该指南旨在为新用户提供更好的指导,并作为Linux入门入门的探索之旅。 什么是DD命令? DD是用
本文向大家介绍Vmware添加磁盘的方法:扩展磁盘,包括了Vmware添加磁盘的方法:扩展磁盘的使用技巧和注意事项,需要的朋友参考一下 这篇文章介绍了一下如何在Vmare下添加或扩展磁盘并使之有效。 场景 创建Linux时分配磁盘空间随着使用的增加,使用率逐渐升高,此时需要在添加或者扩展一下磁盘。 比如:此Linux(CentOS 7.3)的磁盘为20G,目前已经使用到接近80% 扩展磁盘或者添加
问题内容: 我的硬盘上有两个(每个2GB)文件,想要将它们相互比较: 使用Windows资源管理器复制原始文件大约需要花费时间。2-4分钟(即在同一物理和逻辑磁盘上进行读写)。 读取两次并逐字节比较字节数组需要20多分钟。 缓冲区为64kb,将文件分块读取然后进行比较。 比较完成是一个紧密的循环 我该怎么做才能加快速度?NIO是否应该比普通流更快?Java是否无法使用DMA / SATA技术,而是
本文向大家介绍C#实现获取磁盘空间大小的方法,包括了C#实现获取磁盘空间大小的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#实现获取磁盘空间大小的方法。分享给大家供大家参考。具体实现方法如下: 方法一:利用System.IO.DriveInfo.GetDrives方法来获取 方法二:利用ManagementClass("Win32_LogicalDisk")来获取 希望本文所述对
本文向大家介绍python实现全盘扫描搜索功能的方法,包括了python实现全盘扫描搜索功能的方法的使用技巧和注意事项,需要的朋友参考一下 由用户指定需要扫描的盘符或目录,输入需要查找的文件或者文件夹名称(不包含中文名称) 代码: 以上这篇python实现全盘扫描搜索功能的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。
本文向大家介绍Linux磁盘挂载、分区、扩容操作的实现方法,包括了Linux磁盘挂载、分区、扩容操作的实现方法的使用技巧和注意事项,需要的朋友参考一下 基本概念 在操作前,首先要了解一些基本概念 磁盘 在Linux系统中所有的设备都会以文件的形式存储。设备一般保存在/dev目录下面,以sda、sda1、sda2 …,sdb、sdb1…,hda,hdb。现在的设备一般都是sd命名,以前的很老的硬盘是