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.in

    r71d6bd8 r7030dab  
    9393EXTRA_PROGRAMS = dummy$(EXEEXT)
    9494@WITH_LIBFIBRE_TRUE@am__append_1 = \
    95 @WITH_LIBFIBRE_TRUE@    ctxswitch-kos_fibre.run  \
     95@WITH_LIBFIBRE_TRUE@    ctxswitch-kos_fibre.run         \
    9696@WITH_LIBFIBRE_TRUE@    ctxswitch-kos_fibre2.run
    9797
     
    352352LTCFACOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
    353353        $(LIBTOOLFLAGS) --mode=compile $(CFACC) $(DEFS) \
    354         $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CFAFLAGS) $(CFAFLAGS) \
    355         $(AM_CFLAGS) $(CFLAGS)
     354        $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CFAFLAGS) $(AM_CFLAGS) $(CFAFLAGS) $(CFLAGS)
    356355
    357356AM_V_CFA = $(am__v_CFA_@AM_V@)
     
    359358am__v_CFA_0 = @echo "  CFA     " $@;
    360359am__v_CFA_1 =
    361 AM_V_JAVAC = $(am__v_JAVAC_@AM_V@)
    362 am__v_JAVAC_ = $(am__v_JAVAC_@AM_DEFAULT_V@)
    363 am__v_JAVAC_0 = @echo "  JAVAC   " $@;
    364 am__v_JAVAC_1 =
    365 AM_V_GOC = $(am__v_GOC_@AM_V@)
    366 am__v_GOC_ = $(am__v_GOC_@AM_DEFAULT_V@)
    367 am__v_GOC_0 = @echo "  GOC     " $@;
    368 am__v_GOC_1 =
    369360UPPCC = u++
    370361UPPCOMPILE = $(UPPCC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_UPPFLAGS) $(UPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_CFLAGS) $(CFLAGS)
     
    373364am__v_UPP_0 = @echo "  UPP     " $@;
    374365am__v_UPP_1 =
     366AM_V_GOC = $(am__v_GOC_@AM_V@)
     367am__v_GOC_ = $(am__v_GOC_@AM_DEFAULT_V@)
     368am__v_GOC_0 = @echo "  GOC     " $@;
     369am__v_GOC_1 =
     370AM_V_PY = $(am__v_PY_@AM_V@)
     371am__v_PY_ = $(am__v_PY_@AM_DEFAULT_V@)
     372am__v_PY_0 = @echo "  PYTHON  " $@;
     373am__v_PY_1 =
     374AM_V_RUST = $(am__v_RUST_@AM_V@)
     375am__v_RUST_ = $(am__v_RUST_@AM_DEFAULT_V@)
     376am__v_RUST_0 = @echo "  RUST    " $@;
     377am__v_RUST_1 =
     378AM_V_NODEJS = $(am__v_NODEJS_@AM_V@)
     379am__v_NODEJS_ = $(am__v_NODEJS_@AM_DEFAULT_V@)
     380am__v_NODEJS_0 = @echo "  NODEJS  " $@;
     381am__v_NODEJS_1 =
     382AM_V_JAVAC = $(am__v_JAVAC_@AM_V@)
     383am__v_JAVAC_ = $(am__v_JAVAC_@AM_DEFAULT_V@)
     384am__v_JAVAC_0 = @echo "  JAVAC   " $@;
     385am__v_JAVAC_1 =
    375386
    376387# applies to both programs
     
    381392BENCH_V_CFA = $(__bench_v_CFA_$(__quiet))
    382393BENCH_V_CXX = $(__bench_v_CXX_$(__quiet))
     394BENCH_V_UPP = $(__bench_v_UPP_$(__quiet))
    383395BENCH_V_GOC = $(__bench_v_GOC_$(__quiet))
     396BENCH_V_PY = $(__bench_v_PY_$(__quiet))
     397BENCH_V_RUSTC = $(__bench_v_RUSTC_$(__quiet))
     398BENCH_V_NODEJS = $(__bench_v_NODEJS_$(__quiet))
    384399BENCH_V_JAVAC = $(__bench_v_JAVAC_$(__quiet))
    385 BENCH_V_UPP = $(__bench_v_UPP_$(__quiet))
    386400__quiet = verbose
    387401__bench_v_CC_quiet = @
    388402__bench_v_CFA_quiet = @
    389403__bench_v_CXX_quiet = @
     404__bench_v_UPP_quiet = @
    390405__bench_v_GOC_quiet = @
     406__bench_v_RUSTC_quiet = @
    391407__bench_v_JAVAC_quiet = @
    392 __bench_v_UPP_quiet = @
    393408__bench_v_CC_verbose = $(AM_V_CC)
    394409__bench_v_CFA_verbose = $(AM_V_CFA)
    395410__bench_v_CXX_verbose = $(AM_V_CXX)
     411__bench_v_UPP_verbose = $(AM_V_UPP)
    396412__bench_v_GOC_verbose = $(AM_V_GOC)
     413__bench_v_PY_verbose = $(AM_V_PY)
     414__bench_v_RUSTC_verbose = $(AM_V_RUST)
     415__bench_v_NODEJS_verbose = $(AM_V_NODEJS)
    397416__bench_v_JAVAC_verbose = $(AM_V_JAVAC)
    398 __bench_v_UPP_verbose = $(AM_V_UPP)
    399417TOOLSDIR = ${abs_top_builddir}/tools/
    400418REPEAT = ${abs_top_builddir}/tools/repeat
    401419STATS = ${abs_top_srcdir}/tools/stat.py
    402420# NEED AT LEAST 4 DATA VALUES FOR BENCHMARKS BECAUSE THE MAX AND MIN VALUES ARE REMOVED
    403 repeats = 5 # 31 for benchmarks
     421repeats = 13 # 31 for benchmarks
    404422arch = x64
    405423skipcompile = no
     
    407425PRINT_FORMAT = %20s: #Comments needed for spacing
    408426dummy_SOURCES = dummyC.c dummyCXX.cpp
     427basic_loop_DURATION = 15000000000
     428basic_function_DURATION = 10000000000
     429basic_tls_fetch_add_DURATION = 10000000000
     430basic_DURATION = 250000000
     431ctxswitch_pthread_DURATION = 25000000
     432ctxswitch_rust_thread_DURATION = $(ctxswitch_pthread_DURATION)
     433ctxswitch_cfa_generator_DURATION = 5000000000
     434ctxswitch_nodejs_await_DURATION = 5000000
     435ctxswitch_DURATION = 100000000
     436
     437#mutex_java_DURATION = 10000000
     438mutex_DURATION = 50000000
     439schedint_pthread_DURATION = 1000000
     440schedint_java_DURATION = $(schedint_pthread_DURATION)
     441schedint_rust_DURATION = $(schedint_pthread_DURATION)
     442schedint_DURATION = 10000000
     443schedext_DURATION = 10000000
     444creation_pthread_DURATION = 250000
     445creation_rust_thread_DURATION = ${creation_pthread_DURATION}
     446creation_java_thread_DURATION = ${creation_pthread_DURATION}
     447creation_cfa_coroutine_DURATION = 100000000
     448creation_cfa_coroutine_eager_DURATION = 10000000
     449creation_cfa_generator_DURATION = 1000000000
     450creation_upp_coroutine_DURATION = ${creation_cfa_coroutine_eager_DURATION}
     451creation_cfa_thread_DURATION = 10000000
     452creation_upp_thread_DURATION = ${creation_cfa_thread_DURATION}
     453creation_DURATION = 10000000
    409454FIX_NEW_LINES = cat $@ | tr "\n" "\t" | sed -r 's/\t,/,/' | tr "\t" "\n" > $@
    410 CTXSWITCH_DEPEND = loop.run function.run fetch_add.run ttst_lock.run \
    411         tls-fetch_add.run ctxswitch-pthread.run \
    412         ctxswitch-cfa_generator.run ctxswitch-cfa_coroutine.run \
    413         ctxswitch-cfa_thread.run ctxswitch-cfa_thread2.run \
    414         ctxswitch-upp_coroutine.run ctxswitch-upp_thread.run \
    415         ctxswitch-goroutine.run ctxswitch-java_thread.run \
    416         $(am__append_1)
     455BASIC_DEPEND = \
     456        basic-loop.run                          \
     457        basic-function.run                      \
     458        basic-fetch_add.run                     \
     459        basic-ttst_lock.run                     \
     460        basic-tls-fetch_add.run
     461
     462CTXSWITCH_DEPEND = ctxswitch-cfa_generator.run \
     463        ctxswitch-cfa_coroutine.run ctxswitch-cfa_thread.run \
     464        ctxswitch-cfa_thread2.run ctxswitch-upp_coroutine.run \
     465        ctxswitch-upp_thread.run ctxswitch-python_coroutine.run \
     466        ctxswitch-nodejs_coroutine.run ctxswitch-nodejs_await.run \
     467        ctxswitch-goroutine_thread.run ctxswitch-rust_thread.run \
     468        ctxswitch-nodejs_coroutine.run ctxswitch-java_thread.run \
     469        ctxswitch-pthread.run $(am__append_1)
    417470testdir = $(top_srcdir)/tests
    418471all: all-am
     
    733786
    734787dummyC.c:
    735         @echo "int main() { return 0; }" > ${@}
     788        echo "int main() { return 0; }" > ${@}
    736789
    737790dummyCXX.cpp:
    738         @echo "int main() { return 0; }" > ${@}
    739 
     791        echo "int main() { return 0; }" > ${@}
     792
     793.SILENT:                # do not print recipe
    740794.NOTPARALLEL:
    741 .PHONY: compile.csv ctxswitch.csv mutex.csv signal.csv
    742 
    743 all : ctxswitch$(EXEEXT) mutex$(EXEEXT) signal$(EXEEXT) waitfor$(EXEEXT) creation$(EXEEXT)
     795.PHONY: jenkins cleancsv
     796
     797all : basic$(EXEEXT) ctxswitch$(EXEEXT) mutex$(EXEEXT) schedint$(EXEEXT) schedext$(EXEEXT) creation$(EXEEXT)
    744798
    745799%.run : %$(EXEEXT) ${REPEAT}
    746         @rm -f .result.log
    747         @echo "------------------------------------------------------"
    748         @echo $<
    749         @${REPEAT} ${repeats} ./a.out | tee -a .result.log
    750         @${STATS} .result.log
    751         @echo "------------------------------------------------------"
    752         @rm -f a.out .result.log *.class
     800        rm -f .result.log
     801        echo "------------------------------------------------------"
     802        echo $<
     803        ${REPEAT} ${repeats} -- ./a.out\
     804                $(if ${$(subst -,_,$(basename $@))_DURATION},\
     805                        ${$(subst -,_,$(basename $@))_DURATION},\
     806                        ${$(firstword $(subst -, ,$(basename $@)))_DURATION}) | tee -a .result.log
     807        ${STATS} .result.log
     808        echo "------------------------------------------------------"
     809        rm -f a.out .result.log *.class
     810
     811#       ${REPEAT} ${repeats} -- /usr/bin/time -f "%Uu %Ss %Er %Mkb" ./a.out
    753812
    754813%.runquiet :
    755         @+make $(basename $@) CFLAGS="-w" __quiet=quiet
    756         @taskset -c 1 ./a.out
    757         @rm -f a.out
     814        +make $(basename $@) CFLAGS="-w" __quiet=quiet
     815        taskset -c 1 ./a.out
     816        rm -f a.out
    758817
    759818%.make :
    760         @printf "${PRINT_FORMAT}" $(basename $(subst compile-,,$@))
    761         @+/usr/bin/time -f ${TIME_FORMAT} make $(basename $@) 2>&1
     819        printf "${PRINT_FORMAT}" $(basename $(subst compile-,,$@))
     820        +/usr/bin/time -f ${TIME_FORMAT} make $(basename $@) 2>&1
    762821
    763822${REPEAT} :
    764         @+make -C ${abs_top_builddir}/tools repeat
    765 
    766 jenkins$(EXEEXT):
     823        +make -C ${abs_top_builddir}/tools repeat
     824
     825cleancsv:
     826        rm -f compile.csv basic.csv ctxswitch.csv mutex.csv scheduling.csv
     827
     828jenkins$(EXEEXT): cleancsv
    767829@DOifskipcompile@
    768         @+make compile.csv
    769         @-+make compile.diff.csv
     830        +make compile.csv
     831        -+make compile.diff.csv
    770832@DOendif@
    771         @+make ctxswitch.csv
    772         @-+make ctxswitch.diff.csv
    773         @+make mutex.csv
    774         @-+make mutex.diff.csv
    775         @+make signal.csv
    776         @-+make signal.diff.csv
     833        +make ctxswitch.csv
     834        -+make ctxswitch.diff.csv
     835        +make mutex.csv
     836        -+make mutex.diff.csv
     837        +make scheduling.csv
     838        -+make scheduling.diff.csv
    777839@DOifskipcompile@
    778840        cat compile.csv
     
    783845        cat mutex.csv
    784846        -cat mutex.diff.csv
    785         cat signal.csv
    786         -cat signal.diff.csv
     847        cat scheduling.csv
     848        -cat scheduling.diff.csv
    787849
    788850compile.csv:
    789         @echo "array,attributes,empty,expression,io,monitor,operators,typeof" > $@
    790         @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-array.make >> $@
    791         @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-attributes.make >> $@
    792         @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-empty.make >> $@
    793         @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-expression.make >> $@
    794         @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-io.make >> $@
    795         @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-monitor.make >> $@
    796         @+make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-operators.make >> $@
    797         @+make TIME_FORMAT='%e' PRINT_FORMAT='' compile-typeof.make >> $@
    798         @$(srcdir)/fixcsv.sh $@
     851        echo "building $@"
     852        echo "array,attributes,empty,expression,io,monitor,operators,typeof" > $@
     853        +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-array.make >> $@
     854        +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-attributes.make >> $@
     855        +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-empty.make >> $@
     856        +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-expression.make >> $@
     857        +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-io.make >> $@
     858        +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-monitor.make >> $@
     859        +make TIME_FORMAT='%e,' PRINT_FORMAT='' compile-operators.make >> $@
     860        +make TIME_FORMAT='%e' PRINT_FORMAT='' compile-typeof.make >> $@
     861        $(srcdir)/fixcsv.sh $@
    799862
    800863ctxswitch.csv:
    801         @echo "generator,coroutine,thread" > $@
    802         @+make ctxswitch-cfa_generator.runquiet >> $@ && echo -n ',' >> $@
    803         @+make ctxswitch-cfa_coroutine.runquiet >> $@ && echo -n ',' >> $@
    804         @+make ctxswitch-cfa_thread.runquiet >> $@
    805         @$(srcdir)/fixcsv.sh $@
     864        echo "building $@"
     865        echo "generator,coroutine,thread" > $@
     866        +make ctxswitch-cfa_generator.runquiet >> $@ && echo -n ',' >> $@
     867        +make ctxswitch-cfa_coroutine.runquiet >> $@ && echo -n ',' >> $@
     868        +make ctxswitch-cfa_thread.runquiet >> $@
     869        $(srcdir)/fixcsv.sh $@
    806870
    807871mutex.csv:
    808         @echo "1-monitor,2-monitor" > $@
    809         @+make mutex-cfa1.runquiet >> $@ && echo -n ',' >> $@
    810         @+make mutex-cfa2.runquiet >> $@
    811         @$(srcdir)/fixcsv.sh $@
    812 
    813 signal.csv:
    814         @echo "signal-1,signal-2,waitfor-1,waitfor-2" > $@
    815         @+make signal-cfa1.runquiet >> $@ && echo -n ',' >> $@
    816         @+make signal-cfa2.runquiet >> $@ && echo -n ',' >> $@
    817         @+make waitfor-cfa1.runquiet >> $@ && echo -n ',' >> $@
    818         @+make waitfor-cfa2.runquiet >> $@
    819         @$(srcdir)/fixcsv.sh $@
     872        echo "building $@"
     873        echo "1-monitor,2-monitor" > $@
     874        +make mutex-cfa1.runquiet >> $@ && echo -n ',' >> $@
     875        +make mutex-cfa2.runquiet >> $@
     876        $(srcdir)/fixcsv.sh $@
     877
     878scheduling.csv:
     879        echo "building $@"
     880        echo "schedint-1,schedint-2,schedext-1,schedext-2" > $@
     881        +make schedint-cfa1.runquiet >> $@ && echo -n ',' >> $@
     882        +make schedint-cfa2.runquiet >> $@ && echo -n ',' >> $@
     883        +make schedext-cfa1.runquiet >> $@ && echo -n ',' >> $@
     884        +make schedext-cfa2.runquiet >> $@
     885        $(srcdir)/fixcsv.sh $@
    820886
    821887%.diff.csv: %.csv
    822         @test -e $(srcdir)/baselines/$(arch)/$< || (echo "Error : Missing baseline for ${<}" && false)
    823         @$(srcdir)/baselines/calc.py $(srcdir)/baselines/$(arch)/$(<) $(<) > $@
    824 
    825 loop$(EXEEXT):
    826         $(BENCH_V_CC)$(COMPILE) -DBENCH_N=5000000000 $(srcdir)/loop.c
    827 
    828 function$(EXEEXT):
    829         $(BENCH_V_CC)$(COMPILE) -DBENCH_N=5000000000 $(srcdir)/function.c
    830 
    831 fetch_add$(EXEEXT):
    832         $(BENCH_V_CC)$(COMPILE) -DBENCH_N=500000000  $(srcdir)/fetch_add.c
    833 
    834 ttst_lock$(EXEEXT):
    835         $(BENCH_V_CC)$(COMPILE) -DBENCH_N=500000000  $(srcdir)/ttst_lock.c
    836 
    837 tls-fetch_add$(EXEEXT):
    838         $(BENCH_V_CC)$(COMPILE) -DBENCH_N=500000000  $(srcdir)/tls-fetch_add.c
     888        test -e $(srcdir)/baselines/$(arch)/$< || (echo "Error : Missing baseline for ${<}" && false)
     889        $(srcdir)/baselines/calc.py $(srcdir)/baselines/$(arch)/$(<) $(<) > $@
     890
     891basic-loop$(EXEEXT):
     892        $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/loop.c
     893
     894basic-function$(EXEEXT):
     895        $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/function.c
     896
     897basic-fetch_add$(EXEEXT):
     898        $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/fetch_add.c
     899
     900basic-ttst_lock$(EXEEXT):
     901        $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/ttst_lock.c
     902
     903basic-tls-fetch_add$(EXEEXT):
     904        $(BENCH_V_CC)$(COMPILE) $(srcdir)/basic/tls_fetch_add.c
     905
     906basic$(EXEEXT): $(BASIC_DEPEND)
    839907
    840908@WITH_LIBFIBRE_TRUE@ctxswitch-kos_fibre$(EXEEXT):
     
    846914ctxswitch$(EXEEXT): $(CTXSWITCH_DEPEND)
    847915
    848 ctxswitch-pthread$(EXEEXT):
    849         $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=50000000 $(srcdir)/ctxswitch/pthreads.c
    850 
    851916ctxswitch-cfa_generator$(EXEEXT):
    852         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_gen.cfa
     917        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_gen.cfa
    853918
    854919ctxswitch-cfa_coroutine$(EXEEXT):
    855         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_cor.cfa
     920        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_cor.cfa
    856921
    857922ctxswitch-cfa_thread$(EXEEXT):
    858         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd.cfa
     923        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_thrd.cfa
    859924
    860925ctxswitch-cfa_thread2$(EXEEXT):
    861         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd2.cfa
     926        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/ctxswitch/cfa_thrd2.cfa
    862927
    863928ctxswitch-upp_coroutine$(EXEEXT):
    864         $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_cor.cc
     929        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/ctxswitch/upp_cor.cc
    865930
    866931ctxswitch-upp_thread$(EXEEXT):
    867         $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_thrd.cc
    868 
    869 ctxswitch-goroutine$(EXEEXT):
     932        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/ctxswitch/upp_thrd.cc
     933
     934ctxswitch-python_coroutine$(EXEEXT):
     935        $(BENCH_V_PY)echo "#!/bin/sh" > a.out
     936        echo "python3.7 $(srcdir)/ctxswitch/python_cor.py" >> a.out
     937        chmod a+x a.out
     938
     939ctxswitch-nodejs_coroutine$(EXEEXT):
     940        $(BENCH_V_NODEJS)echo "#!/bin/sh" > a.out
     941        echo "nodejs $(srcdir)/ctxswitch/node_cor.js" >> a.out
     942        chmod a+x a.out
     943
     944ctxswitch-nodejs_await$(EXEEXT):
     945        $(BENCH_V_NODEJS)echo "#!/bin/sh" > a.out
     946        echo "nodejs $(srcdir)/ctxswitch/node_await.js" >> a.out
     947        chmod a+x a.out
     948
     949ctxswitch-goroutine_thread$(EXEEXT):
    870950        $(BENCH_V_GOC)go build -o a.out $(srcdir)/ctxswitch/goroutine.go
     951
     952ctxswitch-rust_thread$(EXEEXT):
     953        $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/ctxswitch/rust_thrd.rs
    871954
    872955ctxswitch-java_thread$(EXEEXT):
    873956        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/ctxswitch/JavaThread.java
    874         @echo "#!/bin/sh" > a.out
    875         @echo "java JavaThread" >> a.out
    876         @chmod a+x a.out
    877 
    878 mutex$(EXEEXT) :\
    879         loop.run                        \
    880         function.run            \
    881         fetch_add.run           \
    882         mutex-pthread_lock.run  \
    883         mutex-upp.run           \
     957        echo "#!/bin/sh" > a.out
     958        echo "java JavaThread" >> a.out
     959        chmod a+x a.out
     960
     961ctxswitch-pthread$(EXEEXT):
     962        $(BENCH_V_CC)$(COMPILE) $(srcdir)/ctxswitch/pthreads.c
     963
     964mutex$(EXEEXT) :                \
    884965        mutex-cfa1.run          \
    885966        mutex-cfa2.run          \
    886967        mutex-cfa4.run          \
    887         mutex-java_thread.run
    888 
    889 mutex-pthread_lock$(EXEEXT):
    890         $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=50000000 $(srcdir)/mutex/pthreads.c
     968        mutex-upp.run           \
     969        mutex-go.run            \
     970        mutex-rust.run          \
     971        mutex-java.run          \
     972        mutex-pthread.run
     973
     974mutex-pthread$(EXEEXT):
     975        $(BENCH_V_CC)$(COMPILE) $(srcdir)/mutex/pthreads.c
     976
     977mutex-cfa1$(EXEEXT):
     978        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutex/cfa1.cfa
     979
     980mutex-cfa2$(EXEEXT):
     981        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutex/cfa2.cfa
     982
     983mutex-cfa4$(EXEEXT):
     984        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutex/cfa4.cfa
    891985
    892986mutex-upp$(EXEEXT):
    893         $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/mutex/upp.cc
    894 
    895 mutex-cfa1$(EXEEXT):
    896         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000  $(srcdir)/mutex/cfa1.cfa
    897 
    898 mutex-cfa2$(EXEEXT):
    899         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000  $(srcdir)/mutex/cfa2.cfa
    900 
    901 mutex-cfa4$(EXEEXT):
    902         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000  $(srcdir)/mutex/cfa4.cfa
    903 
    904 mutex-java_thread$(EXEEXT):
     987        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/mutex/upp.cc
     988
     989mutex-go$(EXEEXT):
     990        $(BENCH_V_GOC)go build -o a.out $(srcdir)/mutex/goroutine.go
     991
     992mutex-rust$(EXEEXT):
     993        $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/mutex/rust.rs
     994
     995mutex-java$(EXEEXT):
    905996        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/mutex/JavaThread.java
    906         @echo "#!/bin/sh" > a.out
    907         @echo "java JavaThread" >> a.out
    908         @chmod a+x a.out
    909 
    910 signal$(EXEEXT) :\
    911         signal-pthread_cond.run \
    912         signal-upp.run          \
    913         signal-cfa1.run         \
    914         signal-cfa2.run         \
    915         signal-cfa4.run         \
    916         signal-java_thread.run
    917 
    918 signal-pthread_cond$(EXEEXT):
    919         $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=500000  $(srcdir)/schedint/pthreads.c
    920 
    921 signal-upp$(EXEEXT):
    922         $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedint/upp.cc
    923 
    924 signal-cfa1$(EXEEXT):
    925         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedint/cfa1.cfa
    926 
    927 signal-cfa2$(EXEEXT):
    928         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedint/cfa2.cfa
    929 
    930 signal-cfa4$(EXEEXT):
    931         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedint/cfa4.cfa
    932 
    933 signal-java_thread$(EXEEXT):
     997        echo "#!/bin/sh" > a.out
     998        echo "java JavaThread" >> a.out
     999        chmod a+x a.out
     1000
     1001schedint$(EXEEXT) :             \
     1002        schedint-cfa1.run       \
     1003        schedint-cfa2.run       \
     1004        schedint-cfa4.run       \
     1005        schedint-upp.run        \
     1006        schedint-rust.run       \
     1007        schedint-java.run       \
     1008        schedint-pthread.run
     1009
     1010schedint-cfa1$(EXEEXT):
     1011        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedint/cfa1.cfa
     1012
     1013schedint-cfa2$(EXEEXT):
     1014        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedint/cfa2.cfa
     1015
     1016schedint-cfa4$(EXEEXT):
     1017        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedint/cfa4.cfa
     1018
     1019schedint-upp$(EXEEXT):
     1020        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/schedint/upp.cc
     1021
     1022schedint-rust$(EXEEXT):
     1023        $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/schedint/rust.rs
     1024
     1025schedint-java$(EXEEXT):
    9341026        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/schedint/JavaThread.java
    935         @echo "#!/bin/sh" > a.out
    936         @echo "java JavaThread" >> a.out
    937         @chmod a+x a.out
    938 
    939 waitfor$(EXEEXT) :\
    940         waitfor-upp.run         \
    941         waitfor-cfa1.run                \
    942         waitfor-cfa2.run                \
    943         waitfor-cfa4.run
    944 
    945 waitfor-upp$(EXEEXT):
    946         $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedext/upp.cc
    947 
    948 waitfor-cfa1$(EXEEXT):
    949         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedext/cfa1.cfa
    950 
    951 waitfor-cfa2$(EXEEXT):
    952         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedext/cfa2.cfa
    953 
    954 waitfor-cfa4$(EXEEXT):
    955         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=500000  $(srcdir)/schedext/cfa4.cfa
    956 
    957 creation$(EXEEXT) :\
    958         creation-pthread.run                    \
     1027        echo "#!/bin/sh" > a.out
     1028        echo "java JavaThread" >> a.out
     1029        chmod a+x a.out
     1030
     1031schedint-pthread$(EXEEXT):
     1032        $(BENCH_V_CC)$(COMPILE) $(srcdir)/schedint/pthreads.c
     1033
     1034schedext$(EXEEXT) :             \
     1035        schedext-cfa1.run       \
     1036        schedext-cfa2.run       \
     1037        schedext-cfa4.run       \
     1038        schedext-upp.run        \
     1039        schedext-goroutine.run
     1040
     1041schedext-cfa1$(EXEEXT):
     1042        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedext/cfa1.cfa
     1043
     1044schedext-cfa2$(EXEEXT):
     1045        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedext/cfa2.cfa
     1046
     1047schedext-cfa4$(EXEEXT):
     1048        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/schedext/cfa4.cfa
     1049
     1050schedext-upp$(EXEEXT):
     1051        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/schedext/upp.cc
     1052
     1053schedext-goroutine$(EXEEXT):
     1054        $(BENCH_V_GOC)go build -o a.out $(srcdir)/schedext/goroutine.go
     1055
     1056creation$(EXEEXT) :                             \
     1057        creation-cfa_generator.run              \
    9591058        creation-cfa_coroutine.run              \
    9601059        creation-cfa_coroutine_eager.run        \
     
    9621061        creation-upp_coroutine.run              \
    9631062        creation-upp_thread.run                 \
    964         creation-goroutine.run                  \
    965         creation-java_thread.run
     1063        creation-python_coroutine.run           \
     1064        creation-nodejs_coroutine.run           \
     1065        creation-goroutine_thread.run           \
     1066        creation-rust_thread.run                \
     1067        creation-java_thread.run                \
     1068        creation-pthread.run
     1069
     1070creation-cfa_generator$(EXEEXT):
     1071        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_gen.cfa
    9661072
    9671073creation-cfa_coroutine$(EXEEXT):
    968         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.cfa
     1074        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_cor.cfa
    9691075
    9701076creation-cfa_coroutine_eager$(EXEEXT):
    971         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.cfa  -DEAGER
     1077        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_cor.cfa  -DEAGER
    9721078
    9731079creation-cfa_thread$(EXEEXT):
    974         $(BENCH_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_thrd.cfa
     1080        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/creation/cfa_thrd.cfa
    9751081
    9761082creation-upp_coroutine$(EXEEXT):
    977         $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_cor.cc
     1083        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/creation/upp_cor.cc
    9781084
    9791085creation-upp_thread$(EXEEXT):
    980         $(BENCH_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_thrd.cc
    981 
    982 creation-pthread$(EXEEXT):
    983         $(BENCH_V_CC)$(COMPILE)    -DBENCH_N=250000   $(srcdir)/creation/pthreads.c
    984 
    985 creation-goroutine$(EXEEXT):
     1086        $(BENCH_V_UPP)$(UPPCOMPILE) $(srcdir)/creation/upp_thrd.cc
     1087
     1088creation-python_coroutine$(EXEEXT):
     1089        $(BENCH_V_PY)echo "#!/bin/sh" > a.out
     1090        echo "python3.7 $(srcdir)/creation/python_cor.py" >> a.out
     1091        chmod a+x a.out
     1092
     1093creation-nodejs_coroutine$(EXEEXT):
     1094        $(BENCH_V_NODEJS)echo "#!/bin/sh" > a.out
     1095        echo "nodejs $(srcdir)/creation/node_cor.js" >> a.out
     1096        chmod a+x a.out
     1097
     1098creation-goroutine_thread$(EXEEXT):
    9861099        $(BENCH_V_GOC)go build -o a.out $(srcdir)/creation/goroutine.go
     1100
     1101creation-rust_thread$(EXEEXT):
     1102        $(BENCH_V_RUSTC)rustc -C opt-level=3 -o a.out $(srcdir)/creation/rust_thrd.rs
    9871103
    9881104creation-java_thread$(EXEEXT):
    9891105        $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/creation/JavaThread.java
    990         @echo "#!/bin/sh" > a.out
    991         @echo "java JavaThread" >> a.out
    992         @chmod a+x a.out
    993 
    994 compile$(EXEEXT) :\
     1106        echo "#!/bin/sh" > a.out
     1107        echo "java JavaThread" >> a.out
     1108        chmod a+x a.out
     1109
     1110creation-pthread$(EXEEXT):
     1111        $(BENCH_V_CC)$(COMPILE) $(srcdir)/creation/pthreads.c
     1112
     1113compile$(EXEEXT) :              \
    9951114        compile-array.make      \
    9961115        compile-attributes.make \
     
    10031122
    10041123compile-array$(EXEEXT):
    1005         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/array.cfa
     1124        $(CFACOMPILE) -fsyntax-only -w $(testdir)/array.cfa
    10061125
    10071126compile-attributes$(EXEEXT):
    1008         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/attributes.cfa
     1127        $(CFACOMPILE) -fsyntax-only -w $(testdir)/attributes.cfa
    10091128
    10101129compile-empty$(EXEEXT):
    1011         @$(CFACOMPILE) -fsyntax-only -w $(srcdir)/compile/empty.cfa
     1130        $(CFACOMPILE) -fsyntax-only -w $(srcdir)/compile/empty.cfa
    10121131
    10131132compile-expression$(EXEEXT):
    1014         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/expression.cfa
     1133        $(CFACOMPILE) -fsyntax-only -w $(testdir)/expression.cfa
    10151134
    10161135compile-io$(EXEEXT):
    1017         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/io1.cfa
     1136        $(CFACOMPILE) -fsyntax-only -w $(testdir)/io1.cfa
    10181137
    10191138compile-monitor$(EXEEXT):
    1020         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/monitor.cfa
     1139        $(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/monitor.cfa
    10211140
    10221141compile-operators$(EXEEXT):
    1023         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/operators.cfa
     1142        $(CFACOMPILE) -fsyntax-only -w $(testdir)/operators.cfa
    10241143
    10251144compile-thread$(EXEEXT):
    1026         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/thread.cfa
     1145        $(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/thread.cfa
    10271146
    10281147compile-typeof$(EXEEXT):
    1029         @$(CFACOMPILE) -fsyntax-only -w $(testdir)/typeof.cfa
     1148        $(CFACOMPILE) -fsyntax-only -w $(testdir)/typeof.cfa
     1149
     1150size$(EXEEXT) : size-cfa.runquiet
     1151
     1152size-cfa$(EXEEXT):
     1153        $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/size/size.cfa
    10301154
    10311155# Tell versions [3.59,3.63) of GNU make to not export all variables.
Note: See TracChangeset for help on using the changeset viewer.