Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • benchmark/Makefile.am

    rdd9e1ca rc6f1f3e  
    1111## Created On       : Sun May 31 09:08:15 2015
    1212## Last Modified By : Peter A. Buhr
    13 ## Last Modified On : Sat Jan 25 09:20:44 2020
    14 ## Update Count     : 255
     13## Last Modified On : Mon Jun 24 16:45:42 2019
     14## Update Count     : 53
    1515###############################################################################
    1616
     
    2222
    2323AM_CFLAGS = -O2 -Wall -Wextra -I$(srcdir) -lrt -pthread # -Werror
    24 AM_CFAFLAGS = -quiet -nodebug
     24AM_CFAFLAGS = -quiet -nodebug -in-tree
    2525AM_UPPFLAGS = -quiet -nodebug -multi -std=c++14
    2626
     
    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
     
    5750REPEAT   = ${abs_top_builddir}/tools/repeat
    5851STATS    = ${abs_top_srcdir}/tools/stat.py
    59 # NEED AT LEAST 4 DATA VALUES FOR BENCHMARKS BECAUSE THE MAX AND MIN VALUES ARE REMOVED
    60 repeats  = 13 # 31 for benchmarks
     52repeats  = 3 # 30
    6153arch     = x64
    6254skipcompile = no
     
    6961
    7062dummyC.c:
    71         echo "int main() { return 0; }" > ${@}
     63        @echo "int main() { return 0; }" > ${@}
    7264
    7365dummyCXX.cpp:
    74         echo "int main() { return 0; }" > ${@}
    75 
    76 .SILENT:                # do not print recipe
     66        @echo "int main() { return 0; }" > ${@}
     67
    7768.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_upp_coroutine_DURATION = ${creation_cfa_coroutine_eager_DURATION}
    111 creation_cfa_thread_DURATION = 10000000
    112 creation_upp_thread_DURATION = ${creation_cfa_thread_DURATION}
    113 creation_DURATION = 10000000
     69.PHONY: compile.csv ctxswitch.csv mutex.csv signal.csv
     70
     71## =========================================================================================================
     72all : ctxswitch$(EXEEXT) mutex$(EXEEXT) signal$(EXEEXT) waitfor$(EXEEXT) creation$(EXEEXT)
    11473
    11574%.run : %$(EXEEXT) ${REPEAT}
    116         rm -f .result.log
    117         echo "------------------------------------------------------"
    118         echo $<
    119         ${REPEAT} ${repeats} -- ./a.out\
    120                 $(if ${$(subst -,_,$(basename $@))_DURATION},\
    121                         ${$(subst -,_,$(basename $@))_DURATION},\
    122                         ${$(firstword $(subst -, ,$(basename $@)))_DURATION}) | tee -a .result.log
    123         ${STATS} .result.log
    124         echo "------------------------------------------------------"
    125         rm -f a.out .result.log *.class
    126 
    127 #       ${REPEAT} ${repeats} -- /usr/bin/time -f "%Uu %Ss %Er %Mkb" ./a.out
     75        @rm -f .result.log
     76        @echo "------------------------------------------------------"
     77        @echo $<
     78        @${REPEAT} ${repeats} ./a.out | tee -a .result.log
     79        @${STATS} .result.log
     80        @echo "------------------------------------------------------"
     81        @rm -f a.out .result.log *.class
    12882
    12983%.runquiet :
    130         +make $(basename $@) CFLAGS="-w" __quiet=quiet
    131         taskset -c 1 ./a.out
    132         rm -f a.out
     84        @+make $(basename $@) CFLAGS="-w" __quiet=quiet
     85        @taskset -c 1 ./a.out
     86        @rm -f a.out
    13387
    13488%.make :
    135         printf "${PRINT_FORMAT}" $(basename $(subst compile-,,$@))
    136         +/usr/bin/time -f ${TIME_FORMAT} make $(basename $@) 2>&1
     89        @printf "${PRINT_FORMAT}" $(basename $(subst compile-,,$@))
     90        @+/usr/bin/time -f ${TIME_FORMAT} make $(basename $@) 2>&1
    13791
    13892${REPEAT} :
    139         +make -C ${abs_top_builddir}/tools repeat
     93        @+make -C ${abs_top_builddir}/tools repeat
    14094
    14195## =========================================================================================================
     
    14397FIX_NEW_LINES = cat $@ | tr "\n" "\t" | sed -r 's/\t,/,/' | tr "\t" "\n" > $@
    14498
    145 cleancsv:
    146         rm -f compile.csv basic.csv ctxswitch.csv mutex.csv scheduling.csv
    147 
    148 jenkins$(EXEEXT): cleancsv
     99jenkins$(EXEEXT):
    149100@DOifskipcompile@
    150         +make compile.csv
    151         -+make compile.diff.csv
     101        @+make compile.csv
     102        @-+make compile.diff.csv
    152103@DOendif@
    153         +make ctxswitch.csv
    154         -+make ctxswitch.diff.csv
    155         +make mutex.csv
    156         -+make mutex.diff.csv
    157         +make scheduling.csv
    158         -+make scheduling.diff.csv
     104        @+make ctxswitch.csv
     105        @-+make ctxswitch.diff.csv
     106        @+make mutex.csv
     107        @-+make mutex.diff.csv
     108        @+make signal.csv
     109        @-+make signal.diff.csv
    159110@DOifskipcompile@
    160111        cat compile.csv
     
    165116        cat mutex.csv
    166117        -cat mutex.diff.csv
    167         cat scheduling.csv
    168         -cat scheduling.diff.csv
     118        cat signal.csv
     119        -cat signal.diff.csv
    169120
    170121compile.csv:
    171         echo "building $@"
    172         echo "array,attributes,empty,expression,io,monitor,operators,typeof" > $@
    173         +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-array.make >> $@
    174         +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-attributes.make >> $@
    175         +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-empty.make >> $@
    176         +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-expression.make >> $@
    177         +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-io.make >> $@
    178         +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-monitor.make >> $@
    179         +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-operators.make >> $@
    180         +make TIME_FORMAT='%e' PRINT_FORMAT='' compile-typeof.make >> $@
    181         $(srcdir)/fixcsv.sh $@
     122        @echo "array,attributes,empty,expression,io,monitor,operators,typeof" > $@
     123        @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-array.make >> $@
     124        @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-attributes.make >> $@
     125        @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-empty.make >> $@
     126        @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-expression.make >> $@
     127        @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-io.make >> $@
     128        @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-monitor.make >> $@
     129        @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-operators.make >> $@
     130        @+make TIME_FORMAT='%e' PRINT_FORMAT='' compile-typeof.make >> $@
     131        @$(srcdir)/fixcsv.sh $@
    182132
    183133ctxswitch.csv:
    184         echo "building $@"
    185         echo "generator,coroutine,thread" > $@
    186         +make ctxswitch-cfa_generator.runquiet >> $@ && echo -n ',' >> $@
    187         +make ctxswitch-cfa_coroutine.runquiet >> $@ && echo -n ',' >> $@
    188         +make ctxswitch-cfa_thread.runquiet >> $@
    189         $(srcdir)/fixcsv.sh $@
     134        @echo "generator,coroutine,thread" > $@
     135        @+make ctxswitch-cfa_generator.runquiet >> $@ && echo -n ',' >> $@
     136        @+make ctxswitch-cfa_coroutine.runquiet >> $@ && echo -n ',' >> $@
     137        @+make ctxswitch-cfa_thread.runquiet >> $@
     138        @$(srcdir)/fixcsv.sh $@
    190139
    191140mutex.csv:
    192         echo "building $@"
    193         echo "1-monitor,2-monitor" > $@
    194         +make mutex-cfa1.runquiet >> $@ && echo -n ',' >> $@
    195         +make mutex-cfa2.runquiet >> $@
    196         $(srcdir)/fixcsv.sh $@
    197 
    198 scheduling.csv:
    199         echo "building $@"
    200         echo "schedint-1,schedint-2,schedext-1,schedext-2" > $@
    201         +make schedint-cfa1.runquiet >> $@ && echo -n ',' >> $@
    202         +make schedint-cfa2.runquiet >> $@ && echo -n ',' >> $@
    203         +make schedext-cfa1.runquiet >> $@ && echo -n ',' >> $@
    204         +make schedext-cfa2.runquiet >> $@
    205         $(srcdir)/fixcsv.sh $@
     141        @echo "1-monitor,2-monitor" > $@
     142        @+make mutex-cfa1.runquiet >> $@ && echo -n ',' >> $@
     143        @+make mutex-cfa2.runquiet >> $@
     144        @$(srcdir)/fixcsv.sh $@
     145
     146signal.csv:
     147        @echo "signal-1,signal-2,waitfor-1,waitfor-2" > $@
     148        @+make signal-cfa1.runquiet >> $@ && echo -n ',' >> $@
     149        @+make signal-cfa2.runquiet >> $@ && echo -n ',' >> $@
     150        @+make waitfor-cfa1.runquiet >> $@ && echo -n ',' >> $@
     151        @+make waitfor-cfa2.runquiet >> $@
     152        @$(srcdir)/fixcsv.sh $@
    206153
    207154%.diff.csv: %.csv
    208         test -e $(srcdir)/baselines/$(arch)/$< || (echo "Error : Missing baseline for ${<}" && false)
    209         $(srcdir)/baselines/calc.py $(srcdir)/baselines/$(arch)/$(<) $(<) > $@
    210 
    211 ## =========================================================================================================
    212 
    213 BASIC_DEPEND  =                                 \
    214         basic-loop.run                          \
    215         basic-function.run                      \
    216         basic-fetch_add.run                     \
    217         basic-ttst_lock.run                     \
    218         basic-tls-fetch_add.run
    219 
    220 basic-loop$(EXEEXT):
    221         $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/loop.c
    222 
    223 basic-function$(EXEEXT):
    224         $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/function.c
    225 
    226 basic-fetch_add$(EXEEXT):
    227         $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/fetch_add.c
    228 
    229 basic-ttst_lock$(EXEEXT):
    230         $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/ttst_lock.c
    231 
    232 basic-tls-fetch_add$(EXEEXT):
    233         $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/tls_fetch_add.c
    234 
    235 basic$(EXEEXT): $(BASIC_DEPEND)
    236 
    237 ## =========================================================================================================
    238 
    239 CTXSWITCH_DEPEND  =                     \
     155        @test -e $(srcdir)/baselines/$(arch)/$< || (echo "Error : Missing baseline for ${<}" && false)
     156        @$(srcdir)/baselines/calc.py $(srcdir)/baselines/$(arch)/$(<) $(<) > $@
     157
     158
     159## =========================================================================================================
     160loop$(EXEEXT):
     161        $(BENCH_V_CC)$(COMPILE) -DBENCH_N=5000000000 $(srcdir)/loop.c
     162
     163function$(EXEEXT):
     164        $(BENCH_V_CC)$(COMPILE) -DBENCH_N=5000000000 $(srcdir)/function.c
     165
     166fetch_add$(EXEEXT):
     167        $(BENCH_V_CC)$(COMPILE) -DBENCH_N=500000000  $(srcdir)/fetch_add.c
     168
     169ttst_lock$(EXEEXT):
     170        $(BENCH_V_CC)$(COMPILE) -DBENCH_N=500000000  $(srcdir)/ttst_lock.c
     171
     172tls-fetch_add$(EXEEXT):
     173        $(BENCH_V_CC)$(COMPILE) -DBENCH_N=500000000  $(srcdir)/tls-fetch_add.c
     174
     175## =========================================================================================================
     176CTXSWITCH_DEPEND  =                 \
     177        loop.run                                \
     178        function.run                    \
     179        fetch_add.run                   \
     180        ttst_lock.run                   \
     181        tls-fetch_add.run                       \
     182        ctxswitch-pthread.run           \
    240183        ctxswitch-cfa_generator.run     \
    241184        ctxswitch-cfa_coroutine.run     \
     
    244187        ctxswitch-upp_coroutine.run     \
    245188        ctxswitch-upp_thread.run        \
    246         ctxswitch-python_coroutine.run  \
    247         ctxswitch-nodejs_coroutine.run  \
    248         ctxswitch-nodejs_await.run      \
    249         ctxswitch-goroutine_thread.run  \
    250         ctxswitch-rust_thread.run       \
    251         ctxswitch-nodejs_coroutine.run  \
    252         ctxswitch-java_thread.run       \
    253         ctxswitch-pthread.run
     189        ctxswitch-goroutine.run         \
     190        ctxswitch-java_thread.run
     191
    254192
    255193if WITH_LIBFIBRE
    256 CTXSWITCH_DEPEND  +=                    \
    257         ctxswitch-kos_fibre.run         \
     194CTXSWITCH_DEPEND  +=           \
     195        ctxswitch-kos_fibre.run  \
    258196        ctxswitch-kos_fibre2.run
     197
    259198
    260199ctxswitch-kos_fibre$(EXEEXT):
     
    267206ctxswitch$(EXEEXT): $(CTXSWITCH_DEPEND)
    268207
     208ctxswitch-pthread$(EXEEXT):
     209        $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=50000000 $(srcdir)/ctxswitch/pthreads.c
     210
    269211ctxswitch-cfa_generator$(EXEEXT):
    270         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_gen.cfa
     212        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_gen.cfa
    271213
    272214ctxswitch-cfa_coroutine$(EXEEXT):
    273         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_cor.cfa
     215        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_cor.cfa
    274216
    275217ctxswitch-cfa_thread$(EXEEXT):
    276         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_thrd.cfa
     218        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd.cfa
    277219
    278220ctxswitch-cfa_thread2$(EXEEXT):
    279         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_thrd2.cfa
     221        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd2.cfa
    280222
    281223ctxswitch-upp_coroutine$(EXEEXT):
    282         $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/ctxswitch/upp_cor.cc
     224        $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_cor.cc
    283225
    284226ctxswitch-upp_thread$(EXEEXT):
    285         $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/ctxswitch/upp_thrd.cc
    286 
    287 ctxswitch-python_coroutine$(EXEEXT):
    288         $(BENCH_V_PY)echo "#!/bin/sh" > a.out
    289         echo "python3.7 $(srcdir)/ctxswitch/python_cor.py" >> a.out
    290         chmod a+x a.out
    291 
    292 ctxswitch-nodejs_coroutine$(EXEEXT):
    293         $(BENCH_V_NODEJS)echo "#!/bin/sh" > a.out
    294         echo "nodejs $(srcdir)/ctxswitch/node_cor.js" >> a.out
    295         chmod a+x a.out
    296 
    297 ctxswitch-nodejs_await$(EXEEXT):
    298         $(BENCH_V_NODEJS)echo "#!/bin/sh" > a.out
    299         echo "nodejs $(srcdir)/ctxswitch/node_await.js" >> a.out
    300         chmod a+x a.out
    301 
    302 ctxswitch-goroutine_thread$(EXEEXT):
     227        $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_thrd.cc
     228
     229ctxswitch-goroutine$(EXEEXT):
    303230        $(BENCH_V_GOC)go build -o a.out $(srcdir)/ctxswitch/goroutine.go
    304 
    305 ctxswitch-rust_thread$(EXEEXT):
    306         $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/ctxswitch/rust_thrd.rs
    307231
    308232ctxswitch-java_thread$(EXEEXT):
    309233        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/ctxswitch/JavaThread.java
    310         echo "#!/bin/sh" > a.out
    311         echo "java JavaThread" >> a.out
    312         chmod a+x a.out
    313 
    314 ctxswitch-pthread$(EXEEXT):
    315         $(BENCH_V_CC)$(COMPILE) $(srcdir)/ctxswitch/pthreads.c
    316 
    317 ## =========================================================================================================
    318 
    319 mutex$(EXEEXT) :                \
     234        @echo "#!/bin/sh" > a.out
     235        @echo "java JavaThread" >> a.out
     236        @chmod a+x a.out
     237
     238## =========================================================================================================
     239mutex$(EXEEXT) :\
     240        loop.run                        \
     241        function.run            \
     242        fetch_add.run           \
     243        mutex-pthread_lock.run  \
     244        mutex-upp.run           \
    320245        mutex-cfa1.run          \
    321246        mutex-cfa2.run          \
    322247        mutex-cfa4.run          \
    323         mutex-upp.run           \
    324         mutex-go.run            \
    325         mutex-rust.run          \
    326         mutex-java.run          \
    327         mutex-pthread.run
    328 
    329 mutex-pthread$(EXEEXT):
    330         $(BENCH_V_CC)$(COMPILE) $(srcdir)/mutex/pthreads.c
     248        mutex-java_thread.run
     249
     250mutex-pthread_lock$(EXEEXT):
     251        $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=50000000 $(srcdir)/mutex/pthreads.c
     252
     253mutex-upp$(EXEEXT):
     254        $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/mutex/upp.cc
    331255
    332256mutex-cfa1$(EXEEXT):
    333         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutex/cfa1.cfa
     257        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000  $(srcdir)/mutex/cfa1.cfa
    334258
    335259mutex-cfa2$(EXEEXT):
    336         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutex/cfa2.cfa
     260        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000  $(srcdir)/mutex/cfa2.cfa
    337261
    338262mutex-cfa4$(EXEEXT):
    339         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutex/cfa4.cfa
    340 
    341 mutex-upp$(EXEEXT):
    342         $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/mutex/upp.cc
    343 
    344 mutex-go$(EXEEXT):
    345         $(BENCH_V_GOC)go build -o a.out $(srcdir)/mutex/goroutine.go
    346 
    347 mutex-rust$(EXEEXT):
    348         $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/mutex/rust.rs
    349 
    350 mutex-java$(EXEEXT):
     263        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000  $(srcdir)/mutex/cfa4.cfa
     264
     265mutex-java_thread$(EXEEXT):
    351266        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/mutex/JavaThread.java
    352         echo "#!/bin/sh" > a.out
    353         echo "java JavaThread" >> a.out
    354         chmod a+x a.out
    355 
    356 ## =========================================================================================================
    357 
    358 schedint$(EXEEXT) :             \
    359         schedint-cfa1.run       \
    360         schedint-cfa2.run       \
    361         schedint-cfa4.run       \
    362         schedint-upp.run        \
    363         schedint-rust.run       \
    364         schedint-java.run       \
    365         schedint-pthread.run
    366 
    367 schedint-cfa1$(EXEEXT):
    368         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedint/cfa1.cfa
    369 
    370 schedint-cfa2$(EXEEXT):
    371         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedint/cfa2.cfa
    372 
    373 schedint-cfa4$(EXEEXT):
    374         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedint/cfa4.cfa
    375 
    376 schedint-upp$(EXEEXT):
    377         $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/schedint/upp.cc
    378 
    379 schedint-rust$(EXEEXT):
    380         $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/schedint/rust.rs
    381 
    382 schedint-java$(EXEEXT):
     267        @echo "#!/bin/sh" > a.out
     268        @echo "java JavaThread" >> a.out
     269        @chmod a+x a.out
     270
     271## =========================================================================================================
     272signal$(EXEEXT) :\
     273        signal-pthread_cond.run \
     274        signal-upp.run          \
     275        signal-cfa1.run         \
     276        signal-cfa2.run         \
     277        signal-cfa4.run         \
     278        signal-java_thread.run
     279
     280signal-pthread_cond$(EXEEXT):
     281        $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=500000  $(srcdir)/schedint/pthreads.c
     282
     283signal-upp$(EXEEXT):
     284        $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedint/upp.cc
     285
     286signal-cfa1$(EXEEXT):
     287        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedint/cfa1.cfa
     288
     289signal-cfa2$(EXEEXT):
     290        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedint/cfa2.cfa
     291
     292signal-cfa4$(EXEEXT):
     293        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedint/cfa4.cfa
     294
     295signal-java_thread$(EXEEXT):
    383296        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/schedint/JavaThread.java
    384         echo "#!/bin/sh" > a.out
    385         echo "java JavaThread" >> a.out
    386         chmod a+x a.out
    387 
    388 schedint-pthread$(EXEEXT):
    389         $(BENCH_V_CC)$(COMPILE) $(srcdir)/schedint/pthreads.c
    390 
    391 ## =========================================================================================================
    392 
    393 schedext$(EXEEXT) :             \
    394         schedext-cfa1.run       \
    395         schedext-cfa2.run       \
    396         schedext-cfa4.run       \
    397         schedext-upp.run        \
    398         schedext-goroutine.run
    399 
    400 schedext-cfa1$(EXEEXT):
    401         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedext/cfa1.cfa
    402 
    403 schedext-cfa2$(EXEEXT):
    404         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedext/cfa2.cfa
    405 
    406 schedext-cfa4$(EXEEXT):
    407         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedext/cfa4.cfa
    408 
    409 schedext-upp$(EXEEXT):
    410         $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/schedext/upp.cc
    411 
    412 schedext-goroutine$(EXEEXT):
    413         $(BENCH_V_GOC)go build -o a.out $(srcdir)/schedext/goroutine.go
    414 
    415 
    416 ## =========================================================================================================
    417 
    418 creation$(EXEEXT) :                             \
    419         creation-cfa_generator.run              \
     297        @echo "#!/bin/sh" > a.out
     298        @echo "java JavaThread" >> a.out
     299        @chmod a+x a.out
     300
     301
     302## =========================================================================================================
     303waitfor$(EXEEXT) :\
     304        waitfor-upp.run         \
     305        waitfor-cfa1.run                \
     306        waitfor-cfa2.run                \
     307        waitfor-cfa4.run
     308
     309waitfor-upp$(EXEEXT):
     310        $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedext/upp.cc
     311
     312waitfor-cfa1$(EXEEXT):
     313        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedext/cfa1.cfa
     314
     315waitfor-cfa2$(EXEEXT):
     316        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedext/cfa2.cfa
     317
     318waitfor-cfa4$(EXEEXT):
     319        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedext/cfa4.cfa
     320
     321## =========================================================================================================
     322creation$(EXEEXT) :\
     323        creation-pthread.run                    \
    420324        creation-cfa_coroutine.run              \
    421325        creation-cfa_coroutine_eager.run        \
     
    423327        creation-upp_coroutine.run              \
    424328        creation-upp_thread.run                 \
    425         creation-python_coroutine.run           \
    426         creation-nodejs_coroutine.run           \
    427         creation-goroutine_thread.run           \
    428         creation-rust_thread.run                \
    429         creation-java_thread.run                \
    430         creation-pthread.run
    431 
    432 creation-cfa_generator$(EXEEXT):
    433         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_gen.cfa
     329        creation-goroutine.run                  \
     330        creation-java_thread.run
    434331
    435332creation-cfa_coroutine$(EXEEXT):
    436         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_cor.cfa
     333        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.cfa
    437334
    438335creation-cfa_coroutine_eager$(EXEEXT):
    439         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_cor.cfa  -DEAGER
     336        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.cfa  -DEAGER
    440337
    441338creation-cfa_thread$(EXEEXT):
    442         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_thrd.cfa
     339        $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_thrd.cfa
    443340
    444341creation-upp_coroutine$(EXEEXT):
    445         $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/creation/upp_cor.cc
     342        $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_cor.cc
    446343
    447344creation-upp_thread$(EXEEXT):
    448         $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/creation/upp_thrd.cc
    449 
    450 creation-python_coroutine$(EXEEXT):
    451         $(BENCH_V_PY)echo "#!/bin/sh" > a.out
    452         echo "python3.7 $(srcdir)/creation/python_cor.py" >> a.out
    453         chmod a+x a.out
    454 
    455 creation-nodejs_coroutine$(EXEEXT):
    456         $(BENCH_V_NODEJS)echo "#!/bin/sh" > a.out
    457         echo "nodejs $(srcdir)/creation/node_cor.js" >> a.out
    458         chmod a+x a.out
    459 
    460 creation-goroutine_thread$(EXEEXT):
     345        $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_thrd.cc
     346
     347creation-pthread$(EXEEXT):
     348        $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=250000   $(srcdir)/creation/pthreads.c
     349
     350creation-goroutine$(EXEEXT):
    461351        $(BENCH_V_GOC)go build -o a.out $(srcdir)/creation/goroutine.go
    462 
    463 creation-rust_thread$(EXEEXT):
    464         $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/creation/rust_thrd.rs
    465352
    466353creation-java_thread$(EXEEXT):
    467354        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/creation/JavaThread.java
    468         echo "#!/bin/sh" > a.out
    469         echo "java JavaThread" >> a.out
    470         chmod a+x a.out
    471 
    472 creation-pthread$(EXEEXT):
    473         $(BENCH_V_CC)$(COMPILE) $(srcdir)/creation/pthreads.c
    474 
    475 ## =========================================================================================================
    476 
    477 compile$(EXEEXT) :              \
     355        @echo "#!/bin/sh" > a.out
     356        @echo "java JavaThread" >> a.out
     357        @chmod a+x a.out
     358
     359## =========================================================================================================
     360
     361compile$(EXEEXT) :\
    478362        compile-array.make      \
    479363        compile-attributes.make \
     
    485369        compile-typeof.make
    486370
     371
    487372testdir = $(top_srcdir)/tests
    488373
    489374compile-array$(EXEEXT):
    490         $(CFACOMPILE) -fsyntax-only -w $(testdir)/array.cfa
     375        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/array.cfa
    491376
    492377compile-attributes$(EXEEXT):
    493         $(CFACOMPILE) -fsyntax-only -w $(testdir)/attributes.cfa
     378        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/attributes.cfa
    494379
    495380compile-empty$(EXEEXT):
    496         $(CFACOMPILE) -fsyntax-only -w $(srcdir)/compile/empty.cfa
     381        @$(CFACOMPILE) -fsyntax-only -w $(srcdir)/compile/empty.cfa
    497382
    498383compile-expression$(EXEEXT):
    499         $(CFACOMPILE) -fsyntax-only -w $(testdir)/expression.cfa
     384        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/expression.cfa
    500385
    501386compile-io$(EXEEXT):
    502         $(CFACOMPILE) -fsyntax-only -w $(testdir)/io1.cfa
     387        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/io1.cfa
    503388
    504389compile-monitor$(EXEEXT):
    505         $(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/monitor.cfa
     390        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/monitor.cfa
    506391
    507392compile-operators$(EXEEXT):
    508         $(CFACOMPILE) -fsyntax-only -w $(testdir)/operators.cfa
     393        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/operators.cfa
    509394
    510395compile-thread$(EXEEXT):
    511         $(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/thread.cfa
     396        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/thread.cfa
    512397
    513398compile-typeof$(EXEEXT):
    514         $(CFACOMPILE) -fsyntax-only -w $(testdir)/typeof.cfa
    515 
    516 ## =========================================================================================================
    517 
    518 size$(EXEEXT) : size-cfa.runquiet
    519 
    520 size-cfa$(EXEEXT):
    521         $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/size/size.cfa
     399        @$(CFACOMPILE) -fsyntax-only -w $(testdir)/typeof.cfa
Note: See TracChangeset for help on using the changeset viewer.