Erinevus lehekülje "Fio" redaktsioonide vahel
17. rida: | 17. rida: | ||
[global] | [global] | ||
ioengine=libaio | ioengine=libaio | ||
− | iodepth= | + | iodepth=6 |
runtime=300 | runtime=300 | ||
time_based | time_based |
Redaktsioon: 15. oktoober 2015, kell 16:57
Fio on kettaseadmete testimiseks mõeldud utiliit, millel on suur valik seadistusi ning võimalus koondada erinevaid tekste ühte kesksesse konfiguratsioonifaili, mis lihtsustab tunduvalt erinevate testide loomist.
Random read of 128mb of data
[random-read] rw=randread size=128m directory=/tmp/fio-testing/data
Käivitamiseks
$ fio random-read-test.fio
Keerukam konfiguratsioon, mis teeb kokku neli erinevat järjestikust ning random kirjutustesti erinevate bloki suurustega. 1G on failisuurus mille peal teste läbi viiakse ning iga test kestab 5 minutit.
[global] ioengine=libaio iodepth=6 runtime=300 time_based direct=1 sync=0 group_reporting size=1G filename=/srv/fiotesti-fail numjobs=1 [4m-seq-write] stonewall bs=4m rw=write [1m-random-write] stonewall bs=1m rw=randwrite [128k-random-write] stonewall bs=128k rw=randwrite [4k-random-write] stonewall bs=4k rw=randwrite
ioengine=libaio ioengine valikuid on palju, default on sync. Huvitav mida rsync kasutab, netist kohe ei leidnud. Katsetamise mõttes võiks korraks vähemalt võrrelda sync ja libaio numbreid.
numjobs=1 tähendab, et 4 protsessi koormab paralleelselt. Oletan, et (võrreldes numjobs=1 testiga) on järjestikune kirjutamine seetõttu oluliselt aeglasem ja random üsna täpselt sama (sest sync=1, direct=1).
direct=1 sync=0 Nende kahe lipu (samuti "dd flag=direct/sync") kohta on SO-s jutt: http://stackoverflow.com/questions/5055859/how-are-the-o-sync-and-o-direct-flags-in-open2-different-alike tehniliselt võiks olla nii, et direct=1 tähendab juba, et puhvreid ei kasutada ning järelikult võib jätta sync=0