GENNOVA-HUST / INFERENCE SYSTEMS

以算态分离,
提升推理效率。

GenNova 让计算与状态管理独立推进,通过就绪与完成事件协调,让模型计算、状态搬运与内存回收相互重叠。GenNova Autotune 则持续优化服务配置。

CS 算态分离独立双循环持续调优
GENNOVA / COMPUTE–STATE
GenNova 运行时内部
C / COMPUTE

计算循环

选择就绪批次 → 准备与提交 → 收集进度 ↻

↑ 状态就绪:允许计算读取↓ 计算完成:允许相关状态操作
S / STATE MANAGEMENT

状态管理循环

准备与恢复 → 保留与搬运 → 安全回收 ↻

CONFIGURATION LAYERGenNova Autotune

运行反馈 ↑ · 配置优化 ↓

两个循环属于 GenNova;Autotune 位于配置层。
COMPUTE–STATE DISAGGREGATION

让有限的 HBM 支撑就绪计算,让状态管理跟上计算节奏。

↓

01 — THE CS DESIGN

计算在前进,状态也在前进。

CS:Compute–State Disaggregation。将计算的推进与状态的生命周期解耦,用就绪、完成和回收事件连接。

01 / INDEPENDENT PROGRESS

各自推进,只在依赖处等待。

计算循环推进就绪批次;状态管理循环为保留的会话准备、恢复、保存和回收状态。统一的主机管理者维护资源账本,通过事件协调两者。

02 / READINESS

写入完成,才能交给计算。

恢复中的状态尚不可读。所需写入完成后才发布就绪事件,让相应请求进入可执行集合;无关的就绪请求仍可计算。

03 / RECLAMATION

读写结束,及时归还容量。

每份分配保留到相关读写结束。设备到主机的复制完成后,设备源可回收;后续存储写入仍可使用主机副本。

独立推进指工作流的独立性,不要求两个 Python 线程或两个竞争的调度器。

02 — IMPLEMENTED ON ASCEND

让计算供给与 HBM 周转跟上来。

在 Ascend 上,图重放推进 NPU 计算,CPU 准备后续批次,原生工作线程与独立 DMA 通道推进状态搬运和存储 I/O。

及时恢复状态,为下一批计算提供输入;按使用者完成时机回收 HBM,为其他就绪请求腾出容量。

查看实测结果与测试条件 →
同一时间窗口内,可以推进的工作
CPU准备后续批次
NPU计算就绪批次 A
STATE恢复 B · 保存 C

B 就绪 → 可进入计算

C 的设备源复制完成 → 可回收对应 HBM

并发关系示意,非实测时间线;长度不代表耗时。

重叠程度取决于就绪工作量、CPU 规划成本、状态带宽与容量。更多驻留状态也会挤占可用 HBM,需在保留、搬运与等待之间权衡。

03 — TECHNOLOGY & PROJECTS

运行时机制与配置优化,各有边界

从算态分离,到应用与调优。

计算循环与状态管理循环都在 GenNova 内部;Autotune 在运行时之外优化配置选择。

01 / EXECUTION

GenNova

以算态分离组织推理执行

进入项目仓库 ↗私有仓库 · 需授权访问

GenNova 的核心是计算与状态管理的独立推进。LiveModule、Solution 与部署入口承载这一运行时,为内置应用和自定义模型提供接入方式。

LiveModule 运行基础

用图原生运行基础承载模型执行。

Solution 应用接入

通过统一抽象组织内置与自定义推理应用。

运行与部署

按模型、运行环境和版本支持范围配置服务。

02 / OPTIMIZATION

GenNova
Autotune

服务配置的持续优化

进入项目仓库 ↗私有仓库 · 需授权访问

GenNova Autotune 根据运行反馈评估候选配置,在硬件、流量与模型行为变化时持续寻找更合适的服务设置。它属于配置优化层,不承担 GenNova 内部的状态搬运与回收。

感知运行变化

关注负载变化与服务表现的持续反馈。

评估调优方案

围绕性能目标比较候选配置与运行效果。

支持持续演进

将正确性、稳定性与部署条件纳入优化过程。

04 — KEEP EXPLORING

项目与文档

从这里,深入了解。

项目持续研发中。支持范围、环境要求与当前进展,以各仓库的版本文档为准。

访问 GenNova-HUST 组织