返回课堂

完整深入材料 · 保留原页与全部停点。回到相关主讲

A 已经答完,C 为什么还在等待?

N57/b0 · 同一队列,三个请求

服务请求 R_A:2 轮  R_B:4 轮  R_C:2 轮三者 prefill 已完成;两个示意生成槽(非固定 GPU 座位)1轮2轮3轮4轮5轮6轮生成槽 1生成槽 2R_C 已准备好,在队列中等待固定整批 · 调度构造,非实测耗时
同一队列,三个请求

把服务队列缩小为三个请求:R_A需要两轮,R_B四轮,R_C两轮,C已经在排队。这里是请求编号,与前面实验里的方案A和B不是同一组对象。为只比较接纳规则,先假设三者的prefill都已完成,每轮有两个示意生成槽。这个槽表示计算机会,不是给每个请求永久划定的GPU座位。

教师备课:指图与模拟问答

指图与推进 · 不朗读依次指上方R_A/R_B/R_C轮数、prefill已完成的条件和下方两个空生成槽;不要在初态指尚未出现的已完成方格。

N57/b1 · 前两轮结束,R_A 退出

服务请求 R_A:2 轮  R_B:4 轮  R_C:2 轮三者 prefill 已完成;两个示意生成槽(非固定 GPU 座位)1轮2轮3轮4轮5轮6轮生成槽 1R_AR_A生成槽 2R_BR_B第 2 轮结束:R_A 退出释放 R_A 独占 KV固定整批 · 调度构造,非实测耗时
前两轮结束,R_A 退出

先让A和B各生成两步。看前两列,A所需的两轮已经完成,可以退出并释放自己的独占K/V;B还需要两轮。此时C仍在等待。我们先保留一种固定整批规则:只有整批结束以后,下一批才能进入。

教师备课:指图与模拟问答

指图与推进 · 不朗读推进到b1,沿前两轮A/B方格指读,再指R_A退出与KV释放;后面四轮仍留待下一态揭示。

N57/b2 · 固定整批等待 R_B

服务请求 R_A:2 轮  R_B:4 轮  R_C:2 轮三者 prefill 已完成;两个示意生成槽(非固定 GPU 座位)1轮2轮3轮4轮5轮6轮生成槽 1R_AR_A等待等待R_CR_C生成槽 2R_BR_BR_BR_B——第 3、4 轮:空槽未补入 R_C等整批结束,R_C 在第 5 轮进入、第 6 轮完成固定整批 · 调度构造,非实测耗时
固定整批等待 R_B

第三、第四轮只有B继续,A空出来的机会没有补进C。等B结束,C到第五轮才进入,第六轮完成。请把空着的第三、第四轮与仍在排队的C对起来:浪费的不是C不需要计算,而是接纳时点被推迟了。下一页保留同样的请求、长度和两个槽,只改变何时允许新请求加入。

教师备课:指图与模拟问答

指图与推进 · 不朗读推进到b2;先指第3/4轮的等待格,再指第5/6轮R_C;最后对照整张六轮图,不将轮数读成毫秒。

补充推导、边界与来源

R_A、R_B、R_C 是服务请求标识,与实验方案A/B无关。三个请求需要的生成轮数分别为2、4、2,且为隔离接纳规则,假设入场 prefill 已完成;每轮可安排两个示意生成槽。

固定整批策略:前两轮R_A/R_B并行,R_A结束后其独占状态可释放,但R_C要等R_B整批结束,所以第3/4轮一个槽空闲,第5/6轮R_C才生成。图中的槽表示调度机会,不是GPU为每请求永久划定的物理位置。

没有给每轮规定相同实测毫秒,也没有测量GPU吞吐,因此不能直接将轮数作硬件加速比。

原批处理演示 · PagedAttention §2.3,物理 p3。

本页证据与条件

固定整批调度示意;输入准备已完成,轮次不代表实测耗时

进入主题正文