fabiospampinato / vscode-todo-plus

Manage todo lists with ease. Powerful, easy to use and customizable.
MIT License
902 stars 228 forks source link

Too slow to load #383

Open nazmulidris opened 1 year ago

nazmulidris commented 1 year ago

Type: Performance Issue

With rust-analyzer, prettier, extensions this extension takes a long time to load

Extension version: 4.19.1 VS Code version: Code 1.81.1 (6c3e3dba23e8fadc360aed75ce363ba185c49794, 2023-08-09T22:18:39.991Z) OS version: Linux x64 6.4.6-76060406-generic Modes:

System Info |Item|Value| |---|---| |CPUs|13th Gen Intel(R) Core(TM) i9-13900HX (32 x 4399)| |GPU Status|2d_canvas: enabled
canvas_oop_rasterization: disabled_off
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
video_decode: enabled
video_encode: disabled_software
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: disabled_off| |Load (avg)|7, 9, 4| |Memory (System)|62.63GB (33.55GB free)| |Process Argv|--unity-launch --crash-reporter-id b72c9be1-835c-4f06-a8da-694eb1212b27| |Screen Reader|no| |VM|0%| |DESKTOP_SESSION|pop| |XDG_CURRENT_DESKTOP|Unity| |XDG_SESSION_DESKTOP|pop| |XDG_SESSION_TYPE|x11|
Process Info ``` CPU % Mem MB PID Process 0 128 358268 code main 0 0 358272 zygote 0 128 358306 gpu-process 0 0 358313 broker 0 0 358273 zygote 0 0 358276 zygote 0 192 358332 window [1] (journal-entries.md - notes - Visual Studio Code) 0 257 358342 window [2] (Running Extensions - r3bl_rs_utils - Visual Studio Code) 0 64 379633 window [3] (Issue Reporter) 0 0 358314 utility-network-service 0 64 358486 shared-process 0 0 379989 /bin/sh -c /usr/bin/ps -ax -o pid=,ppid=,pcpu=,pmem=,command= 0 0 379990 /usr/bin/ps -ax -o pid=,ppid=,pcpu=,pmem=,command= 0 64 358512 fileWatcher [1] 0 192 358513 extensionHost [1] 0 64 358739 electron-nodejs (/usr/share/code/code --ms-enable-electron-run-as-node /usr/share/code/resources/app/extensions/markdown-language-features/server/dist/node/workerMain --node-ipc --clientProcessId=358513) 0 64 358957 electron-nodejs (/usr/share/code/code --ms-enable-electron-run-as-node /home/nazmul/.vscode/extensions/streetsidesoftware.code-spell-checker-2.20.5/packages/_server/dist/main.js --node-ipc --clientProcessId=358513) 0 64 358990 electron-nodejs (/usr/share/code/code --ms-enable-electron-run-as-node /usr/share/code/resources/app/extensions/json-language-features/server/dist/node/jsonServerMain --node-ipc --clientProcessId=358513) 0 64 360580 ptyHost 0 64 377791 fileWatcher [2] 3 1347 379647 extensionHost [2] 1 64 379776 electron-nodejs (/usr/share/code/code --ms-enable-electron-run-as-node /home/nazmul/.vscode/extensions/streetsidesoftware.code-spell-checker-2.20.5/packages/_server/dist/main.js --node-ipc --clientProcessId=379647) 0 0 379962 [git] ```
Workspace Info ``` | Window (Running Extensions - r3bl_rs_utils - Visual Studio Code) | Window (journal-entries.md - notes - Visual Studio Code) | Folder (r3bl_rs_utils): 6445 files | File types: o(1192) json(613) timestamp(606) d(544) rmeta(487) | rlib(295) rs(227) bin(96) lock(33) md(32) | Conf files: launch.json(1) settings.json(1) package.json(1) | Launch Configs: lldb(16) | Folder (notes): 489 files | File types: nanorc(108) md(87) prefs(70) fish(42) json(31) jpg(16) | xml(13) jar(6) conf(6) gz(5) | Conf files: settings.json(3) package.json(1); ```
A/B Experiments ``` vsliv368cf:30146710 vsreu685:30147344 python383cf:30185419 vspor879:30202332 vspor708:30202333 vspor363:30204092 vslsvsres303:30308271 vserr242:30382549 pythontb:30283811 vsjup518:30340749 pythonptprofiler:30281270 vshan820:30294714 vstes263:30335439 vscoreces:30445986 vscod805cf:30301675 binariesv615:30325510 bridge0708:30335490 bridge0723:30353136 vsaa593:30376534 pythonvs932:30410667 vsclangdc:30486549 c4g48928:30535728 dsvsc012:30540252 pynewext54:30695312 azure-dev_surveyone:30548225 vscccc:30803845 282f8724:30602487 89544117:30613380 vscrp:30673768 showlangstatbar:30737416 03d35959:30757346 pythonfmttext:30731395 pythoncmv:30756943 fixshowwlkth:30771522 showindicator:30805244 pythongtdpath:30769146 i26e3531:30792625 gsofa:30804715 pythonnosmt12:30797651 pythonidxptcf:30805731 pythonnoceb:30805159 dsvsc013:30795093 dsvsc014:30804076 diffeditorv1:30812748 ```
fabiospampinato commented 1 year ago

How slow is it for you? I see this in my extensions pane:

Screen Shot 2023-08-29 at 14 21 15

And 22ms is indeed too slow for this extension, but not exactly a pressing issue. Are you seeing a way bigger number?

nazmulidris commented 1 year ago

How slow is it for you? I see this in my extensions pane:

Screen Shot 2023-08-29 at 14 21 15

And 22ms is indeed too slow for this extension, but not exactly a pressing issue. Are you seeing a way bigger number?

@fabiospampinato I am seeing much bigger numbers to the point where I have to disable other extensions (prettier for some reason) and then restart vscode. If I don't do this then Todo+ just hangs up indefinitely.

One of the strange behaviors I've noticed is that the prettier vscode extension tends to behave badly with Todo+ for some reason. Here's the repo in which I see it https://github.com/r3bl-org/r3bl_rs_utils

fabiospampinato commented 1 year ago

@nazmulidris what actual numbers do you see for both Todo+ and Prettier?

nazmulidris commented 1 year ago

@fabiospampinato sorry for the late reply. image

here's the cpu profile text file that was generated cpu.txt

this is a video of the extension bisect mode active in vscode to repro the issue

https://github.com/fabiospampinato/vscode-todo-plus/assets/2966499/910ca57d-cdad-4840-ae79-68073c28896d

here's a screenshot at the end w/ the extension crashing. image

here's another screenshot of the extension crashing image

here's the final screenshot image

the extension bisect mode generated this issue w/ some more system data: https://github.com/fabiospampinato/vscode-todo-plus/issues/384