Тестирование Производительности ФС (Создадим набор скриптов.)

Полезные советы и программы от пользователей нашего форума.

Модератор: Модераторы разделов

Аватара пользователя
Angel_13th
Сообщения: 1164
Статус: ...-oo=ll=oo-...
ОС: Gentoo

Тестирование Производительности ФС

Сообщение Angel_13th »

Данная тема создана для того что бы нашим сообществом создать несколько скриптов для проверки производительности различных файловых систем. В связи с недавней статьей, в которой для тестирования использовался старый компьютер Intel Pentium III 500 Mhz, было решено провести собственное тестирование производительности различных ФС. Все это сделано для того что бы выявить какие ФС, быстрее, на каких конфигурациях (тут играет роль и насколько качественно написан ide или sata драйвер для чипсета, производительность процессора, объем и скорость памяти, и т.д.). А так как я в написании скриптов как "конь с телефоном :) ", но хочу заняться тестированием и все таки выяснить различия, прошу знающих людей написать скрипты, сам помогу идеями и небольшим участием в их написании. После того как скрипты будут написанны, и каждый желающий сможет протестировать и рассказать о своих результатах, можно будет сделать вывод о том на сколько та или иная файловая система, быстрее или медленее другой.

Условия к скриптам.
1.Желательно что бы работали на различных дистрибутивах.
2.Было копирование мелких файлов.(Желательно ядро в распакованном виде)
3.Было копирование крупных файлов.(Желательно создание одного большого файла из более мелких например 10 копий исходников ядра в одном большом файле, если брать например фильм то у всех будет разный размер.)
4.Было создание Н-ого кол-ва директорий и файлов.
5.Удаление директорий и файлов.
6.Распаковка и упаковка архивов. (желательно что бы это было ядро версии 2.6.11, так как имеется у большинства людей).
7.Удобочитаемый вывод. (что бы имелась возможнось скопировать и вставить, или даже вывод в файл, это позволит более быстро обработать результаты)

Ну и конечно итоговый скрипт должен распростроняться ПОД ЛИЦЕНЗИЕЙ GPL-2 :).

Если у кого нить есть еще какие-нибудь предложения и добавления просьба высказаться здесь.
WorkStation Ubuntu 10.10 on Fujitsu-Siemens Amilo Pro 3545
Спасибо сказали:

Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: Тестирование Производительности ФС

Сообщение KiWi »

Самая первая наработка:

Код:

#!/bin/bash DEVICE="/dev/hda1" MOUNPOINT="/mnt/tmp" TESTS="/home/ifl/tests" FILESYSTEMS="reiserfs ext3 ext3 ext3" FSOPTIONS_1="ro,rw" FSOPTIONS_2="ro,rw" RETRIES=2 NUM=0 for FS in $FILESYSTEMS; do let NUM+=1 OPT='' OPT=`eval "echo \\\$FSOPTIONS_${NUM}"` echo "Filesystem: ${FS}" if [ "${OPT}" != "" ]; then echo "Mount Options: ${OPT}" OPT="-o ${OPT}" fi for TEST in `ls "${TESTS}"`; do NUMRETRIES=0 echo echo "Test #${NUM}" echo while [[ $NUMRETRIES -lt ${RETRIES} ]]; do let NUMRETRIES+=1 echo "Retry #${NUMRETRIES}" echo "Formating..." mkfs -t ${FS} ${DEVICE} || exit echo "Mounting..." mount -t ${FS} ${OPT} ${DEVICE} ${MOUNTPOINT} || exit echo "Running..." time ( cp -R ${TESTS}/${TEST} ${MOUNTPOINT} 2>&1 >/dev/null ) || exit echo "Unmounting..." umount ${MOUNTPOINT} || exit echo "Retry Done" echo done echo "Test Done" echo done echo "FS Done" echo echo done

DEVICE -- тестрируемая партиция
MOUNPOINT -- куда монтируем
TESTS -- директория с тестами
FILESYSTEMS -- список ФС
FSOPTIONS_1 -- напод опций при монтировании для первой ФС
FSOPTIONS_2 -- -||- для второй ФС
RETRIES -- количество запусков каждого теста

По идее, должно работать(по крайней мере все команды выводит нормально), протестировать вряд ли смогу, так как нет свободных партиций
И ещё -- довольно грубая обработка ошибок -- просто завершается программа

Что делает?
Берёт каждый элемент из директории с тестами копирует в mountpoint и выводит время(утилита time)

Перед каждой попыткой заново создаётся и монтируется ФС, после теста она демонтируется
Спасибо сказали:

Аватара пользователя
Sparky
Сообщения: 604
Статус: core dumped
ОС: Plan 9

Re: Тестирование Производительности ФС

Сообщение Sparky »

Было бы круто, если бы диаграммы строил прямо в консоли :)
Блог
--------------------

GCS/M/MU/P/IT/E d- s: a- C++(+++) UBL++ P->-- L+++$ E- W+++$ N* o? K? w>--
O M-@ V- PS@ PE+ Y+ PGP+ t 5 X R* tv-->- b++ DI? D>+ G e+(++) h--- r+ y++
Спасибо сказали: