Changeset c6f1f3e


Ignore:
Timestamp:
Jul 31, 2019, 3:33:44 PM (5 years ago)
Author:
Thierry Delisle <tdelisle@…>
Branches:
ADT, arm-eh, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum
Children:
0d92e5c
Parents:
1d76f8a4
Message:

Jenkins now also computes various speed-up graphs for performance monitoring

Files:
10 added
3 edited

Legend:

Unmodified
Added
Removed
  • Jenkinsfile

    r1d76f8a4 rc6f1f3e  
    106106
    107107def build() {
    108         // build_stage('Build', true) {
    109         //      // Build outside of the src tree to ease cleaning
    110         //      dir (BuildDir) {
    111         //              //Configure the conpilation (Output is not relevant)
    112         //              //Use the current directory as the installation target so nothing escapes the sandbox
    113         //              //Also specify the compiler by hand
    114         //              targets=""
    115         //              if( Settings.RunAllTests || Settings.RunBenchmark ) {
    116         //                      targets="--with-target-hosts='host:debug,host:nodebug'"
    117         //              } else {
    118         //                      targets="--with-target-hosts='host:debug'"
    119         //              }
    120 
    121         //              sh "${SrcDir}/configure CXX=${Settings.Compiler.CXX} CC=${Settings.Compiler.CC} ${Settings.Architecture.flags} ${targets} --quiet"
    122 
    123         //              //Compile the project
    124         //              sh 'make -j 8 --no-print-directory'
    125         //      }
    126         // }
    127 
    128108        debug = true
    129109        release = Settings.RunAllTests || Settings.RunBenchmark
     
    195175                dir (BuildDir) {
    196176                        //Append bench results
    197                         sh "make --no-print-directory -C benchmark jenkins"
     177                        sh "make --no-print-directory -C benchmark jenkins arch=${Settings.Architecture.name}"
    198178                }
    199179        }
     
    221201
    222202                //Then publish the results
    223                 do_plot(Settings.RunBenchmark && Settings.Publish, 'compile'  , groupCompile    , 'Compilation')
    224                 do_plot(Settings.RunBenchmark && Settings.Publish, 'ctxswitch', groupConcurrency, 'Context Switching')
    225                 do_plot(Settings.RunBenchmark && Settings.Publish, 'mutex'    , groupConcurrency, 'Mutual Exclusion')
    226                 do_plot(Settings.RunBenchmark && Settings.Publish, 'signal'   , groupConcurrency, 'Internal and External Scheduling')
     203                do_plot(Settings.RunBenchmark && Settings.Publish, 'compile'       , groupCompile    , 'Compilation')
     204                do_plot(Settings.RunBenchmark && Settings.Publish, 'compile-diff'  , groupCompile    , 'Compilation Speed-Up')
     205                do_plot(Settings.RunBenchmark && Settings.Publish, 'ctxswitch'     , groupConcurrency, 'Context Switching')
     206                do_plot(Settings.RunBenchmark && Settings.Publish, 'ctxswitch-diff', groupConcurrency, 'Context Switching Speed-Up')
     207                do_plot(Settings.RunBenchmark && Settings.Publish, 'mutex'         , groupConcurrency, 'Mutual Exclusion')
     208                do_plot(Settings.RunBenchmark && Settings.Publish, 'mutex-diff'    , groupConcurrency, 'Mutual Exclusion Speed-Up')
     209                do_plot(Settings.RunBenchmark && Settings.Publish, 'signal'        , groupConcurrency, 'Internal and External Scheduling')
     210                do_plot(Settings.RunBenchmark && Settings.Publish, 'signal-diff'   , groupConcurrency, 'Internal and External Scheduling Speed-Up')
    227211        }
    228212}
  • benchmark/Makefile.am

    r1d76f8a4 rc6f1f3e  
    5151STATS    = ${abs_top_srcdir}/tools/stat.py
    5252repeats  = 3 # 30
     53arch     = x64
    5354skipcompile = no
    5455TIME_FORMAT = "%E"
     
    99100@DOifskipcompile@
    100101        @+make compile.csv
     102        @-+make compile.diff.csv
    101103@DOendif@
    102104        @+make ctxswitch.csv
     105        @-+make ctxswitch.diff.csv
    103106        @+make mutex.csv
     107        @-+make mutex.diff.csv
    104108        @+make signal.csv
     109        @-+make signal.diff.csv
    105110@DOifskipcompile@
    106         @cat compile.csv
     111        cat compile.csv
     112        -cat compile.diff.csv
    107113@DOendif@
    108         @cat ctxswitch.csv
    109         @cat mutex.csv
    110         @cat signal.csv
     114        cat ctxswitch.csv
     115        -cat ctxswitch.diff.csv
     116        cat mutex.csv
     117        -cat mutex.diff.csv
     118        cat signal.csv
     119        -cat signal.diff.csv
    111120
    112121compile.csv:
     
    142151        @+make waitfor-cfa2.runquiet >> $@
    143152        @$(srcdir)/fixcsv.sh $@
     153
     154%.diff.csv: %.csv
     155        @test -e $(srcdir)/baselines/$(arch)/$< || (echo "Error : Missing baseline for ${<}" && false)
     156        @$(srcdir)/baselines/calc.py $(srcdir)/baselines/$(arch)/$(<) $(<) > $@
     157
    144158
    145159## =========================================================================================================
  • benchmark/Makefile.in

    r1d76f8a4 rc6f1f3e  
    397397STATS = ${abs_top_srcdir}/tools/stat.py
    398398repeats = 3 # 30
     399arch = x64
    399400skipcompile = no
    400401TIME_FORMAT = "%E"
     
    761762@DOifskipcompile@
    762763        @+make compile.csv
     764        @-+make compile.diff.csv
    763765@DOendif@
    764766        @+make ctxswitch.csv
     767        @-+make ctxswitch.diff.csv
    765768        @+make mutex.csv
     769        @-+make mutex.diff.csv
    766770        @+make signal.csv
     771        @-+make signal.diff.csv
    767772@DOifskipcompile@
    768         @cat compile.csv
     773        cat compile.csv
     774        -cat compile.diff.csv
    769775@DOendif@
    770         @cat ctxswitch.csv
    771         @cat mutex.csv
    772         @cat signal.csv
     776        cat ctxswitch.csv
     777        -cat ctxswitch.diff.csv
     778        cat mutex.csv
     779        -cat mutex.diff.csv
     780        cat signal.csv
     781        -cat signal.diff.csv
    773782
    774783compile.csv:
     
    805814        @$(srcdir)/fixcsv.sh $@
    806815
     816%.diff.csv: %.csv
     817        @test -e $(srcdir)/baselines/$(arch)/$< || (echo "Error : Missing baseline for ${<}" && false)
     818        @$(srcdir)/baselines/calc.py $(srcdir)/baselines/$(arch)/$(<) $(<) > $@
     819
    807820loop$(EXEEXT):
    808821        $(BENCH_V_CC)$(COMPILE) -DBENCH_N=5000000000 $(srcdir)/loop.c
Note: See TracChangeset for help on using the changeset viewer.