-
Notifications
You must be signed in to change notification settings - Fork 104
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Input latency is a lot higher than the default WSL Ubuntu terminal #145
Comments
Certainly not. If that was the case, it would have gained many more complaints already. There is no such significant latency here. So there must be something peculiar in your environment.
So what does it do that you'd consider beneficial? |
If I open The reason you don't see more people bring it up is because most people aren't even aware of the situation because they don't use
It's a lot smoother when typing. Instead of feeling like I'm typing in mud, it feels like I'm typing on air. If you spend all of your time typing in a terminal, this makes a big difference in overall developer happiness. To be fair, it's not because your terminal is "bad". Typing inside of this github issue comment box on Chrome also feels a lot more delayed than But, I think they made the conhost API available to use now? I don't know the details but the overall idea is Microsoft made it seem like third party terminal developers can now get now benefit from the same low latency that |
You've pictured that already. The question was what does it actually do to achieve that? Especially to gain an experience factor of a million. As you are interested in such improvement, you could perhaps provide a summary of technical issues described in that lengthy issue, for now. |
It has a negative effect on my overall mindset. Every time I open the terminal I think "sigh, every time I type a key, I see a jittery output that's delayed... I wish it were as fast as If the goal of the terminal is to assist the user in getting work done, then it's a conflict of interest to have a lot of input latency or other features / anti-features that pull you away from getting work done.
I'm not a terminal developer so I can't summarize everything. I recommend reading Microsoft's blog post here https://blogs.msdn.microsoft.com/commandline/2018/08/02/windows-command-line-introducing-the-windows-pseudo-console-conpty/ as it has a break down on the before / after on how rendering characters on the screen works.
It's not just your terminal by the way. ConEmu, Cmdr, Hyper and a bunch of others have equal or worse latency than wsltty. |
No latency on my side. I'm (ab)using WSL everyday and I use wsltty/wslbridge also with it. Not any issue. |
@nickjj, I had not requested to describe your mindset in more variations, you've made your point. |
@mintty I've linked you to multiple sources on how to proceed forward with technical details, all of which are above my pay grade. For now, I've made a quick video demonstrating the problem: https://drive.google.com/file/d/1L5gIR5Jnf1HiTJiKzteAsbfDqv2qQSz8/view I'm going to make a more in depth video and post it on my Youtube channel another day and then ask others to directly test it, and hopefully we'll have more sample sizes then. I covered this in the video but as mentioned before, others aren't writing in with this issue because they either have low quality monitors or never bothered to test @Biswa96 Have you directly compared it side by side with |
@nickjj Yes, I've compared directly side-by-side. My monitor is 5-6 yr. old, guess it's specs !lol! Some question though, |
Video does not seem to make much sense for a demo. |
@Biswa96 I can't guess its specs but if you give me the exact model number I can attempt to look up what its measured input lag is which would help determine why you can't notice a difference. If your monitor has a lot of input lag you won't notice much. What do you mean by network congestion in localhost? I'm not running any WSL processes like a Ruby web server, but in the Show me the exact command to try and I will give it a test. By the way, the video does at least show the jitteryness of how characters are placed on the screen with wsltty vs |
As the title is misleading, considering your own comparison of wsltty to be better than many others, because latency may be a bit higher but certainly not "a lot", I'm inclined to close this issue. Also due to lack of further cooperation to isolate the effect. |
It's a lot higher than the default WSL Ubuntu (
How is there a lack of cooperation? I've been waiting on you guys on 2 pieces of information.
|
OK, a bit more explicit than in my previous comment:
Then you should be connected to WSL. How does it behave? Test case 2:
Now you are running a mintty terminal without WSL. How does it behave? |
Test case 2 isn't going to happen, sorry. I'm not going to install cygwin on this machine. |
Mintty (the actual terminal) has an input/echo latency of ~30-45ms, which was considered to be neglectable. It can be reduced to 15-30ms which I'll probably do for the next release. |
There's no load on the system. My CPU is an i5 3.2ghz with less than 5% load. Keep in mind, |
For the 30ms input echo latency delay that used to be considered neglectable, mintty now has a shortcut to avoid it. |
Is it released? How would I go about enabling this shortcut? |
It's not released, and there are a number of other issues in the queue. It will not need to be enabled. |
Hey, I noticed you released the patch for mintty/wsltty which has the -30ms applied but you pulled the wsltty Windows installer with a message of Do you plan to cut a new wsltty release soon? I noticed mintty 2.9.9 is out. |
Yes, soon. There's another issue first; 1.9.9 will be skipped. |
Hi, any news about this ? |
Mintty 2.9.7 has an optimization for the latency. As small as it was, it should be gone. |
Oh, well; admittedly, 2.9.6 is still the latest wsltty release... |
Is there anything we can do to get a new wsltty release that has the latency fix? |
Well, I just discovered a serious bug in 3.0.0 but it's unlikely that anyone else discovers it :) So I could make a 3.0.0 release tonight, or a 3.0.1 next week. |
both would be appreciated :) |
Released 3.0.0, however marked as a "pre-release" because I cannot currently test it. |
Is the -30ms option enabled by default? In other words, if I configure nothing differently, will the latency reduction occur? If not, how do you enable it? |
Yes. |
I just installed it and loaded it up side by side with the default WSL terminal. So far the results look promising. It's hard to put a number on it, but it "feels" like it's 95% as fast as the default WSL terminal. That jitteryness (which was shown on video) that was present in previous releases is no longer there. Nice work! I'll continue to use and test 3.0.0 and upgrade to 3.0.1 when it's available. |
I am still experiencing this. the lag is so big that I can't use the app at all. pc works okay for other apps. particularly native wsl, mobaxterm and putty work without any lag. windows Version 10.0.19042 Build 19042 |
attempting to run wslbridge as instructed somewhere in a 2019 comment results in the following output:
|
I looked at command arguments of a running wsltty and I manually launched mintty like this:
got the same window as wsltty but the lag is not present. |
also the font appears to be bolder on wslterm than on mintty. |
wsltty window (on right) appears to redraw like serial console lines on a cisco router video: https://imgur.com/a/ngl0ipu |
I think mine is a different issue though; there is no lag typing, but there is a lag displaying scrolling text - the whole window redraws with lag |
yes, it's clearly a different issue. down left native wsl1, down right mobaxterm, up left mintty, up right wsltty |
The second picture does not show anything. The first shows noticeable screen updates during scrolling, albeit nothing comparable to serial lines (try mintty -o Baud=9600 to know what that would mean). However, you don't describe any context. Maybe you're running in something like tmux and for some reason the whole screen is repainted for every scroll line... |
they're both videos. you can also download them and playback at 10x slower speed to observe the difference. what context? context is: wsltty is awfully slow to repaint the terminal and it's unusable for me because of that effect. I'd like to be able to use it instead of mobaxterm and native wsl, but that prevents me from using it. on second video I run |
on first video there is no screen/tmux involved, just two ssh sessions running same tcpdump command, one with mintty one with wsltty |
Iterating your complaint is not a context and not an explanation of what your issue might be. |
i just uploaded a video demonstration of the behaviour. i really don't know what else than a video sample is more relevant to describe how poor the ui experience is.
i have no idea if it's reproductible. i just report that it lags while other apps don't or do it less intense. |
Hi,
I normally use the
ubuntu.exe
terminal that ships with WSL Ubuntu by default and it has a level of smoothness that is unlike any other Windows application. The reasons for that are stated at microsoft/terminal#327.I wanted to give your terminal a try because
ubuntu.exe
lacks a few things that are very important to me, such as keyboard shortcuts to adjust font sizes.But your terminal has an extra 100-150ms of input latency. In other words, every key stroke feels like it's delayed by about 150ms before it appears on the screen. This makes a massive difference to how it feels when typing.
Would it be possible to do whatever
ubuntu.exe
does to handle input?The text was updated successfully, but these errors were encountered: