29.06.2022

Опубликованы результаты тестов производительности файловой системы Reiser5

Опубликованы результаты тестов производительности проекта Reiser5, развивающего существенно переработанный вариант файловой системы Reiser4 с поддержкой логических томов, обладающих «параллельным масштабированием», которое, в отличие от традиционных RAID, подразумевает активное участие файловой системы в распределении данных между устройствами-компонентами логического тома. С точки зрения администратора существенное отличие от RAID состоит в том, что компоненты логического тома с параллельным масштабированием являются отформатированными блочными устройствами.

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

Для компоновки томов использовались твердотельные накопители (SSD) в количестве 4 экземпляра. Скорость операции над логическим томом определена как отношение количества занятого пространства на всём логическом томе к времени выполнения операции, включающую полную синхронизацию с накопителями.

Скорость любой операции (за исключением сброса данных с прокси-диска на том, скомпонованный из малого количества устройств) выше, чем скорость копирования данных с одного устройства на другое. При этом, с увеличением числа устройств, из которых том скомпонован, скорость операций возрастает. Исключение составляет операция миграции файла, скорость которой ассимптотически стремится (сверху) к скорости записи на целевое устройство.


Низкоуровневый последовательный доступ: Устройство Чтение, M/s Запись, M/s DEV1 470 390 DEV2 530 420 Последовательные чтение/запись большого файла (M/s): Число дисков в томе Запись Чтение 1 (DEV1) 380 460 1 (DEV2) 410 518 2 (DEV1+DEV2) 695 744 3 (DEV1+DEV2+DEV3) 890 970 4 (DEV1+DEV2+DEV3+DEV4) 950 1100 Последовательное копирование данных из/в отформатированное устройство Из устройства В устройство Скорость (M/s) DEV1 DEV2 260 DEV2 DEV1 255 Добавление устройства в логический том: Том Добавляемое устройство Скорость (M/s) DEV1 DEV2 284 DEV1+DEV2 DEV3 457 DEV1+DEV2+DEV3 DEV4 574 Удаление устройства из логического тома: Том Удаляемое устройство Скорость (M/s) DEV1+DEV2+DEV3+DEV4 DEV4 890 DEV1+DEV2+DEV3 DEV3 606 DEV1+DEV2 DEV2 336 Сброс данных с прокси-диска: Том Прокси-диск Скорость (M/s) DEV1 DEV4 228 DEV1+DEV2 DEV4 244 DEV1+DEV2+DEV3 DEV4 290 DEV1 RAM0 283 DEV1+DEV2 RAM0 301 DEV1+DEV2+DEV3 RAM0 374 DEV1+DEV2+DEV3+DEV4 RAM0 427 Миграция файла Том Целевое устройство Скорость (M/s) DEV1+DEV2+DEV3+DEV4 DEV1 387 DEV1+DEV2+DEV3 DEV1 403 DEV1+DEV2 DEV1 427 

Отмечено, что производительность может быть ещё более улучшена, если распараллелить процедуру выпуска запросов ввода-вывода на компоненты логического тома (сейчас для простоты это делается в цикле одним потоком). А также если считывать только те данные, которые подлежат перемещению при перебалансировке (сейчас для простоты читаются все данные). Теоретический предел для скорости добавления/удаления второго устройства в системах с параллельным масштабированием — удвоенная скорость копирования с первого диска на второй (соотв. со второго на первый). Сейчас скорости добавления и удаления второго диска соответственнго 1.1 и 1.3 скоростей копирования.

Кроме того, анонсирован O(1)-дефрагментатор, который будет обрабатывать все компоненты логического тома (влючая прокси-диск) в параллели, т.е. за время не превышающее время обработки самой большой компоненты в отдельности.

Источник.