Skip to content

docs: add node-level scheduling policies for standalone workloads - #12

Merged
ianchen0119 merged 5 commits into
mainfrom
docs/node-level-scheduling-policies
Sep 7, 2026
Merged

docs: add node-level scheduling policies for standalone workloads#12
ianchen0119 merged 5 commits into
mainfrom
docs/node-level-scheduling-policies

Conversation

@gthulhu-work

Copy link
Copy Markdown
Contributor

Summary

Add first-class documentation for node-level scheduling policies, with a focus on non-Kubernetes workloads such as standalone/Docker vLLM on DGX Spark / GB10.

What changed

  • add node-policies.md and node-policies.zh.md
  • explain node policies vs Kubernetes scheduling policies
  • document node name / node label / DRA selectors
  • document TID-aware /proc/<tgid>/task/<tid>/comm matching
  • document current Priority > 0 boosting vs Priority == 0 slice-only semantics
  • document kernel-mode slice-only limitation
  • add a standalone vLLM / EngineCore example
  • add REST API examples and intent-state verification
  • add troubleshooting guidance for regex matching and scheduler mode
  • add the page to English/Chinese MkDocs navigation
  • cross-link the existing Kubernetes Web GUI policy guide to the new node-policy guide

The guide links to the live Node Policies mock at https://gthulhu.github.io/Gthulhu/#/node-policies instead of embedding a screenshot, so the docs do not go stale as the mock UI evolves.

Why

The existing docs describe Kubernetes-oriented scheduling policies, while node-level policies are the key path for host processes and non-Kubernetes inference servers. vLLM users running directly on DGX Spark should not need to move the workload into Kubernetes just to use Gthulhu scheduling.

Validation

Content is grounded in the current Manager NodePolicy API, Web UI fields, Decision Maker TID-aware matching behavior, and current plugin priority/time-slice semantics.

Copilot AI lite review requested due to automatic review settings September 7, 2026 04:26

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

There are a few objective documentation issues (English-only headings in the zh page and a grammar issue in the English page) that should be corrected before merging.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Adds a new documentation page describing node-level scheduling policies for non-Kubernetes workloads (e.g., standalone/Docker vLLM on DGX Spark / GB10), and wires it into the existing MkDocs navigation with cross-links from the Kubernetes-focused GUI guide.

Changes:

  • Add new Node Policies guides in English and Chinese (node-policies.md, node-policies.zh.md) covering node selection, TID-aware /proc/.../comm matching, priority/time-slice semantics, API usage, and troubleshooting.
  • Add the new page to MkDocs navigation (including zh nav translation label).
  • Add tips in existing GUI docs to redirect readers to the node-level policy guide when appropriate.
File summaries
File Description
mkdocs.yml Adds the new Node Policies doc to nav and provides a zh nav label translation.
docs/node-policies.md New English guide for node-level scheduling policies, including examples and troubleshooting.
docs/node-policies.zh.md New Chinese guide for node-level scheduling policies, including examples and troubleshooting.
docs/gui.md Adds a tip linking readers to the new node-level policy guide for non-Kubernetes workloads.
docs/gui.zh.md Adds a similar tip in Chinese linking to the new node-level policy guide.
Review details
  • Files reviewed: 5/5 changed files
  • Comments generated: 3
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread docs/node-policies.md
Current Gthulhu semantics are:

- `Priority > 0`: the strategy is **boosting**. The matching task receives priority treatment in the user-space scheduler.
- `Priority == 0`: the strategy is **non-boosting**. In user-space mode, it can still apply a custom time slice without jumping the run queue.
Comment thread docs/node-policies.zh.md
@@ -0,0 +1,211 @@
# Node-Level Scheduling Policies
Comment thread docs/node-policies.zh.md

對 vLLM policy 而言,也應確認 regex 真的匹配到預期的 TID。Policy 即使成功送到 node,如果 task name 沒有匹配,仍可能看不到預期的排程效果。

## Troubleshooting
@ianchen0119
ianchen0119 merged commit 46a38ba into main Sep 7, 2026
1 check passed
@ianchen0119
ianchen0119 deleted the docs/node-level-scheduling-policies branch September 7, 2026 04:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants