中文

CADET:基于反事实推理的误配置调试与修复工具

软件工程 2021-03-09 v2 系统与控制 系统与控制

摘要

现代计算平台具有高度可配置性,拥有数千个相互作用的配置项。然而,配置这些系统颇具挑战性。错误的配置可能导致意外的非功能性故障。本文提出 CADET(Causal Debugging Toolkit 的缩写),使用户能够及早且以原则性方式识别、解释并修复非功能性故障的根本原因。CADET 通过观测系统在不同配置下的性能来构建因果模型。随后,它利用因果路径提取并在因果模型上进行反事实推理,以:(a) 识别非功能性故障的根本原因,(b) 估计各种可配置参数对性能目标的影响,以及 (c) 对相关配置选项给出候选修复方案以修复非功能性故障。我们在部署于 3 款 NVIDIA Jetson 片上系统的 5 个高度可配置系统上评估了 CADET。我们将 CADET 与最先进的配置优化和基于机器学习的调试方法进行比较。实验结果表明,与其他基于机器学习(ML)的性能调试方法相比,CADET 能为多种非功能属性的故障找到有效修复方案,准确率至多高出 17%,增益高 28%,且速度提升 40×40\times。与多目标优化方法相比,CADET 找到修复方案的速度至多快 9×9\times,且性能增益相当或更好。我们对 NVIDIA 论坛中报告的非功能性故障进行的案例研究表明,CADET 能在不到 30 分钟内找到比专家建议优 14% 的修复方案。

关键词

引用

@article{arxiv.2010.06061,
  title  = {CADET: Debugging and Fixing Misconfigurations using Counterfactual Reasoning},
  author = {Rahul Krishna and Md Shahriar Iqbal and Mohammad Ali Javidian and Baishakhi Ray and Pooyan Jamshidi},
  journal= {arXiv preprint arXiv:2010.06061},
  year   = {2021}
}