Closed Jopp-gh closed 1 month ago
We improve performance on a case-by-case basis. For the majority of tasks, JS with a JIT is plenty fast, for specialized cases we consider workers, wasm or leveraging the GPU (eg. https://github.com/microsoft/vscode/issues/221145, https://code.visualstudio.com/docs/terminal/appearance#_gpu-acceleration).
Indeed, usually VsCode's performance isn't bad.
Just sometimes Vscode encounters issues, like in following cases:
So I thought (with exclusion of the latter - "plugins" which can be fixed easily by users themselves by deleting, updating or replacing such plugins), that Vscode could use more resources. But not for the simple purpose to add just "more resources" but to kick in and balance workload between GPU and CPU. So, my modern rig is bothered less when dealing with heavier processes.
For your first point, loading the editor we have done quite a bit of work optimizing this and we have employed a bunch of tricks, it's not so easy to get JS to run that fast when interacting heavily with the DOM. It's also not just a matter of throwing a GPU or threads at it and would require a lot of changes. We consider these ideas as they come up. There are also major downsides to leveraging the GPU as it's not available on all machines, so these optimizations wouldn't work for everyone and we still need a fallback, further complicating things.
The latter 2 you mention are actually related to extensions, so where they execute is up to the extensions which run in their own process.
Thanks for your concise and pleasing feedback
Problem
Vscode doesn't take advantage on GPU computing power.
Feature request
VSCode should use the power of GPUs (Amd/Nvidia) to leverage additional computing power on desktop PC's.
Applications which drain a lot of resources should follow good practices and include the use of available resources (GPU too, not "only CPU") when necessary of course. OpenCL is a great framework. Please see reference at bottom page
Alternatives
There's no existing feature request asking for the implementation of OpenCL in Vscode
Reference
https://en.m.wikipedia.org/wiki/OpenCL