1
9 package org.dacapo.harness;
10
11 import java.io.File;
12 import java.lang.reflect.Constructor;
13
14 import org.dacapo.parser.Config;
15
16
20 public class Lusearch extends org.dacapo.harness.Benchmark {
21 private final Object benchmark;
22
23 public Lusearch(Config config, File scratch) throws Exception {
24 super(config, scratch, false);
25 Class<?> clazz = Class.forName("org.dacapo.lusearch.Search", true, loader);
26 this.method = clazz.getMethod("main", String[].class);
27 Constructor<?> cons = clazz.getConstructor();
28 useBenchmarkClassLoader();
29 try {
30 benchmark = cons.newInstance();
31 } finally {
32 revertClassLoader();
33 }
34 }
35
36 @Override
37 public void iterate(String size) throws Exception {
38 method.invoke(benchmark, (Object) (config.preprocessArgs(size, scratch)));
39 }
40 }
41