Rust-сортировка: почему to_lowercase() с кэшированием быстрее, чем кажется, и как Unicase всех удивил

Matching Puzzle Pieces and Disappointing Benchmarks

Автор сравнивает три способа регистронезависимой сортировки строк в Rust: предварительное приведение к нижнему регистру с кэшированием, ленивое сравнение через итераторы и крейт Unicase. Бенчмарки на M2 Max показывают, что кэширование окупается уже на пяти элементах, а Unicase неожиданно обгоняет даже простой перебор символов, несмотря на более сложное сравнение. Статья содержит код и подробные результаты измерений.

Настоящий сюрприз в том, что Unicase часто оказывается быстрее, несмотря на более сложное сравнение.

Ещё за этот день

2026-09-06