SGLang 路由器和工作人员行为
在基于 SGLang 的测试中,每个 AMD Instinct MI300X 系统都在数据并行服务模式下运行 SGLang。选定的 LLM 为每个 GPU 加载一次,因此每台服务器有 8 个本地 GPU 支持的模型实例。每台 MI300X 服务器运行一个 SGLang 路由器,该路由器接收传入的推理请求并将其分布到本地 SGLang 工作进程中。
SGLang 路由器侦听测试使用的服务端口上的传入推理请求,在测试图中显示为端口 30000。收到请求后,路由器会在内部将请求转发给本地 GPU 支持的辅助角色之一。
每个工作程序都与一个 GPU 相关联,并托管一个本地模型实例。在示例拓扑中,工作线程使用环路寻址和 3100X 范围内的端口在本地侦听,其中 X 代表本地工作线程索引。
辅助流量是 MI300X 服务器的本地流量,不是前端交换矩阵流量。前端交换矩阵将请求传递到 SGLang 路由器;之后,路由器在内部分发每个请求。这种区别很重要,因为前端交换矩阵验证侧重于客户端到路由器或 Envoy 到路由器的流量路径,而不是推理服务器内部的环路流量。
表 9:SGLang 路由器和工作人员行为
| 层 | 功能 |
|---|---|
| 生成式人工智能性能 | 生成指向直接推理端点或 Envoy 端点的推理基准流量。 |
| Envoy 负载均衡器 | (可选)跨多个 MI300X 推理服务器分配传入请求。 |
| SGLang 路由器 | 在 MI300X 服务器上接收推理请求,并将其路由到本地 GPU 支持的工作程序。 |
| SGLang 员工 | 在 GPU 上运行模型实例并处理推理请求。 |
| 生成式人工智能性能 | 生成指向直接推理端点或 Envoy 端点的推理基准流量。 |
表 10:示例 SGLang 工作程序映射
| 工作人员 | 本地地址 | 本地端口 |
|---|---|---|
| 工作人员 0 | 127.0.0.1 | 31000 |
| 工作人员 1 | 127.0.0.1 | 31001 |
| 工作人员 2 | 127.0.0.1 | 31002 |
| 工作人员 3 | 127.0.0.1 | 31003 |
| 工作人员 4 | 127.0.0.1 | 31004 |
| 工人 5 | 127.0.0.1 | 31005 |
| Worker 6 | 127.0.0.1 | 31006 |
| 工人 7 | 127.0.0.1 | 31007 |