prune-trace: added "sampling with fault expansion"
The FESamplingPruner implements the fault-expansion variance reduction technique (FE-VRT) as described in: Smith, D. Todd and Johnson, Barry W. and Andrianos, Nikos and Profeta, III, Joseph A., "A variance-reduction technique via fault-expansion for fault-coverage estimation" (1997), 366--374. Change-Id: I04a0c9bb2622974278bd8c73793e51451119e650
This commit is contained in:
31
tools/prune-trace/FESamplingPruner.hpp
Normal file
31
tools/prune-trace/FESamplingPruner.hpp
Normal file
@ -0,0 +1,31 @@
|
||||
#ifndef __FESAMPLING_PRUNER_H__
|
||||
#define __FESAMPLING_PRUNER_H__
|
||||
|
||||
#include "Pruner.hpp"
|
||||
#include "util/CommandLine.hpp"
|
||||
|
||||
///
|
||||
/// FESamplingPruner: implements sampling with Fault Expansion
|
||||
///
|
||||
/// The FESamplingPruner implements the fault-expansion variance reduction
|
||||
/// technique (FE-VRT) as described in: Smith, D. Todd and Johnson, Barry W.
|
||||
/// and Andrianos, Nikos and Profeta, III, Joseph A., "A variance-reduction
|
||||
/// technique via fault-expansion for fault-coverage estimation" (1997),
|
||||
/// 366--374.
|
||||
///
|
||||
class FESamplingPruner : public Pruner {
|
||||
fail::CommandLine::option_handle SAMPLESIZE;
|
||||
|
||||
unsigned m_samplesize;
|
||||
|
||||
public:
|
||||
FESamplingPruner() : m_samplesize(0) { }
|
||||
virtual std::string method_name() { return "FESampling"; }
|
||||
virtual bool commandline_init();
|
||||
virtual bool prune_all();
|
||||
|
||||
private:
|
||||
bool sampling_prune(const fail::Database::Variant& variant);
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user