source: benchmark/Makefile.am @ ed2cb3c

ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
Last change on this file since ed2cb3c was 751e2eb, checked in by Thierry Delisle <tdelisle@…>, 3 years ago

Added bench.rs for common benchmark rust code

  • Property mode set to 100644
File size: 16.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
[dfda49f]13## Last Modified On : Tue Mar 10 11:41:18 2020
14## Update Count     : 258
[ac93b228]15###############################################################################
16
[0c1b566]17AUTOMAKE_OPTIONS = foreign    # do not require all the GNU file names
[107b01a]18ACLOCAL_AMFLAGS  = -I automake
[0c1b566]19
[ac93b228]20# applies to both programs
[bcadb26]21include $(top_srcdir)/tools/build/cfa.make
[7a7ab42]22
[dc33b5b]23AM_CFLAGS = -O2 -Wall -Wextra -I$(srcdir) -lrt -pthread # -Werror
[dd9e1ca]24AM_CFAFLAGS = -quiet -nodebug
25AM_UPPFLAGS = -quiet -nodebug -multi -std=c++14
[7a7ab42]26
[528ccc8]27BENCH_V_CC = $(__bench_v_CC_$(__quiet))
28BENCH_V_CFA = $(__bench_v_CFA_$(__quiet))
29BENCH_V_CXX = $(__bench_v_CXX_$(__quiet))
[90cb6f7]30BENCH_V_UPP = $(__bench_v_UPP_$(__quiet))
[528ccc8]31BENCH_V_GOC = $(__bench_v_GOC_$(__quiet))
[1d72a11]32BENCH_V_PY = $(__bench_v_PY_$(__quiet))
[90cb6f7]33BENCH_V_RUSTC = $(__bench_v_RUSTC_$(__quiet))
[6e540ea]34BENCH_V_NODEJS = $(__bench_v_NODEJS_$(__quiet))
[528ccc8]35BENCH_V_JAVAC = $(__bench_v_JAVAC_$(__quiet))
36
37__quiet = verbose
38__bench_v_CC_quiet = @
39__bench_v_CFA_quiet = @
40__bench_v_CXX_quiet = @
[90cb6f7]41__bench_v_UPP_quiet = @
[528ccc8]42__bench_v_GOC_quiet = @
[90cb6f7]43__bench_v_RUSTC_quiet = @
[528ccc8]44__bench_v_JAVAC_quiet = @
45__bench_v_CC_verbose = $(AM_V_CC)
46__bench_v_CFA_verbose = $(AM_V_CFA)
47__bench_v_CXX_verbose = $(AM_V_CXX)
[90cb6f7]48__bench_v_UPP_verbose = $(AM_V_UPP)
[528ccc8]49__bench_v_GOC_verbose = $(AM_V_GOC)
[1d72a11]50__bench_v_PY_verbose = $(AM_V_PY)
51__bench_v_RUSTC_verbose = $(AM_V_RUST)
[6e540ea]52__bench_v_NODEJS_verbose = $(AM_V_NODEJS)
[528ccc8]53__bench_v_JAVAC_verbose = $(AM_V_JAVAC)
54
55
[5e49e47]56TOOLSDIR = ${abs_top_builddir}/tools/
57REPEAT   = ${abs_top_builddir}/tools/repeat
58STATS    = ${abs_top_srcdir}/tools/stat.py
[2385236]59# NEED AT LEAST 4 DATA VALUES FOR BENCHMARKS BECAUSE THE MAX AND MIN VALUES ARE REMOVED
[c12869e]60repeats  = 13 # 31 for benchmarks
[c6f1f3e]61arch     = x64
[05f4b85]62skipcompile = no
[a5b7905]63TIME_FORMAT = "%E"
[2086ab2]64PRINT_FORMAT = %20s: #Comments needed for spacing
[034165a]65
[d0c91a6]66# Dummy hack tricks
[5e49e47]67EXTRA_PROGRAMS = dummy # build but do not install
[c2bc6d5]68nodist_dummy_SOURCES = dummyC.c dummyCXX.cpp
[5e49e47]69
70dummyC.c:
[580c11b]71        echo "int main() { return 0; }" > ${@}
[5e49e47]72
73dummyCXX.cpp:
[580c11b]74        echo "int main() { return 0; }" > ${@}
[5e49e47]75
[4aac9ff]76.SILENT:                # do not print recipe
[034165a]77.NOTPARALLEL:
[4aac9ff]78.PHONY: jenkins cleancsv
[ac93b228]79
[43fa66e]80## =========================================================================================================
[90cb6f7]81
[c2bc6d5]82# all is used by make dist so ignore it
83all:
84
85all-bench : basic$(EXEEXT) ctxswitch$(EXEEXT) mutex$(EXEEXT) schedint$(EXEEXT) schedext$(EXEEXT) creation$(EXEEXT)
[4cedd9f]86
[4eb07bc]87basic_loop_DURATION = 15000000000
88basic_function_DURATION = 10000000000
[2316525]89basic_tls_fetch_add_DURATION = 10000000000
[4eb07bc]90basic_DURATION = 250000000
91
[c93fd72]92ctxswitch_pthread_DURATION = 25000000
[9e1fa35]93ctxswitch_rust_thread_DURATION = $(ctxswitch_pthread_DURATION)
[4eb07bc]94ctxswitch_cfa_generator_DURATION = 5000000000
[8633485b]95ctxswitch_nodejs_await_DURATION = 5000000
[4eb07bc]96ctxswitch_DURATION = 100000000
97
[26fd986]98#mutex_java_DURATION = 10000000
[4eb07bc]99mutex_DURATION = 50000000
100
[26fd986]101schedint_pthread_DURATION = 1000000
102schedint_java_DURATION = $(schedint_pthread_DURATION)
103schedint_rust_DURATION = $(schedint_pthread_DURATION)
104schedint_DURATION = 10000000
[4eb07bc]105
[26fd986]106schedext_DURATION = 10000000
[4eb07bc]107
108creation_pthread_DURATION = 250000
[26fd986]109creation_rust_thread_DURATION = ${creation_pthread_DURATION}
110creation_java_thread_DURATION = ${creation_pthread_DURATION}
[9e1fa35]111creation_cfa_coroutine_DURATION = 100000000
112creation_cfa_coroutine_eager_DURATION = 10000000
[dfda49f]113creation_cfa_generator_DURATION = 1000000000
[9e1fa35]114creation_upp_coroutine_DURATION = ${creation_cfa_coroutine_eager_DURATION}
115creation_DURATION = 10000000
[4eb07bc]116
[a5b7905]117%.run : %$(EXEEXT) ${REPEAT}
[580c11b]118        rm -f .result.log
119        echo "------------------------------------------------------"
120        echo $<
[c12869e]121        ${REPEAT} ${repeats} -- ./a.out\
[c93fd72]122                $(if ${$(subst -,_,$(basename $@))_DURATION},\
123                        ${$(subst -,_,$(basename $@))_DURATION},\
124                        ${$(firstword $(subst -, ,$(basename $@)))_DURATION}) | tee -a .result.log
[580c11b]125        ${STATS} .result.log
126        echo "------------------------------------------------------"
127        rm -f a.out .result.log *.class
[ac93b228]128
[c12869e]129#       ${REPEAT} ${repeats} -- /usr/bin/time -f "%Uu %Ss %Er %Mkb" ./a.out
130
[a5b7905]131%.runquiet :
[580c11b]132        +make $(basename $@) CFLAGS="-w" __quiet=quiet
133        taskset -c 1 ./a.out
134        rm -f a.out
[a5b7905]135
136%.make :
[580c11b]137        printf "${PRINT_FORMAT}" $(basename $(subst compile-,,$@))
138        +/usr/bin/time -f ${TIME_FORMAT} make $(basename $@) 2>&1
[a5b7905]139
140${REPEAT} :
[580c11b]141        +make -C ${abs_top_builddir}/tools repeat
[a5b7905]142
143## =========================================================================================================
144
[f15fe0a]145FIX_NEW_LINES = cat $@ | tr "\n" "\t" | sed -r 's/\t,/,/' | tr "\t" "\n" > $@
146
[4aac9ff]147cleancsv:
[6ca0dab]148        rm -f compile.csv basic.csv ctxswitch.csv mutex.csv schedint.csv
[4aac9ff]149
150jenkins$(EXEEXT): cleancsv
[05f4b85]151@DOifskipcompile@
[580c11b]152        +make compile.csv
153        -+make compile.diff.csv
[05f4b85]154@DOendif@
[580c11b]155        +make ctxswitch.csv
156        -+make ctxswitch.diff.csv
157        +make mutex.csv
158        -+make mutex.diff.csv
[6ca0dab]159        +make schedint.csv
160        -+make schedint.diff.csv
[d9f2874]161@DOifskipcompile@
[c6f1f3e]162        cat compile.csv
163        -cat compile.diff.csv
[d9f2874]164@DOendif@
[c6f1f3e]165        cat ctxswitch.csv
166        -cat ctxswitch.diff.csv
167        cat mutex.csv
168        -cat mutex.diff.csv
[6ca0dab]169        cat schedint.csv
170        -cat schedint.diff.csv
[f15fe0a]171
172compile.csv:
[4aac9ff]173        echo "building $@"
[580c11b]174        echo "array,attributes,empty,expression,io,monitor,operators,typeof" > $@
175        +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-array.make >> $@
176        +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-attributes.make >> $@
177        +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-empty.make >> $@
178        +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-expression.make >> $@
179        +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-io.make >> $@
180        +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-monitor.make >> $@
181        +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-operators.make >> $@
182        +make TIME_FORMAT='%e' PRINT_FORMAT='' compile-typeof.make >> $@
183        $(srcdir)/fixcsv.sh $@
[f15fe0a]184
185ctxswitch.csv:
[4aac9ff]186        echo "building $@"
[580c11b]187        echo "generator,coroutine,thread" > $@
188        +make ctxswitch-cfa_generator.runquiet >> $@ && echo -n ',' >> $@
189        +make ctxswitch-cfa_coroutine.runquiet >> $@ && echo -n ',' >> $@
190        +make ctxswitch-cfa_thread.runquiet >> $@
191        $(srcdir)/fixcsv.sh $@
[f15fe0a]192
193mutex.csv:
[4aac9ff]194        echo "building $@"
[580c11b]195        echo "1-monitor,2-monitor" > $@
196        +make mutex-cfa1.runquiet >> $@ && echo -n ',' >> $@
197        +make mutex-cfa2.runquiet >> $@
198        $(srcdir)/fixcsv.sh $@
[f15fe0a]199
[6ca0dab]200schedint.csv:
[4aac9ff]201        echo "building $@"
[26fd986]202        echo "schedint-1,schedint-2,schedext-1,schedext-2" > $@
203        +make schedint-cfa1.runquiet >> $@ && echo -n ',' >> $@
204        +make schedint-cfa2.runquiet >> $@ && echo -n ',' >> $@
205        +make schedext-cfa1.runquiet >> $@ && echo -n ',' >> $@
206        +make schedext-cfa2.runquiet >> $@
[580c11b]207        $(srcdir)/fixcsv.sh $@
[ac93b228]208
[c6f1f3e]209%.diff.csv: %.csv
[580c11b]210        test -e $(srcdir)/baselines/$(arch)/$< || (echo "Error : Missing baseline for ${<}" && false)
211        $(srcdir)/baselines/calc.py $(srcdir)/baselines/$(arch)/$(<) $(<) > $@
[c6f1f3e]212
[d885a58]213## =========================================================================================================
214
[4eb07bc]215BASIC_DEPEND  =                                 \
216        basic-loop.run                          \
[90cb6f7]217        basic-function.run                      \
218        basic-fetch_add.run                     \
219        basic-ttst_lock.run                     \
220        basic-tls-fetch_add.run
221
222basic-loop$(EXEEXT):
223        $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/loop.c
224
225basic-function$(EXEEXT):
226        $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/function.c
227
228basic-fetch_add$(EXEEXT):
229        $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/fetch_add.c
230
231basic-ttst_lock$(EXEEXT):
232        $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/ttst_lock.c
233
234basic-tls-fetch_add$(EXEEXT):
235        $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/tls_fetch_add.c
[d885a58]236
[90cb6f7]237basic$(EXEEXT): $(BASIC_DEPEND)
[d885a58]238
[034165a]239## =========================================================================================================
[90cb6f7]240
241CTXSWITCH_DEPEND  =                     \
[dc33b5b]242        ctxswitch-cfa_generator.run     \
[b7170a64]243        ctxswitch-cfa_coroutine.run     \
244        ctxswitch-cfa_thread.run        \
[6810fcb]245        ctxswitch-cfa_thread2.run       \
[b7170a64]246        ctxswitch-upp_coroutine.run     \
[50abab9]247        ctxswitch-upp_thread.run        \
[c12869e]248        ctxswitch-python_coroutine.run  \
249        ctxswitch-nodejs_coroutine.run  \
[7ac3151]250        ctxswitch-nodejs_await.run      \
[c12869e]251        ctxswitch-goroutine_thread.run  \
[90cb6f7]252        ctxswitch-rust_thread.run       \
[580c11b]253        ctxswitch-nodejs_coroutine.run  \
[c12869e]254        ctxswitch-java_thread.run       \
255        ctxswitch-pthread.run
[dc33b5b]256
[41cca44]257if WITH_LIBFIBRE
[90cb6f7]258CTXSWITCH_DEPEND  +=                    \
259        ctxswitch-kos_fibre.run         \
[41cca44]260        ctxswitch-kos_fibre2.run
261
262ctxswitch-kos_fibre$(EXEEXT):
[528ccc8]263        $(BENCH_V_CXX)$(CXXCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/kos_fibre.cpp  -I$(LIBFIBRE_DIR) -lfibre
[41cca44]264
265ctxswitch-kos_fibre2$(EXEEXT):
[528ccc8]266        $(BENCH_V_CXX)$(CXXCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/kos_fibre2.cpp -I$(LIBFIBRE_DIR) -lfibre
[41cca44]267endif
268
269ctxswitch$(EXEEXT): $(CTXSWITCH_DEPEND)
270
[dc33b5b]271ctxswitch-cfa_generator$(EXEEXT):
[90cb6f7]272        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_gen.cfa
[dc33b5b]273
[034165a]274ctxswitch-cfa_coroutine$(EXEEXT):
[90cb6f7]275        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_cor.cfa
[034165a]276
277ctxswitch-cfa_thread$(EXEEXT):
[90cb6f7]278        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_thrd.cfa
[6810fcb]279
280ctxswitch-cfa_thread2$(EXEEXT):
[90cb6f7]281        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_thrd2.cfa
[034165a]282
283ctxswitch-upp_coroutine$(EXEEXT):
[90cb6f7]284        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/ctxswitch/upp_cor.cc
[034165a]285
286ctxswitch-upp_thread$(EXEEXT):
[90cb6f7]287        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/ctxswitch/upp_thrd.cc
[ac93b228]288
[c12869e]289ctxswitch-python_coroutine$(EXEEXT):
[1d72a11]290        $(BENCH_V_PY)echo "#!/bin/sh" > a.out
[2c3562d]291        echo "python3 $(srcdir)/ctxswitch/python_cor.py \"$$""@\"" >> a.out
[c12869e]292        chmod a+x a.out
[90cb6f7]293
[580c11b]294ctxswitch-nodejs_coroutine$(EXEEXT):
[1d72a11]295        $(BENCH_V_NODEJS)echo "#!/bin/sh" > a.out
[2c3562d]296        echo "nodejs $(srcdir)/ctxswitch/node_cor.js \"$$""@\"" >> a.out
[4eb07bc]297        chmod a+x a.out
[580c11b]298
[7ac3151]299ctxswitch-nodejs_await$(EXEEXT):
[1d72a11]300        $(BENCH_V_NODEJS)echo "#!/bin/sh" > a.out
[2c3562d]301        echo "nodejs $(srcdir)/ctxswitch/node_await.js \"$$""@\"" >> a.out
[7ac3151]302        chmod a+x a.out
303
[c12869e]304ctxswitch-goroutine_thread$(EXEEXT):
305        $(BENCH_V_GOC)go build -o a.out $(srcdir)/ctxswitch/goroutine.go
306
307ctxswitch-rust_thread$(EXEEXT):
308        $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/ctxswitch/rust_thrd.rs
309
[50abab9]310ctxswitch-java_thread$(EXEEXT):
[528ccc8]311        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/ctxswitch/JavaThread.java
[580c11b]312        echo "#!/bin/sh" > a.out
[2c3562d]313        echo "java JavaThread \"$$""@\"" >> a.out
[580c11b]314        chmod a+x a.out
315
[c12869e]316ctxswitch-pthread$(EXEEXT):
317        $(BENCH_V_CC)$(COMPILE) $(srcdir)/ctxswitch/pthreads.c
318
[f54a0ab]319## =========================================================================================================
[90cb6f7]320
321mutex$(EXEEXT) :                \
[f54a0ab]322        mutex-cfa1.run          \
323        mutex-cfa2.run          \
[6aa537a4]324        mutex-cfa4.run          \
[9e1fa35]325        mutex-upp.run           \
[90cb6f7]326        mutex-go.run            \
327        mutex-rust.run          \
[c12869e]328        mutex-java.run          \
329        mutex-pthread.run
[f54a0ab]330
[90cb6f7]331mutex-pthread$(EXEEXT):
[4eb07bc]332        $(BENCH_V_CC)$(COMPILE) $(srcdir)/mutex/pthreads.c
[f54a0ab]333
334mutex-cfa1$(EXEEXT):
[4eb07bc]335        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutex/cfa1.cfa
[f54a0ab]336
337mutex-cfa2$(EXEEXT):
[4eb07bc]338        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutex/cfa2.cfa
[f54a0ab]339
340mutex-cfa4$(EXEEXT):
[4eb07bc]341        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutex/cfa4.cfa
[90cb6f7]342
[9e1fa35]343mutex-upp$(EXEEXT):
344        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/mutex/upp.cc
345
[90cb6f7]346mutex-go$(EXEEXT):
347        $(BENCH_V_GOC)go build -o a.out $(srcdir)/mutex/goroutine.go
348
349mutex-rust$(EXEEXT):
350        $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/mutex/rust.rs
[034165a]351
[90cb6f7]352mutex-java$(EXEEXT):
[528ccc8]353        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/mutex/JavaThread.java
[580c11b]354        echo "#!/bin/sh" > a.out
[2c3562d]355        echo "java JavaThread \"$$""@\"" >> a.out
[580c11b]356        chmod a+x a.out
[6aa537a4]357
[9f0b975]358## =========================================================================================================
[90cb6f7]359
[26fd986]360schedint$(EXEEXT) :             \
361        schedint-cfa1.run       \
362        schedint-cfa2.run       \
363        schedint-cfa4.run       \
364        schedint-upp.run        \
365        schedint-rust.run       \
366        schedint-java.run       \
367        schedint-pthread.run
[9f0b975]368
[26fd986]369schedint-cfa1$(EXEEXT):
[4eb07bc]370        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedint/cfa1.cfa
[9f0b975]371
[26fd986]372schedint-cfa2$(EXEEXT):
[4eb07bc]373        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedint/cfa2.cfa
[9f0b975]374
[26fd986]375schedint-cfa4$(EXEEXT):
[4eb07bc]376        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedint/cfa4.cfa
[90cb6f7]377
[26fd986]378schedint-upp$(EXEEXT):
379        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/schedint/upp.cc
380
381schedint-rust$(EXEEXT):
[90cb6f7]382        $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/schedint/rust.rs
[9f0b975]383
[26fd986]384schedint-java$(EXEEXT):
[528ccc8]385        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/schedint/JavaThread.java
[580c11b]386        echo "#!/bin/sh" > a.out
[2c3562d]387        echo "java JavaThread \"$$""@\"" >> a.out
[580c11b]388        chmod a+x a.out
[6aa537a4]389
[26fd986]390schedint-pthread$(EXEEXT):
391        $(BENCH_V_CC)$(COMPILE) $(srcdir)/schedint/pthreads.c
[90cb6f7]392
[26fd986]393## =========================================================================================================
[9f0b975]394
[26fd986]395schedext$(EXEEXT) :             \
396        schedext-cfa1.run       \
397        schedext-cfa2.run       \
398        schedext-cfa4.run       \
399        schedext-upp.run        \
400        schedext-goroutine.run
[9f0b975]401
[26fd986]402schedext-cfa1$(EXEEXT):
[4eb07bc]403        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedext/cfa1.cfa
[9f0b975]404
[26fd986]405schedext-cfa2$(EXEEXT):
[4eb07bc]406        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedext/cfa2.cfa
[9f0b975]407
[26fd986]408schedext-cfa4$(EXEEXT):
[4eb07bc]409        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedext/cfa4.cfa
[9f0b975]410
[26fd986]411schedext-upp$(EXEEXT):
412        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/schedext/upp.cc
413
414schedext-goroutine$(EXEEXT):
415        $(BENCH_V_GOC)go build -o a.out $(srcdir)/schedext/goroutine.go
416
417
[4cedd9f]418## =========================================================================================================
[90cb6f7]419
420creation$(EXEEXT) :                             \
[26fd986]421        creation-cfa_generator.run              \
[3351cc0]422        creation-cfa_coroutine.run              \
423        creation-cfa_coroutine_eager.run        \
424        creation-cfa_thread.run                 \
425        creation-upp_coroutine.run              \
[50abab9]426        creation-upp_thread.run                 \
[c12869e]427        creation-python_coroutine.run           \
[9e1fa35]428        creation-nodejs_coroutine.run           \
[c12869e]429        creation-goroutine_thread.run           \
430        creation-rust_thread.run                \
431        creation-java_thread.run                \
432        creation-pthread.run
[4cedd9f]433
[26fd986]434creation-cfa_generator$(EXEEXT):
435        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_gen.cfa
436
[4cedd9f]437creation-cfa_coroutine$(EXEEXT):
[4eb07bc]438        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_cor.cfa
[4cedd9f]439
[3351cc0]440creation-cfa_coroutine_eager$(EXEEXT):
[4eb07bc]441        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_cor.cfa  -DEAGER
[3351cc0]442
[4cedd9f]443creation-cfa_thread$(EXEEXT):
[4eb07bc]444        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_thrd.cfa
[4cedd9f]445
446creation-upp_coroutine$(EXEEXT):
[4eb07bc]447        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/creation/upp_cor.cc
[4cedd9f]448
449creation-upp_thread$(EXEEXT):
[4eb07bc]450        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/creation/upp_thrd.cc
[4cedd9f]451
[c12869e]452creation-python_coroutine$(EXEEXT):
[1d72a11]453        $(BENCH_V_PY)echo "#!/bin/sh" > a.out
[2c3562d]454        echo "python3 $(srcdir)/creation/python_cor.py \"$$""@\"" >> a.out
[c12869e]455        chmod a+x a.out
[90cb6f7]456
[9e1fa35]457creation-nodejs_coroutine$(EXEEXT):
[1d72a11]458        $(BENCH_V_NODEJS)echo "#!/bin/sh" > a.out
[2c3562d]459        echo "nodejs $(srcdir)/creation/node_cor.js \"$$""@\"" >> a.out
[9e1fa35]460        chmod a+x a.out
461
[c12869e]462creation-goroutine_thread$(EXEEXT):
463        $(BENCH_V_GOC)go build -o a.out $(srcdir)/creation/goroutine.go
464
465creation-rust_thread$(EXEEXT):
466        $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/creation/rust_thrd.rs
467
[26fd986]468creation-java_thread$(EXEEXT):
[528ccc8]469        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/creation/JavaThread.java
[580c11b]470        echo "#!/bin/sh" > a.out
[2c3562d]471        echo "java JavaThread \"$$""@\"" >> a.out
[580c11b]472        chmod a+x a.out
[50abab9]473
[c12869e]474creation-pthread$(EXEEXT):
475        $(BENCH_V_CC)$(COMPILE) $(srcdir)/creation/pthreads.c
476
[034165a]477## =========================================================================================================
478
[c2bc6d5]479bcompile$(EXEEXT) :             \
[a5b7905]480        compile-array.make      \
481        compile-attributes.make \
482        compile-empty.make      \
483        compile-expression.make \
484        compile-io.make         \
485        compile-monitor.make    \
486        compile-operators.make  \
487        compile-typeof.make
[3edc2df]488
[524ed86]489testdir = $(top_srcdir)/tests
[d3db83c]490
[3edc2df]491compile-array$(EXEEXT):
[6ca0dab]492        $(CFACOMPILE) -DNO_COMPILED_PRAGMA -fsyntax-only -w $(testdir)/array.cfa
[3edc2df]493
494compile-attributes$(EXEEXT):
[6ca0dab]495        $(CFACOMPILE) -DNO_COMPILED_PRAGMA -fsyntax-only -w $(testdir)/attributes.cfa
[3edc2df]496
497compile-empty$(EXEEXT):
[6ca0dab]498        $(CFACOMPILE) -DNO_COMPILED_PRAGMA -fsyntax-only -w $(srcdir)/compile/empty.cfa
[3edc2df]499
500compile-expression$(EXEEXT):
[6ca0dab]501        $(CFACOMPILE) -DNO_COMPILED_PRAGMA -fsyntax-only -w $(testdir)/expression.cfa
[3edc2df]502
503compile-io$(EXEEXT):
[6ca0dab]504        $(CFACOMPILE) -DNO_COMPILED_PRAGMA -fsyntax-only -w $(testdir)/io1.cfa
[3edc2df]505
506compile-monitor$(EXEEXT):
[6ca0dab]507        $(CFACOMPILE) -DNO_COMPILED_PRAGMA -fsyntax-only -w $(testdir)/concurrent/monitor.cfa
[3edc2df]508
509compile-operators$(EXEEXT):
[6ca0dab]510        $(CFACOMPILE) -DNO_COMPILED_PRAGMA -fsyntax-only -w $(testdir)/operators.cfa
[3edc2df]511
512compile-thread$(EXEEXT):
[6ca0dab]513        $(CFACOMPILE) -DNO_COMPILED_PRAGMA -fsyntax-only -w $(testdir)/concurrent/thread.cfa
[3edc2df]514
515compile-typeof$(EXEEXT):
[6ca0dab]516        $(CFACOMPILE) -DNO_COMPILED_PRAGMA -fsyntax-only -w $(testdir)/typeof.cfa
[e15683e]517
518## =========================================================================================================
519
520size$(EXEEXT) : size-cfa.runquiet
521
522size-cfa$(EXEEXT):
523        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/size/size.cfa
[49ce636]524
525## =========================================================================================================
526
[751e2eb]527%-tokio$(EXEEXT): $(srcdir)/readyQ/%.rs $(srcdir)/bench.rs
[49ce636]528        cd $(builddir) && cargo build --release
529        cp $(builddir)/target/release/$(basename $@) $@
Note: See TracBrowser for help on using the repository browser.