config.py — 分析器配置¶
文件路径: verl/utils/profiler/config.py
文件概述¶
定义各种分析后端的配置 dataclass 和推理引擎分析器参数构建函数。
核心配置类¶
ProfilerConfig — 统一分析器配置¶
@dataclass
class ProfilerConfig(BaseConfig):
tool: Optional[str] = MISSING # "nsys" / "torch" / "npu" / "torch_memory"
enable: bool = False # 是否启用
all_ranks: bool = False # 是否分析所有 rank
ranks: list[int] = field(default_factory=list) # 指定分析的 rank
save_path: Optional[str] = MISSING # 保存路径
tool_config: Any = MISSING # 工具特定配置
NsightToolConfig / TorchProfilerToolConfig / NPUToolConfig¶
@dataclass
class TorchProfilerToolConfig(BaseConfig):
contents: list[str] = field(default_factory=list) # ["cuda", "cpu", "memory", "shapes", "stack"]
discrete: bool = False # 每个任务独立的数据库
推理引擎分析器参数¶
def build_vllm_profiler_args(profiler_config, tool_config, rank):
"""为 vLLM 构建分析器参数"""
def build_sglang_profiler_args(profiler_config, tool_config, rank):
"""为 SGLang 构建分析器参数"""
与其他模块的关系¶
- 被
profile.py中的DistProfiler使用 - 被各分析后端的 Profiler 类使用
小结¶
分析器的配置层,定义了所有分析后端的配置选项。