-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ws-daemon] Add plugin to set custom process priorities #11159
Conversation
/werft run with-preview 👍 started the job as gitpod-build-aledbf-prio2.5 |
@Furisto this will not work until cgroup v2. You can test this change with workspace-preview |
/werft run with-preview 👍 started the job as gitpod-build-aledbf-prio2.12 |
I edited this preview env to enable cgroup v2 |
/werft run with-preview 👍 started the job as gitpod-build-aledbf-prio2.16 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks fine
root@aledbf-prio2:/# ps ax -o pid,ni,cmd | grep gitpod-code | grep -v grep
549984 -5 sh /ide/bin/gitpod-code --install-builtin-extension gitpod.gitpod-theme --install-builtin-extension github.vscode-pull-request-github --install-extension golang.go --port 23000 --host 0.0.0.0 --without-connection-token --server-data-dir /workspace/.vscode-remote --do-not-sync --start-server
root@aledbf-prio2:/# ps ax -o pid,ni,cmd | grep supervisor | grep -v grep
549820 0 /.supervisor/workspacekit ring0
549853 0 /run/containerd/io.containerd.runtime.v2.task/k8s.io/d9b51abd5584b80e80335ad908b3b31f0977ea8bee6b1ed9eb10f06bbb1d9e2c/rootfs/.supervisor/fuse-overlayfs -o lowerdir=/run/containerd/io.containerd.runtime.v2.task/k8s.io/d9b51abd5584b80e80335ad908b3b31f0977ea8bee6b1ed9eb10f06bbb1d9e2c/rootfs,upperdir=/var/gitpod/workspaces/49f3c282-b61e-4652-bb1c-0afa91d1c3d6-daemon/upper,workdir=/var/gitpod/workspaces/49f3c282-b61e-4652-bb1c-0afa91d1c3d6-daemon/work,uidmapping=0:33333:1:1:100000:65534,gidmapping=0:33333:1:1:100000:65534 none /var/gitpod/workspaces/49f3c282-b61e-4652-bb1c-0afa91d1c3d6-daemon/mark
549868 0 supervisor init
549925 -10 supervisor run
I don't see any changes to NI for relevant IDE processes in the preview env, only to shell scripts starting IDEs. VS Code BrowserI see following in this preview env:
Important processes are:
VS Code DesktopI see following in this preview env:
Important processes are: 3197 - VS Code Server itself
/home/gitpod/.vscode-server/bin/30d9c6cd9483b2cc586687151bcbcd635f373630/node�/home/gitpod/.vscode-server/bin/30d9c6cd9483b2cc586687151bcbcd635f373630/out/server-main.js�--start-server�--host=127.0.0.1�--accept-server-license-terms�--enable-remote-auto-shutdown�--port=0�--telemetry-level�all�--install-extension�gitpod.gitpod-remote-ssh�--connection-token-file�/home/gitpod/.vscode-server/.30d9c6cd9483b2cc586687151bcbcd635f373630.token�
3233 - terminal host process related to responsiveness to terminals
/home/gitpod/.vscode-server/bin/30d9c6cd9483b2cc586687151bcbcd635f373630/node�/home/gitpod/.vscode-server/bin/30d9c6cd9483b2cc586687151bcbcd635f373630/out/bootstrap-fork�--type=ptyHost�
3378 - fs watcher process related to responsiveness of file explorer and editors
/home/gitpod/.vscode-server/bin/30d9c6cd9483b2cc586687151bcbcd635f373630/node�/home/gitpod/.vscode-server/bin/30d9c6cd9483b2cc586687151bcbcd635f373630/out/bootstrap-fork�--type=fileWatcher�
3488 - ext host process related to responsiveness of loading and activation of extensions
/home/gitpod/.vscode-server/bin/30d9c6cd9483b2cc586687151bcbcd635f373630/node�/home/gitpod/.vscode-server/bin/30d9c6cd9483b2cc586687151bcbcd635f373630/out/bootstrap-fork�--type=extensionHost�--transformURIs�--useHostProxy=false�
JB backendsLet's do it in another PR. I'm not sure yet what processes are important there and how they are different between different products. We should have a follow up issue though. |
@akosyakov
You have to see that from the root pid namespace. It means you enter the target host and run |
@utam0k oh, i see, no i was not able but looking at the code it does not seem it will change niceness of relevant processes, please have a look at #11159 (comment) I did not list |
@akosyakov I will open a PR adding support for VS Code Desktop and additional VS Code Web processes. |
Description
Increase
supervisor
andcode-node
process priority inside the workspaces.The goal is to improve responsiveness in busy workspaces/nodes.
How to test
ps ax -o pid,ni,cmd|grep supervisor
ps ax -o pid,ni,cmd|grep gitpod-code
Should be similar to
Release Notes
Werft options: