Identifying Performance-Sensitive Configurations in Software Systems through Code Analysis with LLM Agents

2024年06月18日
  • 简介
    配置设置对于定制软件行为以满足特定性能要求至关重要。然而,不正确的配置很普遍,由于可能的设置数量和复杂性的巨大,确定影响系统性能的配置是具有挑战性的。在这项工作中,我们提出了PerfSense,一个轻量级框架,利用大型语言模型(LLMs)以最小的开销高效地识别性能敏感配置。PerfSense使用LLM代理来模拟开发人员和性能工程师之间的交互,使用高级提示技术,例如提示链接和检索增强生成(RAG)。我们对七个开源Java系统进行的评估表明,PerfSense在分类性能敏感配置方面实现了平均精度为64.77%,优于我们的LLM基线(50.36%)和先前的最先进方法(61.75%)。值得注意的是,我们的提示链接技术提高了10%至30%的召回率,同时保持了类似的精度水平。此外,对362个错误分类的手动分析揭示了常见问题,包括LLMs对要求的误解(26.8%)。总之,PerfSense显著减少了分类性能敏感配置的手动工作量,并为未来基于LLM的代码分析研究提供了有价值的见解。
  • 图表
  • 解决问题
    论文试图通过PerfSense框架解决软件配置错误对系统性能的影响问题,提高配置敏感度分类的准确性。
  • 关键思路
    PerfSense框架利用大型语言模型代理进行高级提示技术,如提示链接和检索增强生成(RAG),以识别性能敏感配置。该框架在分类性能敏感配置方面的准确性比基线和之前的最先进方法都要高。
  • 其它亮点
    该论文的亮点包括:使用了大型语言模型进行高级提示技术,提高了性能敏感配置分类的准确性;使用了七个开源Java系统进行评估,并取得了较好的结果;通过手动分析362个错误分类,发现大型语言模型对需求的误解是常见问题。
  • 相关研究
    在这个领域中,最近的相关研究包括:使用深度学习技术进行软件配置错误检测的研究,使用机器学习技术进行软件性能优化的研究等。
PDF
原文
点赞 收藏 评论 分享到Link

沙发等你来抢

去评论