News for hackers. Stuff that matters.
Re:Show HN: Warp, a Rust-based terminal by johnnypangs on Tuesday April 05, 2022 @01:17PM (#30921819)
Anyone know how this lines up to other terminals performance wise. I’ve been pretty happy with alacritty, but would be willing to try a terminal with more features.

https://github.com/alacritty/alacritty

Re:Show HN: Warp, a Rust-based terminal by theobeers on Tuesday April 05, 2022 @01:32PM (#30922086)
Don't forget WezTerm, which is imo the best of the recent crop of GPU-accelerated terminal emulators implemented in Rust (with built-in multiplexing!):

https://wezfurlong.org/wezterm/

Having now tried Warp, I think it's fine. I doubt performance will be a problem. What concerns me more is that it's not open-source.

Re:Show HN: Warp, a Rust-based terminal by alokedesai on Tuesday April 05, 2022 @01:20PM (#30921878)
Good question! We did an initial benchmark of scrolling back in July against Terminal, iTerm, Hyper, Kitty, and Alacritty, if you’re interested: https://www.warp.dev/blog/how-warp-works.

We started by forking Alacritty's model and parser and because we have a similar architecture (Rust-based, rendered on the GPU) we should generally be at, or near, the performance of Alacritty.

Re:Show HN: Warp, a Rust-based terminal by monkeytaco on Tuesday April 05, 2022 @01:56PM (#30922483)
I just ran a quick test using Casey Muratori's termbench (https://github.com/cmuratori/termbench) you are an order of magnitude slower than Alacritty, and also significantly slower than iTerm. Warp also locks up pretty severely and only shows a new frame once every few seconds during most of the run.

Alacritty

CPU: Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz

VT support: no

ManyLine: 1.5670s (0.0399gb/s)

LongLine: 1.1261s (0.0555gb/s)

FGPerChar: 0.3293s (0.0551gb/s)

FGBGPerChar: 0.6598s (0.0534gb/s)

TermMarkV2 Small: 3.6822s (0.0484gb/s)

iTerm

CPU: Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz

VT support: no

ManyLine: 13.2968s (0.0047gb/s)

LongLine: 3.6535s (0.0171gb/s)

FGPerChar: 1.8944s (0.0096gb/s)

FGBGPerChar: 2.8304s (0.0125gb/s)

TermMarkV2 Small: 21.6750s (0.0082gb/s)

Warp

CPU: Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz

VT support: no

ManyLine: 9.6199s (0.0065gb/s)

LongLine: 8.3727s (0.0075gb/s)

FGPerChar: 8.1124s (0.0022gb/s)

FGBGPerChar: 6.0873s (0.0058gb/s)

TermMarkV2 Small: 32.1924s (0.0055gb/s)

Re:Show HN: Warp, a Rust-based terminal by alokedesai on Tuesday April 05, 2022 @02:16PM (#30922766)
Yeah, this is a known issue, unfortunately--but it's definitely something we want to fix as we improve Warp. See more information here where we chat with Casey about it: https://twitter.com/zachlloydtweets/status/14175482714432348...
Re:Show HN: Warp, a Rust-based terminal by Aeolun on Tuesday April 05, 2022 @02:35PM (#30923024)
> we should generally be at, or near, the performance of Alacritty

> evidence that it’s not

> Yeah, this is a known issue

I don’t want to be critical, but which is it? If you know you are not anywhere near the performance, why say you are?

Re:Show HN: Warp, a Rust-based terminal by bitwize on Tuesday April 05, 2022 @03:43PM (#30923977)
> If you know you are not anywhere near the performance, why say you are?

(in a voice like Jon Lovitz as Master Thespian) Marketing!

Re:Show HN: Warp, a Rust-based terminal by cieplik on Tuesday April 05, 2022 @07:59PM (#30926722)
Hey - that's a good point. The thing about terminal benchmarks is that there are many of them, each focusing on a different aspect and producing different results. There's one by alacritty team[1] that we used in our initial tests[2], there's another ones mentioned in the comments above etc. When using vtbench, Warp performed much better than iterm, for example.

Ideally we'd ace all of them, but we're not there yet. Anecdotally, many of our users mention speed/performance improvements over other terminal apps a lot in our Discord!

[1] https://github.com/alacritty/vtebench [2] https://www.warp.dev/blog/how-warp-works

Re:Show HN: Warp, a Rust-based terminal by akho on Tuesday April 05, 2022 @03:46PM (#30924015)
I don’t see the contradiction. They should be, but they aren’t.
Re:Show HN: Warp, a Rust-based terminal by mitrandir77 on Tuesday April 05, 2022 @05:32PM (#30925315)
I've tried one very basic terminal rendering benchmark I had at hand [1] and on my MacBook Pro it was 17x faster than iterm and 3x faster than wezterm which is my daily driver.

https://github.com/wez/wezterm/issues/192

So it's not all that bad ;)

Re:Show HN: Warp, a Rust-based terminal by adamrezich on Wednesday April 06, 2022 @05:28PM (#30937622)
thanks for posting this—no idea why every new terminal released today doesn't test against termbench and/or take a look at refterm these days, that's the first thing I would do.
Re:Show HN: Warp, a Rust-based terminal by bspammer on Tuesday April 05, 2022 @02:16PM (#30922758)
What do performance problems in a terminal even look like?

I feel like a crazy person in this thread because I’ve literally never had the thought: “I could be so much more productive but this damn terminal is slowing me down”.

Re:Show HN: Warp, a Rust-based terminal by spudlyo on Tuesday April 05, 2022 @05:45PM (#30925443)
Imagine you're using a terminal based text editor full-screen with say 364 columns and 77 rows. You've got it nicely split into three vertical windows for code, with a tree display a fort window on the left-hand side. One of these three code windows is split horizontally and is tailing a log file, and you're quickly paging through code on another.

This is a lot of terminal I/O, and you want this scrolling to be fast, smooth, and to not flash or blink awkwardly.

I do this because I'm running my editor on a remote machine over SSH, which has a ton of cores, memory, and fast disk. Just firing up the LSP server on this giant monorepo causes the fans on my laptop to spin like crazy and takes forever to initialize. Blazing fast on this remote host.

Re:Show HN: Warp, a Rust-based terminal by vidarh on Tuesday April 05, 2022 @04:59PM (#30924950)
It matters if you regularly dump huge amounts of text to the terminal. In other words it rarely matters to most people. In fact, if it did, more people would realise that the terminals they use are often quite slow compared to ones like e.g rxvt.

Most terminals don't even implement most well understood "hacks" to keep up with the apps they're running (e.g. "render" to a text buffer and render the text buffer to the screen separately and decoupled (multiplex or on separate threads)), because people rarely are affected enough to care.

Re:Show HN: Warp, a Rust-based terminal by zhengt on Tuesday April 05, 2022 @06:30PM (#30925920)
The terminal is a surprisingly performance intensive application. When we built an initial prototype in electron, it was struggling to render full screens of text output on large screens. We want to support 144 fps on 4K monitors.

Additionally, Warp has GUI elements like blocks and context menus. We talk about performance because when we discuss our features, people automatically assume it's going to be sluggish.

Re:Show HN: Warp, a Rust-based terminal by Aeolun on Tuesday April 05, 2022 @02:37PM (#30923040)
Hmm, I’ve definitely had commands run in the terminal that were speed limited by how fast the terminal could output the results.
Re:Show HN: Warp, a Rust-based terminal by Keyframe on Tuesday April 05, 2022 @01:48PM (#30922361)
Kitty is awesome, but no windows if you're into that. Alacritty awesome as well, but minimalistic and rust which I have no idea why it matters in OPs post or in general.
Re:Show HN: Warp, a Rust-based terminal by webstrand on Tuesday April 05, 2022 @02:01PM (#30922556)
I appreciate memory safety in applications that handle and interpret data controlled by third-parties. Kitty and Alacritty stand apart as written in memory safe languages, unlike the vast majority of terminal emulators which are written in C/C++. Doesn't mean their bug-free, but they're less likely to have trivial RCE vulnerabilities.
Re:Show HN: Warp, a Rust-based terminal by ptomato on Tuesday April 05, 2022 @04:39PM (#30924710)
Kitty is written in C, afaik.
Re:Show HN: Warp, a Rust-based terminal by brobdingnagians on Tuesday April 05, 2022 @06:16PM (#30925794)
It's a mix of Python and C