В Bottles 67.1 ускорили холодный старт приложений и включили OpenXR

2026-09-02 99 комментарии
В Bottles 67.1 ускорили холодный старт и включили OpenXR без SteamVR Описание: Профиль запуска в Bottles 67.1 собирается по нескольким сеансам, модули готовятся до обращения Wine. По замерам проекта холодный старт быстрее на 3,38%, значительные отказы страниц – 1 вместо 16. Включается в разделе «Скорость» параметров бутылки

В Bottles 67.1 и обновлённом runner Soda 11.0-7 переработан Adaptive Launch: профиль запуска накапливается по нескольким сеансам, а модули, которые программа загружает первыми, готовятся заранее, до обращения к ним со стороны Wine. По замерам проекта медианное время холодного старта сократилось на 3,38%, а медианное число значительных отказов страниц снизилось с 16 до 1. В Soda 11.0-7 появилось подключение 64-разрядных OpenXR-приложений Windows к среде выполнения OpenXR на стороне Linux – WiVRn или Monado – без участия SteamVR. При обновлении runner имя пользователя Windows внутри бутылки больше не сбрасывается на steamuser. Объявление о выпуске опубликовано .

Adaptive Launch собирает профиль модулей по нескольким сеансам

Adaptive Launch появился в Soda 11.0-5 вместе с Bottles 66: для бутылки сохранялся небольшой профиль файлов, к которым программа обращается при старте. В Soda 11.0-7 механизм переписан. Обучение идёт по отдельным сеансам, повторяющиеся ранние загрузки модулей ранжируются по частоте, объём сохраняемых сведений ограничен, а уже созданные профили переносятся на новую схему автоматически.

runner – сборка Wine или Proton, которую Bottles подставляет конкретной бутылке для запуска Windows-программ. Soda – собственная сборка проекта на базе Wine TKG и экспериментальной ветки Wine от Valve.

Включается функция в параметрах бутылки: «Параметры» -> «Скорость» -> Adaptive Launch. Первые несколько запусков уходят на сбор профиля, дальше он применяется без участия пользователя. Профиль лежит внутри бутылки и содержит только пути к файлам, но не их содержимое; наружу он не передаётся.

Замеры проекта: 3,38% к холодному старту и 16 отказов страниц против одного

В объявлении о выпуске приведены две медианы: холодный старт стал быстрее на 3,38%, число значительных отказов страниц снизилось с 16 до 1. В проекте оговаривают, что выигрыш зависит от конкретной программы и от машины, на которой она запускается. Условия измерений, состав тестового набора и число повторов не описаны, так что числа стоит читать как заявление проекта о собственном runner, а не как независимый бенчмарк.

Значительный отказ страницы (major page fault) – ситуация, когда нужной странице памяти не нашлось в оперативной памяти и её приходится читать с накопителя. Такие обращения на порядки дороже обычных, поэтому их число заметно влияет на время старта программы.

Разница между 16 и 1 говорит не столько о процентах, сколько о смене характера обращений к накопителю при старте: файлы подготавливаются заранее, а не подгружаются по запросу Wine. Насколько это скажется на конкретной бутылке, в проекте предсказывать не берутся и отсылают к собственным замерам как к ориентиру.

В ProtoSoda 11.0-2 Adaptive Launch заработал для игр UMU

ProtoSoda 11.0-2 – это ядро Wine из Soda 11.0-7, дополненное раскладкой каталогов и средой выполнения Proton, которых требует UMU. Вместе с ядром в сборку пришла вторая версия Adaptive Launch, а launcher, библиотеки времени выполнения, DXVK, VKD3D и protonfixes обновлены до GE-Proton11-6. Префикс по умолчанию пересобран из объединённого runner, а не унаследован от GE-Proton.

UMU – единый способ запускать Windows-игры вне Steam, созданный в Open Wine Components. Это копия Steam Runtime Tools и Steam Linux Runtime с правками, которые позволяют сторонним оболочкам – Bottles, Lutris, Heroic – запускать игры через Proton и применять исправления protonfixes.

Новые установки получают Adaptive Launch сразу. Для уже добавленной игры придётся обновить ProtoSoda и выбрать protosoda-11.0-2 в её настройках. При первом запуске Steam Runtime 4 загружается автоматически, если его нет в системе, и готовить среду через постороннюю оболочку больше не нужно.

OpenXR-приложения подключаются к WiVRn и Monado без SteamVR

Через Soda 11.0-7 64-разрядное OpenXR-приложение Windows подключается к среде выполнения OpenXR, уже установленной в системе, – например, к WiVRn или Monado. Отдельного переключателя в Bottles нет: достаточно выбрать Soda и запустить программу.

Ограничения заявлены сразу двумя строками. Поддержка объявлена только для 64-разрядных приложений Windows, а автоматическая проверка при сборке выполнялась против Monado – для WiVRn и прочих сред выполнения результат зависит от конкретной связки и от самого приложения.

При обновлении runner имя пользователя Windows сохраняется

Раньше после обновления Soda префикс мог переехать на пользователя steamuser, и сохранения, настройки и прочие привязанные к профилю файлы оказывались не там, где их ищет программа. В Soda 11.0-7 настроенное для бутылки имя пользователя Windows остаётся прежним при обновлении префикса. Переносить каталоги вручную не требуется, обновление runner выполняется обычным порядком.

Библиотека, песочница UMU и архив для ARM64

По глобальной кнопке «+» теперь предлагается выбор: создать бутылку или установить игру через UMU. Записи в библиотеке сохраняют порядок сортировки и исчезают сразу после удаления. Режим синхронизации больше не переключается сам при открытии настроек запущенной программы – из-за этого программы закрывались неожиданно.

Собственная конфигурация Flatpak для MangoHud теперь учитывается. Тем, кто добавлял переопределение только ради файла MangoHud.conf, в проекте советуют обновить Bottles, убедиться, что конфигурация подхватывается, и переопределение убрать. Пункт «Команда с аргументами» снова включается без пересоздания ярлыка. Игра UMU в песочнице стартует без доступа к сети – вернуть его можно переключателем «Доступ к сети» в настройках игры.

Soda 11.0-7 получил и архив для aarch64: в него входят ARM64, ARM64EC, встроенный FEX для программ x86 и x86_64 и поддержка OpenXR со стороны хоста. Архив рассчитан на ручные интеграции, официальные пакеты Bottles остаются x86_64 до готовности сборки под ARM64.

Правки интерфейса распределены по двум выпускам. В списке изменений версия 67.0 от содержит сортировку и действия в библиотеке, отказ от перезапуска неизменной синхронизации и включение Adaptive Launch для ProtoSoda, а 67.1 от исправляет среду выполнения UMU и навигацию по разделу Cpak. В объявлении проекта обе версии сведены под номером 67.1.

Заключение

Обновление адресовано двум группам: тем, кто держит в бутылках тяжёлые программы с долгим стартом, и тем, кто запускает игры через UMU. Прирост в 3,38% сам по себе скромен, но падение числа значительных отказов страниц с 16 до 1 меняет поведение при первом за сеанс запуске, а сохранение имени пользователя Windows снимает старую проблему с потерянными сохранениями после обновления runner. Владельцам VR-гарнитур на Linux версия интересна отдельно: OpenXR-приложения Windows работают с WiVRn и Monado без SteamVR. Пакеты x86_64 опубликованы на Flathub и в Cpak, установка через Flatpak остаётся рекомендованной.

© .
Комментарии и отзывы

Нашли ошибку?

Новое на сайте