Переглянути джерело

Refactored targets for benchmarks execution

Deduplicated a lot of code taking adavantage of an array containing all
the names of the benchmarks' folders an iterating over it, instead of
having an entry for each benchmark.

Also added a new target that does a complete run of all the benchmarks.
Andrea Gussoni 8 роки тому
батько
коміт
bb039c4201
1 змінених файлів з 8 додано та 68 видалено
  1. 8 68
      Makefile

+ 8 - 68
Makefile

@@ -6,6 +6,8 @@ OPENCL_BIN_DIR := $(RODINIA_BASE_DIR)/bin/linux/opencl
 
 OCL_DIRS  := backprop bfs cfd dwt2d gaussian heartwall hybridsort hotspot kmeans lavaMD leukocyte lud nn nw srad streamcluster particlefilter pathfinder
 
+BENCH_DIRS  := backprop bfs cfd dwt2d gaussian hotspot hybridsort kmeans lavaMD leukocyte/OpenCL lud/ocl nn nw particlefilter pathfinder srad streamcluster
+
 all: OPENCL
 
 OPENCL:
@@ -27,81 +29,19 @@ OPENCL:
 	cd opencl/hybridsort;       make;   cp hybridsort $(OPENCL_BIN_DIR)
 	cd opencl/dwt2d;            make;   cp dwt2d  $(OPENCL_BIN_DIR)
 
+OPENCL_BENCHMARK_ALL: OPENCL_BENCHMARK_CPU OPENCL_BENCHMARK_GPU_PRIMARY OPENCL_BENCHMARK_GPU_SECONDARY
+
 OPENCL_BENCHMARK_CPU:
-	./time-and-save.sh opencl/backprop times.dat cpu
-	./time-and-save.sh opencl/bfs times.dat cpu
-	./time-and-save.sh opencl/cfd times.dat cpu
-	./time-and-save.sh opencl/hotspot times.dat cpu
-	./time-and-save.sh opencl/kmeans times.dat cpu
-	./time-and-save.sh opencl/lavaMD times.dat cpu
-	./time-and-save.sh opencl/leukocyte/OpenCL times.dat cpu
-	./time-and-save.sh opencl/lud/ocl times.dat cpu
-	./time-and-save.sh opencl/nw times.dat cpu
-	./time-and-save.sh opencl/srad times.dat cpu
-	./time-and-save.sh opencl/streamcluster times.dat cpu
-	./time-and-save.sh opencl/pathfinder times.dat cpu
-	./time-and-save.sh opencl/particlefilter times.dat cpu
-	./time-and-save.sh opencl/gaussian times.dat cpu
-	./time-and-save.sh opencl/nn times.dat cpu
-	./time-and-save.sh opencl/hybridsort times.dat cpu
-	./time-and-save.sh opencl/dwt2d times.dat cpu
+	for dir in $(BENCH_DIRS) ; do ./time-and-save.sh opencl/$$dir times.dat cpu ; done
 
 OPENCL_BENCHMARK_GPU:
-	./time-and-save.sh opencl/backprop times.dat gpu
-	./time-and-save.sh opencl/bfs times.dat gpu
-	./time-and-save.sh opencl/cfd times.dat gpu
-	./time-and-save.sh opencl/hotspot times.dat gpu
-	./time-and-save.sh opencl/kmeans times.dat gpu
-	./time-and-save.sh opencl/lavaMD times.dat gpu
-	./time-and-save.sh opencl/leukocyte/OpenCL times.dat gpu
-	./time-and-save.sh opencl/lud/ocl times.dat gpu
-	./time-and-save.sh opencl/nw times.dat gpu
-	./time-and-save.sh opencl/srad times.dat gpu
-	./time-and-save.sh opencl/streamcluster times.dat gpu
-	./time-and-save.sh opencl/pathfinder times.dat gpu
-	./time-and-save.sh opencl/particlefilter times.dat gpu
-	./time-and-save.sh opencl/gaussian times.dat gpu
-	./time-and-save.sh opencl/nn times.dat gpu
-	./time-and-save.sh opencl/hybridsort times.dat gpu
-	./time-and-save.sh opencl/dwt2d times.dat gpu
+	for dir in $(BENCH_DIRS) ; do ./time-and-save.sh opencl/$$dir times.dat gpu ; done
 
 OPENCL_BENCHMARK_GPU_PRIMARY:
-	./time-and-save.sh opencl/backprop times.dat gpu-primary
-	./time-and-save.sh opencl/bfs times.dat gpu-primary
-	./time-and-save.sh opencl/cfd times.dat gpu-primary
-	./time-and-save.sh opencl/hotspot times.dat gpu-primary
-	./time-and-save.sh opencl/kmeans times.dat gpu-primary
-	./time-and-save.sh opencl/lavaMD times.dat gpu-primary
-	./time-and-save.sh opencl/leukocyte/OpenCL times.dat gpu-primary
-	./time-and-save.sh opencl/lud/ocl times.dat gpu-primary
-	./time-and-save.sh opencl/nw times.dat gpu-primary
-	./time-and-save.sh opencl/srad times.dat gpu-primary
-	./time-and-save.sh opencl/streamcluster times.dat gpu-primary
-	./time-and-save.sh opencl/pathfinder times.dat gpu-primary
-	./time-and-save.sh opencl/particlefilter times.dat gpu-primary
-	./time-and-save.sh opencl/gaussian times.dat gpu-primary
-	./time-and-save.sh opencl/nn times.dat gpu-primary
-	./time-and-save.sh opencl/hybridsort times.dat gpu-primary
-	./time-and-save.sh opencl/dwt2d times.dat gpu-primary
+	for dir in $(BENCH_DIRS) ; do ./time-and-save.sh opencl/$$dir times.dat gpu-primary ; done
 
 OPENCL_BENCHMARK_GPU_SECONDARY:
-	./time-and-save.sh opencl/backprop times.dat gpu-secondary
-	./time-and-save.sh opencl/bfs times.dat gpu-secondary
-	./time-and-save.sh opencl/cfd times.dat gpu-secondary
-	./time-and-save.sh opencl/hotspot times.dat gpu-secondary
-	./time-and-save.sh opencl/kmeans times.dat gpu-secondary
-	./time-and-save.sh opencl/lavaMD times.dat gpu-secondary
-	./time-and-save.sh opencl/leukocyte/OpenCL times.dat gpu-secondary
-	./time-and-save.sh opencl/lud/ocl times.dat gpu-secondary
-	./time-and-save.sh opencl/nw times.dat gpu-secondary
-	./time-and-save.sh opencl/srad times.dat gpu-secondary
-	./time-and-save.sh opencl/streamcluster times.dat gpu-secondary
-	./time-and-save.sh opencl/pathfinder times.dat gpu-secondary
-	./time-and-save.sh opencl/particlefilter times.dat gpu-secondary
-	./time-and-save.sh opencl/gaussian times.dat gpu-secondary
-	./time-and-save.sh opencl/nn times.dat gpu-secondary
-	./time-and-save.sh opencl/hybridsort times.dat gpu-secondary
-	./time-and-save.sh opencl/dwt2d times.dat gpu-secondary
+	for dir in $(BENCH_DIRS) ; do ./time-and-save.sh opencl/$$dir times.dat gpu-secondary ; done
 
 clean: OCL_clean OPENCL_BENCHMARK_clean