Vulcan: Instance-Optimal Systems Heuristics Through LLM-Driven Search
作者: Rohit Dwivedula, Divyanshu Saxena, Sujay Yadalam, Daehyeok Kim, Aditya Akella
分类: cs.OS, cs.AI, cs.DC
发布日期: 2025-12-31
备注: 27 pages, 11 figures, 7 tables
💡 一句话要点
Vulcan:通过LLM驱动搜索合成实例最优的系统启发式算法
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 大型语言模型 启发式算法 进化搜索 资源管理 系统优化
📋 核心要点
- 现有资源管理依赖手工启发式算法,设计成本高且难以适应硬件和工作负载的快速变化。
- Vulcan利用LLM生成代码,通过进化搜索合成针对特定实例优化的启发式策略,分离策略与机制。
- 实验表明,Vulcan合成的缓存驱逐和内存分层策略,性能优于人工设计的算法,分别提升高达69%和7.9%。
📝 摘要(中文)
现代操作系统和分布式系统中的资源管理任务,如调度、缓存或主动队列管理,仍然主要依赖于手工设计的启发式算法。由于硬件、工作负载和环境的不断变化,设计高性能的启发式算法是一个昂贵且耗时的过程。本文提出了一种新的替代方案:使用代码生成的大型语言模型(LLM)合成实例最优的启发式算法,专门针对部署的确切工作负载和硬件。为了使这种合成易于处理,Vulcan通过LLM友好的、任务无关的接口分离策略和机制。通过这些接口,用户可以指定所需策略的输入和目标,而Vulcan通过对LLM生成的代码进行进化搜索来寻找高性能的策略。该接口具有足够的表达能力来捕获广泛的系统策略,同时又受到足够的约束,即使是小型、廉价的LLM也能生成正确且可执行的代码。我们使用Vulcan合成了用于缓存驱逐和内存分层的高性能启发式算法,发现这些启发式算法在性能上分别优于所有人工设计的最先进算法,性能分别高达69%和7.9%。
🔬 方法详解
问题定义:论文旨在解决现代操作系统和分布式系统中资源管理任务(如调度、缓存、队列管理)对手工设计启发式算法的依赖问题。手工设计启发式算法成本高昂,且难以适应快速变化的硬件、工作负载和环境。现有方法的痛点在于缺乏自动化、自适应的启发式算法生成机制。
核心思路:论文的核心思路是利用大型语言模型(LLM)的代码生成能力,自动化地合成针对特定实例优化的启发式算法。通过将策略与机制分离,并提供LLM友好的接口,降低了LLM生成正确且可执行代码的难度。进化搜索用于在LLM生成的代码空间中寻找高性能的策略。
技术框架:Vulcan框架包含以下主要模块:1) 任务无关接口:定义了策略的输入和目标,用于连接策略和机制;2) LLM代码生成器:基于任务无关接口,生成候选的启发式策略代码;3) 进化搜索:在LLM生成的代码空间中,通过选择、交叉和变异等操作,寻找高性能的策略;4) 评估模块:评估候选策略在目标工作负载和硬件上的性能。
关键创新:最重要的技术创新点在于利用LLM进行启发式算法的自动化合成,并结合进化搜索进行优化。与传统的手工设计方法相比,Vulcan能够快速生成针对特定实例优化的启发式算法,并显著提升性能。此外,任务无关接口的设计降低了LLM生成代码的难度,使得小型LLM也能胜任。
关键设计:Vulcan的关键设计包括:1) 任务无关接口的设计,需要平衡表达能力和LLM生成代码的难度;2) 进化搜索的参数设置,如种群大小、选择策略、交叉和变异概率等;3) 评估模块的性能指标选择,需要与用户的目标相一致。
🖼️ 关键图片
📊 实验亮点
Vulcan在缓存驱逐和内存分层两个任务上进行了实验验证。实验结果表明,Vulcan合成的启发式算法在缓存驱逐任务上,性能优于人工设计的SOTA算法高达69%;在内存分层任务上,性能优于人工设计的SOTA算法7.9%。这些结果表明,Vulcan能够有效地合成高性能的系统启发式算法。
🎯 应用场景
该研究成果可广泛应用于云计算、边缘计算、物联网等领域,提升资源利用率和系统性能。例如,可以根据云服务器的实际负载情况,自动生成最优的调度策略;也可以根据边缘设备的存储容量和访问模式,自动生成最优的缓存驱逐策略。该研究有望推动系统软件的自动化和智能化发展。
📄 摘要(原文)
Resource-management tasks in modern operating and distributed systems continue to rely primarily on hand-designed heuristics for tasks such as scheduling, caching, or active queue management. Designing performant heuristics is an expensive, time-consuming process that we are forced to continuously go through due to the constant flux of hardware, workloads and environments. We propose a new alternative: synthesizing instance-optimal heuristics -- specialized for the exact workloads and hardware where they will be deployed -- using code-generating large language models (LLMs). To make this synthesis tractable, Vulcan separates policy and mechanism through LLM-friendly, task-agnostic interfaces. With these interfaces, users specify the inputs and objectives of their desired policy, while Vulcan searches for performant policies via evolutionary search over LLM-generated code. This interface is expressive enough to capture a wide range of system policies, yet sufficiently constrained to allow even small, inexpensive LLMs to generate correct and executable code. We use Vulcan to synthesize performant heuristics for cache eviction and memory tiering, and find that these heuristics outperform all human-designed state-of-the-art algorithms by upto 69% and 7.9% in performance for each of these tasks respectively.