message: Adding reduction and sort kernels to warmup set.
diff: #include "common/KernelBase.hpp"
  #include "common/OutputUtils.hpp"
  -// Warmup kernel to run first to remove startup overheads in timings
  +// Warmup kernels to run first to help reduce startup overheads in timings
  #include "basic/DAXPY.hpp"
  +#include "basic/REDUCE3_INT.hpp"
  +#include "algorithm/SORT.hpp"
  #include <list>
  #include <vector>
  @@ -523,10 +525,17 @@ void Executor::runSuite()
  return;
  }
  - cout << "\n\nRun warmup kernel...\n";
  + cout << "\n\nRun warmup kernels...\n";
  - KernelBase* warmup_kernel = new basic::DAXPY(run_params);
  + vector<KernelBase*> warmup_kernels;
  + warmup_kernels.push_back(new basic::DAXPY(run_params));
  + warmup_kernels.push_back(new basic::REDUCE3_INT(run_params));
  + warmup_kernels.push_back(new algorithm::SORT(run_params));
  +
  + for (size_t ik = 0; ik < warmup_kernels.size(); ++ik) {
  + KernelBase* warmup_kernel = warmup_kernels[ik];
  + cout << "Kernel : " << warmup_kernel->getName() << endl;
  for (size_t iv = 0; iv < variant_ids.size(); ++iv) {
  VariantID vid = variant_ids[iv];
  if ( run_params.showProgress() ) {
  @@ -541,8 +550,8 @@ void Executor::runSuite()
  warmup_kernel->execute(vid);
  }
  }
  -
  - delete warmup_kernel;
  + delete warmup_kernels[ik];
  + }
  cout << "\n\nRunning specified kernels and variants...\n";
  