1 |
# Makefile for the UPC Operations Microbenchmarking Suite |
# Makefile for the UPC Operations Microbenchmarking Suite |
2 |
# 2009 |
# 2010 |
3 |
|
|
4 |
include ./config/make.def |
include ./config/make.def |
5 |
|
|
6 |
|
ifndef NTHREADS |
7 |
|
THREADS = |
8 |
|
NTHREADS = dyn |
9 |
|
NT = _dyn |
10 |
|
else |
11 |
ifeq ($(NTHREADS),0) |
ifeq ($(NTHREADS),0) |
12 |
THREADS = $(THREADS_SWITCH)1 |
_NT=1 |
13 |
else |
else |
14 |
THREADS = $(THREADS_SWITCH)$(NTHREADS) |
_NT=$(NTHREADS) |
15 |
|
endif |
16 |
|
THREADS = $(THREADS_SWITCH)$(_NT) |
17 |
|
NT=_$(_NT) |
18 |
endif |
endif |
19 |
|
|
20 |
default : usage UOMS.upc data_print.o utilities.o affinity.o mem_manager.o init.o timers.o \ |
|
21 |
|
default : usage UOMS.upc data_print$(NT).o utilities$(NT).o affinity$(NT).o mem_manager$(NT).o init$(NT).o timers$(NT).o \ |
22 |
timers/timers.h |
timers/timers.h |
23 |
mkdir -p ../bin |
mkdir -p ../bin |
24 |
$(UPCC) $(UPCFLAGS) $(THREADS) UOMS.upc -c -I./timers -o UOMS.o |
$(UPCC) $(UPCFLAGS) $(THREADS) UOMS.upc -c -I./timers -o UOMS$(NT).o |
25 |
$(UPCLINK) $(UPCFLAGS) $(THREADS) -o ../bin/UOMS.$(NTHREADS) *.o \ |
$(UPCLINK) $(UPCLINKFLAGS) $(THREADS) -o ../bin/UOMS.$(NTHREADS) *$(NT).o \ |
26 |
timers/timers.o utils/*.o |
timers/timers$(NT).o utils/*$(NT).o |
27 |
|
|
28 |
usage : |
usage : |
29 |
@ echo "Type \"make help\" for usage" |
@ echo "Type \"make help\" for usage" |
30 |
@ echo " " |
@ echo " " |
31 |
|
|
32 |
timers.o : timers/timers.c |
timers$(NT).o : timers/timers.c |
33 |
$(CC) $(CFLAGS) timers/timers.c -c -o timers/timers.o |
$(CC) $(CFLAGS) timers/timers.c -c -o timers/timers$(NT).o |
34 |
|
|
35 |
affinity.o : affinity.upc |
affinity$(NT).o : affinity.upc |
36 |
$(UPCC) $(UPCFLAGS) $(THREADS) affinity.upc -c -o affinity.o |
$(UPCC) $(UPCFLAGS) $(THREADS) affinity.upc -c -o affinity$(NT).o |
37 |
|
|
38 |
mem_manager.o : mem_manager.upc |
mem_manager$(NT).o : mem_manager.upc |
39 |
$(UPCC) $(UPCFLAGS) $(THREADS) mem_manager.upc -c -o mem_manager.o |
$(UPCC) $(UPCFLAGS) $(THREADS) mem_manager.upc -c -o mem_manager$(NT).o |
40 |
|
|
41 |
init.o : init.upc |
init$(NT).o : init.upc |
42 |
$(UPCC) $(UPCFLAGS) $(THREADS) init.upc -c -o init.o |
$(UPCC) $(UPCFLAGS) $(THREADS) init.upc -c -o init$(NT).o |
43 |
|
|
44 |
data_print.o : utils/data_print.upc |
data_print$(NT).o : utils/data_print.upc |
45 |
$(UPCC) $(UPCFLAGS) $(THREADS) -I./ utils/data_print.upc -c -o utils/data_print.o |
$(UPCC) $(UPCFLAGS) $(THREADS) -I./ utils/data_print.upc -c -o utils/data_print$(NT).o |
46 |
|
|
47 |
utilities.o : utils/utilities.upc |
utilities$(NT).o : utils/utilities.upc |
48 |
$(UPCC) $(UPCFLAGS) $(THREADS) utils/utilities.upc -c -o utils/utilities.o |
$(UPCC) $(UPCFLAGS) $(THREADS) utils/utilities.upc -c -o utils/utilities$(NT).o |
49 |
|
|
50 |
help : |
help : |
51 |
@ echo "Usage: " |
@ echo "" |
52 |
|
@ echo "Usage" |
53 |
|
@ echo "-----" |
54 |
|
@ echo "For a static thread setup type:" |
55 |
@ echo "make NTHREADS=NUMBER_OF_UPC_THREADS" |
@ echo "make NTHREADS=NUMBER_OF_UPC_THREADS" |
56 |
@ echo " " |
@ echo " " |
57 |
@ echo "E.g., for 128 threads:" |
@ echo "E.g., for 128 threads:" |
58 |
@ echo "make NTHREADS=128" |
@ echo "make NTHREADS=128" |
59 |
@ echo " " |
@ echo " " |
60 |
|
@ echo "For a dynamic thread setup just type:" |
61 |
|
@ echo "make " |
62 |
|
@ echo "" |
63 |
|
|
64 |
clean : |
clean : |
65 |
rm -f *.o |
rm -f *.o |
66 |
rm -f timers/*.o |
rm -f timers/*.o |
67 |
rm -f utils/*.o |
rm -f utils/*.o |
68 |
|
rm -Rf *pthread-link |
69 |
|
|
70 |
mrproper : clean |
mrproper : clean |
|
rm -Rf *pthread-link* |
|
71 |
find ../ -name '*~' | xargs rm -Rf |
find ../ -name '*~' | xargs rm -Rf |
72 |
rm -Rf ../bin/* |
rm -Rf ../bin/* |
73 |
rm -f config/make.def |
rm -Rf config/make.def |