@Override
 protected TaskExecutor createTaskExecutor() {
   final ExecutorService executorService = new ForkJoinPool(BenchmarkRunner.numThreads());
   final int minPriorityInc = BenchmarkRunner.minPriority();
   final int maxPriorityInc = BenchmarkRunner.maxPriority();
   return new GenericTaskExecutor(minPriorityInc, maxPriorityInc, executorService);
 }
 public static void main(final String[] args) {
   BenchmarkRunner.runBenchmark(args, new ForkJoinPoolBenchmark());
 }
 @Override
 protected TaskExecutor createTaskExecutor() {
   final int numThreads = BenchmarkRunner.numThreads();
   return new StandardWstTaskExecutor(PoolType.JDK, numThreads);
 }
 public static void main(String[] args) {
   BenchmarkRunner.runBenchmark(args, new GuidedSearchAtPaniniJSerial());
 }
 public static void main(final String[] args) {
   BenchmarkRunner.runBenchmark(args, new StandardWstJdkDequeBenchmark());
 }