source: benchmark/Makefile.am @ 7a7ab42

ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsdeferred_resndemanglerenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprno_listpersistent-indexerpthread-emulationqualifiedEnum
Last change on this file since 7a7ab42 was 7a7ab42, checked in by Thierry Delisle <tdelisle@…>, 6 years ago

Fixed benchmark makefiles

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