Skip to content
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

Extremely sluggish behavior when in full screen on a 4K monitor #3515

Closed
basavyr opened this issue Nov 11, 2019 · 35 comments · Fixed by #5345
Closed

Extremely sluggish behavior when in full screen on a 4K monitor #3515

basavyr opened this issue Nov 11, 2019 · 35 comments · Fixed by #5345
Labels
Area-Performance Performance-related issue Help Wanted We encourage anyone to jump in on these. Issue-Bug It either shouldn't be doing this or needs an investigation. Needs-Tag-Fix Doesn't match tag requirements Priority-1 A description (P1) Product-Terminal The new Windows Terminal.
Milestone

Comments

@basavyr
Copy link

basavyr commented Nov 11, 2019

Environment

Windows build number:
Platform      Version               VersionString
Win32NT     10.0.18362.0        Microsoft Windows NT 10.0.18362.0
Windows Terminal version: Version: 0.6.2951.0

Steps to reproduce

Make the Windows Terminal go full-screen on a 4K monitor.

Expected behavior

Fast and responsive (like it performs in non-full screen mode).

Actual behavior

Super slow and sluggish behavior. There is at least a 2s delay for typing and using ls for example will result in a slow animation for listing the content in a directory. The Terminal is pretty much unusable if I go full-screen

I have a laptop with a 1080p display and I also have an external monitor connected via mini-display port. Monitor is 4K native 60 Hz, and it works without any issues. My laptop has also a dedicated GPU (nVidia GTX850m with the latest drivers). All other apps (i.e. Spotify, Microsoft Edge, Word etc) perform just fine when in full-screen on this 4K display. However, the Windows Terminal performs super slow when I go full screen on the monitor.
Terminal performs fine when I put it in full-screen on the laptop's main display.

@ghost ghost added Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting Needs-Tag-Fix Doesn't match tag requirements labels Nov 11, 2019
@skyline75489
Copy link
Collaborator

Oh 4K display. That's probably where #778 come in handy. I've never tried Windows Terminal on 4K display yet.

@basavyr
Copy link
Author

basavyr commented Nov 11, 2019

Thank you for responding to this :)
Regarding the #778 issue, I have some trouble understanding what do I have to change. I've only tried turning off acrylic, but that didn't help at all.

@zadjii-msft zadjii-msft added Area-Performance Performance-related issue Help Wanted We encourage anyone to jump in on these. Issue-Bug It either shouldn't be doing this or needs an investigation. Product-Terminal The new Windows Terminal. labels Nov 11, 2019
@ghost ghost removed the Needs-Tag-Fix Doesn't match tag requirements label Nov 11, 2019
@zadjii-msft zadjii-msft added this to the Terminal v1.0 milestone Nov 11, 2019
@zadjii-msft zadjii-msft removed the Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting label Nov 11, 2019
@miniksa
Copy link
Member

miniksa commented Nov 11, 2019

Do you know how to get a WPR trace of it? @skyline75489 might be able to help you get one. It would be interesting to see if it's something we're doing or outside our control (and we can get it into the right team's hands.)

@basavyr
Copy link
Author

basavyr commented Nov 12, 2019

@miniksa I got one WPR trace. Never tried it before, but I checked the documentation on Microsoft's website and I think I've managed to record the performance of this app. I hope it helps: I only had Windows Terminal as the running app on my desktop. I did put it in full screen mode and I start to type a bit inside the terminal, after that I just stopped the performance analyzer.

Trace file can be found here:
Firefox Send link
Please let me know if everything is ok!
Cheers :)

Btw, Firefox Send keeps the file available to download only for 7 days, so let me know if you can't access the file.

@ashao
Copy link

ashao commented Jan 22, 2020

Just to an interesting symptom to this conversation as someone who's also using a 4K monitor hooked up to a laptop:
If I split the panes, the response noticeably improves. Splitting into 4 equal panes gives me the same (fast) response as being on my native laptop display.

@zadjii-msft zadjii-msft added the Priority-3 A description (P3) label Jan 22, 2020
@cinnamon-msft cinnamon-msft added Priority-1 A description (P1) v1-Scrubbed and removed Priority-3 A description (P3) labels Jan 23, 2020
@Jewsh-S
Copy link

Jewsh-S commented Mar 12, 2020

I wanted to put a confirmation on this and I believe it is tied to 778. This isn't just 4k, but general size of the app window. If I make the app very very small, I get some what decent performance, but the bigger I make the app, the the worse the performance gets. At 4k full screen, I get about 1.5 second of lag after I press a key until it actually outputs to the app window. My first thought was that this might be my PC, because I normally force my laptop to disable the high performance GPU. However, i force enabled my high performance GPU and the performance stayed the exact same. This is definitely a drawing issue that makes the app almost unusable as the number of pixels that the terminal is using increases.

@florianheinemann
Copy link

This isn't just 4k, but general size of the app window. If I make the app very very small, I get some what decent performance, but the bigger I make the app, the the worse the performance gets. At 4k full screen, I get about 1.5 second of lag after I press a key until it actually outputs to the app window.

I have the exact same observation. Performance gets exponentially worse with every bit I increase the size of the window. On 4k it is basically unusable

@miniksa
Copy link
Member

miniksa commented Apr 15, 2020

@DHowett-MSFT, this is another one we're not going to be able to land.

@miniksa miniksa added Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting and removed Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting labels Apr 15, 2020
@ghost ghost added the In-PR This issue has a related PR label Apr 22, 2020
@ghost ghost added Needs-Tag-Fix Doesn't match tag requirements Resolution-Fix-Committed Fix is checked in, but it might be 3-4 weeks until a release. and removed In-PR This issue has a related PR labels Apr 22, 2020
@cinnamon-msft cinnamon-msft added this to the Terminal v2.0 milestone Sep 29, 2020
@noomz
Copy link

noomz commented Dec 15, 2020

I also have this issue with Acrylic turn on.

PC: Lenovo P1 gen 3
Graphics card: Intel integrated graphic card / Quadro T1000 max-q
Monitor: Internal display (4K, 225% zoom) / LG 27UL600-W (4K, 150% zoom)

Windows: 10 Pro 10.0.19042 Build 19042
GPU Driver: Lenovo NVIDIA Driver 27.21.14.5256 (14 Dec 2020)

Symptoms: When Window Terminal is on the external monitor, it works fine. But lag movement with the internal display. GPU 1 (Quadro) is used. The weird is that when the terminal window is halfway between 2 monitors (mainly on external, LG) it doesn't lag.

@JohnLukeBentley
Copy link

JohnLukeBentley commented Jan 1, 2021

Extremly sluggish behaviour here too on a Desktop triple monitor system (with Windows terminal opened only on one monitor). Typing each letter of a command at the prompt has about a 0.5 to 2 sec delay. Resizing the Terminal (to be smaller) does not make it faster.

I'm on a 3 monitor setup (each only 1680x1050), in independent mode (without Nvidia Surround enabled). I haven't turned on Acrylic (as far as I know .. I'm unclear what Acrylic is ... but I don't have "Acrylic" anywhere in my Windows Terminal Settings file). Tried within Windows Terminal for: Powershell 7.1.0, Powerhsell 5.

(On my separate laptop system Windows Terminal works just fine).

WIndows Teriminal Version: 1.4.3243.0

Windows:

Edition:      Windows 10 Pro
Version:      20H2
OS build:     19042.685

Nvidia Drivers:

451.67 (Game Ready Driver)

System:

Operating System
  Windows 10 Pro 64-bit
CPU
  Intel Core i7 3770 @ 3.40GHz  44°C
  Ivy Bridge 22nm Technology
RAM
  8.00GB Dual-Channel DDR3 @ 788MHz (9-9-9-24)
Motherboard
  Intel Corporation DZ77GA-70K (CPU 1)  32°C
Graphics
  VX2262wm (1680x1050@59Hz)
  VX2262wm (1680x1050@59Hz)
  VX2262wm (1680x1050@59Hz)
  2047MB NVIDIA GeForce GTX 1660 Ti (ASUStek Computer Inc)  31°C
Storage
  1863GB Western Digital WDC WD20NPVZ-00WFZT0 (SATA )  30°C
  953GB Samsung SSD 850 PRO 1TB (SATA (SSD))  34°C
Optical Drives
  No optical disk drives detected
Audio
  Realtek High Definition Audio

Edit 2021-01-28: I see now what "Acrylic" is: https://docs.microsoft.com/en-us/windows/terminal/customize-settings/profile-settings#acrylic-settings. As mentioned I do not have "useAcrylic" anywhere in my WT settings. So, indeed, I'm not using Acrylic and I'm getting the sluggishness.

@JohnLukeBentley
Copy link

It's not clear if #7710 isn't the same issue.

@JohnLukeBentley
Copy link

I've removed my extreme sluggishness in WT by unintalling Powershell (core) 64bit, and installing Powershell (core) 32 bit. E.g. https://github.com/PowerShell/PowerShell/releases/download/v7.1.1/PowerShell-7.1.1-win-x86.msi

Can anyone else remove their sluggishness by doing the same?

@JohnLukeBentley
Copy link

Alas the update of Windows Terminal (automatically through the store) to 1.5.10271.0 has made the sluggishness return, with Powershell 32 bit installed.

@lhecker
Copy link
Member

lhecker commented Feb 10, 2022

FYI: In my experience this issue is fixed by enabling the new AtlasEngine:

  • Install Windows Terminal Preview 1.13
  • Either
    • Select "Enable experimental text rendering engine" in the advanced settings of your default profile, or
    • Add "experimental.useAtlasEngine": true to your profile "default" object in your settings.json
  • Restart Windows Terminal

On my 4K 120Hz display, selections, scrolling, drawing all occur at a stable, fluent 120 FPS and I couldn't observe any lags myself. I'd be extremely awesome if anyone else in this issue could confirm whether this new rendering engine still feels laggy or not. 🙂

A warning though: The current Nvidia drivers have a bug where "AtlasEngine" is recognized as an application that wants G-Sync which leads to the desktop stuttering randomly. The only proper solution seems to disable G-Sync unfortunately. We've contacted Nvidia about this already.

@lhecker
Copy link
Member

lhecker commented May 3, 2023

I'll go ahead and close this issue for now. I'm fairly confident that "AtlasEngine" fixes the issue as mentioned above. You can now easily enable it in the "Rendering" settings, if it isn't enabled already.

@lhecker lhecker closed this as completed May 3, 2023
@microsoft-github-policy-service microsoft-github-policy-service bot added the Needs-Tag-Fix Doesn't match tag requirements label May 3, 2023
@Fish1
Copy link

Fish1 commented Jun 6, 2023

Switching to software rendering seemed to fix this issue for me.

@lhecker
Copy link
Member

lhecker commented Jun 6, 2023

@Fish1 Do you have a Nvidia GPU?

@Fish1
Copy link

Fish1 commented Jun 6, 2023

Nah AMD graphics.

I just noticed, windows did an auto update and replaced my latest driver with something they decided...

I am going to guess that is the issue, because yesterday I had the latest drivers from AMD (via AMD adrenaline) and everything was fine. I'll fix my drivers to verify.

image

@Fish1
Copy link

Fish1 commented Jun 6, 2023

No luck with reinstalling my drivers from AMD.

If I hold down a key for a second, the inputs start to lag. The only option that seems to remove the lag is software rendering.

@lhecker
Copy link
Member

lhecker commented Jun 6, 2023

Do you perhaps use a FreeSync monitor? If so, could you try disabling dynamic refresh rate? Otherwise, the issue you're describing is definitely very very weird. Software rendering should definitely not be the only solution in this situation, because that is extremely taxing on the CPU. Unfortunately, I can't think of any way to debug this, apart from me debugging it on your exact device. 😟
You could check your debug logs with DebugView, but I suspect there won't be any. If you know your way around debug tools, or just something like Process Explorer or System Informer, and notice anything weird with, let's say unusual CPU usage on any of the threads, please let me know!

@Fish1
Copy link

Fish1 commented Jun 7, 2023

Yes, you are correct about the freesync.

I went to use the ScreenToGif tool to try and record my issue for you. But the moment I started recording, I managed to bluescreen windows (multiple times), simply by having both windows and ScreenToGif together.

But after disabling freesync (on my two monitors) everything seems to be working, and I can re-enable hardware rendering for windows terminal.

I don't really see anything happening in debug view.

Edit: tool i was using to capture my screen https://www.screentogif.com/

Edit: This might not be a windows terminal issue. My system seems to be rapidly deteriorating in stability for some reason.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Performance Performance-related issue Help Wanted We encourage anyone to jump in on these. Issue-Bug It either shouldn't be doing this or needs an investigation. Needs-Tag-Fix Doesn't match tag requirements Priority-1 A description (P1) Product-Terminal The new Windows Terminal.
Projects
None yet
Development

Successfully merging a pull request may close this issue.