this post was submitted on 10 Jul 2024
398 points (95.0% liked)

Linux

48069 readers
772 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

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
398
submitted 4 months ago* (last edited 4 months ago) by ksp@jlai.lu to c/linux@lemmy.ml
 

Zed is a modern open-source code editor, built from the ground up in Rust with a GPU-accelerated renderer.

you are viewing a single comment's thread
view the rest of the comments
[–] aramus@lemmy.world 28 points 4 months ago (5 children)

I still don't understand why I should need GPU acceleration for my fucking TEXT EDITOR

[–] FlorianSimon@sh.itjust.works 51 points 4 months ago (1 children)

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!

[–] booly@sh.itjust.works 3 points 4 months ago (2 children)

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).

[–] AProfessional@lemmy.world 21 points 4 months ago (1 children)

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.

[–] ParetoOptimalDev@lemmy.today 1 points 4 months ago (1 children)

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?

[–] AProfessional@lemmy.world 2 points 4 months ago* (last edited 4 months ago)

Also very unrelated, that’s about graphics apis like opengl.

https://www.khronos.org/opengl/wiki/Synchronization

[–] leopold@lemmy.kde.social 9 points 4 months ago

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.

[–] ryannathans@aussie.zone 38 points 4 months ago (3 children)

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

[–] fruitycoder@sh.itjust.works 18 points 4 months ago (1 children)

It was surprising how gpu accelerated rendering helped read logs better. Niche case, but better was better.

[–] laughterlaughter@lemmy.world 3 points 4 months ago (1 children)
[–] fruitycoder@sh.itjust.works 7 points 4 months ago (1 children)

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.

[–] laughterlaughter@lemmy.world 2 points 3 months ago

Interesting! I'd like to experience this at some point.

[–] laughterlaughter@lemmy.world 5 points 4 months ago (1 children)

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.

[–] ryannathans@aussie.zone 4 points 4 months ago (1 children)
[–] Phoenix3875@lemmy.world 4 points 4 months ago (1 children)

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?

[–] ryannathans@aussie.zone 6 points 4 months ago* (last edited 4 months ago)

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

[–] atzanteol@sh.itjust.works 0 points 4 months ago

Same reason you need it for your terminal

So I don't.

[–] sorrybookbroke@sh.itjust.works 17 points 4 months ago (1 children)
[–] FlorianSimon@sh.itjust.works 8 points 4 months ago

Think about battery life too 🎉

[–] naught@sh.itjust.works 16 points 4 months ago (1 children)

I mean, it should be clear. Smooth and fast and snappy. If you don't want that, use neovim like me :)

[–] ma1w4re@lemm.ee 4 points 4 months ago (2 children)

But... Neovim is smooth, fast and snappy 😭

[–] naught@sh.itjust.works 3 points 4 months ago (1 children)

Hold down j and lmk how smooth it is 😅

[–] ma1w4re@lemm.ee 2 points 4 months ago
[–] shy_mia@lemmy.blahaj.zone 3 points 4 months ago (1 children)

Terminals applications are, by definition, not smooth. You can't have smooth scrolling, or anything else really, with a text grid.

[–] ma1w4re@lemm.ee 1 points 4 months ago

Idk I'm so used to working in terminal I don't really notice that. For my eyes, it's smooth enough

[–] electricprism@lemmy.ml 5 points 4 months ago

Smooth scrolling? Maybe I'm wrong