forked from stfc/PSycloneBench
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
51 lines (40 loc) · 1.69 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# Top-level Makefile for PSycloneBench benchmarks.
# By default only builds those benchmarks that target the CPU (i.e. excluding
# OpenACC, OpenCL and Maxeler.) Separate targets for the OpenACC versions
# are provided.
#
# Picks-up the compiler and compiler flags from environment
# variables. See e.g. compiler_setup/gnu.sh
.PHONY: all shallow_cpu nemolite_cpu shallow_gen nemolite_gen
all: shallow_cpu nemolite_cpu tra_adv_cpu
# All targets using PSyclone for code generation
all_gen: shallow_gen nemolite_gen nemolite_cpu
# All manual targets for CPU versions of Shallow
shallow_cpu:
${MAKE} -C ./benchmarks/shallow/SEQ/original
${MAKE} -C ./benchmarks/shallow/SEQ shallow_base
${MAKE} -C ./benchmarks/shallow/OMP
# Requires PSyclone be installed
shallow_gen:
${MAKE} -C ./benchmarks/shallow/SEQ shallow_gen
# All manual targets for CPU versions of NEMOLite2D
nemolite_cpu:
${MAKE} -C ./benchmarks/nemo/nemolite2d/manual_versions
# Requires PSyclone be installed
nemolite_gen:
${MAKE} -C ./benchmarks/nemo/nemolite2d/psykal
nemolite_acc:
${MAKE} -C ./benchmarks/nemo/nemolite2d/manual_versions/single_file_acc
${MAKE} -C ./benchmarks/nemo/nemolite2d/manual_versions/psykal_acc
tra_adv_cpu:
${MAKE} -C ./benchmarks/nemo/tracer_advection
clean allclean:
${MAKE} -C ./benchmarks/nemo/nemolite2d/psykal $@
${MAKE} -C ./benchmarks/nemo/nemolite2d/common $@
${MAKE} -C ./benchmarks/nemo/nemolite2d/manual_versions $@
${MAKE} -C ./benchmarks/nemo/nemolite2d/original $@
${MAKE} -C ./benchmarks/nemo/tracer_advection $@
${MAKE} -C ./benchmarks/shallow/SEQ $@
${MAKE} -C ./benchmarks/shallow/SEQ/original $@
${MAKE} -C ./benchmarks/shallow/OMP $@
${MAKE} -C ./benchmarks/smallmatvec/manual_versions/openmp $@