this post was submitted on 10 Jul 2024
390 points (95.1% liked)
Linux
48083 readers
753 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I still don't understand why I should need GPU acceleration for my fucking TEXT EDITOR
Probably because it's more efficient. GPUs are designed to render things, which editors do. In a text editor, you're effectively rendering fonts over a fixed background, which I assume is pretty efficient using the GPU.
We're not talking about crazy 3D effects here.
Yay to battery savings!
Shouldn't the DE/Window Manager be handling that? Seems like doing it on a window by window basis would be inefficient (and look inconsistent).
That’s a totally unrelated part of the stack. These days you just have a compositor that combines the output of applications.
The model of out of process rendering in Xorg was done pre-2000s but GPUs became the norm and don’t work well this way.
Thats where we get into explicit and implicit sync right?
Also very unrelated, that’s about graphics apis like opengl.
https://www.khronos.org/opengl/wiki/Synchronization
The job of the window manager is to manage windows and very little else. Font rendering is done by the widget toolkit, usually via freetype/harfbuzz.
Same reason you need it for your terminal (see kitty terminal). It's surprisingly slow to cpu render text, gpu rendering is more power efficient and far more responsive
It was surprising how gpu accelerated rendering helped read logs better. Niche case, but better was better.
Better in what sense?
More readable on my part. The speed at which logs could write to the screen and still be readable was faster for me compared to before.
Interesting! I'd like to experience this at some point.
Surprisingly slow compared to GPU rendering. But... is it really "surprisingly slow"? If it was some 10mhz machine, then sure... I'd agree with you.
Look at the benchmarks on kitty https://sw.kovidgoyal.net/kitty/performance/
Maybe I'm missing something, but shouldn't the benchmark be a good approximation to the real workload? I don't see how the measurements reflect the performance difference in real life usages.
Why would I need 100MiB/s processing as opposed to 20MiB/s processing, when I can only read maybe several lines per second?
Faster processing means more efficient processing which means less power draw.
https://github.com/kovidgoyal/kitty/issues/2701#issuecomment-911089374
How about keypress latency? Over 3x faster than gnome terminal and 4x faster than alacritty
So I don't.
Sppeeed
Think about battery life too 🎉
I mean, it should be clear. Smooth and fast and snappy. If you don't want that, use neovim like me :)
But... Neovim is smooth, fast and snappy 😭
Terminals applications are, by definition, not smooth. You can't have smooth scrolling, or anything else really, with a text grid.
Idk I'm so used to working in terminal I don't really notice that. For my eyes, it's smooth enough
Hold down
j
and lmk how smooth it is 😅😭😭😭
Smooth scrolling? Maybe I'm wrong