摘要
arXiv:2407.00326v3 宣告类型: replace-cross
摘要:基于大语言模型(LLM)的应用由LLM组件和非LLM组件组成,每个组件都对端到端延迟有所贡献。尽管在优化LLM推理方面付出了巨大努力,但整体的工作流优化仍然被忽视。现有的框架采用粗粒度的任务模块调度,这限制了优化仅在模块内部进行,并导致次优的调度决策。我们提出了一种细粒度的端到端调度,它以任务原语作为基本单元,将每个查询的工作流表示为原语级别的数据流图。这明确地暴露出了一个更大的设计空间,使得可以在不同模块的任务原语之间进行并行化和流水线优化,并增强调度以提高应用级性能。我们构建了Teola,这是一种针对LLM应用的新型调度框架,实现了这种方案。全面的实验显示,Teola在各种流行的LLM应用中可以实现最高2.09倍的速度提升。代码可从https://github.com/NetX-lab/Ayo获取。