Exceptional slowness of low level input of console since 09.19 #4565

Open
opened 2026-01-30 23:50:46 +00:00 by claunia · 0 comments
Owner

Originally created by @Agrael1 on GitHub (Oct 20, 2019).

Environment

Windows build number: 10.0.18362.418
Windows Terminal version (if applicable):

Steps to reproduce

I had a 640:360 buffer, which was resized from original by making font smaller(2x2). Buffer Must not be monolithic, but even single colored buffer takes 15ms to fill with 7th system call on NtDeviceIOControl from WriteConsoleOutputW. When it contains some picture, render time grows drastically to 79-84ms.

If Asked I can pass a serialized picture from my engine, drawn using char_info with custom palette

Expected behavior

A Low level output prior to latest updates was projecting the same symbol buffer at 100-200 actions per second. Timings were 25ms at max. I'm making a console game engine and those timings are crucial. If there is any better function which passes the console output buffer (CHAR_INFO*) please tell me.

Actual behavior

Low level output takes 74-76 ms to accomplish, no faster analogs found, buffer size is 640:360

image

Originally created by @Agrael1 on GitHub (Oct 20, 2019). <!-- 🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨 I ACKNOWLEDGE THE FOLLOWING BEFORE PROCEEDING: 1. If I delete this entire template and go my own path, the core team may close my issue without further explanation or engagement. 2. If I list multiple bugs/concerns in this one issue, the core team may close my issue without further explanation or engagement. 3. If I write an issue that has many duplicates, the core team may close my issue without further explanation or engagement (and without necessarily spending time to find the exact duplicate ID number). 4. If I leave the title incomplete when filing the issue, the core team may close my issue without further explanation or engagement. 5. If I file something completely blank in the body, the core team may close my issue without further explanation or engagement. All good? Then proceed! --> <!-- This bug tracker is monitored by Windows Terminal development team and other technical folks. **Important: When reporting BSODs or security issues, DO NOT attach memory dumps, logs, or traces to Github issues**. Instead, send dumps/traces to secure@microsoft.com, referencing this GitHub issue. If this is an application crash, please also provide a Feedback Hub submission link so we can find your diagnostic data on the backend. Use the category "Apps > Windows Terminal (Preview)" and choose "Share My Feedback" after submission to get the link. Please use this form and describe your issue, concisely but precisely, with as much detail as possible. --> # Environment ```none Windows build number: 10.0.18362.418 Windows Terminal version (if applicable): ``` # Steps to reproduce I had a 640:360 buffer, which was resized from original by making font smaller(2x2). Buffer Must not be monolithic, but even single colored buffer takes 15ms to fill with 7th system call on NtDeviceIOControl from WriteConsoleOutputW. When it contains some picture, render time grows drastically to 79-84ms. If Asked I can pass a serialized picture from my engine, drawn using char_info with custom palette # Expected behavior <!-- A description of what you're expecting, possibly containing screenshots or reference material. --> A Low level output prior to latest updates was projecting the same symbol buffer at 100-200 actions per second. Timings were 25ms at max. I'm making a console game engine and those timings are crucial. If there is any better function which passes the console output buffer (CHAR_INFO*) please tell me. # Actual behavior <!-- What's actually happening? --> Low level output takes 74-76 ms to accomplish, no faster analogs found, buffer size is 640:360 ![image](https://user-images.githubusercontent.com/23313867/67164049-8edc3f00-f376-11e9-8f7c-91a10762e65e.png)
claunia added the Product-ConhostIssue-BugNeeds-Tag-FixArea-PerformancePriority-2 labels 2026-01-30 23:50:46 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#4565