U 盘写入性能测试指南
1. 概述
U 盘写入性能测试是指评估 U 盘在写入数据时的速度与效率的过程。这一测试对于确保数据传输的高效性、验证 U 盘的真实性能以及检测可能存在的质量问题至关重要。本文档将指导您如何进行 U 盘的写入性能测试,包括推荐的测试方式、测试步骤以及如何解读测试结果。
2. 为何进行U盘性能测试
评估数据传输效率:了解 U 盘和控制器处理大文件的能力。
验证拷贝日志慢的原因:比较不同控制柜(新C、改进型 等)、不同 U 盘类型(USB 2.0、USB 3.0、USB 3.1 等)和不同的文件系统(FAT32、NTFS、exFAT 等)写入 U 盘数据的速度。
3. 推荐测试方式
创建文件:文件均由 dd 命令创建 300 MB 大小、.txt格式的文件
dd if=/dev/zero of=test.txt bs=300M count=1
记录数据写入(控制柜 -> U盘)时间:使用 cp 命令模拟数据写入的过程,time 命令打印文件写入时间
time cp src_filepath dest_filepath
src_filepath 指原文件路径,dest_filepath 指要拷贝到的文件路径。
cp 是 Linux 系统命令,将原文件拷贝到指定路径。
time 是 Linux 系统命令,可以在命令前使用它来测量命令的执行时间。
如: time cp /tmp/arcs_report_xxx.zip /media/root/Udisk/, 可将日志包拷贝到 U 盘,并测量数据从控制柜系统写入到 U 盘的时间。
开发提供测试脚本
第 7 行,u_disks的值需要根据实际情况修改,可通过 fdisk -l 查看当前插入 U 盘挂载点
第 8 行,控制柜 USB 接口版本请根据实际情况填写
将脚本拷入控制柜任一路径下,chmod +x udisk_test.sh 添加可执行权限,./udisk_test.sh 执行
执行完脚本将生成 results_*.txt 和 test.log 文件,将文件存档,并分析文件内容填写表格
#!/bin/bash
# 定义变量
source_file="test.txt"
sizes=(100M 500M 1G)
repeat_times=3
u_disks=("/dev/sdb1") # 示例U盘挂载点,根据实际情况修改
interface_list=("USB_3.1_port") # 控制柜USB接口标识,仅作示例
# 创建测试文件函数
create_test_file() {
local size=$1
echo "sudo dd if=/dev/zero of=$source_file bs=$size count=1" | tee -a test.log
sudo dd if=/dev/zero of=$source_file bs=$size count=1 >> test.log 2>&1
}
# 测试写入时间函数
test_write_time() {
local dest_disk=$1
local file_size=$2
local interface=$3
local test_round=$4
# 记录开始测试的时间
start_time=$(date +"%Y-%m-%d %H:%M:%S")
echo "Test Start Time: $start_time" 2>&1 | tee -a results_$interface-$file_size.txt | tee -a test.log > /dev/null
echo "Testing write to $dest_disk with $file_size on $interface, round $test_round..." | tee -a test.log
for ((i=1; i<=$test_round; i++)); do
echo -n "Round $i: " 2>&1 | tee -a results_$interface-$file_size.txt | tee -a test.log > /dev/null
{ time (sudo cp "$source_file" "$dest_disk"); } 2>&1 | tee -a results_$interface-$file_size.txt | tee -a test.log > /dev/null
echo "" 2>&1 | tee -a results_$interface-$file_size.txt | tee -a test.log > /dev/null # 确保每轮测试结果后换行
done
}
# 主循环执行测试
for interface in "${interface_list[@]}"; do
for size in "${sizes[@]}"; do
create_test_file $size
for u_disk in "${u_disks[@]}"; do
test_write_time "$u_disk" "$size" "$interface" $repeat_times
# 如果需要更多轮次,调整这里的循环逻辑
done
done
done
echo "Tests completed. Results are in results_*.txt files."
4. 测试步骤
4.1 准备阶段
确保 U 盘已正确连接至控制柜,关闭所有占用 U 盘资源的程序。
确保控制柜系统在测试前 CPU、内存占用率正常,关闭所有占用率较高的程序。
提前准备好测试结果表格及相关硬件设备
第一次测试
控制柜(类型 + USB 版本) \ U 盘(版本 + 系统)
xx 品牌 + USB 2.0 + FAT32
xx 品牌 + USB 2.0 + exFAT
xx 品牌 + USB 2.0 + NTFS
xx 品牌 + USB 3.0 + FAT32
xx 品牌 + USB 3.1 + FAT32
...
改进型控制柜 + USB 2.0 接口
新 C 控制柜 + USB 2.0 接口
iS 控制柜 + USB 2.0 接口
IS 控制柜 + USB 3.0 接口
iS 示教器 + USB 接口
...
第二次测试
控制柜(类型 + USB 版本) \ U 盘(版本 + 系统)
xx 品牌 + USB 2.0 + FAT32
xx 品牌 + USB 2.0 + exFAT
xx 品牌 + USB 2.0 + NTFS
xx 品牌 + USB 3.0 + FAT32
xx 品牌 + USB 3.1 + FAT32
...
改进型控制柜 + USB 2.0 接口
新 C 控制柜 + USB 2.0 接口
iS 控制柜 + USB 2.0 接口
IS 控制柜 + USB 3.0 接口
iS 示教器 + USB 接口
...
第三次测试
控制柜(类型 + USB 版本) \ U 盘(版本 + 系统)
xx 品牌 + USB 2.0 + FAT32
xx 品牌 + USB 2.0 + exFAT
xx 品牌 + USB 2.0 + NTFS
xx 品牌 + USB 3.0 + FAT32
xx 品牌 + USB 3.1 + FAT32
...
改进型控制柜 + USB 2.0 接口
新 C 控制柜 + USB 2.0 接口
iS 控制柜 + USB 2.0 接口
IS 控制柜 + USB 3.0 接口
iS 示教器 + USB 接口
...
平均值
控制柜(类型 + USB 版本) \ U 盘(版本 + 系统)
xx 品牌 + USB 2.0 + FAT32
xx 品牌 + USB 2.0 + exFAT
xx 品牌 + USB 2.0 + NTFS
xx 品牌 + USB 3.0 + FAT32
xx 品牌 + USB 3.1 + FAT32
...
改进型控制柜 + USB 2.0 接口
新 C 控制柜 + USB 2.0 接口
iS 控制柜 + USB 2.0 接口
IS 控制柜 + USB 3.0 接口
iS 示教器 + USB 接口
...
控制变量法:测试上述不同设备 U 盘写入速度时,要确保拷贝的文件大小一致。
4.2 运行测试,记录结果
先将测试脚本拷入控制柜
插入要测试的 U 盘
使用测试脚本进行测试(参考 3. 推荐测试方式 - 3 开发提供测试脚本 )
等待命令结束,并记录测试结果(脚本生成的文件)
使用其他不同的控制柜、U 盘,重复 1~4 步,直到全部情况测试结束。
5. 解读测试结果
写入速度:衡量向 U 盘写入数据的速度,影响下载日志的快慢。
数据完整性:通过本测试确保数据在传输过程中未被破坏。
容量检测:确认 U 盘单次大文件拷贝大小满足日志下载功能需求。
客户建议:根据测试报告数据,为客户给出 U 盘选择建议。
cp 指令慢的 U 盘,下载日志是不是也慢。快的也快,cp指令的结果与下载日志快慢问题是否相关。
第一点确认的前提下,是不是 NTFS 的慢,或者 USB 2.0 的慢,推荐用户不要用这类 U 盘。
6. 注意事项
多次测试取平均值可提高结果的可靠性
7. 结语
通过上述步骤和推荐测试方式,您可以有效地评估 U 盘的写入性能,为客户使用 U 盘下载日志提供科学依据。记得定期进行性能测试,确保下载日志功能始终保持最佳工作状态,保障数据传输的高效与安全。
8. 附录
测试用例的详情信息和执行情况可通过点击以下链接访问:
U盘写入性能测试数据及数据分析
日志文件存档
通过对Sheet1的测试数据以及Sheet2中部分测试项进行分析,得出以下结论:不同控制柜类型、插口类型、U盘品牌(U盘接口版本)以及写入文件大小对U盘写入速度的影响极小,均在允许的工作范围内;唯有U盘文件系统(exFAT、FAT32、NTFS)对U盘写入性能影响较大。建议在选择U盘时优先使用 exFAT 文件系统。
在上述基础上进一步分析Sheet2中的附加测试项,发现U盘不同文件系统类型是导致ARCS日志文件下载速度慢的原因之一。因此,在导出ARCS日志时,推荐使用 exFAT 文件系统。
💡 关键要点
U 盘写入性能测试指南 1. 概述 U 盘写入性能测试是指评估 U 盘在写入数据时的速度与效率的过程。这一测试对于确保数据传输的高效性、验证 U