Rust наступает. Новый релиз Coreutils показал феноменальный прирост скорости и обогнал GNU.

Rust наступает. Новый релиз Coreutils показал феноменальный прирост скорости и обогнал GNU.

Утилита base64 теперь работает почти в два раза быстрее.

image

Совсем недавно вышел релиз Rust Coreutils 0.2, который принёс серьёзный рост производительности и поддержку Ubuntu на уровне готового продукта. Теперь доступна версия 0.2.2, где добавлено несколько доработок, включая заметное ускорение команды base64. В тестах она показала результат лучше, чем у классической реализации из GNU Coreutils.

Выход новой версии был необходим в том числе для устранения инфраструктурных проблем, чтобы обеспечить стабильное распространение пакета на разных платформах. Обновились и некоторые зависимости на Rust. Среди исправлений — устранение паники в stty и корректная работа cp при копировании текущего каталога в уже существующую директорию.

Главное новшество — переработанная утилита base64. Разработчики внедрили поддержку SIMD-инструкций через библиотеку base64-simd , что позволило использовать возможности современных процессоров и заметно увеличить скорость.

Бенчмарки показывают почти двукратный прирост. Если в предыдущем релизе выполнение занимало 5,998 секунды, то в 0.2.2 — уже 3,146 секунды. Это ощутимое ускорение, которое выводит Rust Coreutils вперёд.

Примечательно, что обновлённая версия base64 обгоняет и GNU Coreutils: там аналогичная операция заняла 4,901 секунды. Таким образом, Rust Coreutils теперь уверенно демонстрирует преимущество.

Инициатором изменений стал Сильвестр Ледру, ведущий разработчик проекта uutils.

Библиотека base64-simd поддерживает широкий набор архитектур, включая SSE4.1, AVX2, AVX-512, ARM NEON, AArch64 NEON и WASM SIMD128, что делает ускорение универсальным для разных систем.

Новый релиз Rust Coreutils доступен на GitHub , где опубликованы все детали и бинарные сборки для загрузки.