Обновление Linux 6.2 exFAT для повышения производительности при создании файлов и каталогов

Файловая система exFAT должна стать быстрее в Linux 6.2, по крайней мере, при создании файлов и каталогов, причем повышение производительности особенно заметно на процессорах низкого уровня.

В августе 2019 года компания Microsoft выпустила спецификацию exFAT и объявила о поддержке Linux, за которой последовала новая реализация exFAT в Linux 5.7 (июнь 2020 года) от Samsung. Но люди все еще работают над улучшением поддержки exFAT в Linux, и Юэ Чжан Мо (Yuezhang Mo), инженер Sony, зафиксировал набор исправлений для Linux 6.2, который сокращает повторный обход записей каталога для повышения производительности exFAT:

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

После этой фиксации укажите пустые записи каталога следующим образом:

1. Укажите удаленные записи каталога, если их достаточно;
2. Укажите удаленные и неиспользуемые записи каталога, которые находятся в конце цепочки кластера, независимо от того, достаточно или нет (добавьте эту фиксацию);
3. Если нет пустых записей каталога, укажите пустые записи каталога в новом кластере (добавьте эту фиксацию).

Это позволяет избежать повторного обхода записей каталога, снижает нагрузку на ЦП и повышает производительность создания файлов и каталогов (особенно на низкопроизводительных ЦП).

Юэ Чжан протестировал патч на платформе NXP i.MX6 ( плата для разработки i.MX6q SABRE Lite ) с использованием карты MicroSD класса 4 и обнаружил улучшения от 14,4% до 57,4% в зависимости от того, сколько новых файлов было создано с использованием следующего кода:

Результаты:

Количество файлов Перед После Улучшение
1~1000 25,360 с 22,168 с 14,40%
1001~2000 38,242 с 28,72 с 33,15%
2001~3000 49,134 с 35,037 с 40,23%
3001~4000 62,042 с 41,624 с 49,05%
4001~5000 73,629 с 46,772 с 57,42%

Таким образом, в основном, чем больше файлов создается, тем выше относительная производительность, и это может быть заметно пользователю: новый патч экономит около 27 секунд при создании 5000 файлов на этой конкретной платформе.

Выражаем свою благодарность источнику из которого взята и переведена статья, сайту cnx-software.com.

Оригинал статьи вы можете прочитать здесь.

5 1 vote
Article Rating
Подписаться
Уведомление о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

0 Комментарий
Inline Feedbacks
View all comments