Jadual Kandungan
Pemasangan" >Pemasangan
Arahan" >Arahan
Rumah tutorial komputer pengetahuan komputer Pertempuran praktikal: ujian baca dan tulis io cakera keras pada Linux

Pertempuran praktikal: ujian baca dan tulis io cakera keras pada Linux

Feb 19, 2024 pm 03:40 PM
io Baca dan tulis fio

Konsep

fio, juga dikenali sebagai Penguji IO Fleksibel, ialah aplikasi yang ditulis oleh Jens Axboe.

Jens ialah penyelenggara subsistem IO blok dalam Kernel Linux.

FIO ialah alat yang digunakan untuk menguji sistem fail rangkaian dan prestasi cakera Ia sering digunakan untuk mengesahkan model mesin dan membandingkan prestasi sistem fail. Ia secara automatik menghantar arahan fio ke senarai mesin kluster dan mengumpul IOPS untuk fail kecil dan data pemprosesan untuk fail besar.

Pertempuran praktikal: ujian baca dan tulis io cakera keras pada Linux

rw=[mode]
rwmixwrite=30 在混合读写的模式下,写占30%

mode
read 顺序读
write 顺序写
readwrite 顺序混合读写
randwrite 随机写
randread 随机读
randrw 随机混合读写

Pemasangan

yumdownloader --destdir=/tmp --resolve fio
rpm -ivh /tmp/*.rpm
rpm -ivh fio-3.7-2.el7.x86_64.rpm

Arahan

说明:
filename=/dev/sdb1 测试文件名称,通常选择需要测试的盘的data目录。
direct=1 测试过程绕过机器自带的buffer。使测试结果更真实。
rw=randwrite 测试随机写的I/O
rw=randrw 测试随机写和读的I/O
bs=16k 单次io的块文件大小为16k
bsrange=512-2048 同上,提定数据块的大小范围
size=5g 本次的测试文件大小为5g,以每次4k的io进行测试。
numjobs=30 本次的测试线程为30.
runtime=1000 测试时间为1000秒,如果不写则一直将5g文件分4k每次写完为止。
ioengine=psync io引擎使用pync方式
rwmixwrite=30 在混合读写的模式下,写占30%
group_reporting 关于显示结果的,汇总每个进程的信息。
此外
lockmem=1g 只使用1g内存进行测试。
zero_buffers 用0初始化系统buffer。
nrfiles=8 每个进程生成文件的数量。

Uji lebar jalur tulis rawak

fio --name=wbw --filename=/data/sui_ji_xie --numjobs=4 
--bs=128k --size=4G --ioengine=libaio --direct=1 --randrepeat=0 --norandommap --rw=randwrite 
--group_reporting --iodepth=512 --iodepth_batch=128 --iodepth_batch_complete=128 --gtod_reduce=1 --runtime=30

Uji Latensi Tulisan Rawak 4K:

fio --name=wlat --filename=/data/4k_sui_ji_xie --numjobs=1 --runtime=30 
--bs=4k --size=4G --ioengine=libaio --direct=1 --norandommap --randrepeat=0 
-rw=randwrite --group_reporting --iodepth=1 --iodepth_batch_complete=0

Uji 4k tulis rawak IOPS:

fio --name=wiops --filename=/data/4k_sui_ji_xie_iops --numjobs=4 
--bs=4k --size=4G --ioengine=libaio --direct=1 --randrepeat=0 --norandommap 
--rw=randwrite --group_reporting --iodepth=512 --iodepth_batch=128 
--iodepth_batch_complete=128 --gtod_reduce=1 --runtime=30

Uji lebar jalur baca 4k:

fio --name=rbw --filename=/data/4k_sui_ji_du --numjobs=4 
--bs=128k --size=4G --ioengine=libaio --direct=1 --randrepeat=0 --norandommap 
--rw=randread --group_reporting --iodepth=512 --iodepth_batch=128 
--iodepth_batch_complete=128 --gtod_reduce=1 --runtime=30

Uji kependaman bacaan rawak 4k:

fio --name=rlat --filename=/data/4k_sui_ji_du_yanchi --numjobs=1 --runtime=30 
--bs=4k --size=4G --ioengine=libaio --direct=1 --randrepeat=0 --rw=randread 
--group_reporting --iodepth=1 --iodepth_batch_complete=0

Uji 4k bacaan rawak IOPS:

fio --name=riops --filename=/data/4k_sui_ji_du_iops --numjobs=4 
--bs=4k --size=4G --ioengine=libaio --direct=1 --randrepeat=0 --norandommap --rw=randread 
--group_reporting --iodepth=512 --iodepth_batch=128 --iodepth_batch_complete=128 --gtod_reduce=1 --runtime=30

Bacaan rawak:

fio -filename=/data/sui_ji_du -iodepth=1 -ioengine=libaio -direct=1 -rw=randread -bs=4k -size=1G -numjobs=10 -runtime=20 -group_reporting -name=test-rand-read

Tulis secara rawak:

fio -filename=/data/sui_ji_xie -iodepth=64 -ioengine=libaio -direct=1 -rw=randwrite -bs=4k -size=2G -numjobs=64 -runtime=20 -group_reporting -name=test-rand-write

Baca mengikut urutan:

fio -filename=/data/shun_xu_du -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=16k -size=20G -numjobs=30 -runtime=1000 -group_reporting -name=mytest

Baca dan Tulis Rawak Hibrid:

fio -filename=/data/hun_he_du_xie -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=16k -size=10G -numjobs=30 -runtime=100 -group_reporting -name=mytest -ioscheduler=noop
io=执行了多少M的IO
bw=平均IO带宽
iops=IOPS
runt=线程运行时间
slat=提交延迟
clat=完成延迟
lat=响应时间
bw=带宽
cpu=利用率
IO depths=io队列
IO submit=单个IO提交要提交的IO数
IO complete=Like the above submit number, but for completions instead.
IO issued=The number of read/write requests issued, and how many of them were short.
IO latencies=IO完延迟的分布

io=总共执行了多少size的IO
aggrb=group总带宽
minb=最小.平均带宽.
maxb=最大平均带宽.
mint=group中线程的最短运行时间.
maxt=group中线程的最长运行时间.

ios=所有group总共执行的IO数.
merge=总共发生的IO合并数.
ticks=Number of ticks we kept the disk busy.
in_queue=花费在队列上的总共时间.
util=磁盘利用率

Atas ialah kandungan terperinci Pertempuran praktikal: ujian baca dan tulis io cakera keras pada Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Skop pembolehubah PHP dijelaskan
1 bulan yang lalu By 百草
Mengulas kod dalam php
4 minggu yang lalu By 百草
Petua untuk menulis komen php
4 minggu yang lalu By 百草

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1510
276
Bagaimana untuk menyelesaikan ralat 'undefined: io.ReadAll' dalam golang? Bagaimana untuk menyelesaikan ralat 'undefined: io.ReadAll' dalam golang? Jun 25, 2023 am 10:01 AM

Semasa proses pembangunan menggunakan Golang, kami sering menghadapi beberapa ralat. Salah satu daripadanya ialah "undefined:io.ReadAll", ralat ini kebanyakannya disebabkan oleh menggunakan kaedah yang sudah lapuk. Artikel ini akan menerangkan cara menyelesaikan ralat ini. Mula-mula, mari kita lihat mengapa ralat ini berlaku. Sebelum golang1.15, tiada kaedah ReadAll dalam pakej io. Apabila kami menggunakan kaedah ini, pengkompil akan menggesa "undefined:io.Re

Cara menggunakan PHP untuk melaksanakan fungsi caching data, membaca dan menulis Cara menggunakan PHP untuk melaksanakan fungsi caching data, membaca dan menulis Sep 05, 2023 pm 05:45 PM

Cara menggunakan PHP untuk melaksanakan fungsi caching data dan baca-tulis Caching ialah cara penting untuk meningkatkan prestasi sistem Melalui caching, data yang kerap digunakan boleh disimpan dalam memori untuk meningkatkan kelajuan membaca data. Dalam PHP, kita boleh menggunakan pelbagai kaedah untuk melaksanakan caching data dan fungsi baca dan tulis. Artikel ini akan memperkenalkan dua kaedah biasa: menggunakan cache fail dan menggunakan cache memori. 1. Gunakan caching fail. Caching fail menyimpan data dalam fail untuk bacaan seterusnya. Berikut ialah kod sampel yang menggunakan caching fail untuk membaca dan menulis data:

Bagaimana untuk menyelesaikan ralat 'undefined: io.TeeReader' dalam golang? Bagaimana untuk menyelesaikan ralat 'undefined: io.TeeReader' dalam golang? Jun 25, 2023 am 09:51 AM

Apabila membangun dengan golang, kita sering menghadapi pelbagai masalah dan mesej ralat. Salah satu masalah biasa ialah ralat "undefined:io.TeeReader". Ralat ini biasanya berlaku apabila program disusun, dan kadangkala ia boleh mengecewakan. Artikel ini akan memperkenalkan cara untuk menyelesaikan masalah ini supaya anda dapat menjalankan kerja pembangunan golang dengan lancar. Mula-mula, mari kita lihat apa sebenarnya maksud ralat ini. apabila kita menggunakan

Apakah maksud linux io? Apakah maksud linux io? Mar 24, 2023 am 09:43 AM

Linux io merujuk kepada operasi fail dalam Linux, fail ialah satu siri aliran binari, jadi semasa pertukaran maklumat, kita semua melakukan operasi penghantaran dan penerimaan data pada aliran ini. kerana Linux menggunakan mekanisme memori maya, jadi kernel mesti diminta melalui panggilan sistem untuk menyelesaikan operasi IO.

Pertempuran praktikal: ujian baca dan tulis io cakera keras pada Linux Pertempuran praktikal: ujian baca dan tulis io cakera keras pada Linux Feb 19, 2024 pm 03:40 PM

Concept fio, juga dikenali sebagai FlexibleIOTester, ialah aplikasi yang ditulis oleh JensAxboe. Jens ialah penyelenggara blockIOsubsystem dalam LinuxKernel. FIO ialah alat yang digunakan untuk menguji sistem fail rangkaian dan prestasi cakera Ia sering digunakan untuk mengesahkan model mesin dan membandingkan prestasi sistem fail. Ia secara automatik menghantar arahan fio ke senarai mesin kluster dan mengumpul IOPS untuk fail kecil dan data pemprosesan untuk fail besar. rw=[mode]rwmixwrite=30 Dalam mod baca dan tulis bercampur, menulis akaun untuk 30% baca berurutan baca tulis berurutan tulis baca tulis berurutan bercampur baca dan tulis randwrite tulis rawak r

Bagaimanakah Java menggunakan NIO untuk mengoptimumkan IO untuk melaksanakan fungsi muat naik dan muat turun fail? Bagaimanakah Java menggunakan NIO untuk mengoptimumkan IO untuk melaksanakan fungsi muat naik dan muat turun fail? May 12, 2023 pm 09:31 PM

1. Beberapa pengetahuan persediaan asas NIO dan NIO dalam sistem kelas aliran IO di Java: https://blog.csdn.net/ZGL_cyy/article/details/104326458 sistem JavaIO dan soalan temuduga sistem NIO dan BIO. https://blog.csdn.net/ZGL_cyy/article/details/122836368Mengapa menggunakan NIO: Oleh kerana kadar pemindahan fail IO tradisional adalah rendah, NIO dipilih untuk operasi muat turun fail. Satu lagi faedah NIO ialah salinan sifar boleh mengurangkan pertindihan data dalam ingatan dan mengurangkan kesan operasi CPU. tempat

Nyahsulit kaedah membaca dan menulis untuk memproses fail DBF dalam Java Nyahsulit kaedah membaca dan menulis untuk memproses fail DBF dalam Java Mar 29, 2024 pm 12:39 PM

Menyahsulit kaedah membaca dan menulis untuk memproses fail DBF dalam Java DBF (dBaseFile) ialah format fail pangkalan data biasa yang biasanya digunakan untuk menyimpan data jadual. Dalam program Java, pemprosesan membaca dan menulis fail DBF adalah keperluan yang agak biasa. Artikel ini akan memperkenalkan cara menggunakan Java untuk menyahsulit proses ini dan memberikan contoh kod khusus. 1. Membaca fail DBF Di Java, membaca fail DBF biasanya memerlukan bantuan perpustakaan pihak ketiga, seperti perpustakaan dbfread. Pertama, anda perlu mengkonfigurasi projek

Kemahiran operasi fail dan IO dalam Java Kemahiran operasi fail dan IO dalam Java Jun 08, 2023 am 08:25 AM

Dalam pengaturcaraan Java, selalunya perlu melakukan operasi IO pada fail. Operasi IO fail melibatkan operasi seperti membaca dan menulis fail, mencipta direktori, dan memadam fail. Artikel ini akan memperkenalkan beberapa teknik operasi IO fail biasa dan cara menggunakannya dalam program Java. 1. Laluan fail Untuk mengendalikan fail dan direktori dalam Java, anda perlu menyediakan laluan fail. Laluan fail boleh dibahagikan kepada laluan mutlak dan laluan relatif. Laluan mutlak ialah laluan penuh ke fail dalam sistem fail, bermula dengan direktori akar. Laluan relatif ialah laluan ke fail berbanding dengan direktori kerja semasa. Jawa

See all articles