Live data from Hacker News

Kitty – a fast, featureful, GPU based terminal emulator

sw.kovidgoyal.net

151–160 of 323 posts

Re: Kitty – a fast, featureful, GPU based terminal emulator

#151
post #141
post #116

Earlier quoted context omitted.

Input latency makes for a bad user experience. People just usually don't notice it when typing as it's so common. See https://danluu.com/term-latency/ for measurements of some terminal software and discussion of why latency is bad. I'm not sure if Kitty is using GPU specifically to minimize latency, but it would be a good reason.

I work in video and as a consequence I tend to be very sensitive to latency (I've spent more hours than I can count trying to figure out subtle synchronization issues) yet I've just spent one minute trying to detect input latency on my st terminal (which fares pretty badly in the benchmark you linked) without success. And that's running inside tmux on top of that. That being said I think it is valuable to have a reas…

I don't know. Try using a simple, $2 (physical) calculator against the screen of your computer.

I can definitely tell you that while I can't see the actual letter appearing on the screen - the letter on the calculator would feel as if it appeared right at the bottom position of the button, while on my PC the key would have travelled some distance off the ground before I see the letter.

It's not uncomfortable, but I could easily tell the two apart in a blind test would something like that come up.

Re: Kitty – a fast, featureful, GPU based terminal emulator

#152
post #110
post #95

Why render with the GPU? I don't think I've seen a visually slow terminal emulator since 2000 and barely even in the 1990's. Text rendering is basically just blitting cached glyph bitmaps into a buffer, and CPUs have been more than overly fast doing that for eons. And CPU rendering has none of the compatibility problems/quirks that GPUs have. I can fire up a Gnome Terminal onto an unaccelerated Vesa X11 display if my…

Text rendering is very complex. GPU text rendering is however unlikely to be faster then "native" text rendering. But it could likely make scrolling more smooth.

You could use it to watch youtube in ascii mode if that somehow tickles your fancy

Re: Kitty – a fast, featureful, GPU based terminal emulator

#153
post #145
post #139

Two simple speed tests: time find ~ /dev/null takes 8 seconds alacritty takes 8.5 seconds and uses 75% CPU kitty takes 15 seconds and uses 100% CPU konsole takes 16 seconds and uses 100% CPU time for i in {1..2000000}; do echo $i; done /dev/null takes 8 seconds alacritty takes 16 seconds and uses 75% CPU kitty takes 17 seconds and uses 100% CPU konsole takes 16 seconds and uses 98% CPU

I'm guessing you're on KDE (as am I) but it would be cool to see GNOME Terminal compared also. What I got from these results is that Konsole is already good enough to not bother switching.

Yes, I'm on KDE on X. gnome-terminal does not work (easily) on my distro so I cannot measure that. I did measure xterm which takes over a minute for both tests and also stresses out X. None of the other terminal emulators did that.

Still, I wonder if the terminal emulators could use less CPU and be faster if they refreshed only with the frequency of the monitor.

An interesting insight from the tests is that the execution speed of a program can depend on the speed of the terminal emulator.

Re: Kitty – a fast, featureful, GPU based terminal emulator

#154
post #33

I've been using Kitty for a month now. I really like it. It's slightly less usable out of the box than iTerm 2. The default shortcuts are very counterintuitive (no CMD T for new tab or CMD W to close tab). But editing the preferences is straightforward. I prefer it to iTerm because it's so. Damn. Fast. It's the only software (besides Sublime) I run on my laptop that actually feels like it's using the 40 years of tran…

From a marketing perspective I was wondering how did you discover it one month back? Product hunt? or here itself ?

It has been listed on the arch wiki under their list of available terminal emulators for a long time and I often use the wiki to look up things even when having to configure things on non-arch systems.

Re: Kitty – a fast, featureful, GPU based terminal emulator

#155

Earlier quoted context omitted.

Alacritty is quite buggy and not very maintained, the author doesn't put a lot of work in except the occasional small merge. (They still haven't finished the scrollback support branch that's been open for ages). I've switched to kitty and am much happier.

This is less of an issue if you use a multiplexer like tmux, so how appropriate Alacritty is depends on how you use it.

The big idea of Alacritty is that it uses the GPU for superfast rendering and updates. But relying on tmux for scrolling seems to be a case of "penny wise and pound foolish". Having to round trip key presses and updates through a separate and possibly remote process (tmux) just to do scrolling, introduces a bunch of latency. "Normal" emulators with built in scrolling don't have this problem. Scrolling is purely local operation.

Re: Kitty – a fast, featureful, GPU based terminal emulator

#157
post #153
post #145

Earlier quoted context omitted.

I'm guessing you're on KDE (as am I) but it would be cool to see GNOME Terminal compared also. What I got from these results is that Konsole is already good enough to not bother switching.

Yes, I'm on KDE on X. gnome-terminal does not work (easily) on my distro so I cannot measure that. I did measure xterm which takes over a minute for both tests and also stresses out X. None of the other terminal emulators did that. Still, I wonder if the terminal emulators could use less CPU and be faster if they refreshed only with the frequency of the monitor. An interesting insight from the tests is that the execu…

How about Terminology?

https://www.enlightenment.org/about-terminology

Re: Kitty – a fast, featureful, GPU based terminal emulator

#158
post #139

Two simple speed tests: time find ~ /dev/null takes 8 seconds alacritty takes 8.5 seconds and uses 75% CPU kitty takes 15 seconds and uses 100% CPU konsole takes 16 seconds and uses 100% CPU time for i in {1..2000000}; do echo $i; done /dev/null takes 8 seconds alacritty takes 16 seconds and uses 75% CPU kitty takes 17 seconds and uses 100% CPU konsole takes 16 seconds and uses 98% CPU

Can we not start throwing around these bullshit `time blah` tests. They don't measure what people thing they measure. It doesn't measure rendering speed at all.

It does vaguely measure two things:

1) How big the buffer is on the terminal when it reads in lots of output. If the buffer is as big as the output then your test reports a figure close to the `/dev/null` test. Not useful.

2) How well the terminal is in SKIPPING the rendering of lots of output. No normal terminal tries to render all of the text on screen.

Re: Kitty – a fast, featureful, GPU based terminal emulator

#159

Earlier quoted context omitted.

Kovid Goyal is infamous/known to be a bit toxic, see Calibre: https://news.ycombinator.com/item?id=8213946 (and the setuid "issue": https://lwn.net/Articles/465311/ )

He seems to be sarcastic especially when needled, opinionated, sometimes incorrect, and willing to argue a point. On the other hand he actually fixes things. Even if you actually were paying money for his services, which most of us are not, which would you prefer an obsequious kind person who didn't fix your problem or a dick that did. I would take the dick every day of the week.

Although the hypothetical rockstar asshole vs nice-but-incompetent seems like a false dichotomy, I don't have an issue with direct or abrasive people in general. Perfectly happy using e.g. Linux or systemd.

The beauty of open source is you can look at the code and even the issue tracker. I dare you to look at even `setup.py`, a file that's usually quite straight forward in Python, and tell me what it's doing. But if you're happy using kitty as your daily driver, great.

I guess you can dismiss all this as "haters gonna hate" and "what have you made?". Which is why in the comment, I refrained from stating my opinion and linked to other people's experiences/opinions instead. Just don't say you didn't know. And good luck getting the things you want fixed.

Re: Kitty – a fast, featureful, GPU based terminal emulator

#160
post #145
post #139

Two simple speed tests: time find ~ /dev/null takes 8 seconds alacritty takes 8.5 seconds and uses 75% CPU kitty takes 15 seconds and uses 100% CPU konsole takes 16 seconds and uses 100% CPU time for i in {1..2000000}; do echo $i; done /dev/null takes 8 seconds alacritty takes 16 seconds and uses 75% CPU kitty takes 17 seconds and uses 100% CPU konsole takes 16 seconds and uses 98% CPU

I'm guessing you're on KDE (as am I) but it would be cool to see GNOME Terminal compared also. What I got from these results is that Konsole is already good enough to not bother switching.

`time find ~` took 5.12 seconds and 38% cpu in gnome-terminal here. kitty took 4.32 and 48% cpu, in comparison.

EDIT: alacritty took 4.15 and 54% cpu.

I should note these results are all from second runs.

Post reply on HN