Linux 公平调度将 EEVDF 的资格条件与虚拟截止时间结合,用增强红黑树搜索候选任务。
附源码片段 · 调度与资源分配
有限资源应当先服务谁?
关注执行次序、截止时间、公平性与配额;数据放置独立归入存储。
Linux 公平调度将 EEVDF 的资格条件与虚拟截止时间结合,用增强红黑树搜索候选任务。
hrtimer 通过 timerqueue 的红黑树维护到期顺序,并缓存最早到期节点。
nginx 事件定时器以到期时间为键放入红黑树,事件循环读取最小键确定等待上限。
QEMU 的 QEMUTimerList 用有序单链表维护定时器,链表头就是下一到期项。
libvirt 将 vCPU 允许使用的宿主 CPU 集合表示为位图,并转换为运行时亲和性配置。
Ceph OSD 的 mClock 用保留份额、权重与上限协调客户端请求、后台恢复和后台尽力服务。
SwarmKit 的调度决策树在叶子中使用 nodeMaxHeap,把候选节点整理为从优到劣的顺序。
QEMU 线程池用尾队列组织待处理请求:提交时尾插,worker 持锁从头部领取,然后在锁外执行工作。
Linux v6.5 的 CFS 将可运行实体按 vruntime 放入红黑树,用加权运行时间作为公平性的基准。
Linux 普通定时器把较近超时放进细粒度槽,远期超时放进粗粒度槽,使用位图寻找待处理槽。v6.12 的这套时间轮不再逐层级联迁移。
vLLM V1 每轮分配 token 预算,先继续运行中的请求,再尝试接纳等待者;KV 块不足时抢占请求,把它放回等待队列。