Есть такая знаменитая проблема, как лагающие анимации GNOME Shell под выскокой нагрузкой на процеcсор с видеокартами NVIDIA. На других видеоадаптерах не пробовал.
***
Оказалось, что ядро с патчами СK и планировщиком MuQSS немного помогает удерживать плавность анимации под нагрузками.
Как я обычно делаю:
- 1. Запускаю Blender с рендером сцены на ЦПУ на все возможные потоки, к слову у меня их четыре.
- 2. Зажимаю клавишу Super(Win) и периодически нажимая «А» смотрю на плавность вылета значков. Это самое узкое место в анимациях, но ещё лагает и режим «обзор», особенно когда много окон открыто. Можно просто клавишу Super понажимать.
Что вижу:
Вижу как начинает подлагивать анимация, ну то есть видно же, что пропуск кадров происходит. Многие не замечают, возможно неискушённые пользователи, но я вижу это хорошо, хотя не играю в игрульки и не мастурбирую на FPS.
И вот накатываю ядро СK, повторяю первое и второе условия и анимация под нагрузкой намного лучше, почти идеальная.
Ужесточаю условия. К рендеру сцены можно добавить ещё что-то из нагрузок, например я просто из терминала могу ещё стресс-тест запустить на 4 потока.
stress -c 4
И вот к сути вопроса...
Я зметил, что если повысить приоритет процессу gnome-shell, то плавность анимаций ещё лучше удерживается. Но беда в том, что потом все процессы запускаемые из gnome-shell имеют такой же повышенный приоритет.
Ещё нагуглил такую штуку, как http://ck.wikia.com/wiki/SchedulingPolicies
Типа можно задавать процессам какие-то политики вроде SCHED_FIFO, SCHED_RR, SCHED_ISO Но мои скудные знания английского и вообще познания этих политик, не позволяют понять принцип их работы.
Вот к примеру я сделал на процесс gnome-shell так:
schedtool -I 437
Вроде как становится лучше как никогда.
Так вот кто мне объяснит как работают эти SchedulingPolicies, будут ли запускаемые процессы из gnome-shell иметь такой же приоритет при этом, как это происходит при обычном renice, ну и может есть какие-то способы другие, что бы повысить приоритет gnome-shell, не затрагивая другие?