Proj CDeepFuzz Paper Reading: Detecting and Understanding Real-World Differential Performance Bugs in Machine Learning Libraries

Abstract

本文: DPFuzz
Github: https://github.com/Tizpaz/DPFuzz
Task: Differential performance analysis with input groups, provide an explanation for the performance difference
Method:

  1. 每个类都有一个performance function maps the input size to performance
  2. to discover class: evolutionary fuzzing + clustering
  3. to explain: discriminant learning with clustering and decision tree

Steps:

  1. evolutionary fuzzing algo, use clustering to merge similar input classes
  2. to explain the differential performance using program inputs and internals, use discriminant learning with clustering and decision tree to localize suspicious code regions

实验:
datasets: a set of micro-benchmarks and real-world machine learning libraries(scikit-learn 0.20.3, subprocess32, numpy, argparse; Rscript (util).)
效果:

  1. outperform
  2. explain multiple bugs: e.g., logistic regression in scikit-learn
  3. 4 bugs, 1 fixed

posted @ 2023-08-06 20:31  雪溯  阅读(6)  评论(0编辑  收藏  举报