79 lines
2.5 KiB
YAML
79 lines
2.5 KiB
YAML
name: performance-test
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
|
|
jobs:
|
|
performancetest-linux:
|
|
runs-on: ubuntu-22.04
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
compiler: [g++-11, clang++-14]
|
|
target: [Debug]
|
|
std: [11, 20]
|
|
config: [
|
|
"-DCPPTRACE_GET_SYMBOLS_WITH_LIBDWARF=On -DCPPTRACE_BUILD_SPEEDTEST_DWARF4=On",
|
|
"-DCPPTRACE_GET_SYMBOLS_WITH_LIBDWARF=On -DCPPTRACE_BUILD_SPEEDTEST_DWARF5=On"
|
|
]
|
|
#exclude:
|
|
## TODO: Maybe a bug in dwarf5_ranges. b _dwarf_error_string
|
|
## DW_DLE_RNGLISTS_ERROR: rnglists table index of 2052 too large for table of 5 entries.
|
|
#- config: "-DCPPTRACE_GET_SYMBOLS_WITH_LIBDWARF=On -DCPPTRACE_BUILD_SPEEDTEST_DWARF5=On"
|
|
# compiler: clang++-14
|
|
## TODO: Currently slow. Need to investigate why.
|
|
#- config: "-DCPPTRACE_GET_SYMBOLS_WITH_LIBDWARF=On -DCPPTRACE_BUILD_SPEEDTEST_DWARF4=On"
|
|
# compiler: clang++-14
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: dependencies
|
|
run: sudo apt install gcc-11 g++-11 libgcc-11-dev
|
|
- name: build and speedtest
|
|
run: |
|
|
mkdir -p build
|
|
cd build
|
|
cmake .. \
|
|
-DCMAKE_BUILD_TYPE=${{matrix.target}} \
|
|
-DCMAKE_CXX_COMPILER=${{matrix.compiler}} \
|
|
-DCMAKE_CXX_STANDARD=${{matrix.std}} \
|
|
${{matrix.config}} \
|
|
-DCPPTRACE_BACKTRACE_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/include/backtrace.h \
|
|
-DCPPTRACE_BUILD_SPEEDTEST=On
|
|
make -j
|
|
- name: test
|
|
working-directory: build
|
|
run: |
|
|
./speedtest | python3 ../ci/speedtest.py ${{matrix.compiler}} ${{matrix.config}}
|
|
|
|
performancetest-windows:
|
|
runs-on: windows-2019
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
compiler: [cl, clang++]
|
|
target: [Debug]
|
|
std: [11, 20]
|
|
config: [
|
|
"-DCPPTRACE_GET_SYMBOLS_WITH_DBGHELP=On"
|
|
]
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Enable Developer Command Prompt
|
|
uses: ilammy/msvc-dev-cmd@v1.10.0
|
|
- name: build and speedtest
|
|
run: |
|
|
mkdir -p build
|
|
cd build
|
|
cmake .. `
|
|
-DCMAKE_BUILD_TYPE=Debug `
|
|
-DCMAKE_CXX_COMPILER=${{matrix.compiler}} `
|
|
-DCMAKE_CXX_STANDARD=${{matrix.std}} `
|
|
${{matrix.config}} `
|
|
-DCPPTRACE_BUILD_SPEEDTEST=On
|
|
msbuild .\cpptrace.sln
|
|
- name: test
|
|
working-directory: build
|
|
run: |
|
|
.\${{matrix.target}}\speedtest.exe | python3 ../ci/speedtest.py ${{matrix.config}}
|