Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • benchmark/Makefile.am

    rdfda49f rabec2f8  
    1111## Created On       : Sun May 31 09:08:15 2015
    1212## Last Modified By : Peter A. Buhr
    13 ## Last Modified On : Tue Mar 10 11:41:18 2020
    14 ## Update Count     : 258
     13## Last Modified On : Mon Jul 29 18:02:19 2019
     14## Update Count     : 54
    1515###############################################################################
    1616
     
    2828BENCH_V_CFA = $(__bench_v_CFA_$(__quiet))
    2929BENCH_V_CXX = $(__bench_v_CXX_$(__quiet))
     30BENCH_V_GOC = $(__bench_v_GOC_$(__quiet))
     31BENCH_V_JAVAC = $(__bench_v_JAVAC_$(__quiet))
    3032BENCH_V_UPP = $(__bench_v_UPP_$(__quiet))
    31 BENCH_V_GOC = $(__bench_v_GOC_$(__quiet))
    32 BENCH_V_PY = $(__bench_v_PY_$(__quiet))
    33 BENCH_V_RUSTC = $(__bench_v_RUSTC_$(__quiet))
    34 BENCH_V_NODEJS = $(__bench_v_NODEJS_$(__quiet))
    35 BENCH_V_JAVAC = $(__bench_v_JAVAC_$(__quiet))
    3633
    3734__quiet = verbose
     
    3936__bench_v_CFA_quiet = @
    4037__bench_v_CXX_quiet = @
     38__bench_v_GOC_quiet = @
     39__bench_v_JAVAC_quiet = @
    4140__bench_v_UPP_quiet = @
    42 __bench_v_GOC_quiet = @
    43 __bench_v_RUSTC_quiet = @
    44 __bench_v_JAVAC_quiet = @
    4541__bench_v_CC_verbose = $(AM_V_CC)
    4642__bench_v_CFA_verbose = $(AM_V_CFA)
    4743__bench_v_CXX_verbose = $(AM_V_CXX)
     44__bench_v_GOC_verbose = $(AM_V_GOC)
     45__bench_v_JAVAC_verbose = $(AM_V_JAVAC)
    4846__bench_v_UPP_verbose = $(AM_V_UPP)
    49 __bench_v_GOC_verbose = $(AM_V_GOC)
    50 __bench_v_PY_verbose = $(AM_V_PY)
    51 __bench_v_RUSTC_verbose = $(AM_V_RUST)
    52 __bench_v_NODEJS_verbose = $(AM_V_NODEJS)
    53 __bench_v_JAVAC_verbose = $(AM_V_JAVAC)
    5447
    5548
     
    5851STATS    = ${abs_top_srcdir}/tools/stat.py
    5952# NEED AT LEAST 4 DATA VALUES FOR BENCHMARKS BECAUSE THE MAX AND MIN VALUES ARE REMOVED
    60 repeats  = 13 # 31 for benchmarks
     53repeats  = 5 # 31 for benchmarks
    6154arch     = x64
    6255skipcompile = no
     
    6962
    7063dummyC.c:
    71         echo "int main() { return 0; }" > ${@}
     64        @echo "int main() { return 0; }" > ${@}
    7265
    7366dummyCXX.cpp:
    74         echo "int main() { return 0; }" > ${@}
    75 
    76 .SILENT:                # do not print recipe
     67        @echo "int main() { return 0; }" > ${@}
     68
    7769.NOTPARALLEL:
    78 .PHONY: jenkins cleancsv
    79 
    80 ## =========================================================================================================
    81 
    82 all : basic$(EXEEXT) ctxswitch$(EXEEXT) mutex$(EXEEXT) schedint$(EXEEXT) schedext$(EXEEXT) creation$(EXEEXT)
    83 
    84 basic_loop_DURATION = 15000000000
    85 basic_function_DURATION = 10000000000
    86 basic_tls_fetch_add_DURATION = 10000000000
    87 basic_DURATION = 250000000
    88 
    89 ctxswitch_pthread_DURATION = 25000000
    90 ctxswitch_rust_thread_DURATION = $(ctxswitch_pthread_DURATION)
    91 ctxswitch_cfa_generator_DURATION = 5000000000
    92 ctxswitch_nodejs_await_DURATION = 5000000
    93 ctxswitch_DURATION = 100000000
    94 
    95 #mutex_java_DURATION = 10000000
    96 mutex_DURATION = 50000000
    97 
    98 schedint_pthread_DURATION = 1000000
    99 schedint_java_DURATION = $(schedint_pthread_DURATION)
    100 schedint_rust_DURATION = $(schedint_pthread_DURATION)
    101 schedint_DURATION = 10000000
    102 
    103 schedext_DURATION = 10000000
    104 
    105 creation_pthread_DURATION = 250000
    106 creation_rust_thread_DURATION = ${creation_pthread_DURATION}
    107 creation_java_thread_DURATION = ${creation_pthread_DURATION}
    108 creation_cfa_coroutine_DURATION = 100000000
    109 creation_cfa_coroutine_eager_DURATION = 10000000
    110 creation_cfa_generator_DURATION = 1000000000
    111 creation_upp_coroutine_DURATION = ${creation_cfa_coroutine_eager_DURATION}
    112 creation_cfa_thread_DURATION = 10000000
    113 creation_upp_thread_DURATION = ${creation_cfa_thread_DURATION}
    114 creation_DURATION = 10000000
     70.PHONY: compile.csv ctxswitch.csv mutex.csv signal.csv
     71
     72## =========================================================================================================
     73all : ctxswitch$(EXEEXT) mutex$(EXEEXT) signal$(EXEEXT) waitfor$(EXEEXT) creation$(EXEEXT)
    11574
    11675%.run : %$(EXEEXT) ${REPEAT}
    117         rm -f .result.log
    118         echo "------------------------------------------------------"
    119         echo $<
    120         ${REPEAT} ${repeats} -- ./a.out\
    121                 $(if ${$(subst -,_,$(basename $@))_DURATION},\
    122                         ${$(subst -,_,$(basename $@))_DURATION},\
    123                         ${$(firstword $(subst -, ,$(basename $@)))_DURATION}) | tee -a .result.log
    124         ${STATS} .result.log
    125         echo "------------------------------------------------------"
    126         rm -f a.out .result.log *.class
    127 
    128 #       ${REPEAT} ${repeats} -- /usr/bin/time -f "%Uu %Ss %Er %Mkb" ./a.out
     76        @rm -f .result.log
     77        @echo "------------------------------------------------------"
     78        @echo $<
     79        @${REPEAT} ${repeats} ./a.out | tee -a .result.log
     80        @${STATS} .result.log
     81        @echo "------------------------------------------------------"
     82        @rm -f a.out .result.log *.class
    12983
    13084%.runquiet :
    131         +make $(basename $@) CFLAGS="-w" __quiet=quiet
    132         taskset -c 1 ./a.out
    133         rm -f a.out
     85        @+make $(basename $@) CFLAGS="-w" __quiet=quiet
     86        @taskset -c 1 ./a.out
     87        @rm -f a.out
    13488
    13589%.make :
    136         printf "${PRINT_FORMAT}" $(basename $(subst compile-,,$@))
    137         +/usr/bin/time -f ${TIME_FORMAT} make $(basename $@) 2>&1
     90        @printf "${PRINT_FORMAT}" $(basename $(subst compile-,,$@))
     91        @+/usr/bin/time -f ${TIME_FORMAT} make $(basename $@) 2>&1
    13892
    13993${REPEAT} :
    140         +make -C ${abs_top_builddir}/tools repeat
     94        @+make -C ${abs_top_builddir}/tools repeat
    14195
    14296## =========================================================================================================
     
    14498FIX_NEW_LINES = cat $@ | tr "\n" "\t" | sed -r 's/\t,/,/' | tr "\t" "\n" > $@
    14599
    146 cleancsv:
    147         rm -f compile.csv basic.csv ctxswitch.csv mutex.csv scheduling.csv
    148 
    149 jenkins$(EXEEXT): cleancsv
     100jenkins$(EXEEXT):
    150101@DOifskipcompile@
    151         +make compile.csv
    152         -+make compile.diff.csv
     102        @+make compile.csv
     103        @-+make compile.diff.csv
    153104@DOendif@
    154         +make ctxswitch.csv
    155         -+make ctxswitch.diff.csv
    156         +make mutex.csv
    157         -+make mutex.diff.csv
    158         +make scheduling.csv
    159         -+make scheduling.diff.csv
     105        @+make ctxswitch.csv
     106        @-+make ctxswitch.diff.csv
     107        @+make mutex.csv
     108        @-+make mutex.diff.csv
     109        @+make signal.csv
     110        @-+make signal.diff.csv
    160111@DOifskipcompile@
    161112        cat compile.csv
     
    166117        cat mutex.csv
    167118        -cat mutex.diff.csv
    168         cat scheduling.csv
    169         -cat scheduling.diff.csv
     119        cat signal.csv
     120        -cat signal.diff.csv
    170121
    171122compile.csv:
    172         echo "building $@"
    173         echo "array,attributes,empty,expression,io,monitor,operators,typeof" > $@
    174         +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-array.make >> $@
    175         +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-attributes.make >> $@
    176         +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-empty.make >> $@
    177         +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-expression.make >> $@
    178         +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-io.make >> $@
    179         +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-monitor.make >> $@
    180         +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-operators.make >> $@
    181         +make TIME_FORMAT='%e' PRINT_FORMAT='' compile-typeof.make >> $@
    182         $(srcdir)/fixcsv.sh $@
     123        @echo "array,attributes,empty,expression,io,monitor,operators,typeof" > $@
     124        @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-array.make >> $@
     125        @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-attributes.make >> $@
     126        @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-empty.make >> $@
     127        @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-expression.make >> $@
     128        @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-io.make >> $@
     129        @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-monitor.make >> $@
     130        @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-operators.make >> $@
     131        @+make TIME_FORMAT='%e' PRINT_FORMAT='' compile-typeof.make >> $@
     132        @$(srcdir)/fixcsv.sh $@
    183133
    184134ctxswitch.csv:
    185         echo "building $@"
    186         echo "generator,coroutine,thread" > $@
    187         +make ctxswitch-cfa_generator.runquiet >> $@ && echo -n ',' >> $@
    188         +make ctxswitch-cfa_coroutine.runquiet >> $@ && echo -n ',' >> $@
    189         +make ctxswitch-cfa_thread.runquiet >> $@
    190         $(srcdir)/fixcsv.sh $@
     135        @echo "generator,coroutine,thread" > $@
     136        @+make ctxswitch-cfa_generator.runquiet >> $@ && echo -n ',' >> $@
     137        @+make ctxswitch-cfa_coroutine.runquiet >> $@ && echo -n ',' >> $@
     138        @+make ctxswitch-cfa_thread.runquiet >> $@
     139        @$(srcdir)/fixcsv.sh $@
    191140
    192141mutex.csv:
    193         echo "building $@"
    194         echo "1-monitor,2-monitor" > $@
    195         +make mutex-cfa1.runquiet >> $@ && echo -n ',' >> $@
    196         +make mutex-cfa2.runquiet >> $@
    197         $(srcdir)/fixcsv.sh $@
    198 
    199 scheduling.csv:
    200         echo "building $@"
    201         echo "schedint-1,schedint-2,schedext-1,schedext-2" > $@
    202         +make schedint-cfa1.runquiet >> $@ && echo -n ',' >> $@
    203         +make schedint-cfa2.runquiet >> $@ && echo -n ',' >> $@
    204         +make schedext-cfa1.runquiet >> $@ && echo -n ',' >> $@
    205         +make schedext-cfa2.runquiet >> $@
    206         $(srcdir)/fixcsv.sh $@
     142        @echo "1-monitor,2-monitor" > $@
     143        @+make mutex-cfa1.runquiet >> $@ && echo -n ',' >> $@
     144        @+make mutex-cfa2.runquiet >> $@
     145        @$(srcdir)/fixcsv.sh $@
     146
     147signal.csv:
     148        @echo "signal-1,signal-2,waitfor-1,waitfor-2" > $@
     149        @+make signal-cfa1.runquiet >> $@ && echo -n ',' >> $@
     150        @+make signal-cfa2.runquiet >> $@ && echo -n ',' >> $@
     151        @+make waitfor-cfa1.runquiet >> $@ && echo -n ',' >> $@
     152        @+make waitfor-cfa2.runquiet >> $@
     153        @$(srcdir)/fixcsv.sh $@
    207154
    208155%.diff.csv: %.csv
    209         test -e $(srcdir)/baselines/$(arch)/$< || (echo "Error : Missing baseline for ${<}" && false)
    210         $(srcdir)/baselines/calc.py $(srcdir)/baselines/$(arch)/$(<) $(<) > $@
    211 
    212 ## =========================================================================================================
    213 
    214 BASIC_DEPEND  =                                 \
    215         basic-loop.run                          \
    216         basic-function.run                      \
    217         basic-fetch_add.run                     \
    218         basic-ttst_lock.run                     \
    219         basic-tls-fetch_add.run
    220 
    221 basic-loop$(EXEEXT):
    222         $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/loop.c
    223 
    224 basic-function$(EXEEXT):
    225         $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/function.c
    226 
    227 basic-fetch_add$(EXEEXT):
    228         $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/fetch_add.c
    229 
    230 basic-ttst_lock$(EXEEXT):
    231         $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/ttst_lock.c
    232 
    233 basic-tls-fetch_add$(EXEEXT):
    234         $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/tls_fetch_add.c
    235 
    236 basic$(EXEEXT): $(BASIC_DEPEND)
    237 
    238 ## =========================================================================================================
    239 
    240 CTXSWITCH_DEPEND  =                     \
     156        @test -e $(srcdir)/baselines/$(arch)/$< || (echo "Error : Missing baseline for ${<}" && false)
     157        @$(srcdir)/baselines/calc.py $(srcdir)/baselines/$(arch)/$(<) $(<) > $@
     158
     159
     160## =========================================================================================================
     161loop$(EXEEXT):
     162        $(BENCH_V_CC)$(COMPILE) -DBENCH_N=5000000000 $(srcdir)/loop.c
     163
     164function$(EXEEXT):
     165        $(BENCH_V_CC)$(COMPILE) -DBENCH_N=5000000000 $(srcdir)/function.c
     166
     167fetch_add$(EXEEXT):
     168        $(BENCH_V_CC)$(COMPILE) -DBENCH_N=500000000  $(srcdir)/fetch_add.c
     169
     170ttst_lock$(EXEEXT):
     171        $(BENCH_V_CC)$(COMPILE) -DBENCH_N=500000000  $(srcdir)/ttst_lock.c
     172
     173tls-fetch_add$(EXEEXT):
     174        $(BENCH_V_CC)$(COMPILE) -DBENCH_N=500000000  $(srcdir)/tls-fetch_add.c
     175
     176## =========================================================================================================
     177CTXSWITCH_DEPEND  =                 \
     178        loop.run                                \
     179        function.run                    \
     180        fetch_add.run                   \
     181        ttst_lock.run                   \
     182        tls-fetch_add.run                       \
     183        ctxswitch-pthread.run           \
    241184        ctxswitch-cfa_generator.run     \
    242185        ctxswitch-cfa_coroutine.run     \
     
    245188        ctxswitch-upp_coroutine.run     \
    246189        ctxswitch-upp_thread.run        \
    247         ctxswitch-python_coroutine.run  \
    248         ctxswitch-nodejs_coroutine.run  \
    249         ctxswitch-nodejs_await.run      \
    250         ctxswitch-goroutine_thread.run  \
    251         ctxswitch-rust_thread.run       \
    252         ctxswitch-nodejs_coroutine.run  \
    253         ctxswitch-java_thread.run       \
    254         ctxswitch-pthread.run
     190        ctxswitch-goroutine.run         \
     191        ctxswitch-java_thread.run
     192
    255193
    256194if WITH_LIBFIBRE
    257 CTXSWITCH_DEPEND  +=                    \
    258         ctxswitch-kos_fibre.run         \
     195CTXSWITCH_DEPEND  +=           \
     196        ctxswitch-kos_fibre.run  \
    259197        ctxswitch-kos_fibre2.run
     198
    260199
    261200ctxswitch-kos_fibre$(EXEEXT):
     
    268207ctxswitch$(EXEEXT): $(CTXSWITCH_DEPEND)
    269208
     209ctxswitch-pthread$(EXEEXT):
     210        $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=50000000 $(srcdir)/ctxswitch/pthreads.c
     211
    270212ctxswitch-cfa_generator$(EXEEXT):
    271         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_gen.cfa
     213        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_gen.cfa
    272214
    273215ctxswitch-cfa_coroutine$(EXEEXT):
    274         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_cor.cfa
     216        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_cor.cfa
    275217
    276218ctxswitch-cfa_thread$(EXEEXT):
    277         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_thrd.cfa
     219        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd.cfa
    278220
    279221ctxswitch-cfa_thread2$(EXEEXT):
    280         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_thrd2.cfa
     222        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd2.cfa
    281223
    282224ctxswitch-upp_coroutine$(EXEEXT):
    283         $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/ctxswitch/upp_cor.cc
     225        $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_cor.cc
    284226
    285227ctxswitch-upp_thread$(EXEEXT):
    286         $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/ctxswitch/upp_thrd.cc
    287 
    288 ctxswitch-python_coroutine$(EXEEXT):
    289         $(BENCH_V_PY)echo "#!/bin/sh" > a.out
    290         echo "python3.7 $(srcdir)/ctxswitch/python_cor.py" >> a.out
    291         chmod a+x a.out
    292 
    293 ctxswitch-nodejs_coroutine$(EXEEXT):
    294         $(BENCH_V_NODEJS)echo "#!/bin/sh" > a.out
    295         echo "nodejs $(srcdir)/ctxswitch/node_cor.js" >> a.out
    296         chmod a+x a.out
    297 
    298 ctxswitch-nodejs_await$(EXEEXT):
    299         $(BENCH_V_NODEJS)echo "#!/bin/sh" > a.out
    300         echo "nodejs $(srcdir)/ctxswitch/node_await.js" >> a.out
    301         chmod a+x a.out
    302 
    303 ctxswitch-goroutine_thread$(EXEEXT):
     228        $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_thrd.cc
     229
     230ctxswitch-goroutine$(EXEEXT):
    304231        $(BENCH_V_GOC)go build -o a.out $(srcdir)/ctxswitch/goroutine.go
    305 
    306 ctxswitch-rust_thread$(EXEEXT):
    307         $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/ctxswitch/rust_thrd.rs
    308232
    309233ctxswitch-java_thread$(EXEEXT):
    310234        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/ctxswitch/JavaThread.java
    311         echo "#!/bin/sh" > a.out
    312         echo "java JavaThread" >> a.out
    313         chmod a+x a.out
    314 
    315 ctxswitch-pthread$(EXEEXT):
    316         $(BENCH_V_CC)$(COMPILE) $(srcdir)/ctxswitch/pthreads.c
    317 
    318 ## =========================================================================================================
    319 
    320 mutex$(EXEEXT) :                \
     235        @echo "#!/bin/sh" > a.out
     236        @echo "java JavaThread" >> a.out
     237        @chmod a+x a.out
     238
     239## =========================================================================================================
     240mutex$(EXEEXT) :\
     241        loop.run                        \
     242        function.run            \
     243        fetch_add.run           \
     244        mutex-pthread_lock.run  \
     245        mutex-upp.run           \
    321246        mutex-cfa1.run          \
    322247        mutex-cfa2.run          \
    323248        mutex-cfa4.run          \
    324         mutex-upp.run           \
    325         mutex-go.run            \
    326         mutex-rust.run          \
    327         mutex-java.run          \
    328         mutex-pthread.run
    329 
    330 mutex-pthread$(EXEEXT):
    331         $(BENCH_V_CC)$(COMPILE) $(srcdir)/mutex/pthreads.c
     249        mutex-java_thread.run
     250
     251mutex-pthread_lock$(EXEEXT):
     252        $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=50000000 $(srcdir)/mutex/pthreads.c
     253
     254mutex-upp$(EXEEXT):
     255        $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/mutex/upp.cc
    332256
    333257mutex-cfa1$(EXEEXT):
    334         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutex/cfa1.cfa
     258        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000  $(srcdir)/mutex/cfa1.cfa
    335259
    336260mutex-cfa2$(EXEEXT):
    337         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutex/cfa2.cfa
     261        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000  $(srcdir)/mutex/cfa2.cfa
    338262
    339263mutex-cfa4$(EXEEXT):
    340         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutex/cfa4.cfa
    341 
    342 mutex-upp$(EXEEXT):
    343         $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/mutex/upp.cc
    344 
    345 mutex-go$(EXEEXT):
    346         $(BENCH_V_GOC)go build -o a.out $(srcdir)/mutex/goroutine.go
    347 
    348 mutex-rust$(EXEEXT):
    349         $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/mutex/rust.rs
    350 
    351 mutex-java$(EXEEXT):
     264        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000  $(srcdir)/mutex/cfa4.cfa
     265
     266mutex-java_thread$(EXEEXT):
    352267        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/mutex/JavaThread.java
    353         echo "#!/bin/sh" > a.out
    354         echo "java JavaThread" >> a.out
    355         chmod a+x a.out
    356 
    357 ## =========================================================================================================
    358 
    359 schedint$(EXEEXT) :             \
    360         schedint-cfa1.run       \
    361         schedint-cfa2.run       \
    362         schedint-cfa4.run       \
    363         schedint-upp.run        \
    364         schedint-rust.run       \
    365         schedint-java.run       \
    366         schedint-pthread.run
    367 
    368 schedint-cfa1$(EXEEXT):
    369         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedint/cfa1.cfa
    370 
    371 schedint-cfa2$(EXEEXT):
    372         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedint/cfa2.cfa
    373 
    374 schedint-cfa4$(EXEEXT):
    375         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedint/cfa4.cfa
    376 
    377 schedint-upp$(EXEEXT):
    378         $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/schedint/upp.cc
    379 
    380 schedint-rust$(EXEEXT):
    381         $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/schedint/rust.rs
    382 
    383 schedint-java$(EXEEXT):
     268        @echo "#!/bin/sh" > a.out
     269        @echo "java JavaThread" >> a.out
     270        @chmod a+x a.out
     271
     272## =========================================================================================================
     273signal$(EXEEXT) :\
     274        signal-pthread_cond.run \
     275        signal-upp.run          \
     276        signal-cfa1.run         \
     277        signal-cfa2.run         \
     278        signal-cfa4.run         \
     279        signal-java_thread.run
     280
     281signal-pthread_cond$(EXEEXT):
     282        $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=500000  $(srcdir)/schedint/pthreads.c
     283
     284signal-upp$(EXEEXT):
     285        $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedint/upp.cc
     286
     287signal-cfa1$(EXEEXT):
     288        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedint/cfa1.cfa
     289
     290signal-cfa2$(EXEEXT):
     291        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedint/cfa2.cfa
     292
     293signal-cfa4$(EXEEXT):
     294        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedint/cfa4.cfa
     295
     296signal-java_thread$(EXEEXT):
    384297        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/schedint/JavaThread.java
    385         echo "#!/bin/sh" > a.out
    386         echo "java JavaThread" >> a.out
    387         chmod a+x a.out
    388 
    389 schedint-pthread$(EXEEXT):
    390         $(BENCH_V_CC)$(COMPILE) $(srcdir)/schedint/pthreads.c
    391 
    392 ## =========================================================================================================
    393 
    394 schedext$(EXEEXT) :             \
    395         schedext-cfa1.run       \
    396         schedext-cfa2.run       \
    397         schedext-cfa4.run       \
    398         schedext-upp.run        \
    399         schedext-goroutine.run
    400 
    401 schedext-cfa1$(EXEEXT):
    402         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedext/cfa1.cfa
    403 
    404 schedext-cfa2$(EXEEXT):
    405         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedext/cfa2.cfa
    406 
    407 schedext-cfa4$(EXEEXT):
    408         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedext/cfa4.cfa
    409 
    410 schedext-upp$(EXEEXT):
    411         $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/schedext/upp.cc
    412 
    413 schedext-goroutine$(EXEEXT):
    414         $(BENCH_V_GOC)go build -o a.out $(srcdir)/schedext/goroutine.go
    415 
    416 
    417 ## =========================================================================================================
    418 
    419 creation$(EXEEXT) :                             \
    420         creation-cfa_generator.run              \
     298        @echo "#!/bin/sh" > a.out
     299        @echo "java JavaThread" >> a.out
     300        @chmod a+x a.out
     301
     302
     303## =========================================================================================================
     304waitfor$(EXEEXT) :\
     305        waitfor-upp.run         \
     306        waitfor-cfa1.run                \
     307        waitfor-cfa2.run                \
     308        waitfor-cfa4.run
     309
     310waitfor-upp$(EXEEXT):
     311        $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedext/upp.cc
     312
     313waitfor-cfa1$(EXEEXT):
     314        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedext/cfa1.cfa
     315
     316waitfor-cfa2$(EXEEXT):
     317        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedext/cfa2.cfa
     318
     319waitfor-cfa4$(EXEEXT):
     320        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedext/cfa4.cfa
     321
     322## =========================================================================================================
     323creation$(EXEEXT) :\
     324        creation-pthread.run                    \
    421325        creation-cfa_coroutine.run              \
    422326        creation-cfa_coroutine_eager.run        \
     
    424328        creation-upp_coroutine.run              \
    425329        creation-upp_thread.run                 \
    426         creation-python_coroutine.run           \
    427         creation-nodejs_coroutine.run           \
    428         creation-goroutine_thread.run           \
    429         creation-rust_thread.run                \
    430         creation-java_thread.run                \
    431         creation-pthread.run
    432 
    433 creation-cfa_generator$(EXEEXT):
    434         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_gen.cfa
     330        creation-goroutine.run                  \
     331        creation-java_thread.run
    435332
    436333creation-cfa_coroutine$(EXEEXT):
    437         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_cor.cfa
     334        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.cfa
    438335
    439336creation-cfa_coroutine_eager$(EXEEXT):
    440         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_cor.cfa  -DEAGER
     337        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.cfa  -DEAGER
    441338
    442339creation-cfa_thread$(EXEEXT):
    443         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_thrd.cfa
     340        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_thrd.cfa
    444341
    445342creation-upp_coroutine$(EXEEXT):
    446         $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/creation/upp_cor.cc
     343        $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_cor.cc
    447344
    448345creation-upp_thread$(EXEEXT):
    449         $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/creation/upp_thrd.cc
    450 
    451 creation-python_coroutine$(EXEEXT):
    452         $(BENCH_V_PY)echo "#!/bin/sh" > a.out
    453         echo "python3.7 $(srcdir)/creation/python_cor.py" >> a.out
    454         chmod a+x a.out
    455 
    456 creation-nodejs_coroutine$(EXEEXT):
    457         $(BENCH_V_NODEJS)echo "#!/bin/sh" > a.out
    458         echo "nodejs $(srcdir)/creation/node_cor.js" >> a.out
    459         chmod a+x a.out
    460 
    461 creation-goroutine_thread$(EXEEXT):
     346        $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_thrd.cc
     347
     348creation-pthread$(EXEEXT):
     349        $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=250000   $(srcdir)/creation/pthreads.c
     350
     351creation-goroutine$(EXEEXT):
    462352        $(BENCH_V_GOC)go build -o a.out $(srcdir)/creation/goroutine.go
    463 
    464 creation-rust_thread$(EXEEXT):
    465         $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/creation/rust_thrd.rs
    466353
    467354creation-java_thread$(EXEEXT):
    468355        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/creation/JavaThread.java
    469         echo "#!/bin/sh" > a.out
    470         echo "java JavaThread" >> a.out
    471         chmod a+x a.out
    472 
    473 creation-pthread$(EXEEXT):
    474         $(BENCH_V_CC)$(COMPILE) $(srcdir)/creation/pthreads.c
    475 
    476 ## =========================================================================================================
    477 
    478 compile$(EXEEXT) :              \
     356        @echo "#!/bin/sh" > a.out
     357        @echo "java JavaThread" >> a.out
     358        @chmod a+x a.out
     359
     360## =========================================================================================================
     361
     362compile$(EXEEXT) :\
    479363        compile-array.make      \
    480364        compile-attributes.make \
     
    486370        compile-typeof.make
    487371
     372
    488373testdir = $(top_srcdir)/tests
    489374
    490375compile-array$(EXEEXT):
    491         $(CFACOMPILE) -fsyntax-only -w $(testdir)/array.cfa
     376        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/array.cfa
    492377
    493378compile-attributes$(EXEEXT):
    494         $(CFACOMPILE) -fsyntax-only -w $(testdir)/attributes.cfa
     379        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/attributes.cfa
    495380
    496381compile-empty$(EXEEXT):
    497         $(CFACOMPILE) -fsyntax-only -w $(srcdir)/compile/empty.cfa
     382        @$(CFACOMPILE) -fsyntax-only -w $(srcdir)/compile/empty.cfa
    498383
    499384compile-expression$(EXEEXT):
    500         $(CFACOMPILE) -fsyntax-only -w $(testdir)/expression.cfa
     385        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/expression.cfa
    501386
    502387compile-io$(EXEEXT):
    503         $(CFACOMPILE) -fsyntax-only -w $(testdir)/io1.cfa
     388        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/io1.cfa
    504389
    505390compile-monitor$(EXEEXT):
    506         $(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/monitor.cfa
     391        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/monitor.cfa
    507392
    508393compile-operators$(EXEEXT):
    509         $(CFACOMPILE) -fsyntax-only -w $(testdir)/operators.cfa
     394        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/operators.cfa
    510395
    511396compile-thread$(EXEEXT):
    512         $(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/thread.cfa
     397        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/thread.cfa
    513398
    514399compile-typeof$(EXEEXT):
    515         $(CFACOMPILE) -fsyntax-only -w $(testdir)/typeof.cfa
    516 
    517 ## =========================================================================================================
    518 
    519 size$(EXEEXT) : size-cfa.runquiet
    520 
    521 size-cfa$(EXEEXT):
    522         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/size/size.cfa
     400        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/typeof.cfa
Note: See TracChangeset for help on using the changeset viewer.