Увеличиваем размер файла подкачки на Steam Deck

Никогда бы не подумал, что какая-то игра с зелёной галочкой может быть неюзабельна без доработки системы напильником.

Ниже расскажу о том, что случилось и как всё улучшить самостоятельно.

Увеличиваем размер файла подкачки на Steam Deck

4) Постскриптум (обращение к опытным юзерам)

TL;DR

God of War зависает на Steam Deck.

Причина: переполнение оперативной памяти.

Исправление: установка CryoUtilities.

Дано

Есть шедевральный God of War 2018-го года, который официально поддерживается дэком и рекомендуем к покупке.

Увеличиваем размер файла подкачки на Steam Deck

Однако в меню своих настроек игра честно признаётся, что размер файла подкачки для неё неприемлем. Вон, красненьким горит внизу:

Увеличиваем размер файла подкачки на Steam Deck

Вследствие этого спустя час с хвостиком память переполняется, а Steam Deck зависает. Приходится удерживать кнопку питания и жёстко перезагружать гаджет.

ИГРА С ЗЕЛЁНОЙ ГАЛОЧКОЙ И ОТМЕТКОЙ «ПОЛНОСТЬЮ СОВМЕСТИМА» ВЕШАЕТ ДЭК НАМЕРТВО!

Сперва я подумал, что это мой частный единичный случай. Мало ли, вдруг просто внезапный сбой. Но после повторного краша полез в гугл и понял, что ситуация распространённая.

God of War крашит Steam Deck? God of War крашит Steam Deck!
God of War крашит Steam Deck? God of War крашит Steam Deck!

Проблему описывали в январе 2022, есть подробная страница со скринами и замерами утекающей памяти. Но даже спустя 2 года гадавару всё ещё не хватает памяти под линуксовым протоном...

Решение

Увеличиваем файл подкачки.

Это можно сделать как вручную через консоль, так и крутой утилитой от энтузиастов. Я предпочитаю второй способ, потому что в этом случае:

а) легко повторить настройки после обновлений системы;

б) можно в один клик всё откатить назад.

Итак, переходим на страницу загрузки и качаем инсталлятор:

Увеличиваем размер файла подкачки на Steam Deck

Далее залезаем в папку с загрузками и запускам скачанный файлик, выбрав Execute и согласившись со всем.

(официальная инструкция перед запуском просит удалять «.download» из имени файла, но мне слишком лениво это делать. Как видите, менеджер файлов по двойному клику прекрасно понимает и без переименований, что перед ним исполняемый файл)
(официальная инструкция перед запуском просит удалять «.download» из имени файла, но мне слишком лениво это делать. Как видите, менеджер файлов по двойному клику прекрасно понимает и без переименований, что перед ним исполняемый файл)

После установки новая приложенька появится в главном меню:

Увеличиваем размер файла подкачки на Steam Deck

Софтина предельно простая. Запускаем, соглашаемся с опасностью действий, вводим пароль суперпользователя (или создаём его, если почему-то не сделали это до сих пор):

Увеличиваем размер файла подкачки на Steam Deck

На вкладке Swap наблюдаем текущие значения:

Увеличиваем размер файла подкачки на Steam Deck

Либо меняем их здесь вручную, либо же жахаем рекомендуемые настройки с помощью первой вкладки. В этом случае утилита поставит Swap в 16 GB и Swappiness в 1, с которыми я абсолютно согласен.

Swappiness определяет то, в какой момент системой начинает задействоваться файл подкачки.

Меньше число – меньше желание системы лезть туда.

Задаётся в диапазоне от 1 до 200.

Рекомендуемые настройки также включают и настраивают использование HugePages (2 мегабайта на страницу вместо 4 килобайт).
Рекомендуемые настройки также включают и настраивают использование HugePages (2 мегабайта на страницу вместо 4 килобайт).

Проверка

God of War в меню больше не ругается на файл подкачки. Уведомление про оперативную память вообще пропало, её игре хватает с головой.

Увеличиваем размер файла подкачки на Steam Deck

Лишь при выставлении максимальных настроек появляется предупреждение. И в нём, кстати, стоят уже наши активные 16 ГБ подкачки.

Увеличиваем размер файла подкачки на Steam Deck

После выполнения описанной в посте процедуры Бог Войны не вылетел ни разу.

Последняя игровая сессия длилась почти 3 часа и включала в себя прохождение Альвхейма. Ни яркие вспышки с множеством отражений, ни десятки тёмных эльфов, ни чёрно-белые флешбеки не смогли нарушить стабильность работы.

Проблема решена.

Постскриптум

Уже во время создания этого поста я понимал, что вызову лёгкое возмущение у опытных пользователей. Поэтому отвечу им прямо здесь.

Некоторые закономерно возмутятся тем фактом, что для банальной операции советую ставить отдельный софт, да ещё и вводить пароль суперпользователя где попало. Поэтому если вы уверенный пользователь ПК, любите всё делать ручками и не доверяете всяким «сборкам от энтузиастов», то команды по управлению свопом следующие:

sudo swapoff -a sudo dd if=/dev/zero of=/home/swapfile bs=1G count=SIZE_IN_GB status=none sudo chmod 0600 /home/swapfile sudo mkswap /home/swapfile sudo swapon /home/swapfile
echo VALUE | sudo tee /proc/sys/vm/swappiness

SIZE_IN_GB и VALUE подставляйте свои, конечно же.

Это взято со страницы пояснения сути производимых манипуляций. Там же есть комментарии по твикам с HugePages, применяемым при выставлении рекомендуемых настроек.

Другая категория опытных дэководов скорее всего скажет, что CryoUtilities – это вообще база, это должно устанавливаться в первую очередь на каждый дэк, писать про такое отдельно нет смысла. Отчасти соглашусь, ибо во многих гайдах и видео встречал упоминание этой софтины ещё год назад.

Однако мой подход другой: я против бездумной установки твиков и кастомизации системы без особой необходимости. Искренне не понимаю тех, кто в первый день после покупки бежит ставить всё подряд по всем инструкциям. Зачем и ради чего?

Именно поэтому в данном посте не было упоминания увеличения VRAM через BIOS.

Хотя, казалось бы, раз SWAP увеличили, то давайте ещё и VRAM жахнем побольше, места ведь хватит. Но я себе не поменял, и вам не советую.

«Работает – не трогай».

У меня сейчас даже decky не стоит, потому что в нём нет нужды. Благодаря этому я на протяжении долгого времени могу оценивать работу Steam Deck в относительно стоковом виде и рекомендовать на него игры, в работоспособности которых уверен на 100%.

Например, сейчас выявил проблемный релиз, рассказал про него вам. Не исключено, что после прохождения откачу своп назад, чтобы снова получить задуманную инженерами Valve конфигурацию.

А если какая-то другая игра начнёт глючить «из коробки», то это будет связано с её кривостью, а не засранностью системы.

8585
99
22
22
22
11
11
11
11
11
11
195 комментариев

Пользуясь случаем напоминаю, что другие мои посты про Steam Deck можно найти по тегу #тубиобожаетстимдэк или на странице https://two-bee.github.io/ в разделе "про железо".
Вдруг вы до сих пор не знаете, что внутри чехла терабайтного оледа есть съёмный вкладыш, а кастомные стики без дрифта уже давно выпущены и отлично себя чувствуют после замены

25
3
3
1
1
Ответить

пекапердолинг

19
Ответить