00:51 orowith2os[d]: gfxstrand[d]: Cgroups?
00:52 orowith2os[d]: Should make it possible
00:54 orowith2os[d]: It's just the problem of making the system aware that, "hey, you should try swapping this stuff out first if you need to"
06:23 pixelcluster[d]: orowith2os[d]: https://lists.freedesktop.org/archives/dri-devel/2025-January/485282.html
14:18 dwlsalmeida[d]: airlied[d]: anyways, I've opened an issue -> https://gitlab.khronos.org/vulkan/vulkan/-/issues/4138
14:18 dwlsalmeida[d]: let's see whether the others agree on adding the LT bits, that would solve our problem
15:16 magic_rb[d]: orowith2os[d]: Can you move a running process to a different cgroup?
15:32 orowith2os[d]: magic_rb[d]: Ywah
15:35 tanriol: Kinda. Not all accounting changes correctly if you change cgroup - I think memory use is still attributed to the old one after that - but it's possible to change cgroup priorities on the fly, which should be close enough if your DE uses systemd and starts every app in its own cgroup anyway.
15:50 jannau: hej, I'm wondering why I can't find a trace of nvk users running into https://gitlab.gnome.org/GNOME/gtk/-/issues/7229
15:50 jannau: the gtk4 vulkan renderer creates images with VK_IMAGE_TILING_LINEAR and .mipLevels > 1
15:51 jannau: if I can trust my brief glance of nvk that should panic in nil/image.rs as the shadow tiled image is only used for dmabuf backed images
17:29 mhenning: jannau: Oh, that's interesting. I actually did need to fix a mipmapping bug in gtk4 in order to to get the vulkan renderer working on nvk, it was just a different bug than that one
17:37 jannau: this one doesn't trigger always. displaying large images with loupe triggers it
17:38 jannau: there is another mipmap bug. the calculated number of mipmap levels is one off for powers of 2
17:41 gfxstrand[d]: jannau: Yeah, that should trigger on NVK as well. But it's possible we have additional linear restrictions that make GTK give up on that path or something. Nvidia's linear support is super restricted.
17:42 gfxstrand[d]: Like I think if you ask for linear+render we say no unless you're asking for it via a modifier.
17:43 gfxstrand[d]: We can support it technically but there's so many HW restrictions that the app is better suited to work around it than we are.
17:51 jannau: that would explain why it doesn't trigger on nvk
21:28 orowith2os[d]: magic_rb[d]: , tanriol: didn't have the energy to go into detail earlier, but the main thing there was just knowing what apps are in focus and what apps aren't, and changing their cgroups as appropriate, like ones not in focus to lower resource priorities, or even having idle ones (that need the user in focus to anything useful) prefer swap instead of the main system memory
21:29 orowith2os[d]: Which should be possible, from what I'm seeing
21:29 magic_rb[d]: that sounds like a thing to be talked over with some wayland peeps
21:30 orowith2os[d]: Maybe, but it's probably more a desktop integration thing
21:31 orowith2os[d]: Like, a process/app that hasn't done anything in over a minute might be fine to put at a lower priority, and the app can request that this Not Be The Case through something like the Background portal
21:32 orowith2os[d]: Wayland only really has any play in knowing if the user is focused on the app, which would mean that it *shouldn't* be put to sleep for sure
21:32 orowith2os[d]: Everything should already be available for all this, save the app requesting that it not be suspended
21:33 magic_rb[d]: seems cool, im gonna be hopefully more knowledgeable once i finally start actively trying wayland
21:33 magic_rb[d]: hopefully soon
21:34 magic_rb[d]: im still blocked on explicit sync in wlroots
21:39 orowith2os[d]: You could probably play around a bit with some of it with GNOME, it probably has a bunch of the stuff you'd need linked up already
21:41 orowith2os[d]: Like figuring out what apps aren't in focus or don't have a window, then getting a cgroup for them from that and fiddling with that
22:38 magic_rb[d]: i would actually have to like using gnome at least a little bit :) i really do not like GNOME or KDE, nothing against the folks working on them but its just not my cup of tea at all
22:43 orowith2os[d]: Fair, just mentioning it since it should be simple enough to fiddle with the GJS API there
22:44 orowith2os[d]: Good luck in figuring it out on wlr 🫡
22:50 magic_rb[d]: idk if ill get to that, currently im neck deep in a haskell CI/CD system