I have no idea what 'conhost' is so I can't comment.
I have no idea what 'conhost' is so I can't comment.
-nw means that you are running it inside a terminal emulator, which will be conhost unless you know you’re using a different terminal like the new Windows Terminal or Alacritty. This is very likely to be the problem—emacs is probably emitting large amounts of text (megabytes) to the terminal emulator with inefficient screen updates, and conhost is agonisingly slow. To be clear, I expect that Emacs is still substantially at fault here, because it sounds like it’s updating the screen in an extremely inefficient way that just happens to work well enough on Linux’s faster terminal emulators.
Switching to a different terminal emulator that uses the new ConPTY interface, such as Alacritty or Windows Terminal, should speed things up a lot. But it’ll still be a good deal slower than the likes of xterm and urxvt and Alacritty on non-Windows platforms because ConPTY is still a substantial performance bottleneck.
Various actions that are likely to help:
• Upgrade to WSL 2.
• Switch to a ConPTY-based terminal emulator like Windows Terminal or Alacritty.
• Run Emacs in GUI mode via VcXsrv. (Sadly this isn’t quite as easy in WSL 2 because your $DISPLAY needs to include the IP address and VcXsrv needs to be told the IP address. In WSL 1, `DISPLAY=:0` would do it.)