Сейчас уже можно дать аргументированный ответ на вопрос о производительности дисковой подсистемы в различных операционных средах. Путь к этому открывают Java-приложения. Получены первые результаты сравнения скорости операций чтения, записи и копирования, метрики которых сняты кросс-платформенной утилитой
NIOBench.
По итогам сравнения можно сделать вывод, что сильной стороной Linux является технология отложенной записи, в то время, как Windows отличилась на чтении. Стоит осторожно предположить, что Microsoft эффективно минимизирует количество транзитных операций пересылки данных между буферами.
На самом деле, это ни о чём не говорит. java машина в разных ОС разные, да что там с виндой сравнивать - часто даже в разных дистрибутивах разные версии java и работают с разной производительностью. Иногда влияет даже не версия ПО, а то, каким компилятором было собрано и с какими опциями. На производительность может влиять очень сильно. Кроме того, в линуксах планировщик ввода-вывода по умолчанию (в разных дистрибутивах может быть по-разному!) занимает всю имеющуюся оперативку под дисковый кэш, но политику использования памяти, а также операций работы с дисками можно менять, соответственно, результаты будут различными.
Например, я как-то пробовал скопировать файл пару гигов на диск, потом удалил, и через минуту снова туда же скопировал. Второе копирование заняло менее секунды.
т. 89276219324
Совершенно верно! Существует много вариантов Java-машин, есть зависимость от качества компилятора, разные дистрибутивы могут иметь свои особенности, но для того и существуют тесты, чтобы сравнивать разные варианты и выбирать лучшие. NIOBench, как java-приложение, даёт большую свободу именно в оценке того многообразия операционных сред, которое сложилось на сегодня. В силу того, что наш тест интегральный по определению (JVM + ОС), зависимость от JVM нормальный и ожидаемый факт.
Кэширование дисковых данных в оперативной памяти, которое, как мы все понимаем, повышает скорость при повторных обращениях к файлу, доставляет хлопоты с точки зрения повторяемости результатов бенчмарок. Доверие к таким результатам строится на основе открытости алгоритмов и расчетной базы. С этим у нас все в порядке: тест использует респектабельный фреймворк java.NIO, а промежуточные результаты тоже никто не скрывает:
Открытая книга: icbook.com.ua
Статья из разряда - после прочтения вспомнился старый анекдот в тему
Лекция для колхозников. Лектор:
- Товарищи колхозники. Перед вами череп Александра Македонского, где ему 7 лет. А вот этот череп, где ему 25 лет. И, наконец, череп умершего Александра Македонского. Вопросы есть?
Есть:
- Скажите, пожалуйста, как может быть у одного человека три черепа?
- А вы, простите, кто? - спрашивает лектор.
- Дачник.
- Вот и идите на хер. Лекция для колхозников.
Неизвестна конфигурация тестового ПК (особенно объем ОЗУ) или хоть бы написали какие ФС используются при сравнении - у виндов (у каких конкретно) явно NTFS, а у линуха появляются варианты со своими достоинствами и недостатками...
Отправить комментарий