Issue Type: Performance Issue
It takes over 1 min until the application window shows up. I've made several experiments trying to locate the problem:
1. With proxy server in the VS Code Http:Proxy setting
- Run
code in PowerShell: ✔️️ application window showed within 5 seconds
- Run
code in WSL (Ubuntu 18.04): ❌️ Super slow startup over 1 minute
2. Without proxy server in the VS Code Http:Proxy setting and no system environment variables of HTTP_PROXY & HTTPS_PROXY:
- Run
code in PowerShell: ✔️️ < 5 secs.
- Run
code in WSL: ✔️️ < 5 secs.
3. Turns off proxy server during the startup so to make network requests fail on purpose
- Run
code in PowerShell: ✔️️ < 5 secs.
- Run
code in WSL: ✔️️ < 5 secs.
Conclusion & Questions
So it appears that some kind of network requests blocks the startup process of VS Code. But how comes it happens ONLY in WSL rather than BOTH OF WSL & PowerShell?
I also wonder if I can have an HTTP request list during VS Code startup, so to run some tests to see if there's anything wrong with my proxy server?
I've tried to launch VS Code with --disable-extensions --trace --log-net-log=xxx flags. The output files are attached below. --prof-startup seems not working properly in WSL. VS Code would simply fail to launch with this flag.
VS Code version: Code 1.45.1 (5763d909d5f12fe19f215cbfdd29a91c0fa9208a, 2020-05-14T08:27:35.169Z)
OS version: Windows_NT x64 10.0.18363
Remote OS version: Linux x64 4.4.0-18362-Microsoft
System Info
| Item |
Value |
| CPUs |
Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz (8 x 3600) |
| GPU Status |
2d_canvas: enabled flash_3d: enabled flash_stage3d: enabled flash_stage3d_baseline: enabled gpu_compositing: enabled multiple_raster_threads: enabled_on oop_rasterization: disabled_off protected_video_decode: unavailable_off rasterization: enabled skia_renderer: disabled_off_ok video_decode: enabled viz_display_compositor: enabled_on viz_hit_test_surface_layer: disabled_off_ok webgl: enabled webgl2: enabled |
| Load (avg) |
undefined |
| Memory (System) |
31.91GB (18.20GB free) |
| Process Argv |
--folder-uri=vscode-remote://wsl+Ubuntu-18.04/i/0x1c/blog --remote=wsl+Ubuntu-18.04 |
| Screen Reader |
no |
| VM |
0% |
| Item |
Value |
| Remote |
WSL: Ubuntu-18.04 |
| OS |
Linux x64 4.4.0-18362-Microsoft |
| CPUs |
Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz (8 x 3600) |
| Memory (System) |
31.91GB (18.20GB free) |
| VM |
0% |
Process Info
CPU % Mem MB PID Process
0 84 4600 code main
0 16 1520 electron-crash-reporter
0 26 6540 utility
0 110 8268 shared-process
0 255 9316 window (设置 - blog [WSL: Ubuntu-18.04] - Visual Studio Code)
0 92 18240 extensionHost
0 28 25892 electron_node wslDaemon.js
0 5 22412 C:\WINDOWS\System32\wsl.exe -d Ubuntu-18.04 sh -c '"$VSCODE_WSL_EXT_LOCATION/scripts/wslServer.sh" 5763d909d5f12fe19f215cbfdd29a91c0fa9208a stable .vscode-server 0 '
0 5 1512 C:\WINDOWS\System32\lxss\wslhost.exe {d93f86d6-b447-4881-9fb0-68bf2ef02cc3} 452 460 464
0 15 5632 console-window-host (Windows internal process)
0 11 2120 console-window-host (Windows internal process)
0 129 14252 gpu-process
0 77 18388 window (问题报告程序)
Remote: WSL: Ubuntu-18.04
CPU % Mem MB PID Process
0 0 11691 remote agent
0 0 11706 watcherService
0 0 12082 extensionHost
0 0 12140 /home/wizcas/.vscode-server/bin/5763d909d5f12fe19f215cbfdd29a91c0fa9208a/node /home/wizcas/.vscode-server/extensions/redhat.vscode-yaml-0.8.0/node_modules/yaml-language-server/out/server/src/server.js --node-ipc --clientProcessId=12082
0 0 12147 /home/wizcas/.vscode-server/bin/5763d909d5f12fe19f215cbfdd29a91c0fa9208a/node /home/wizcas/.vscode-server/extensions/ckolkman.vscode-postgres-1.1.11/node_modules/vscode-languageclient/lib/utils/electronForkStart /home/wizcas/.vscode-server/extensions/ckolkman.vscode-postgres-1.1.11/out/language/server.js --node-ipc --clientProcessId=12082
0 0 12153 /home/wizcas/.vscode-server/bin/5763d909d5f12fe19f215cbfdd29a91c0fa9208a/node /home/wizcas/.vscode-server/extensions/mtxr.sqltools-0.21.7/languageserver.js --node-ipc --clientProcessId=12082
0 0 12207 /bin/sh -c /bin/ps -ax -o pid=,ppid=,pcpu=,pmem=,command=
0 0 12208 /bin/ps -ax -o pid=,ppid=,pcpu=,pmem=,command=
Workspace Info
| Remote: WSL: Ubuntu-18.04| Folder (blog): 641 files| File types: js(170) map(91) json(71) png(36) tsx(25) html(23) svg(8)
| jpg(7) ts(6) mdx(6)
| Conf files: package.json(1) tsconfig.json(1);
Extensions (47)
| Extension |
Author (truncated) |
Version |
| vscode-openapi |
42C |
3.2.0 |
| vscode-base64 |
ada |
0.1.0 |
| ng-template |
Ang |
0.901.9 |
| swagger-viewer |
Arj |
3.0.1 |
| better-toml |
bun |
0.3.2 |
| vscode-postgres |
cko |
1.1.11 |
| hex-to-rgba |
dak |
1.0.0 |
| dart-code |
Dar |
3.10.2 |
| flutter |
Dar |
3.10.2 |
| EditorConfig |
Edi |
0.15.0 |
| prettier-vscode |
esb |
4.7.0 |
| shell-format |
fox |
7.0.1 |
| beautify |
Hoo |
1.5.0 |
| rainbow-csv |
mec |
1.7.0 |
| vscode-scss |
mrm |
0.9.0 |
| vscode-docker |
ms- |
1.2.0 |
| vscode-language-pack-zh-hans |
MS- |
1.45.1 |
| Go |
ms- |
0.14.3 |
| vscode-typescript-tslint-plugin |
ms- |
1.2.3 |
| sqltools |
mtx |
0.21.7 |
| vscode-yaml |
red |
0.8.0 |
| LiveServer |
rit |
5.6.1 |
| trailing-spaces |
sha |
0.3.1 |
| move-ts |
str |
1.12.0 |
| markdown-pdf |
yza |
1.4.4 |
| markdown-all-in-one |
yzh |
2.8.0 |
| cursorCharCode |
zei |
0.1.1 |
| material-theme |
zhu |
3.7.1 |
| vscode-proto3 |
zxh |
0.4.2 |
| vsc-material-theme |
Equ |
32.6.0 |
| vsc-material-theme-icons |
equ |
1.1.4 |
| Angular2 |
joh |
9.1.2 |
| Angular-BeastCode |
Mik |
8.1.2 |
| vscode-language-pack-zh-hans |
MS- |
1.45.1 |
| remote-containers |
ms- |
0.117.1 |
| remote-ssh |
ms- |
0.51.0 |
| remote-ssh-edit |
ms- |
0.51.0 |
| remote-wsl |
ms- |
0.44.2 |
| vscode-remote-extensionpack |
ms- |
0.20.0 |
| debugger-for-chrome |
msj |
4.12.8 |
| awesome-flutter-snippets |
Nas |
2.0.3 |
| material-icon-theme |
PKi |
4.1.0 |
| mdx |
sil |
0.1.0 |
| vscode-autohotkey |
sle |
0.2.2 |
| vscode-icons |
vsc |
10.1.1 |
| vscode-caddyfile-syntax |
zam |
1.0.4 |
| material-theme |
zhu |
3.7.1 |
(1 theme extensions excluded)
code-2b86.trace.txt
netlog.txt
Issue Type: Performance Issue
It takes over 1 min until the application window shows up. I've made several experiments trying to locate the problem:
1. With proxy server in the VS Code
Http:Proxysettingcodein PowerShell: ✔️️ application window showed within 5 secondscodein WSL (Ubuntu 18.04): ❌️ Super slow startup over 1 minute2. Without proxy server in the VS Code
Http:Proxysetting and no system environment variables ofHTTP_PROXY&HTTPS_PROXY:codein PowerShell: ✔️️ < 5 secs.codein WSL: ✔️️ < 5 secs.3. Turns off proxy server during the startup so to make network requests fail on purpose
codein PowerShell: ✔️️ < 5 secs.codein WSL: ✔️️ < 5 secs.Conclusion & Questions
So it appears that some kind of network requests blocks the startup process of VS Code. But how comes it happens ONLY in WSL rather than BOTH OF WSL & PowerShell?
I also wonder if I can have an HTTP request list during VS Code startup, so to run some tests to see if there's anything wrong with my proxy server?
I've tried to launch VS Code with
--disable-extensions --trace --log-net-log=xxxflags. The output files are attached below.--prof-startupseems not working properly in WSL. VS Code would simply fail to launch with this flag.VS Code version: Code 1.45.1 (5763d909d5f12fe19f215cbfdd29a91c0fa9208a, 2020-05-14T08:27:35.169Z)
OS version: Windows_NT x64 10.0.18363
Remote OS version: Linux x64 4.4.0-18362-Microsoft
System Info
flash_3d: enabled
flash_stage3d: enabled
flash_stage3d_baseline: enabled
gpu_compositing: enabled
multiple_raster_threads: enabled_on
oop_rasterization: disabled_off
protected_video_decode: unavailable_off
rasterization: enabled
skia_renderer: disabled_off_ok
video_decode: enabled
viz_display_compositor: enabled_on
viz_hit_test_surface_layer: disabled_off_ok
webgl: enabled
webgl2: enabled
Process Info
Workspace Info
Extensions (47)
(1 theme extensions excluded)
code-2b86.trace.txt
netlog.txt