YaLTeR / niri

A scrollable-tiling Wayland compositor.
https://matrix.to/#/#niri:matrix.org
GNU General Public License v3.0
2.82k stars 79 forks source link

Random stuttering in games/applications #510

Open IgnIVertiKalCaD opened 2 days ago

IgnIVertiKalCaD commented 2 days ago

Niri config: https://hastebin.com/share/oxigefakep.csharp

System Information

Video of the problem: https://youtu.be/xBXdEbvG-VM

I don't know what causes me to have stuttering and other problems in apps/games. They happen at random times. The video doesn't show it as much. I have 2 or 3 frames per second on my video in general. Stuttering can start at any time for no reason at all. I had this problem on hyprland (still do), but only with games. On NIRI I have this problem everywhere. # Я не знаю из-за чего у меня происходят stuttering и прочие проблемы в приложениях/играх. Происходят они в случайное время. На видео это не так видно. У меня на видео вообще кадра 2 или 3 в секунду. В любое время могут начаться stuttering без какой-либо причины. Такая проблема была на hyprland (она и осталась), но только с играми. На NIRI же у меня проблема везде.

YaLTeR commented 2 days ago

Хм, странно. Не знаю, как тут лучше диагностировать. В этом процессоре же нет iGPU, то есть только одна ГПУ в системе?

У меня на видео вообще кадра 2 или 3 в секунду.

Это тоже довольно странно, это не из-за видеоэнкодера случаем? В превью OBS нормально выглядит?

IgnIVertiKalCaD commented 2 days ago

Хм, странно. Не знаю, как тут лучше диагностировать. В этом процессоре же нет iGPU, то есть только одна ГПУ в системе?

У меня на видео вообще кадра 2 или 3 в секунду.

Это тоже довольно странно, это не из-за видеоэнкодера случаем? В превью OBS нормально выглядит?

In the preview, the picture is 60/60, generally nice. Encoder - H264/gpu/vaapi There is no igpu in my proc. There is only dgpu in the system. I don't have this problem in hyproc, so it's not a fact that the problem is mesa or something else. #

В превью картинка 60/60, вообще соска. Encoder - H264/gpu/vaapi В моей проце нет igpu. В системе только dgpu. Проблемы такой нет в hyprland, поэтому не факт, что проблема в mesa, либо в чём-то ином.

IgnIVertiKalCaD commented 1 day ago

I was able to capture in normal frame quality. The problem of the fact that the recording was not 60, but about 0 frames - streaming. I was streaming while recording. It's either a niri problem, obs problem, or I don't know what.

Anyway, I was able to capture the frame sag. On normal page flipping, I'm getting frame sagging as if the compositor is failing. On hyprland for half a year of work on it I have not observed such a thing I can provide any information to correct this ailment.

What information can I provide?

RU

Я смог захватить в нормальном качестве кадры. Проблема в том, что запись велась не 60, а около 0 кадров - стриминг. Я вел стрим во время записи. Это либо проблема niri, либо проблема obs, либо я не знаю что.

В любом случае, мне удалось зафиксировать просадку кадров. При обычном перелистывании страниц я получаю провисание кадров, как будто композитор не справляется. На hyprland за полгода работы я такого не наблюдал. Могу предоставить любую информацию для исправления этого недуга.

Какую информацию предоставить?

# https://youtu.be/tAtLwz8HaJw

YaLTeR commented 1 day ago

Так, ну такое сложно дебажить, конечно, но можно попробовать вот что.

  1. Построй у себя https://github.com/wolfpld/tracy/tree/v0.10 (именно тег v0.10).
  2. Скомпилируй niri через cargo build --release --features=profile-with-tracy. Это будет билд с профайлингом, им нельзя пользоваться просто так (т.к. он собирает профайлинг инфу в оперативку).
  3. Запусти этот билд на другом TTY, подключи к нему Tracy ./capture-release -o output.tracy -f, пока он собирает данные попробуй репродьюснуть проблему. Как только репродьюснешь, сразу в Tracy нажми Ctrl-C, чтобы легко было потом найти, в какой момент собственно была проблема.
  4. Пришли как-нибудь полученный файл, и я посмотрю, есть ли там что-то интересное.