source: src/benchmark/Makefile.am@ 4f3a4858

ADT aaron-thesis arm-eh ast-experimental cleanup-dtors deferred_resn demangler enum forall-pointer-decay jacob/cs343-translation jenkins-sandbox new-ast new-ast-unique-expr no_list persistent-indexer pthread-emulation qualifiedEnum
Last change on this file since 4f3a4858 was d3db83c, checked in by Thierry Delisle <tdelisle@…>, 7 years ago

Fix benchmark build

  • Property mode set to 100644
File size: 11.9 KB
RevLine 
[ac93b228]1######################## -*- Mode: Makefile-Automake -*- ######################
2##
3## Cforall Version 1.0.0 Copyright (C) 2015 University of Waterloo
4##
5## The contents of this file are covered under the licence agreement in the
6## file "LICENCE" distributed with Cforall.
7##
8## Makefile.am --
9##
10## Author : Peter A. Buhr
11## Created On : Sun May 31 09:08:15 2015
12## Last Modified By : Peter A. Buhr
13## Last Modified On : Mon Jan 25 22:31:42 2016
14## Update Count : 25
15###############################################################################
16
17# applies to both programs
18CFLAGS =
[d3db83c]19AM_CFLAGS = \
20 -XCFA \
21 -t \
22 -B${abs_top_builddir}/src/driver \
23 -g \
24 -O2 \
25 -Wall \
26 -Wno-unused-function \
27 -quiet \
28 -I$(srcdir) \
29 -L${abs_top_builddir}/src/libcfa \
30 -I${abs_top_srcdir}/src/libcfa \
31 -I${abs_top_srcdir}/src/libcfa/containers \
32 -I${abs_top_srcdir}/src/libcfa/concurrency \
33 -I${abs_top_srcdir}/src/libcfa/stdhdr
34
[6fb1921]35CC = ${top_builddir}/src/driver/cfa
[b7170a64]36TOOLSDIR = ${abs_top_srcdir}/tools/
37REPEAT = ${TOOLSDIR}repeat
38STATS = ${TOOLSDIR}stat.py
39repeats = 30
[05f4b85]40skipcompile = no
[a5b7905]41TIME_FORMAT = "%E"
[2086ab2]42PRINT_FORMAT = %20s: #Comments needed for spacing
[034165a]43
44.NOTPARALLEL:
[ac93b228]45
[b7170a64]46noinst_PROGRAMS =
[ac93b228]47
[4cedd9f]48all : ctxswitch$(EXEEXT) mutex$(EXEEXT) signal$(EXEEXT) waitfor$(EXEEXT) creation$(EXEEXT)
49
[a5b7905]50%.run : %$(EXEEXT) ${REPEAT}
51 @rm -f .result.log
52 @echo "------------------------------------------------------"
53 @echo $<
54 @${REPEAT} ${repeats} ./a.out | tee -a .result.log
55 @${STATS} .result.log
56 @echo "------------------------------------------------------"
57 @rm -f a.out .result.log
[ac93b228]58
[a5b7905]59%.runquiet :
[52df81c]60 @+make $(basename $@) CFLAGS="-w"
[05f4b85]61 @taskset -c 1 ./a.out
[a5b7905]62 @rm -f a.out
63
64%.make :
65 @printf "${PRINT_FORMAT}" $(basename $(subst compile-,,$@))
66 @+/usr/bin/time -f ${TIME_FORMAT} make $(basename $@) 2>&1
67
68${REPEAT} :
69 @+make -C ${TOOLSDIR} repeat
70
71## =========================================================================================================
72
73jenkins$(EXEEXT):
74 @echo "{"
75 @echo -e '\t"githash": "'${githash}'",'
76 @echo -e '\t"arch": "' ${arch} '",'
[05f4b85]77@DOifskipcompile@
[91496f3]78 @echo -e '\t"compile": {'
79 @+make compile TIME_FORMAT='%e,' PRINT_FORMAT='\t\t\"%s\" :'
80 @echo -e '\t\t"dummy" : {}'
81 @echo -e '\t},'
[05f4b85]82@DOendif@
[a5b7905]83 @echo -e '\t"ctxswitch": {'
84 @echo -en '\t\t"coroutine":'
85 @+make ctxswitch-cfa_coroutine.runquiet
86 @echo -en '\t\t,"thread":'
87 @+make ctxswitch-cfa_thread.runquiet
88 @echo -e '\t},'
89 @echo -e '\t"mutex": ['
90 @echo -en '\t\t'
91 @+make mutex-cfa1.runquiet
92 @echo -en '\t\t,'
93 @+make mutex-cfa2.runquiet
94 @echo -e '\t],'
95 @echo -e '\t"scheduling": ['
96 @echo -en '\t\t'
97 @+make signal-cfa1.runquiet
98 @echo -en '\t\t,'
99 @+make signal-cfa2.runquiet
100 @echo -en '\t\t,'
101 @+make waitfor-cfa1.runquiet
102 @echo -en '\t\t,'
103 @+make waitfor-cfa2.runquiet
104 @echo -e '\n\t],'
105 @echo -e '\t"epoch": ' $(shell date +%s)
106 @echo "}"
[ac93b228]107
[d885a58]108## =========================================================================================================
109loop$(EXEEXT):
[d3db83c]110 @@BACKEND_CC@ loop.c -DBENCH_N=5000000000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[d885a58]111
112function$(EXEEXT):
[d3db83c]113 @@BACKEND_CC@ function.c -DBENCH_N=5000000000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[d885a58]114
115fetch_add$(EXEEXT):
[d3db83c]116 @@BACKEND_CC@ fetch_add.c -DBENCH_N=500000000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[d885a58]117
[034165a]118## =========================================================================================================
119ctxswitch$(EXEEXT): \
[d885a58]120 loop.run \
121 function.run \
122 fetch_add.run \
[b7170a64]123 ctxswitch-pthread.run \
124 ctxswitch-cfa_coroutine.run \
125 ctxswitch-cfa_thread.run \
[6810fcb]126 ctxswitch-cfa_thread2.run \
[b7170a64]127 ctxswitch-upp_coroutine.run \
[50abab9]128 ctxswitch-upp_thread.run \
[6810fcb]129 -ctxswitch-kos_fibre.run \
130 -ctxswitch-kos_fibre2.run \
[50abab9]131 ctxswitch-goroutine.run \
132 ctxswitch-java_thread.run
[034165a]133
[6810fcb]134ctxswitch-pthread$(EXEEXT):
[d3db83c]135 @@BACKEND_CC@ $(srcdir)/ctxswitch/pthreads.c -DBENCH_N=50000000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[6810fcb]136
[034165a]137ctxswitch-cfa_coroutine$(EXEEXT):
[d3db83c]138 @${CC} $(srcdir)/ctxswitch/cfa_cor.c -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[034165a]139
140ctxswitch-cfa_thread$(EXEEXT):
[d3db83c]141 @${CC} $(srcdir)/ctxswitch/cfa_thrd.c -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[6810fcb]142
143ctxswitch-cfa_thread2$(EXEEXT):
[d3db83c]144 @${CC} $(srcdir)/ctxswitch/cfa_thrd2.c -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[034165a]145
146ctxswitch-upp_coroutine$(EXEEXT):
[d3db83c]147 @u++ $(srcdir)/ctxswitch/upp_cor.cc -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[034165a]148
149ctxswitch-upp_thread$(EXEEXT):
[d3db83c]150 @u++ $(srcdir)/ctxswitch/upp_thrd.cc -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[ac93b228]151
[6810fcb]152ctxswitch-kos_fibre$(EXEEXT):
[d3db83c]153 @${CXX} $(srcdir)/ctxswitch/kos_fibre.cpp -DBENCH_N=50000000 -I$(srcdir) -I/home/tdelisle/software/KOS/src/ -g -O2 -lfibre -lpthread -lrt
[6810fcb]154
155ctxswitch-kos_fibre2$(EXEEXT):
[d3db83c]156 @${CXX} $(srcdir)/ctxswitch/kos_fibre2.cpp -DBENCH_N=50000000 -I$(srcdir) -I/home/tdelisle/software/KOS/src/ -g -O2 -lfibre -lpthread -lrt
[034165a]157
[50abab9]158ctxswitch-goroutine$(EXEEXT):
[d3db83c]159 @go build -o a.out $(srcdir)/ctxswitch/goroutine.go
[50abab9]160
161ctxswitch-java_thread$(EXEEXT):
[d3db83c]162 @javac $(srcdir)/ctxswitch/JavaThread.java
[50abab9]163 @echo "#!/bin/sh" > a.out
164 @echo "cd ctxswitch && java JavaThread" >> a.out
165 @chmod a+x a.out
166
[f54a0ab]167## =========================================================================================================
168mutex$(EXEEXT) :\
[d885a58]169 loop.run \
170 function.run \
171 fetch_add.run \
[f54a0ab]172 mutex-pthread_lock.run \
173 mutex-upp.run \
174 mutex-cfa1.run \
175 mutex-cfa2.run \
[6aa537a4]176 mutex-cfa4.run \
177 mutex-java_thread.run
[f54a0ab]178
179mutex-pthread_lock$(EXEEXT):
[d3db83c]180 @@BACKEND_CC@ $(srcdir)/mutex/pthreads.c -DBENCH_N=50000000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[f54a0ab]181
182mutex-upp$(EXEEXT):
[d3db83c]183 @u++ $(srcdir)/mutex/upp.cc -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[f54a0ab]184
185mutex-cfa1$(EXEEXT):
[d3db83c]186 @${CC} $(srcdir)/mutex/cfa1.c -DBENCH_N=5000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[f54a0ab]187
188mutex-cfa2$(EXEEXT):
[d3db83c]189 @${CC} $(srcdir)/mutex/cfa2.c -DBENCH_N=5000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[f54a0ab]190
191mutex-cfa4$(EXEEXT):
[d3db83c]192 @${CC} $(srcdir)/mutex/cfa4.c -DBENCH_N=5000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[034165a]193
[6aa537a4]194mutex-java_thread$(EXEEXT):
[d3db83c]195 @javac $(srcdir)/mutex/JavaThread.java
[6aa537a4]196 @echo "#!/bin/sh" > a.out
197 @echo "cd mutex && java JavaThread" >> a.out
198 @chmod a+x a.out
199
[9f0b975]200## =========================================================================================================
201signal$(EXEEXT) :\
[3eb4541]202 signal-pthread_cond.run \
[9f0b975]203 signal-upp.run \
204 signal-cfa1.run \
205 signal-cfa2.run \
[56de6b39]206 signal-cfa4.run \
207 signal-java_thread.run
[9f0b975]208
[3eb4541]209signal-pthread_cond$(EXEEXT):
[d3db83c]210 @@BACKEND_CC@ $(srcdir)/schedint/pthreads.c -DBENCH_N=500000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[3eb4541]211
[9f0b975]212signal-upp$(EXEEXT):
[d3db83c]213 @u++ $(srcdir)/schedint/upp.cc -DBENCH_N=5000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[9f0b975]214
215signal-cfa1$(EXEEXT):
[d3db83c]216 @${CC} $(srcdir)/schedint/cfa1.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[9f0b975]217
218signal-cfa2$(EXEEXT):
[d3db83c]219 @${CC} $(srcdir)/schedint/cfa2.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[9f0b975]220
221signal-cfa4$(EXEEXT):
[d3db83c]222 @${CC} $(srcdir)/schedint/cfa4.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[9f0b975]223
[6aa537a4]224signal-java_thread$(EXEEXT):
[d3db83c]225 @javac $(srcdir)/schedint/JavaThread.java
[6aa537a4]226 @echo "#!/bin/sh" > a.out
227 @echo "cd schedint && java JavaThread" >> a.out
228 @chmod a+x a.out
229
230
[9f0b975]231## =========================================================================================================
232waitfor$(EXEEXT) :\
233 waitfor-upp.run \
234 waitfor-cfa1.run \
235 waitfor-cfa2.run \
236 waitfor-cfa4.run
237
238waitfor-upp$(EXEEXT):
[d3db83c]239 @u++ $(srcdir)/schedext/upp.cc -DBENCH_N=5000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[9f0b975]240
241waitfor-cfa1$(EXEEXT):
[d3db83c]242 @${CC} $(srcdir)/schedext/cfa1.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[9f0b975]243
244waitfor-cfa2$(EXEEXT):
[d3db83c]245 @${CC} $(srcdir)/schedext/cfa2.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[9f0b975]246
247waitfor-cfa4$(EXEEXT):
[d3db83c]248 @${CC} $(srcdir)/schedext/cfa4.c -DBENCH_N=500000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[9f0b975]249
[4cedd9f]250## =========================================================================================================
251creation$(EXEEXT) :\
[3351cc0]252 creation-pthread.run \
253 creation-cfa_coroutine.run \
254 creation-cfa_coroutine_eager.run \
255 creation-cfa_thread.run \
256 creation-upp_coroutine.run \
[50abab9]257 creation-upp_thread.run \
258 creation-goroutine.run \
259 creation-java_thread.run
[4cedd9f]260
261creation-cfa_coroutine$(EXEEXT):
[d3db83c]262 @${CC} $(srcdir)/creation/cfa_cor.c -DBENCH_N=10000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[4cedd9f]263
[3351cc0]264creation-cfa_coroutine_eager$(EXEEXT):
[d3db83c]265 @${CC} $(srcdir)/creation/cfa_cor.c -DBENCH_N=10000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags} -DEAGER
[3351cc0]266
[4cedd9f]267creation-cfa_thread$(EXEEXT):
[d3db83c]268 @${CC} $(srcdir)/creation/cfa_thrd.c -DBENCH_N=10000000 -I$(srcdir) -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[4cedd9f]269
270creation-upp_coroutine$(EXEEXT):
[d3db83c]271 @u++ $(srcdir)/creation/upp_cor.cc -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[4cedd9f]272
273creation-upp_thread$(EXEEXT):
[d3db83c]274 @u++ $(srcdir)/creation/upp_thrd.cc -DBENCH_N=50000000 -I$(srcdir) -nodebug -lrt -quiet ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[4cedd9f]275
276creation-pthread$(EXEEXT):
[d3db83c]277 @@BACKEND_CC@ $(srcdir)/creation/pthreads.c -DBENCH_N=250000 -I$(srcdir) -lrt -pthread ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[4cedd9f]278
[50abab9]279creation-goroutine$(EXEEXT):
[d3db83c]280 @go build -o a.out $(srcdir)/creation/goroutine.go
[50abab9]281
282creation-java_thread$(EXEEXT):
[d3db83c]283 @javac $(srcdir)/creation/JavaThread.java
[50abab9]284 @echo "#!/bin/sh" > a.out
285 @echo "cd creation && java JavaThread" >> a.out
286 @chmod a+x a.out
287
[034165a]288## =========================================================================================================
289
[3edc2df]290compile$(EXEEXT) :\
[a5b7905]291 compile-array.make \
292 compile-attributes.make \
293 compile-empty.make \
294 compile-expression.make \
295 compile-io.make \
296 compile-monitor.make \
297 compile-operators.make \
298 compile-typeof.make
[3edc2df]299
300
[d3db83c]301testdir = $(top_srcdir)/src/tests
302
[3edc2df]303compile-array$(EXEEXT):
[d3db83c]304 @${CC} -quiet -fsyntax-only -w $(testdir)/array.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[3edc2df]305
306compile-attributes$(EXEEXT):
[d3db83c]307 @${CC} -quiet -fsyntax-only -w $(testdir)/attributes.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[3edc2df]308
309compile-empty$(EXEEXT):
[d3db83c]310 @${CC} -quiet -fsyntax-only -w $(srcdir)/compile/empty.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[3edc2df]311
312compile-expression$(EXEEXT):
[d3db83c]313 @${CC} -quiet -fsyntax-only -w $(testdir)/expression.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[3edc2df]314
315compile-io$(EXEEXT):
[d3db83c]316 @${CC} -quiet -fsyntax-only -w $(testdir)/io1.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[3edc2df]317
318compile-monitor$(EXEEXT):
[d3db83c]319 @${CC} -quiet -fsyntax-only -w $(testdir)/concurrent/monitor.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[3edc2df]320
321compile-operators$(EXEEXT):
[d3db83c]322 @${CC} -quiet -fsyntax-only -w $(testdir)/operators.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[3edc2df]323
324compile-thread$(EXEEXT):
[d3db83c]325 @${CC} -quiet -fsyntax-only -w $(testdir)/concurrent/thread.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[3edc2df]326
327compile-typeof$(EXEEXT):
[d3db83c]328 @${CC} -quiet -fsyntax-only -w $(testdir)/typeof.c @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
[3edc2df]329
Note: See TracBrowser for help on using the repository browser.