Skip to content

fix: base_extent calculation in bits_locator_t::template extent_in() #1128

fix: base_extent calculation in bits_locator_t::template extent_in()

fix: base_extent calculation in bits_locator_t::template extent_in() #1128

name: Performance Tests
permissions: read-all
on:
workflow_dispatch:
merge_group:
pull_request:
branches: [ main ]
env:
DEBIAN_FRONTEND: noninteractive
CMAKE_GENERATOR: Ninja
BUILD_TYPE: Release
LLVM_VERSION: 18
jobs:
performance_test:
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-24.04
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Install compiler
run: sudo apt update && sudo apt install -y clang-${{env.LLVM_VERSION}}
- name: Install build tools
run: |
sudo apt install -y ninja-build
- name: Configure CMake
env:
CC: "/usr/lib/llvm-${{env.LLVM_VERSION}}/bin/clang"
CXX: "/usr/lib/llvm-${{env.LLVM_VERSION}}/bin/clang++"
CXX_STANDARD: 20
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
- name: Build
id: build_step
shell: bash
run: |
# interesting summary data on stderr
cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} -t compilation_benchmark 2>&1 | tee ${{github.workspace}}/build/compilation_output.log
FRONT_END_TIME=$(grep "Clang front-end timer" ${{github.workspace}}/build/compilation_output.log | awk '{print $1}')
# generate summary with expandable section
echo "<details>" >> $GITHUB_STEP_SUMMARY
echo " <summary>Clang front-end: ${FRONT_END_TIME} seconds</summary>" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
echo " \`\`\`" >> $GITHUB_STEP_SUMMARY
cat ${{github.workspace}}/build/compilation_output.log >> $GITHUB_STEP_SUMMARY
echo " \`\`\`" >> $GITHUB_STEP_SUMMARY
echo "</details>" >> $GITHUB_STEP_SUMMARY
- name: 'Upload Compilation Trace'
uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3
with:
name: compilation_trace.json
path: ${{github.workspace}}/build/benchmark/CMakeFiles/compilation_benchmark.dir/big_nexus.cpp.json