77 workflow_dispatch :
88 inputs :
99 pr_number :
10- required : true
10+ default : 91 # TODO: remove this line and uncomment required: true
11+ # required: true
1112 type : number
13+ scheduler :
14+ default : NP
15+ feature_branch :
16+ default : automated_full_benchmark # TODO (same as above)
17+ # required: true
1218
1319permissions :
1420 contents : write
@@ -33,36 +39,45 @@ jobs:
3339 repository : lf-lang/reactor-c
3440 token : ${{ secrets.GITHUB_TOKEN }}
3541 fetch-depth : 0 # It will be necessary to push to this repo
36- ref : automated-full-benchmark # FIXME: delete this line after merge
42+ ref : graphics
3743 path : reactor-c
3844
3945 - name : Set up workspace
4046 uses : lf-lang/reactor-c/.github/actions/set-up-workspace@automated-full-benchmark
4147
42- - name : Run C Benchmarks
43- # run: |
44- # ./runner/run_benchmark.py -m continue_on_error=True iterations=12 \
45- # benchmark="glob(*)" target=lf-c size=fast \
46- # target.params.scheduler=GEDF_NP,NP,adaptive threads=1,3,6,12,24
47- run : | # DEBUG
48- ./runner/run_benchmark.py -m continue_on_error=True iterations=12 \
49- benchmark="savina_parallelism_recmatmul" target=lf-c size=fast \
50- target.params.scheduler=NP,adaptive threads=1,3,0
51- shell : bash
48+ - name : Checkout benchmark repository
49+ uses : actions/checkout@v2
50+ with :
51+ repository : lf-lang/benchmarks-lingua-franca
52+ token : ${{ secrets.GITHUB_TOKEN }}
53+ fetch-depth : 1
54+ ref : main
5255
53- - name : Collect benchmark results
54- run : |
55- ./runner/collect_results.py latest latest-benchmark-results.csv
56- shell : bash
56+ - name : Run C Benchmarks (feature branch)
57+ id : benchmarks-feature
58+ uses : lf-lang/reactor-c/.github/actions/run-benchmarks@automated-full-benchmark
59+ with :
60+ scheduler : ${{ github.event.inputs.scheduler }}
61+ runtime-ref : ${{ github.event.inputs.branch }}
62+
63+ - name : Run C Benchmarks (main branch)
64+ id : benchmarks-main
65+ uses : lf-lang/reactor-c/.github/actions/run-benchmarks@automated-full-benchmark
66+ with :
67+ scheduler : GEDF_NP,NP,adaptive
68+ runtime-ref : main
5769
5870 - name : Make figure
5971 run : |
6072 OUTPUT_DIR=images/$(date -I)
73+ echo "Figure will be created in $OUTPUT_DIR"
6174 SHA=${{ github.sha }}
6275 OUTPUT_FILE=$OUTPUT_DIR/${SHA:0:7}.png
76+ echo "Figure will be named $OUTPUT_FILE"
6377 mkdir -p reactor-c/$OUTPUT_DIR
64- ./runner/make-graphics.py latest-benchmark-results.csv reactor-c/$OUTPUT_FILE
65- echo "::set-output name=output_file::$OUTPUT_FILE"
78+ ./runner/make-graphics.py ${{ steps.benchmarks-feature.outputs.output-file }} \
79+ ${{ steps.benchmarks-main.outputs.output-file }} reactor-c/$OUTPUT_FILE
80+ echo "::set-output name=output-file::$OUTPUT_FILE"
6681 shell : bash
6782 id : figure
6883
7287 git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
7388 git config --global user.name "github-actions[bot]"
7489 git fetch
75- git switch graphics
76- git add ${{ steps.figure.outputs.OUTPUT_FILE }}
90+ git add ${{ steps.figure.outputs.output-file }}
7791 git commit -m "benchmark ${{ github.sha }}"
7892 git config -l | grep 'http\..*\.extraheader' | cut -d= -f1 | \
7993 xargs -L1 git config --unset-all
86100 with :
87101 message : |
88102 
89- pr_number : 91 # ${{ inputs.pr_number }}
103+ pr_number : ${{ inputs.pr_number }}
90104 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
0 commit comments