Выпуск языка программирования Rust 1.2, развиваемого проектом Mozilla
В новой версии продолжена работа по оптимизации производительности, значительно ускорен процесс компиляции и представлены наработки по обеспечению распараллеливания сборки на многоядерных системах (добавлена опция "-C codegen-units=число потоков"). Например, сборка hyper теперь выполняется на 16% быстрее, html5ever - на 62%, regex - на 32%, rust-encoding на 35%. Генерация кода в параллельном режиме на четырёхядерном компьютере даёт ускорение ещё на 33%. Ограничением параллельного режима сборки является невозможность использования некоторых режимов оптимизации, что ограничивает его применение промежуточными и отладочными сборками.
Проведена значительная оптимизация производительности пакетного менеджера Cargo, например, время сборки пакета с движком Servo удалось сократить в 10 раз. В Cargo также добавлена поддержка совместно используемых целевых директорий, в которых кэшируются типовые для разных пакетов зависимости, что позволяет дополнительно существенно сократить время сборки сложных проектов.
В языке завершена реализация типов динамически изменяемого размера (DST, dynamically-sized type), позволяющих создавать указатели (Rc) на элементы массивов и объекты, динамически адаптирующиеся к изменениям в их структуре. Кроме сборки с применением инструментария GNU в Rust реализована возможность компиляции с использованием MSVC (Microsoft Visual C) и прямого связывания кода на языке Rust с кодом, собранным в MSVC.
Источник: http://www.opennet.ru/opennews/art.shtml?num=42751
|
0 | Tweet | Нравится |
|