Ignore:
Timestamp:
Apr 6, 2020, 4:46:28 PM (6 years ago)
Author:
Thierry Delisle <tdelisle@…>
Branches:
ADT, arm-eh, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum, stuck-waitfor-destruct
Children:
e3bc51c
Parents:
71d6bd8 (diff), 057298e (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'master' into new-ast

File:
1 edited

Legend:

Unmodified
Added
Removed
  • benchmark/Makefile.am

    r71d6bd8 r7030dab  
    1111## Created On       : Sun May 31 09:08:15 2015
    1212## Last Modified By : Peter A. Buhr
    13 ## Last Modified On : Mon Jul 29 18:02:19 2019
    14 ## Update Count     : 54
     13## Last Modified On : Tue Mar 10 11:41:18 2020
     14## Update Count     : 258
    1515###############################################################################
    1616
     
    2828BENCH_V_CFA = $(__bench_v_CFA_$(__quiet))
    2929BENCH_V_CXX = $(__bench_v_CXX_$(__quiet))
     30BENCH_V_UPP = $(__bench_v_UPP_$(__quiet))
    3031BENCH_V_GOC = $(__bench_v_GOC_$(__quiet))
     32BENCH_V_PY = $(__bench_v_PY_$(__quiet))
     33BENCH_V_RUSTC = $(__bench_v_RUSTC_$(__quiet))
     34BENCH_V_NODEJS = $(__bench_v_NODEJS_$(__quiet))
    3135BENCH_V_JAVAC = $(__bench_v_JAVAC_$(__quiet))
    32 BENCH_V_UPP = $(__bench_v_UPP_$(__quiet))
    3336
    3437__quiet = verbose
     
    3639__bench_v_CFA_quiet = @
    3740__bench_v_CXX_quiet = @
     41__bench_v_UPP_quiet = @
    3842__bench_v_GOC_quiet = @
     43__bench_v_RUSTC_quiet = @
    3944__bench_v_JAVAC_quiet = @
    40 __bench_v_UPP_quiet = @
    4145__bench_v_CC_verbose = $(AM_V_CC)
    4246__bench_v_CFA_verbose = $(AM_V_CFA)
    4347__bench_v_CXX_verbose = $(AM_V_CXX)
     48__bench_v_UPP_verbose = $(AM_V_UPP)
    4449__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)
    4553__bench_v_JAVAC_verbose = $(AM_V_JAVAC)
    46 __bench_v_UPP_verbose = $(AM_V_UPP)
    4754
    4855
     
    5158STATS    = ${abs_top_srcdir}/tools/stat.py
    5259# NEED AT LEAST 4 DATA VALUES FOR BENCHMARKS BECAUSE THE MAX AND MIN VALUES ARE REMOVED
    53 repeats  = 5 # 31 for benchmarks
     60repeats  = 13 # 31 for benchmarks
    5461arch     = x64
    5562skipcompile = no
     
    6269
    6370dummyC.c:
    64         @echo "int main() { return 0; }" > ${@}
     71        echo "int main() { return 0; }" > ${@}
    6572
    6673dummyCXX.cpp:
    67         @echo "int main() { return 0; }" > ${@}
    68 
     74        echo "int main() { return 0; }" > ${@}
     75
     76.SILENT:                # do not print recipe
    6977.NOTPARALLEL:
    70 .PHONY: compile.csv ctxswitch.csv mutex.csv signal.csv
    71 
    72 ## =========================================================================================================
    73 all : ctxswitch$(EXEEXT) mutex$(EXEEXT) signal$(EXEEXT) waitfor$(EXEEXT) creation$(EXEEXT)
     78.PHONY: jenkins cleancsv
     79
     80## =========================================================================================================
     81
     82all : basic$(EXEEXT) ctxswitch$(EXEEXT) mutex$(EXEEXT) schedint$(EXEEXT) schedext$(EXEEXT) creation$(EXEEXT)
     83
     84basic_loop_DURATION = 15000000000
     85basic_function_DURATION = 10000000000
     86basic_tls_fetch_add_DURATION = 10000000000
     87basic_DURATION = 250000000
     88
     89ctxswitch_pthread_DURATION = 25000000
     90ctxswitch_rust_thread_DURATION = $(ctxswitch_pthread_DURATION)
     91ctxswitch_cfa_generator_DURATION = 5000000000
     92ctxswitch_nodejs_await_DURATION = 5000000
     93ctxswitch_DURATION = 100000000
     94
     95#mutex_java_DURATION = 10000000
     96mutex_DURATION = 50000000
     97
     98schedint_pthread_DURATION = 1000000
     99schedint_java_DURATION = $(schedint_pthread_DURATION)
     100schedint_rust_DURATION = $(schedint_pthread_DURATION)
     101schedint_DURATION = 10000000
     102
     103schedext_DURATION = 10000000
     104
     105creation_pthread_DURATION = 250000
     106creation_rust_thread_DURATION = ${creation_pthread_DURATION}
     107creation_java_thread_DURATION = ${creation_pthread_DURATION}
     108creation_cfa_coroutine_DURATION = 100000000
     109creation_cfa_coroutine_eager_DURATION = 10000000
     110creation_cfa_generator_DURATION = 1000000000
     111creation_upp_coroutine_DURATION = ${creation_cfa_coroutine_eager_DURATION}
     112creation_cfa_thread_DURATION = 10000000
     113creation_upp_thread_DURATION = ${creation_cfa_thread_DURATION}
     114creation_DURATION = 10000000
    74115
    75116%.run : %$(EXEEXT) ${REPEAT}
    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
     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
    83129
    84130%.runquiet :
    85         @+make $(basename $@) CFLAGS="-w" __quiet=quiet
    86         @taskset -c 1 ./a.out
    87         @rm -f a.out
     131        +make $(basename $@) CFLAGS="-w" __quiet=quiet
     132        taskset -c 1 ./a.out
     133        rm -f a.out
    88134
    89135%.make :
    90         @printf "${PRINT_FORMAT}" $(basename $(subst compile-,,$@))
    91         @+/usr/bin/time -f ${TIME_FORMAT} make $(basename $@) 2>&1
     136        printf "${PRINT_FORMAT}" $(basename $(subst compile-,,$@))
     137        +/usr/bin/time -f ${TIME_FORMAT} make $(basename $@) 2>&1
    92138
    93139${REPEAT} :
    94         @+make -C ${abs_top_builddir}/tools repeat
     140        +make -C ${abs_top_builddir}/tools repeat
    95141
    96142## =========================================================================================================
     
    98144FIX_NEW_LINES = cat $@ | tr "\n" "\t" | sed -r 's/\t,/,/' | tr "\t" "\n" > $@
    99145
    100 jenkins$(EXEEXT):
     146cleancsv:
     147        rm -f compile.csv basic.csv ctxswitch.csv mutex.csv scheduling.csv
     148
     149jenkins$(EXEEXT): cleancsv
    101150@DOifskipcompile@
    102         @+make compile.csv
    103         @-+make compile.diff.csv
     151        +make compile.csv
     152        -+make compile.diff.csv
    104153@DOendif@
    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
     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
    111160@DOifskipcompile@
    112161        cat compile.csv
     
    117166        cat mutex.csv
    118167        -cat mutex.diff.csv
    119         cat signal.csv
    120         -cat signal.diff.csv
     168        cat scheduling.csv
     169        -cat scheduling.diff.csv
    121170
    122171compile.csv:
    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 $@
     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 $@
    133183
    134184ctxswitch.csv:
    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 $@
     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 $@
    140191
    141192mutex.csv:
    142         @echo "1-monitor,2-monitor" > $@
    143         @+make mutex-cfa1.runquiet >> $@ && echo -n ',' >> $@
    144         @+make mutex-cfa2.runquiet >> $@
    145         @$(srcdir)/fixcsv.sh $@
    146 
    147 signal.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 $@
     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
     199scheduling.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 $@
    154207
    155208%.diff.csv: %.csv
    156         @test -e $(srcdir)/baselines/$(arch)/$< || (echo "Error : Missing baseline for ${<}" && false)
    157         @$(srcdir)/baselines/calc.py $(srcdir)/baselines/$(arch)/$(<) $(<) > $@
    158 
    159 
    160 ## =========================================================================================================
    161 loop$(EXEEXT):
    162         $(BENCH_V_CC)$(COMPILE) -DBENCH_N=5000000000 $(srcdir)/loop.c
    163 
    164 function$(EXEEXT):
    165         $(BENCH_V_CC)$(COMPILE) -DBENCH_N=5000000000 $(srcdir)/function.c
    166 
    167 fetch_add$(EXEEXT):
    168         $(BENCH_V_CC)$(COMPILE) -DBENCH_N=500000000  $(srcdir)/fetch_add.c
    169 
    170 ttst_lock$(EXEEXT):
    171         $(BENCH_V_CC)$(COMPILE) -DBENCH_N=500000000  $(srcdir)/ttst_lock.c
    172 
    173 tls-fetch_add$(EXEEXT):
    174         $(BENCH_V_CC)$(COMPILE) -DBENCH_N=500000000  $(srcdir)/tls-fetch_add.c
    175 
    176 ## =========================================================================================================
    177 CTXSWITCH_DEPEND  =                 \
    178         loop.run                                \
    179         function.run                    \
    180         fetch_add.run                   \
    181         ttst_lock.run                   \
    182         tls-fetch_add.run                       \
    183         ctxswitch-pthread.run           \
     209        test -e $(srcdir)/baselines/$(arch)/$< || (echo "Error : Missing baseline for ${<}" && false)
     210        $(srcdir)/baselines/calc.py $(srcdir)/baselines/$(arch)/$(<) $(<) > $@
     211
     212## =========================================================================================================
     213
     214BASIC_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
     221basic-loop$(EXEEXT):
     222        $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/loop.c
     223
     224basic-function$(EXEEXT):
     225        $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/function.c
     226
     227basic-fetch_add$(EXEEXT):
     228        $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/fetch_add.c
     229
     230basic-ttst_lock$(EXEEXT):
     231        $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/ttst_lock.c
     232
     233basic-tls-fetch_add$(EXEEXT):
     234        $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/tls_fetch_add.c
     235
     236basic$(EXEEXT): $(BASIC_DEPEND)
     237
     238## =========================================================================================================
     239
     240CTXSWITCH_DEPEND  =                     \
    184241        ctxswitch-cfa_generator.run     \
    185242        ctxswitch-cfa_coroutine.run     \
     
    188245        ctxswitch-upp_coroutine.run     \
    189246        ctxswitch-upp_thread.run        \
    190         ctxswitch-goroutine.run         \
    191         ctxswitch-java_thread.run
    192 
     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
    193255
    194256if WITH_LIBFIBRE
    195 CTXSWITCH_DEPEND  +=           \
    196         ctxswitch-kos_fibre.run  \
     257CTXSWITCH_DEPEND  +=                    \
     258        ctxswitch-kos_fibre.run         \
    197259        ctxswitch-kos_fibre2.run
    198 
    199260
    200261ctxswitch-kos_fibre$(EXEEXT):
     
    207268ctxswitch$(EXEEXT): $(CTXSWITCH_DEPEND)
    208269
    209 ctxswitch-pthread$(EXEEXT):
    210         $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=50000000 $(srcdir)/ctxswitch/pthreads.c
    211 
    212270ctxswitch-cfa_generator$(EXEEXT):
    213         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_gen.cfa
     271        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_gen.cfa
    214272
    215273ctxswitch-cfa_coroutine$(EXEEXT):
    216         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_cor.cfa
     274        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_cor.cfa
    217275
    218276ctxswitch-cfa_thread$(EXEEXT):
    219         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd.cfa
     277        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_thrd.cfa
    220278
    221279ctxswitch-cfa_thread2$(EXEEXT):
    222         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd2.cfa
     280        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_thrd2.cfa
    223281
    224282ctxswitch-upp_coroutine$(EXEEXT):
    225         $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_cor.cc
     283        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/ctxswitch/upp_cor.cc
    226284
    227285ctxswitch-upp_thread$(EXEEXT):
    228         $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_thrd.cc
    229 
    230 ctxswitch-goroutine$(EXEEXT):
     286        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/ctxswitch/upp_thrd.cc
     287
     288ctxswitch-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
     293ctxswitch-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
     298ctxswitch-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
     303ctxswitch-goroutine_thread$(EXEEXT):
    231304        $(BENCH_V_GOC)go build -o a.out $(srcdir)/ctxswitch/goroutine.go
     305
     306ctxswitch-rust_thread$(EXEEXT):
     307        $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/ctxswitch/rust_thrd.rs
    232308
    233309ctxswitch-java_thread$(EXEEXT):
    234310        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/ctxswitch/JavaThread.java
    235         @echo "#!/bin/sh" > a.out
    236         @echo "java JavaThread" >> a.out
    237         @chmod a+x a.out
    238 
    239 ## =========================================================================================================
    240 mutex$(EXEEXT) :\
    241         loop.run                        \
    242         function.run            \
    243         fetch_add.run           \
    244         mutex-pthread_lock.run  \
    245         mutex-upp.run           \
     311        echo "#!/bin/sh" > a.out
     312        echo "java JavaThread" >> a.out
     313        chmod a+x a.out
     314
     315ctxswitch-pthread$(EXEEXT):
     316        $(BENCH_V_CC)$(COMPILE) $(srcdir)/ctxswitch/pthreads.c
     317
     318## =========================================================================================================
     319
     320mutex$(EXEEXT) :                \
    246321        mutex-cfa1.run          \
    247322        mutex-cfa2.run          \
    248323        mutex-cfa4.run          \
    249         mutex-java_thread.run
    250 
    251 mutex-pthread_lock$(EXEEXT):
    252         $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=50000000 $(srcdir)/mutex/pthreads.c
     324        mutex-upp.run           \
     325        mutex-go.run            \
     326        mutex-rust.run          \
     327        mutex-java.run          \
     328        mutex-pthread.run
     329
     330mutex-pthread$(EXEEXT):
     331        $(BENCH_V_CC)$(COMPILE) $(srcdir)/mutex/pthreads.c
     332
     333mutex-cfa1$(EXEEXT):
     334        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutex/cfa1.cfa
     335
     336mutex-cfa2$(EXEEXT):
     337        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutex/cfa2.cfa
     338
     339mutex-cfa4$(EXEEXT):
     340        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutex/cfa4.cfa
    253341
    254342mutex-upp$(EXEEXT):
    255         $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/mutex/upp.cc
    256 
    257 mutex-cfa1$(EXEEXT):
    258         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000  $(srcdir)/mutex/cfa1.cfa
    259 
    260 mutex-cfa2$(EXEEXT):
    261         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000  $(srcdir)/mutex/cfa2.cfa
    262 
    263 mutex-cfa4$(EXEEXT):
    264         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000  $(srcdir)/mutex/cfa4.cfa
    265 
    266 mutex-java_thread$(EXEEXT):
     343        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/mutex/upp.cc
     344
     345mutex-go$(EXEEXT):
     346        $(BENCH_V_GOC)go build -o a.out $(srcdir)/mutex/goroutine.go
     347
     348mutex-rust$(EXEEXT):
     349        $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/mutex/rust.rs
     350
     351mutex-java$(EXEEXT):
    267352        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/mutex/JavaThread.java
    268         @echo "#!/bin/sh" > a.out
    269         @echo "java JavaThread" >> a.out
    270         @chmod a+x a.out
    271 
    272 ## =========================================================================================================
    273 signal$(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 
    281 signal-pthread_cond$(EXEEXT):
    282         $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=500000  $(srcdir)/schedint/pthreads.c
    283 
    284 signal-upp$(EXEEXT):
    285         $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedint/upp.cc
    286 
    287 signal-cfa1$(EXEEXT):
    288         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedint/cfa1.cfa
    289 
    290 signal-cfa2$(EXEEXT):
    291         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedint/cfa2.cfa
    292 
    293 signal-cfa4$(EXEEXT):
    294         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedint/cfa4.cfa
    295 
    296 signal-java_thread$(EXEEXT):
     353        echo "#!/bin/sh" > a.out
     354        echo "java JavaThread" >> a.out
     355        chmod a+x a.out
     356
     357## =========================================================================================================
     358
     359schedint$(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
     368schedint-cfa1$(EXEEXT):
     369        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedint/cfa1.cfa
     370
     371schedint-cfa2$(EXEEXT):
     372        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedint/cfa2.cfa
     373
     374schedint-cfa4$(EXEEXT):
     375        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedint/cfa4.cfa
     376
     377schedint-upp$(EXEEXT):
     378        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/schedint/upp.cc
     379
     380schedint-rust$(EXEEXT):
     381        $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/schedint/rust.rs
     382
     383schedint-java$(EXEEXT):
    297384        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/schedint/JavaThread.java
    298         @echo "#!/bin/sh" > a.out
    299         @echo "java JavaThread" >> a.out
    300         @chmod a+x a.out
    301 
    302 
    303 ## =========================================================================================================
    304 waitfor$(EXEEXT) :\
    305         waitfor-upp.run         \
    306         waitfor-cfa1.run                \
    307         waitfor-cfa2.run                \
    308         waitfor-cfa4.run
    309 
    310 waitfor-upp$(EXEEXT):
    311         $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedext/upp.cc
    312 
    313 waitfor-cfa1$(EXEEXT):
    314         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedext/cfa1.cfa
    315 
    316 waitfor-cfa2$(EXEEXT):
    317         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedext/cfa2.cfa
    318 
    319 waitfor-cfa4$(EXEEXT):
    320         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedext/cfa4.cfa
    321 
    322 ## =========================================================================================================
    323 creation$(EXEEXT) :\
    324         creation-pthread.run                    \
     385        echo "#!/bin/sh" > a.out
     386        echo "java JavaThread" >> a.out
     387        chmod a+x a.out
     388
     389schedint-pthread$(EXEEXT):
     390        $(BENCH_V_CC)$(COMPILE) $(srcdir)/schedint/pthreads.c
     391
     392## =========================================================================================================
     393
     394schedext$(EXEEXT) :             \
     395        schedext-cfa1.run       \
     396        schedext-cfa2.run       \
     397        schedext-cfa4.run       \
     398        schedext-upp.run        \
     399        schedext-goroutine.run
     400
     401schedext-cfa1$(EXEEXT):
     402        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedext/cfa1.cfa
     403
     404schedext-cfa2$(EXEEXT):
     405        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedext/cfa2.cfa
     406
     407schedext-cfa4$(EXEEXT):
     408        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedext/cfa4.cfa
     409
     410schedext-upp$(EXEEXT):
     411        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/schedext/upp.cc
     412
     413schedext-goroutine$(EXEEXT):
     414        $(BENCH_V_GOC)go build -o a.out $(srcdir)/schedext/goroutine.go
     415
     416
     417## =========================================================================================================
     418
     419creation$(EXEEXT) :                             \
     420        creation-cfa_generator.run              \
    325421        creation-cfa_coroutine.run              \
    326422        creation-cfa_coroutine_eager.run        \
     
    328424        creation-upp_coroutine.run              \
    329425        creation-upp_thread.run                 \
    330         creation-goroutine.run                  \
    331         creation-java_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
     433creation-cfa_generator$(EXEEXT):
     434        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_gen.cfa
    332435
    333436creation-cfa_coroutine$(EXEEXT):
    334         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.cfa
     437        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_cor.cfa
    335438
    336439creation-cfa_coroutine_eager$(EXEEXT):
    337         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.cfa  -DEAGER
     440        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_cor.cfa  -DEAGER
    338441
    339442creation-cfa_thread$(EXEEXT):
    340         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_thrd.cfa
     443        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_thrd.cfa
    341444
    342445creation-upp_coroutine$(EXEEXT):
    343         $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_cor.cc
     446        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/creation/upp_cor.cc
    344447
    345448creation-upp_thread$(EXEEXT):
    346         $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_thrd.cc
    347 
    348 creation-pthread$(EXEEXT):
    349         $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=250000   $(srcdir)/creation/pthreads.c
    350 
    351 creation-goroutine$(EXEEXT):
     449        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/creation/upp_thrd.cc
     450
     451creation-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
     456creation-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
     461creation-goroutine_thread$(EXEEXT):
    352462        $(BENCH_V_GOC)go build -o a.out $(srcdir)/creation/goroutine.go
     463
     464creation-rust_thread$(EXEEXT):
     465        $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/creation/rust_thrd.rs
    353466
    354467creation-java_thread$(EXEEXT):
    355468        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/creation/JavaThread.java
    356         @echo "#!/bin/sh" > a.out
    357         @echo "java JavaThread" >> a.out
    358         @chmod a+x a.out
    359 
    360 ## =========================================================================================================
    361 
    362 compile$(EXEEXT) :\
     469        echo "#!/bin/sh" > a.out
     470        echo "java JavaThread" >> a.out
     471        chmod a+x a.out
     472
     473creation-pthread$(EXEEXT):
     474        $(BENCH_V_CC)$(COMPILE) $(srcdir)/creation/pthreads.c
     475
     476## =========================================================================================================
     477
     478compile$(EXEEXT) :              \
    363479        compile-array.make      \
    364480        compile-attributes.make \
     
    370486        compile-typeof.make
    371487
    372 
    373488testdir = $(top_srcdir)/tests
    374489
    375490compile-array$(EXEEXT):
    376         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/array.cfa
     491        $(CFACOMPILE) -fsyntax-only -w $(testdir)/array.cfa
    377492
    378493compile-attributes$(EXEEXT):
    379         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/attributes.cfa
     494        $(CFACOMPILE) -fsyntax-only -w $(testdir)/attributes.cfa
    380495
    381496compile-empty$(EXEEXT):
    382         @$(CFACOMPILE) -fsyntax-only -w $(srcdir)/compile/empty.cfa
     497        $(CFACOMPILE) -fsyntax-only -w $(srcdir)/compile/empty.cfa
    383498
    384499compile-expression$(EXEEXT):
    385         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/expression.cfa
     500        $(CFACOMPILE) -fsyntax-only -w $(testdir)/expression.cfa
    386501
    387502compile-io$(EXEEXT):
    388         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/io1.cfa
     503        $(CFACOMPILE) -fsyntax-only -w $(testdir)/io1.cfa
    389504
    390505compile-monitor$(EXEEXT):
    391         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/monitor.cfa
     506        $(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/monitor.cfa
    392507
    393508compile-operators$(EXEEXT):
    394         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/operators.cfa
     509        $(CFACOMPILE) -fsyntax-only -w $(testdir)/operators.cfa
    395510
    396511compile-thread$(EXEEXT):
    397         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/thread.cfa
     512        $(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/thread.cfa
    398513
    399514compile-typeof$(EXEEXT):
    400         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/typeof.cfa
     515        $(CFACOMPILE) -fsyntax-only -w $(testdir)/typeof.cfa
     516
     517## =========================================================================================================
     518
     519size$(EXEEXT) : size-cfa.runquiet
     520
     521size-cfa$(EXEEXT):
     522        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/size/size.cfa
Note: See TracChangeset for help on using the changeset viewer.