这是命令 regorge,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
spew - 测量 I/O 性能和/或生成 I/O 负载
概要
喷 --write|--read|--写后读 [OPTION] ... 传输大小[公里数] 文件
商品描述
I/O 性能测量和负载生成工具。 生成的写入和/或读取
数据到或来自字符设备、块设备或常规文件。
-B, --最大缓冲区大小=缓冲区大小
每 读(2)/写(2) 调用使用大小为 BUFFER_SIZE 的最大缓冲区。
-b, --最小缓冲区大小=缓冲区大小
每 读(2)/写(2) 调用使用大小为 BUFFER_SIZE 的最小缓冲区。
-c, --错误后继续
在数据完整性错误后继续。
-d, - 直接的
使用直接 I/O。 应该只用于块设备文件。 并非所有操作
系统支持直接 I/O
-g, --生成负载
相当于: -v -t -P -p 随机 -i 0.
-i, --迭代次数=COUNT个
写入/读取数据 COUNT 次。 如果计数为 0,则永远重复。
-l, --日志文件=日志文件
将日志消息发送到 LOGFILE。
- 没有进展
不显示进度(默认)。
--无rc文件
不要使用标准的 rcfiles。
-q, --无统计
不要输出统计信息。
--no-tui
不要使用 TUI 界面。
-o, - 抵消=OFFSET
在开始 I/O 之前寻找 OFFSET。
-P, - 进展
显示进度。
-p, - 图案=模式
读取或写入数据时使用数据模式 PATTERN。
-r, - 随机的
读/写缓冲区到随机偏移量。
- 生的 别名为 --先写后读.
--rc文件=文件
从 RCFILE 读取命令行选项。
- 读 从文件中读取日期。
--先写后读
写入 FILE 后读回数据。
-S, - 种子=种子
将 SEED 用于随机数种子。
-s, - 同步
使用同步 I/O。
- 统计数据
输出统计(默认)。
-t, --推
使用基于curses 的终端用户界面。
-u, - 单位=单位
以 UNITS 为单位显示传输率。
- 用法
显示简短的使用信息并退出。
-V, - 版
输出版本信息并退出。
-v, --详细统计
输出详细的统计信息。
- 写
将数据写入 FILE。
-?, - 帮帮我
显示此帮助并退出。
FILE 要写入数据的常规文件或设备文件。
日志文件
用于记录的文件的路径。
最大缓冲区大小
每个使用的最小缓冲区大小 读(2)/写(2) 调用(默认为 MIN_BUFFER_SIZE
字节)。 MAX_BUFFER_SIZE。 必须是 512 字节的偶数倍并且可以是
以字节、千比字节(k)、千字节(K)、 兆字节(m), 兆字节 (M),
千兆字节(g),千兆字节(G)。 tebibytes(t) 或 terabytes(T)。 MAX_BUFFER_SIZE
默认为 MIN_BUFFER_SIZE。 如果 MAX_BUFFER_SIZE > MIN_BUFFER_SIZE,随机缓冲区
使用两个限制之间的大小。 MAX_BUFFER_SIZE 必须是 的偶数倍
MIN_BUFFER_SIZE。
MIN_BUFFER_SIZE
每个使用的最小缓冲区大小 读(2)/写(2) 调用(默认为 512 字节)。
MIN_BUFFER_SIZE。 必须是 512 字节的偶数倍,并且可以在
字节、千比字节(k)、千字节(K)、 兆字节(m), 兆字节 (M), 千兆字节 (g),
千兆字节(G)。 tebibytes(t) 或 terabytes(T)。
OFFSET 在开始 I/O 之前在文件中寻找的位置(默认为 0)。 偏移量必须是
512 字节的偶数倍,可以以字节、kibibytes(k)、
千字节(K), 兆字节(m)、兆字节(M)、千兆字节(g)、千兆字节(G)。
tebibytes(t) 或 terabytes(T)。
模式
写入/读取数据时使用的数据模式。 可用模式有:无、零、
个、alt、随机、数字和“#”(其中“#”是 0-255 之间的数字)。 这
默认模式是“无”。
RCFILE 从 RCFILE 读取附加的命令行选项。 上的其他选项
命令行将覆盖 RCFILE 中的选项。
SEED 用于为随机数生成器提供种子 必须 >= 1 且 <= 2^32。
传输大小
要传输的总字节数(必须是 MIN_BUFFER_SIZE 的偶数倍)
和 MAX_BUFFER)SIZE)。 TRANSFER_SIZE 可以以字节、千字节、
兆字节或千兆字节。
单位 千比字节(k)、千字节(K)、 兆字节(m)、兆字节(M)、千兆字节(g)、千兆字节(G)。
tebibytes(t) 或 terabytes(T)。
示例
喷 - 写 -b 16k 1m /tmp/大文件
or
喷 -b 16k 1m /tmp/大文件
使用 1 kibibytes (1 kibibyte = 1024) 写入 1024 mebibyte (16 mebibyte = 1*1024 bytes)
字节)对文件的请求 /tmp/大文件 使用默认模式(随机)。 显示
以每秒千字节为单位的写入传输速率和以秒为单位的写入传输时间。
喷 - 写 -u m -i 10 -b 1k 256k / dev / sda1
or
喷 -u m -i 10 -b 1k 256k / dev / sda1
使用 256 kibibyte 请求将 1 kibibytes 写入块设备文件 / dev / sda1 10倍
使用默认模式(随机)。 迭代和累积写入传输速率为
以每秒兆字节以及迭代和累积写入传输时间显示
以秒为单位显示。
喷 - 生的 -d -o 1m -b 16 m 1g /tmp/大文件
or
满溢 -s -o 1m -b 16 m 1g /tmp/大文件
从 1 兆字节的偏移量开始写入 1 吉比字节(1024 吉比字节 = 1024*1024*1 字节)
对文件使用 16 兆字节请求 /tmp/大文件 使用默认模式(随机)。
数据同步写入并在文件关闭时刷新。 然后读入相同的数据
使用相同的请求大小和偏移量。 检查数据以确保读取的数据
in 匹配读出的数据。 写入和读取传输速率显示在
千字节/秒。 读取和写入传输时间以秒为单位显示。
喷 - 读 -i 0 -u M -p 零 -b 512 1m /开发/零
or
峡谷 -i 0 -u M -p 零 -b 512 1m /开发/零
使用来自文件的 1 字节请求读取 512 兆字节的数据 /开发/零 无穷大
使用零模式的次数(不要检查数据)。 迭代和累积
读取传输速率以每秒兆字节(1 兆字节 = 1,000,000 字节)显示
并且迭代和累积读取传输时间以秒为单位显示。
喷 - 生的 -g -r -b 1k -B 256 1t /开发/ md1
or
满溢 -g -r -b 1k -B 256 1t /开发/ md1
使用 1-1 kibibyte 请求写入 1024 tebibyte(1024 tebibyte = 1024*1024*1*256 字节)到
块设备 /开发/ md1 使用随机模式。 之前执行随机搜索
每次传输,但数据开始和结束之间的每个块都被准确写入
一次。 请求大小是随机选择的。 然后使用相同的数据读取相同的数据
请求大小和搜索顺序相同。 无限重复上述序列
直到被告知退出的次数(通过信号或 TUI 命令)。
检查数据以确保读入的数据与读出的数据匹配。 一个诅咒——
基于 TUI 用于显示迭代和累积传输率、传输时间和
字节传输。 退出后显示详细统计信息。
算法
当 MAX_BUFFER_SIZE >
MIN_BUFFER_SIZE:
找到最大的块大小,它是 2 的幂并且 >= MAX_BUFFER_SIZE。 叫这个
最大缓冲区大小。 找到最小的缓冲区大小,它是 2 的幂并且 >=
MIN_BUFFER_SIZE。 称之为 minbuffersize。 块大小 = maxbuffersize *(差异在
min 和 maxbuffersize + 1 之间的位数)。 块的数量是
TRANSFER_SIZE/块大小。 称其为 numchunks。 将有 numchunks 数量
读/写大小为 maxbuffersize, 2 * numchunks 读/写数
大小 maxbuffersize/2, 4 * numchunks 大小的读/写数
maxbuffersize/4,依此类推,直到达到 minbuffersize。 MIN_BUFFER_SIZE 用于
如果 TRANSFER_SIZE 不能被块大小整除,则任何剩余的传输。
示例:使用 1k 的 MIN_BLOCK_SIZE、8k 的 MAX_BLOCK_SIZE 和 264k 的 TRANSFER_SIZE
结果是 8 次 8k 读/写、16 次 4k 读/写、32 次 2k 读/写和 64 + 8 1k
读/写。
模式
使用以下内容 od(1) 命令检查 spew 生成的文件,其中数据完整性
出现问题:
od -A d --format=d8 --width=32
使用 onworks.net 服务在线使用 regorge