logoalt Hacker News

temp0826yesterday at 8:25 PM1 replyview on HN

I don't understand all the hooplah about gpu-accelerated terminals either really. If your x/compositor(/framebuffer?) is using the correct drivers, isn't it already accelerated? (I've never really used "pretty" or overly featureful terminal emulators so is this about decoration? Or actually outputting text?)


Replies

nicholasrqyesterday at 10:36 PM

it does have framebuffer of course because you need to store actual text somewhere. in this case framebuffer stores structs that contain text (char), its styles and dirtiness

all chars are rasterized into atlas (sprite, if you want) containing whatever can be printable. it's bitmap that has fixed addressable cells that renderer can pick up and apply styles to

so answering you question, it's not just outputting text, a bit more but super optimized to be really fast. i mean, visually it can be achieved by something like double-buffer so you basically just diff changes and re-render only changed cells

although, as i mentioned in another comment, in some applications CPU computations become too expensive. GPU acceleration just gives terminal snappier feel and prevent performance degradation under UI-heavy load