Open JunaidQrysh opened 1 month ago
Something very similar happens to my partners PC as well and it's 100% a Hyprland issue. Not sure if it effects me as I've yet to be in that situation in my PC.
But the "solution" for us is to make sure there is nothing else running on any workspace that visually changes at all. That could be anything from as much as a video to as little as a waybar module updating once per second.
When her GPU is at 100% utilisation on Hyprland games will look like they're dropping frames unless there is exactly nothing else open on any workspace (visible or not) that meets the above criteria. This means she has to close the discord window if she's in a call as it will cause issues any time someone talks because that causes visual change on the client. The same goes for monitoring software like CoolerControl. Just having it open will cause the issue, so I have it open for her on my second screen through ssh tunneling if she wants to see it in real time.
Video Demonstration- https://youtu.be/FDE83uMqBmQ
Ah I see it's not the exact same issue I've encountered. The stuttering you're experiencing at the start with the 70fps cap is similar (and milder) to what I've experienced on my partners PC under my previously stated conditions.
Have you checked if your dedicated GPU is being set to a lower power mode or just not being properly set. I have heard of power profile issues with similar GPU setups for NVIDIA.
And I know if I leave my or my partners GPU to it's own defaults it will manifest bad frame pacing when fps capped. (I know that's a different issue than yours)
Dupe of https://github.com/hyprwm/Hyprland/issues/7643 ?
Edit: ive closed the issue due they wont fix.
if you closed the issue as wontfix then why reopen it? If you don't want to have it open, just close it.
Anyways, this is most likely a driver issue. What is probably happening is that something goes out of sync in the driver's rendering pipeline and explicit sync has to wait for longer than usual. I can't think of anything else.
if you closed the issue as wontfix then why reopen it? If you don't want to have it open, just close it.
Anyways, this is most likely a driver issue. What is probably happening is that something goes out of sync in the driver's rendering pipeline and explicit sync has to wait for longer than usual. I can't think of anything else.
I've opened it due dupe. Prehaps the who filled an issue here didn't find the issue already existed due it was closed.
Edit: how its driver issue? If that dosnt happen on wlroots or kwin/gnome compositor on wayland side.
https://www.reddit.com/r/hyprland/s/WIOc0WSaZa
Also another user getting that issue only specifically on Hyprland.
how its driver issue? If that dosnt happen on wlroots or kwin/gnome compositor on wayland side.
If I knew why I'd have fixed it already
how its driver issue? If that dosnt happen on wlroots or kwin/gnome compositor on wayland side.
If I knew why I'd have fixed it already
What kinda of logs you'd like to need? For me graphical stuff is a miss or hit. So i didnt brother to try to fix.
if I knew what logs would let me know about why this happens, I'd have implemented them already. Debugging gpu issues is a notorious pain because you can't really log 95% of things that happen.
Fair enough. I guess git biscet is only way.
Fair enough. I guess git biscet is only way.
I was trying to find the exact commit that caused this, but 918d834 commit and below does not build, they throw this-
I have hyprutils-git hyprlang-git hyprcursor-git and hyprwayland-scanner-git installed. Maybe they are causing this problem?
Fair enough. I guess git biscet is only way.
I was trying to find the exact commit that caused this, but 918d834 commit and below does not build, they throw this-
make all && sudo make install I have hyprutils-git hyprlang-git hyprcursor-git and hyprwayland-scanner-git installed. Maybe they are causing this problem?
@vaxerski ?
Moving to aquamarine commit didn't cause the issue. I guess explicit sync "Fixes" caused the issue but even tho turning it off doesn't fix the lag
@JunaidQrysh git submodule update --init
@vaxerski Now this error -
downgrade libliftoff to 0.4
@vaxerski I spent a lot of time compling old versions of Hyprland and went as far as 0.32.0 but the bug is still there. I think it really is not Hyprland's problem. Do you have any idea why it does not occur on kde plasma?
@vaxerski I spent a lot of time compling old versions of Hyprland and went as far as 0.32.0 but the bug is still there. I think it really is not Hyprland's problem. Do you have any idea why it does not occur on kde plasma?
I can confirm my issue doesn't happen after moving to aquamarine but happens on commit that fixes explicit sync . "Explicit sync fixes"
@vaxerski I spent a lot of time compling old versions of Hyprland and went as far as 0.32.0 but the bug is still there. I think it really is not Hyprland's problem. Do you have any idea why it does not occur on kde plasma?
I can confirm my issue doesn't happen after moving to aquamarine but happens on commit that fixes explicit sync . "Explicit sync fixes"
How did you test? In 0.32.0 minecraft still lags crazy after uncapping the fps.
@Edgars-Cirulis If you testetd by glmark2 then I just tested it with 0e86808e which is just before Explicit sync fixes and 918d8340 which is way before it. And it still lags like 5 fps. So i dont know why the issue is resolved in your case.
I have same issue on AMD I could try bisecting if someone could explain how to do this on NixOS
Already reported ? *
Regression?
No
System Info and Version
System/Version info
```sh Hyprland, built from branch main at commit 9856378384539e35cd943604e6a4d696a9d25447 (Nix: use mold linker). Date: Thu Sep 19 21:23:34 2024 Tag: v0.43.0-44-g98563783, commits: 5240 built against aquamarine 0.4.1 flags: (if any) System Information: System name: Linux Node name: asus Release: 6.10.10-arch1-1 Version: #1 SMP PREEMPT_DYNAMIC Thu, 12 Sep 2024 17:21:02 +0000 GPU information: 0000:00:02.0 VGA compatible controller [0300]: Intel Corporation TigerLake-H GT1 [UHD Graphics] [8086:9a60] (rev 01) (prog-if 00 [VGA controller]) 0000:01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA107M [GeForce RTX 3050 Mobile] [10de:25a2] (rev a1) (prog-if 00 [VGA controller]) NVRM version: NVIDIA UNIX x86_64 Kernel Module 560.35.03 Fri Aug 16 21:39:15 UTC 2024 os-release: NAME="Arch Linux" PRETTY_NAME="Arch Linux" ID=arch BUILD_ID=rolling ANSI_COLOR="38;2;23;147;209" HOME_URL="https://archlinux.org/" DOCUMENTATION_URL="https://wiki.archlinux.org/" SUPPORT_URL="https://bbs.archlinux.org/" BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues" PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/" LOGO=archlinux-logo plugins: ======Config-Start====== Config File: /home/qrysh/.config/hypr/hyprland.conf: Read Succeeded source = ~/.config/hypr/source/* Config File: /home/qrysh/.config/hypr/source/01-startup.conf: Read Succeeded $terminal = kitty $fileManager = thunar $scrPath = $HOME/.local/share/bin env = KWIN_FORCE_SW_CURSOR,1 env = GBM_BACKEND,nvidia-drm env = __GLX_VENDOR_LIBRARY_NAME,nvidia env = LIBVA_DRIVER_NAME,nvidia env = ELECTRON_OZONE_PLATFORM_HINT, auto env = XDG_CURRENT_DESKTOP,Hyprland env = XDG_SESSION_TYPE,wayland env = XDG_SESSION_DESKTOP,Hyprland env = QT_QPA_PLATFORM,wayland;xcb env = QT_QPA_PLATFORMTHEME,qt6ct env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1 env = QT_AUTO_SCREEN_SCALE_FACTOR,1 env = GDK_SCALE,1 env = PATH,$PATH:$scrPath exec-once = resetxdgportal.sh # reset XDPH for screenshare exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # for XDPH exec-once = dbus-update-activation-environment --systemd --all # for XDPH exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # for XDPH exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 exec-once = pidof hyprlock || hyprlock exec-once = swwwallpaper.sh exec-once = dunst exec-once = wl-paste --type text --watch cliphist store exec-once = wl-paste --type image --watch cliphist store exec-once = [workspace 2 silent] thorium-browser exec-once = [workspace 3 silent] kitty exec-once = hypridle exec-once = /usr/bin/pypr exec-once = nm-applet --indicator exec-once = waybar & sleep 2 && keepassxc Config File: /home/qrysh/.config/hypr/source/02-uiux.conf: Read Succeeded general { gaps_in = 3 gaps_out = 8 border_size = 0 col.active_border = rgba(00000000) col.inactive_border = rgba(00000000) resize_on_border = false allow_tearing = false layout = master } decoration { rounding = 10 drop_shadow = false blur { enabled = false } } dwindle { pseudotile = true preserve_split = true } master { new_status = inherit } misc { force_default_wallpaper = 0 disable_hyprland_logo = true } input { kb_layout = us kb_variant = colemak_dh kb_options = caps:swapescape,ctrl:swap_lalt_lctl follow_mouse = 1 float_switch_override_focus = 1 sensitivity = 0 touchpad { natural_scroll = true } } gestures { workspace_swipe = true } animations { enabled = yes bezier = wind, 0.05, 0.9, 0.1, 1.05 bezier = winIn, 0.1, 1.1, 0.1, 1.1 bezier = winOut, 0.3, -0.3, 0, 1 bezier = liner, 1, 1, 1, 1 animation = windows, 1, 6, wind, slide animation = windowsIn, 1, 6, winIn, slide animation = windowsOut, 1, 5, winOut, slide animation = windowsMove, 1, 5, wind, slide animation = border, 1, 1, liner animation = fade, 1, 10, default animation = workspaces, 1, 5, wind } Config File: /home/qrysh/.config/hypr/source/03-themes.conf: Read Succeeded source = ~/.config/hypr/themes/common.conf source = ~/.config/hypr/themes/theme.conf source = ~/.config/hypr/themes/colors.conf Config File: /home/qrysh/.config/hypr/themes/common.conf: Read Succeeded # █▀▀ █░█ █▀█ █▀ █▀█ █▀█ # █▄▄ █▄█ █▀▄ ▄█ █▄█ █▀▄ exec = hyprctl setcursor Bibata-Modern-Ice 20 exec = gsettings set org.gnome.desktop.interface cursor-theme 'Bibata-Modern-Ice' exec = gsettings set org.gnome.desktop.interface cursor-size 20 # █▀▀ █▀█ █▄░█ ▀█▀ # █▀░ █▄█ █░▀█ ░█░ exec = gsettings set org.gnome.desktop.interface font-name 'Cantarell 10' exec = gsettings set org.gnome.desktop.interface document-font-name 'Cantarell 10' exec = gsettings set org.gnome.desktop.interface monospace-font-name 'CaskaydiaCove Nerd Font Mono 9' exec = gsettings set org.gnome.desktop.interface font-antialiasing 'rgba' exec = gsettings set org.gnome.desktop.interface font-hinting 'full' Config File: /home/qrysh/.config/hypr/themes/theme.conf: Read Succeeded exec = gsettings set org.gnome.desktop.interface icon-theme 'Tela-circle-dracula' exec = gsettings set org.gnome.desktop.interface gtk-theme 'Catppuccin-Mocha' exec = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' Config File: /home/qrysh/.config/hypr/themes/colors.conf: Read Succeeded Config File: /home/qrysh/.config/hypr/source/04-rules.conf: Read Succeeded windowrulev2 = noanim,class:^(qimgv)$ windowrulev2 = suppressevent maximize, class:.* # You'll probably like this. windowrulev2 = opacity 0.90 0.90,class:^(thorium-browser)$ windowrulev2 = opacity 0.80 0.80,class:^(kitty-dropterm)$ windowrulev2 = opacity 0.80 0.80,class:^(kitty)$ windowrulev2 = opacity 0.80 0.80,class:^(thunar)$ windowrulev2 = opacity 0.80 0.80,class:^(arqiver)$ windowrulev2 = opacity 0.80 0.70,class:^(nm-connection-editor)$ windowrulev2 = opacity 0.80 0.70,class:^(nm-applet)$ windowrulev2 = opacity 0.80 0.70,class:^(org.pulseaudio.pavucontrol)$ windowrulev2 = opacity 0.80 0.70,class:^(org.freedesktop.impl.portal.desktop.gtk)$ windowrulev2 = opacity 0.80 0.70,class:^(org.freedesktop.impl.portal.desktop.hyprland)$ windowrulev2 = float,class:^(arqiver)$ windowrulev2 = float,class:^(org.pulseaudio.pavucontrol)$ windowrulev2 = float,class:^(nm-applet)$ windowrulev2 = float,class:^(nm-connection-editor)$ windowrulev2 = float,class:^(org.keepassxc.KeePassXC)$ windowrulev2 = float,title:^(File Operation Progress)$ windowrulev2 = size 36% 30%,title:^(Unlock Database - KeePassXC)$ windowrulev2 = float, title:^(Picture in picture)$ windowrulev2 = pin, title:^(Picture in picture)$ windowrulev2 = move 25% 27%, title:^(Picture in picture)$ windowrulev2 = size 50% 45%, title:^(Picture in picture)$ Config File: /home/qrysh/.config/hypr/source/05-binds.conf: Read Succeeded $mainMod = SUPER # FN-Keys bindl = , XF86AudioMute, exec, volumecontrol.sh -o m bindl = , XF86AudioMicMute, exec, volumecontrol.sh -i m bindel = , XF86AudioLowerVolume, exec, volumecontrol.sh -o d bindel = , XF86AudioRaiseVolume, exec, volumecontrol.sh -o i bindl = , XF86MonBrightnessUp, exec, brightness.sh i bindl = , XF86MonBrightnessDown, exec, brightness.sh d # Pyprland bind = $mainMod, T, exec, pypr toggle kitty bind = $mainMod, M, exec, pypr toggle volume bind = $mainMod, O, exec, pypr toggle obsidian bind = $mainMod, Q, killactive bind = $mainMod, E, exec, $fileManager # Scripts bind = $mainMod, A, exec, pkill -x rofi || rofilaunch.sh d bind = $mainMod+Shift, A, exec, pkill -x rofi || rofiselect.sh bind = $mainMod, V, exec, pkill -x rofi || cliphist.sh h bind = $mainMod SHIFT, V, exec, pkill -x rofi || cliphist.sh bind = $mainMod SHIFT, W, exec, swwwallselect.sh bind = $mainMod SHIFT, B, exec, wallbashtoggle.sh -m bind = $mainMod SHIFT, T, exec, themeselect.sh bind = $mainMod, Backspace, exec, logoutlaunch.sh bind = $mainMod, Space, exec, killall waybar || waybar bind = $mainMod SHIFT, G, exec, gamemode.sh # Screenshot bind = $mainMod, P, exec, screenshot.sh s # partial screenshot capture bind = $mainMod+Ctrl, P, exec, screenshot.sh sf # partial screenshot capture (frozen screen) bind = , Print, exec, screenshot.sh m # monitor screenshot capture bind = $mainMod, Print, exec, screenshot.sh p # all monitors screenshot capture # Window Focus bind = $mainMod, H, movefocus, l bind = $mainMod, L, movefocus, r bind = $mainMod, J, movefocus, d bind = $mainMod, K, movefocus, u bind = $mainMod, N, layoutmsg, swapwithmaster master # Window Management bind = $mainMod+Shift, P, exec, windowpin.sh bind = $mainMod, W, toggleFloating bind = $mainMod, W, resizeActive, exact 50% 52% bind = $mainMod, W, moveActive, exact 25% 24% bind = , F11, fullscreen # Never Changing bind = $mainMod, 1, workspace, 1 bind = $mainMod, 2, workspace, 2 bind = $mainMod, 3, workspace, 3 bind = $mainMod, 4, workspace, 4 bind = $mainMod, 5, workspace, 5 bind = $mainMod, 6, workspace, 6 bind = $mainMod, 7, workspace, 7 bind = $mainMod, 8, workspace, 8 bind = $mainMod, 9, workspace, 9 bind = $mainMod, 0, workspace, 10 bind = $mainMod SHIFT, 1, movetoworkspace, 1 bind = $mainMod SHIFT, 2, movetoworkspace, 2 bind = $mainMod SHIFT, 3, movetoworkspace, 3 bind = $mainMod SHIFT, 4, movetoworkspace, 4 bind = $mainMod SHIFT, 5, movetoworkspace, 5 bind = $mainMod SHIFT, 6, movetoworkspace, 6 bind = $mainMod SHIFT, 7, movetoworkspace, 7 bind = $mainMod SHIFT, 8, movetoworkspace, 8 bind = $mainMod SHIFT, 9, movetoworkspace, 9 bind = $mainMod SHIFT, 0, movetoworkspace, 10 bind = $mainMod, mouse_down, workspace, e+1 bind = $mainMod, mouse_up, workspace, e-1 bindm = $mainMod, mouse:272, movewindow bindm = $mainMod, mouse:273, resizewindow ======Config-End======== ```Description
In minecraft if fps uncapped gpu reaches 100% and fps reach around 100 fps but look like 5 fps but if i cap fps at 90 or 80 then the gameplay is supersmooth. I have tested in kde plama this issue does not occur there, so im pretty sure its a hyprland bug and not an nvidia problem.
How to reproduce
Uncap fps, the game will look like 5 fps Cap fps to around 90% gpu uitilization, the game will be super smooth.
Crash reports, logs, images, videos
No response