Новость: Сравнение производительности NetBSD 2.0 и FreeBSD 5.3
(Категория: NetBSD)
Добавил Roman I Khimov
Четверг, 06 Январь 2005, 17:32

Грегори МакГарри (Gregory McGarry) провел обстоятельное и достаточно интересное сравнение производительности двух популярных BSD-систем: NetBSD 2.0 и FreeBSD 5.3. Согласно этому тесту разработчики NetBSD действительно потрудились на славу и версия 2.0 более чем заслуживает именно такого номера - практически во всех тестах NetBSD оказалась быстрее и сейчас вполне обоснованно претендует на звание лучшей операционной системы для серверных применений.

Тесты проводились на компьютере с материнской платой Asus P4-800SE, процессором Intel P4 3ГГц (1MB L2 кэша) и 1ГБ оперативной памяти. Обе операционные системы устанавливались "по умолчанию" и никаких настроек ядер или их перекомпиляций не проводилось.

Использовались тесты сразу трех категорий. В первой категории измерялась функциональность ядра операционной системы:
  • потери производительности на системный вызов
  • время переключения контекстов
  • время создания процесса
  • время завершения процесса
  • время загрузки программы
Во второй категории измерялась масштабируемость операционной системы при нагрузках приложениями или сетевой активностью:
  • время создания процесса при возрастающей нагрузке
  • время завершения процесса при возрастающей нагрузке
  • время инициализации отображенного в память файла
  • время доступа к отображенному в память файлу
  • время создания сокета
  • латентность связывания адреса с сокетом
Последняя категория измеряла затраты производительности на реализацию родной модели потоков:
  • время создания потока при возрастающей нагрузке
  • потери производительности за жизненный цикл потока
  • затраты на доступ к неоспариваемому мьютексу
  • время доступа к переменным условия
  • время переключения контекста потоков
В первой группе тестов NetBSD уверенно взяла верх, особенно отличившись во времени загрузки программы - в 2.5-3 раза быстрее, чем FreeBSD.

Из второй группы тестов выделяется время создания и завершения процессов - в NetBSD оно практически не зависит от количества уже запущенных процессов и при большой нагрузке разница с FreeBSD становится очень значительной. В деле отображения файлов в память обе системы показали себя с лучшей стороны - зависимости от количества запущенных процессов практически не прослеживается в обоих случаях, но здесь FreeBSD показала себя, пожалуй, с лучшей стороны - хотя на отображение файла в память у NetBSD ушло в два раза меньше времени, последующий доступ к этому файлу в FreeBSD происходил все же в два раза быстрее, и если брать типичную нагрузку, когда файл отображается и потом идет периодический доступ к нему, то FreeBSD будет на около 38% впереди. Время создания сокетов в обоих системах отлично масштабируется, но NetBSD здесь опять оказалась быстрее, а вот результат по связыванию адреса с сокетом уже интереснее - при малых нагрузках NetBSD быстрее, но когда нагрузки становятся выше, масштабируемость NetBSD оказывается не лучшей и она уступает FreeBSD.

Также FreeBSD заметно лучше масштабируется по времени создания потоков - до 250 потоков NetBSD идет впереди, но затем начинает заметно проигрывать FreeBSD. Зато в работе с потоками NetBSD в разы опередила FreeBSD, особенно это заметно в операциях с мьютексами, время доступа в 0.0372 микросекунды и время доступа в 0.282 микросекунды - почувствуйте разницу. И эта разница была явно продемонстрирована дальнейшим тестом "пинг-понг", хотя время создания потоков в первых двух тестах у NetBSD выше, по времени завершения теста она значительно быстрее во всех трех раундах.

Автор теста отмечает, что хотя такие микро-тесты (по размеру каждой тестируемой операции) явно недостаточны для того, чтобы делать выводы о производительности операционной системы в целом, они все же полезны для понимания архитектурных решений, заложенных в системы. Также было бы интересно сравнить производительность систем на SMP аппаратуре, последние изменения в FreeBSD здесь скорее всего покажут хорошие результаты.

Полностью с результатами, графиками и выводами можно ознакомиться здесь (English).


Источник этой новости Центр информации по операционным системам
( http://www.osrc.info/news.php?extend.1717 )