Files
benchmark-runner/.gitea/workflows/binary-search.yml

40 lines
4.1 KiB
YAML

name: Benchmark
on:
workflow_dispatch: {}
jobs:
binary-search:
strategy:
matrix:
SIMULATOR: ["SmallBoomConfig","MediumBoomConfig","LargeBoomConfig","MegaBoomConfig"]
BMS_MODIFIER: [18]
ELEMENTS: [1024]
ELEMENTS_TO_FIND: [100]
RANDOM_PLACEMENT: [1]
container:
image: quay.io/jonas_peeters/small-boom-config:0.9
steps:
- name: Download binary
run: |
mkdir -p ./binaries
echo "Downloading binary: ./binaries/binary-search_BMS_MODIFIER_${{ matrix.BMS_MODIFIER }}_ELEMENTS_${{ matrix.ELEMENTS }}_ELEMENTS_TO_FIND_${{ matrix.ELEMENTS_TO_FIND }}_RANDOM_PLACEMENT_${{ matrix.RANDOM_PLACEMENT }}.riscv from https://git.peeters.page/jonas-peeters/benchmark-runner/raw/branch/main/binaries/binary-search_BMS_MODIFIER_${{ matrix.BMS_MODIFIER }}_ELEMENTS_${{ matrix.ELEMENTS }}_ELEMENTS_TO_FIND_${{ matrix.ELEMENTS_TO_FIND }}_RANDOM_PLACEMENT_${{ matrix.RANDOM_PLACEMENT }}.riscv"
curl -L -o ./binaries/binary-search_BMS_MODIFIER_${{ matrix.BMS_MODIFIER }}_ELEMENTS_${{ matrix.ELEMENTS }}_ELEMENTS_TO_FIND_${{ matrix.ELEMENTS_TO_FIND }}_RANDOM_PLACEMENT_${{ matrix.RANDOM_PLACEMENT }}.riscv https://git.peeters.page/jonas-peeters/benchmark-runner/raw/branch/main/binaries/binary-search_BMS_MODIFIER_${{ matrix.BMS_MODIFIER }}_ELEMENTS_${{ matrix.ELEMENTS }}_ELEMENTS_TO_FIND_${{ matrix.ELEMENTS_TO_FIND }}_RANDOM_PLACEMENT_${{ matrix.RANDOM_PLACEMENT }}.riscv
- name: Info
run: |
echo "SIMULATOR: ${{ matrix.SIMULATOR }}"
echo "BMS_MODIFIER: ${{ matrix.BMS_MODIFIER }}"
echo "ELEMENTS: ${{ matrix.ELEMENTS }}"
echo "ELEMENTS_TO_FIND: ${{ matrix.ELEMENTS_TO_FIND }}"
echo "RANDOM_PLACEMENT: ${{ matrix.RANDOM_PLACEMENT }}"
echo "Run command: (set -o pipefail && time /opt/${{ matrix.SIMULATOR }} +permissive +dramsim +dramsim_ini_dir=/opt/dramsim2_ini +max-cycles=1000000000 +verbose +permissive-off /opt/pk ./binaries/binary-search_BMS_MODIFIER_${{ matrix.BMS_MODIFIER }}_ELEMENTS_${{ matrix.ELEMENTS }}_ELEMENTS_TO_FIND_${{ matrix.ELEMENTS_TO_FIND }}_RANDOM_PLACEMENT_${{ matrix.RANDOM_PLACEMENT }}.riscv </dev/null)"
ls ./binaries/binary-search_BMS_MODIFIER_${{ matrix.BMS_MODIFIER }}_ELEMENTS_${{ matrix.ELEMENTS }}_ELEMENTS_TO_FIND_${{ matrix.ELEMENTS_TO_FIND }}_RANDOM_PLACEMENT_${{ matrix.RANDOM_PLACEMENT }}.riscv
- name: Run
run: bash -c "(set -o pipefail && time /opt/${{ matrix.SIMULATOR }} +permissive +dramsim +dramsim_ini_dir=/opt/dramsim2_ini +max-cycles=1000000000 +verbose +permissive-off /opt/pk ./binaries/binary-search_BMS_MODIFIER_${{ matrix.BMS_MODIFIER }}_ELEMENTS_${{ matrix.ELEMENTS }}_ELEMENTS_TO_FIND_${{ matrix.ELEMENTS_TO_FIND }}_RANDOM_PLACEMENT_${{ matrix.RANDOM_PLACEMENT }}.riscv </dev/null > >(tee -a binary-search_BMS_MODIFIER_${{ matrix.BMS_MODIFIER }}_ELEMENTS_${{ matrix.ELEMENTS }}_ELEMENTS_TO_FIND_${{ matrix.ELEMENTS_TO_FIND }}_RANDOM_PLACEMENT_${{ matrix.RANDOM_PLACEMENT }}.riscv.out) 2> >(tee -a binary-search_BMS_MODIFIER_${{ matrix.BMS_MODIFIER }}_ELEMENTS_${{ matrix.ELEMENTS }}_ELEMENTS_TO_FIND_${{ matrix.ELEMENTS_TO_FIND }}_RANDOM_PLACEMENT_${{ matrix.RANDOM_PLACEMENT }}.riscv.out >/dev/null))"
- name: Upload verbose output
run: |
export TIMESTAMP=$(date +%Y%m%d_%H%M%S)
mv binary-search_BMS_MODIFIER_${{ matrix.BMS_MODIFIER }}_ELEMENTS_${{ matrix.ELEMENTS }}_ELEMENTS_TO_FIND_${{ matrix.ELEMENTS_TO_FIND }}_RANDOM_PLACEMENT_${{ matrix.RANDOM_PLACEMENT }}.riscv.out binary-search_BMS_MODIFIER_${{ matrix.BMS_MODIFIER }}_ELEMENTS_${{ matrix.ELEMENTS }}_ELEMENTS_TO_FIND_${{ matrix.ELEMENTS_TO_FIND }}_RANDOM_PLACEMENT_${{ matrix.RANDOM_PLACEMENT }}.riscv_${TIMESTAMP}.out
curl -T binary-search_BMS_MODIFIER_${{ matrix.BMS_MODIFIER }}_ELEMENTS_${{ matrix.ELEMENTS }}_ELEMENTS_TO_FIND_${{ matrix.ELEMENTS_TO_FIND }}_RANDOM_PLACEMENT_${{ matrix.RANDOM_PLACEMENT }}.riscv_${TIMESTAMP}.out https://files.ham.peeters.page/upload/