Тест производительности файловой системы
Краткое описание
(c) Лаборатория нелинейных вычислений НИВЦ МГУ, 1997
Автор: Андреев А.Н. (
alexander@vvv.srcc.msu.su )
Дата обновления: Суббота, 26 Июля 1997.
Этот документ также доступен в англоязычном варианте.
Назначение
Требуется выяснить скорости файлового ввода/вывода и времена выполнения
различных файловых опреаций.
Использование
filetest folder [N]
- folder - директория файловой системы, где будут размещаться временные файлы;
- N - число итераций теста, по умолчанию 1.
Поддерживаемые платформы: Unix, Win32.
Результаты
Результаты выдаются в виде таблицы следующего вида
Size,K Seg,K Write Read OvrWr Create Close Open Unlink
1 1 0.1 0.6 0.5 0.64 0.84 0.86 3.03
2 2 0.3 1.4 1.2 0.59 0.71 0.67 2.91
Size и Seg - размеры файла и буфера в килобайтах,
Write, Read, OvrWr - скорости записи, чтения и повторной записи в MB/sec,
Create, Close, Open, Unlink - времена создания, закрытия, открытия,
удаления в миллисекундах.
Тестовые процедуры
В этом разделе описаны элементарные тестовые процедуры,
используемые методикой тестирования.
Параметры тестов
-
Folder - тестовый каталог
-
Size - размер файла
-
Seg - размер одновременно загружаемого с диска или записываемого
на диск сегмента файла
(т.е. размер внутреннего буфера программы).
в указанном каталоге создается файл junk.Size,
где Size - размер файла в килобайтах.
(A) Тест записи: testFileWrite()
В случае, если файа не существовал, он создается,
иначе открывается на запись.
-
Create - время создания нового файла открытием его на запись
-
Write Rate - скорость записи нового файла
размером Size сегментами по Seg,
вычисляемая как W.R. = Size / (Cr+C+W),
где Cr и C - времена на создание и закрытие, а W -
время собственно записи с помощью операции (операций) write().
-
Close - время закрытия вновь созданного файла.
-
OverWrite Rate - скорость записи в существующий файл,
вычисляемая как OW.R. = Size / (O+C+W),
где O и C - времена на открытие и закрытие, а W -
время собственно записи с помощью операции (операций) write().
(B) Тест чтения: testFileRead()
Тестовый файл должен существовать.
-
Open - время открытия существующего файла на чтение
-
Read Rate - скорость чтения файла
размером Size сегментами по Seg,
вычисляемая как W.R. = Size / (O+W),
где O - время на открытие, а R -
время собственно чтения с помощью операции (операций) read().
(С) Тест удаления: testFileUnlink()
-
Unlink - время удаления файла с помощью unlink().
Методика тестирования
- Для Size = 4,8,16,...K исполняется процедура A (см. 'тестовые процедуры').
- Для Size = 4,8,16,...K исполняется процедура B.
- Для Size = 4,8,16,...K исполняется процедура A.
- Для Size = 4,8,16,...K исполняется процедура C.
Все это выполняется в цикле N раз, результаты усредняются по всем итерациям.