Запуск игры с использованием 3D-ускорения в отдельном виртуальном терминале замедляется, если не выполняется от имени пользователя root

263
Brian Vandenberg

Я собрал простой скрипт для запуска Neverwinter Nights из отдельного виртуального терминала:

#!/bin/bash read -r -d '' myrcfile <<'EOF' #!/bin/bash cd /path/to/game ./nwn EOF  XINITRC=<(echo "$") xinit -- :1 vt8 

Хотя это работает, игровой процесс довольно изменчив. Для справки, он отлично работает с начального / стандартного экземпляра X.

Я возился с вопросом, смогу schedtoolли я сделать это лучше, и сначала мне показалось, что я добился успеха, но на самом деле улучшение произошло не благодаря schedtool, а скорее потому, что я [наивно] сделал это:

sudo schedtool $ -e ./nwn ^^^^ 

... потому что для некоторых из schedtoolпараметров требуется root (примечание: $это различные комбинации schedtoolпараметров). schedtoolне отвечал за улучшение скорости - sudoбыл. Чтобы убедиться, что это так, я заменил последнюю строку внутреннего скрипта gnome-terminal -c 'sudo ./nwn'и убедился, что он работает безупречно.

У кого-нибудь есть хорошее предложение, как это сделать?

Вот некоторые из вещей, которые я пробовал:

  • Запустите X под sudo, затем вставьте su -c ./nwn myusernameскрипт
  • Запустил игру & X как мой пользователь, затем запустил schedtoolотдельный виртуальный терминал, sudoчтобы изменить настройки текущего процесса, но ничего не изменилось
    • Это, кажется, указывает на то, schedtoolчто не принесет пользы
1
Это достойный вопрос. Я отредактировал немного ясности и форматирования. JakeGould 9 лет назад 0
Я пойду на компромисс Некоторые изменения не отражали то, как я хотел, чтобы это читалось. Brian Vandenberg 9 лет назад 0

1 ответ на вопрос

0
Brian Vandenberg

I just figured it out. I added myself to the video and games group. I'm not sure which one did it, but it worked.

One oddity I ran into while messing with this: before making the group change I ran glxgears instead; as root it was getting about the same FPS as if I'd ran it from the default session, but as my user it was reporting around 500fps.

Похожие вопросы