FC-Test или больше тестов, хороших и разных.

Автор: niknik
Дата: 17.06.2002
Все фото статьи
Введение

"Хлеба и зрелищ! И побольше!"
(с) очень голодные римляне

На протяжении этого года тест Intel IOMeter приобретал всё большее значение в используемом мною наборе тестов, постепенно вытесняя из него все остальные тесты. Так как Ваш покорный слуга некоторое время поработал в торговле, то у него чрезвычайно обострились все шесть чувств, особенно шестое... :)
Недовольство читателей чрезмерной "синтетичностью" тестов , по моим ощущениям, грозило перерасти в нечто большее, и понадобилось сделать нечто, способное удовлетворить изощрённый вкус читающей публики.

Как Вы помните, попытка применить на практике тест PCMark2002 от MadOnion успехом не увенчалась, и мои поиски "реальных" тестов были продолжены. Еще через некоторое время, когда я по пятому разу перечитывал Интернет в подлиннике, в мою опухшую от иероглифов голову пришла светлая мысль: "Если хочешь, чтобы что-то было сделано правильно, сделай это сам.". И так эта мысль мне понравилась, что я стал искать того, кто умеет программировать лучше меня. :)
По счастью, мой старый знакомый программист (еще по компьютерам AГАТ :) ) Сергей Громов aka SnakE, решил помочь мне, взявшись написать так нужный мне тест. Процедура согласования техзадания на тест много времени не заняла, собственно программирование было выполнено ещё быстрее, и сегодня я представляю Вам первую публичную версию программы FC-Test (FileCopy Test).
Как явствует из названия, программа эта копирует файлы, замеряя при этом затраченное на эту процедуру время. Но это не просто заменитель Проводника и секундомера в руке тестера, а...
Впрочем, смотрите сами:
FC-Test

"Как всякий истинный учёный, он был немногословен"
(с) Аркадий и Борис Стругацкие

Как видите, интерфейс программы сух и лаконичен:


Но, чем проще интерфейс, тем меньше шансов в нём заблудиться. Итак, как мы видим, после запуска программы нам доступны только две закладки: "File" и "Help". В закладке "Help" пока присутствует только возможность посмотреть информацию о версии программы и её авторе (т.н. About), так что мы её пока опустим, а вот внутри закладки "File" мы можем видеть уже две опции:


Воспользовавшись опцией "Open" мы можем загрузить в тест заранее подготовленный список файлов (для простоты далее именуемый паттерном). Собственно, в паттерне содержится следующая информация:
FC-test Pattern 1.0
1003327;1
4644930;1
80220;1
4837783;1
11208360;1
.....
6407756;1

Т.е. паттерн представляет собой перечисление размеров файлов с указанием количества файлов одинакового размера. Такая форма представления набора файлов позволяет создавать паттерны буквально своими руками, при помощи обычного текстового редактора. Но, если мы хотим, чтобы паттерны наши были не "синтетическими", то мы можем воспользоваться опцией "Scan", которая позволяет создать паттерн по любой указанной Вами папке с файлами (при этом в паттерн попадут и все файлы во вложенных директориях).


После выбора интересующей нас папки нам нужно выбрать формат, в который она будет обработана, и указать, необходима ли "оптимизация" списка файлов или нет. Под оптимизацией подразумевается группирование файлов с одинаковым размером в "пакеты" для уменьшения размеров файла паттерна. Однако, необходимо помнить, что после воспроизведения обычного и оптимизированного паттерна на чистом диске, карты размещения файлов на физических дорожках у них будут различаться.
Что касается меня, то я не использую оптимизацию для паттернов.

Если же мы выберем опцию "Open", то нам будет предложено выбрать файл паттерна, который мы хотим загрузить в тест:


И после того как паттерн загружен, нашему взору открываются новые горизонты:


Как много новых кнопок! :) Попробуем разобраться...
Описываю кнопки слева направо: "Закрыть паттерн"; "Сохранить паттерн"; "Добавить элемент в паттерн"; "Удалить элемент паттерна"; "Редактировать элемент паттерна"; "Оптимизировать паттерн": "Создать по паттерну файлы".
Конечно, самая главная кнопка - последняя. После нажатия на эту кнопку, программа предложить нам выбрать директорию, где будут созданы файлы текущего паттерна.


Будьте осторожны при выборе директории, так как удалять 9000 файлов из директории Windows - задача не для слабонервных! :o)


После создания по паттерну реальных файлов на жёстком диске с ними можно производить те самые операции копирования, ради которых всё и было затеяно.
Например, файлы можно просто считать:


При этом мы получим значение скорости чтения файлов с винчестера (а при создании файлов мы получили скорость записи файлов на винчестер).

Если же мы выберем опцию "Copy", то, указав место назначения, мы получаем скорость копирования файлов из "пункта А" в "пункт Б". Как Вы понимаете, вариантов копирования файлов по логическим дискам может быть множество, и выбор вариантов - личное дело каждого.
Время выполнения каждой процедуры фиксируется в закладке "Log" и сохраняется в файл с мрачным названием.


Завершая описание программы FC-Test, хочется ещё раз упомянуть её автора - Сергея Громова и выразить ему слова искренней благодарности (в том числе и авансом от Вашего имени).



Методика тестирования

"Вы же впутали меня в еще один прекрасный миф!"

Итак, инструмент в наших руках, он настроен и готов звучать... Но в нашем деле рвать струны нужно строго по партитуре, иначе есть риск, что ничего не понимающие в музыке соседи сверху окатят Вас холодной и ужасно мокрой водой.

Для тестов жёсткий диск разбивается на два равных по размеру логических диска и форматируется либо в NTFS, либо в FAT32. Далее, на первом логическом диске по выбранному паттерну создаются файлы, и фиксируется время их создания. После этого файлы "считываются", и фиксируется затраченное на это время.
Затем, файлы копируются на тот же логический диск, где находится наш исходный набор файлов и на второй (еще пустой) логический диск. Указанный набор тестов повторяется по три раза с перезагрузкой компьютера между тестами. Полученные результаты усредняются.
Таким образом, мы получаем четыре значения скорости диска:

1. скорость записи набора файлов на жёсткий диск;
2. скорость чтения набора файлов с жёсткого диска;
3. скорость копирования набора файлов на "небольшое расстояние";
4. скорость копирования набора файлов на "середину винчестера".

Нагрузка на дисковую подсистему при этом определяется содержимым паттернов, которое, как я уже говорил, легко изменять вручную. Если мы хотим измерить скорость чтения/записи потоковой информации на винчестер, то мы создаём паттерн, состоящий из одного файла с большим объёмом. Если же мы хотим испытать скорость обработки винчестером мелких файлов, мы просто делаем паттерн из тысячи (двух, трёх, четырёх....) файлов размером в 1 байт. :)
Однако, так как я с самого начала объявил о том, что хотел получить "реальный" тест, т.е. тест, измеряющий скорость работы винчестера при работе с реальными, несинтетическими наборами файлов, то я просто отсканировал пять папок на своей домашней машине.

Паттерны для FC-Test
  Всего файлов Объём, MB
 Install 414 575
 ISO 3 1600
 MP3 271 990
 Programs 8504 1380
 Windows 9006 1060

По названиям папок легко догадаться, что в них находилось (и находится до сих пор). Как мне кажется, данный набор паттернов можно считать характерным для всех пользователей компьютеров.
Всю власть - Советам!

"Копируйте с нами, копируйте как мы, копируйте лучше нас!"

В заключение хочу сказать, что и сам FC-Test и методика тестирования винчестеров с его помощью не есть что-то статичное и определённое раз и навсегда. Надеюсь, что с Вашей помощью мы доведём этот тест до совершенства (по мне, так, в идеале, тест должен сам писать обзоры ;) ).

С удовольствием и благодарностью приму Ваши советы, пожелания и проклятия в нашей конференции.
Download

Программа FC-Test распространяется по принципу "as is" (как есть). Мы не отвечаем за ущерб, который может быть причинён программой или её неправильным использованием.
скачать программу

При использовании программы FC-Test в коммерческих целях ссылка на Ф-Центр обязательна.