55 pull_request :
66 push :
77 branches :
8- - boost_unordered_flat_map
8+ - boost_unordered_flat_map_fil-c
99
1010jobs :
1111 posix :
1212 strategy :
1313 fail-fast : false
1414 matrix :
15- include :
16- - name : gcc-x64
17- compiler : g++-12
18- architecture : -m64
19- sourcefile : running_insertion.cpp
20- compileroptions : -std=c++2a -O3 -DNDEBUG -DHAVE_ABSEIL
21- outputfile : benchmark
22- reportdir : gcc-x64
23- # os: ubuntu-20.04
24- os : [self-hosted, linux, x64]
25- install : g++-12
26- command : sudo cgexec -g memory,cpu:shield sudo -u gha ./benchmark
27- - name : gcc-x64
28- compiler : g++-12
29- architecture : -m64
30- sourcefile : running_erasure.cpp
31- compileroptions : -std=c++2a -O3 -DNDEBUG -DHAVE_ABSEIL
32- outputfile : benchmark
33- reportdir : gcc-x64
34- # os: ubuntu-20.04
35- os : [self-hosted, linux, x64]
36- install : g++-12
37- command : sudo cgexec -g memory,cpu:shield sudo -u gha ./benchmark
38- - name : gcc-x64
39- compiler : g++-12
40- architecture : -m64
41- sourcefile : scattered_lookup.cpp
42- compileroptions : -std=c++2a -O3 -DNDEBUG -DHAVE_ABSEIL
43- outputfile : benchmark
44- reportdir : gcc-x64
45- # os: ubuntu-20.04
46- os : [self-hosted, linux, x64]
47- install : g++-12
48- command : sudo cgexec -g memory,cpu:shield sudo -u gha ./benchmark
49-
15+ include :
5016 - name : clang-x64
51- compiler : clang++-15
17+ compiler : fil++
5218 architecture : -m64
5319 sourcefile : running_insertion.cpp
5420 compileroptions : -std=c++2a -O3 -DNDEBUG -DHAVE_ABSEIL
@@ -57,127 +23,7 @@ jobs:
5723 # os: ubuntu-20.04
5824 os : [self-hosted, linux, x64]
5925 command : sudo cgexec -g memory,cpu:shield sudo -u gha ./benchmark
60- - name : clang-x64
61- compiler : clang++-15
62- architecture : -m64
63- sourcefile : running_erasure.cpp
64- compileroptions : -std=c++2a -O3 -DNDEBUG -DHAVE_ABSEIL
65- outputfile : benchmark
66- reportdir : clang-x64
67- # os: ubuntu-20.04
68- os : [self-hosted, linux, x64]
69- command : sudo cgexec -g memory,cpu:shield sudo -u gha ./benchmark
70- - name : clang-x64
71- compiler : clang++-15
72- architecture : -m64
73- sourcefile : scattered_lookup.cpp
74- compileroptions : -std=c++2a -O3 -DNDEBUG -DHAVE_ABSEIL
75- outputfile : benchmark
76- reportdir : clang-x64
77- # os: ubuntu-20.04
78- os : [self-hosted, linux, x64]
79- command : sudo cgexec -g memory,cpu:shield sudo -u gha ./benchmark
80-
81- - name : clang-arm64
82- compiler : clang++
83- architecture : -m64
84- sourcefile : running_insertion.cpp
85- compileroptions : -std=c++2a -O3 -DNDEBUG -DHAVE_ABSEIL
86- outputfile : benchmark
87- reportdir : clang-arm64
88- # os: ubuntu-20.04
89- os : [self-hosted, macOS, ARM64]
90- command : ./benchmark
91- xcode_version : 13.4.1
92- - name : clang-arm64
93- compiler : clang++
94- architecture : -m64
95- sourcefile : running_erasure.cpp
96- compileroptions : -std=c++2a -O3 -DNDEBUG -DHAVE_ABSEIL
97- outputfile : benchmark
98- reportdir : clang-arm64
99- # os: ubuntu-20.04
100- os : [self-hosted, macOS, ARM64]
101- command : ./benchmark
102- xcode_version : 13.4.1
103- - name : clang-arm64
104- compiler : clang++
105- architecture : -m64
106- sourcefile : scattered_lookup.cpp
107- compileroptions : -std=c++2a -O3 -DNDEBUG -DHAVE_ABSEIL
108- outputfile : benchmark
109- reportdir : clang-arm64
110- # os: ubuntu-20.04
111- os : [self-hosted, macOS, ARM64]
112- command : ./benchmark
113- xcode_version : 13.4.1
114-
115- - name : gcc-x86
116- compiler : g++-12
117- architecture : -m32
118- sourcefile : running_insertion.cpp
119- compileroptions : -std=c++2a -O3 -DNDEBUG -DHAVE_ABSEIL
120- outputfile : benchmark
121- reportdir : gcc-x86
122- # os: ubuntu-20.04
123- os : [self-hosted, linux, x64]
124- install : g++-12 gcc-12-multilib g++-12-multilib
125- command : sudo cgexec -g memory,cpu:shield sudo -u gha ./benchmark
126- - name : gcc-x86
127- compiler : g++-12
128- architecture : -m32
129- sourcefile : running_erasure.cpp
130- compileroptions : -std=c++2a -O3 -DNDEBUG -DHAVE_ABSEIL
131- outputfile : benchmark
132- reportdir : gcc-x86
133- # os: ubuntu-20.04
134- os : [self-hosted, linux, x64]
135- install : g++-12 gcc-12-multilib g++-12-multilib
136- command : sudo cgexec -g memory,cpu:shield sudo -u gha ./benchmark
137- - name : gcc-x86
138- compiler : g++-12
139- architecture : -m32
140- sourcefile : scattered_lookup.cpp
141- compileroptions : -std=c++2a -O3 -DNDEBUG -DHAVE_ABSEIL
142- outputfile : benchmark
143- reportdir : gcc-x86
144- # os: ubuntu-20.04
145- os : [self-hosted, linux, x64]
146- install : g++-12 gcc-12-multilib g++-12-multilib
147- command : sudo cgexec -g memory,cpu:shield sudo -u gha ./benchmark
148-
149- - name : clang-x86
150- compiler : clang++-15
151- architecture : -m32
152- sourcefile : running_insertion.cpp
153- compileroptions : -std=c++2a -O3 -DNDEBUG -DHAVE_ABSEIL
154- outputfile : benchmark
155- reportdir : clang-x86
156- # os: ubuntu-20.04
157- os : [self-hosted, linux, x64]
158- command : sudo cgexec -g memory,cpu:shield sudo -u gha ./benchmark
159- - name : clang-x86
160- compiler : clang++-15
161- architecture : -m32
162- sourcefile : running_erasure.cpp
163- compileroptions : -std=c++2a -O3 -DNDEBUG -DHAVE_ABSEIL
164- outputfile : benchmark
165- reportdir : clang-x86
166- # os: ubuntu-20.04
167- os : [self-hosted, linux, x64]
168- command : sudo cgexec -g memory,cpu:shield sudo -u gha ./benchmark
169- - name : clang-x86
170- compiler : clang++-15
171- architecture : -m32
172- sourcefile : scattered_lookup.cpp
173- compileroptions : -std=c++2a -O3 -DNDEBUG -DHAVE_ABSEIL
174- outputfile : benchmark
175- reportdir : clang-x86
176- # os: ubuntu-20.04
177- os : [self-hosted, linux, x64]
178- command : sudo cgexec -g memory,cpu:shield sudo -u gha ./benchmark
179-
180-
26+
18127 runs-on : ${{matrix.os}}
18228
18329 steps :
@@ -189,6 +35,18 @@ jobs:
18935 if uname -p | grep -q 'x86_64'; then sudo dpkg --add-architecture i386 ; fi
19036 sudo apt-get update
19137 sudo apt-get install -y ${{matrix.install}}
38+ - name : Install Fil-C
39+ if : startsWith(matrix.compiler, 'fil++')
40+ run : |
41+ set -xe
42+ mkdir -p /opt/downloads
43+ cd /opt/downloads
44+ fil_c_version="0.674"
45+ wget "https://github.com/pizlonator/fil-c/releases/download/v${fil_c_version}/optfil-${fil_c_version}-linux-x86_64.tar.xz"
46+ tar -xvJf "optfil-${fil_c_version}-linux-x86_64.tar.xz"
47+ cd "optfil-${fil_c_version}-linux-x86_64"
48+ echo -e "YES\nYES" | ./setup.sh
49+ echo "/opt/fil/bin" >> $GITHUB_PATH
19250 - name : Install Boost
19351 run : |
19452 cd $GITHUB_WORKSPACE
@@ -233,117 +91,7 @@ jobs:
23391 git add ${REPORT_FILE}
23492 git commit -m "updated benchmark results"
23593 git push
236-
237- windows :
238- strategy :
239- fail-fast : false
240- matrix :
241- include :
242- - name : vs-x64
243- compiler : cl
244- architecture : x64
245- sourcefile : running_insertion.cpp
246- compileroptions : /std:c++latest /O2 /D "NDEBUG" /D "HAVE_ABSEIL" /EHsc /MD /Fe:benchmark.exe
247- outputfile : benchmark.exe
248- reportdir : vs-x64
249- # os: windows-2019
250- os : [self-hosted, Windows, X64]
251- - name : vs-x64
252- compiler : cl
253- architecture : x64
254- sourcefile : running_erasure.cpp
255- compileroptions : /std:c++latest /O2 /D "NDEBUG" /D "HAVE_ABSEIL" /EHsc /MD /Fe:benchmark.exe
256- outputfile : benchmark.exe
257- reportdir : vs-x64
258- # os: windows-2019
259- os : [self-hosted, Windows, X64]
260- - name : vs-x64
261- compiler : cl
262- architecture : x64
263- sourcefile : scattered_lookup.cpp
264- compileroptions : /std:c++latest /O2 /D "NDEBUG" /D "HAVE_ABSEIL" /EHsc /MD /Fe:benchmark.exe
265- outputfile : benchmark.exe
266- reportdir : vs-x64
267- # os: windows-2019
268- os : [self-hosted, Windows, X64]
269-
270- - name : vs-x86
271- compiler : cl
272- architecture : x86
273- sourcefile : running_insertion.cpp
274- compileroptions : /std:c++latest /O2 /D "NDEBUG" /D "HAVE_ABSEIL" /EHsc /MD /Fe:benchmark.exe
275- outputfile : benchmark.exe
276- reportdir : vs-x86
277- # os: windows-2019
278- os : [self-hosted, Windows, X64]
279- - name : vs-x86
280- compiler : cl
281- architecture : x86
282- sourcefile : running_erasure.cpp
283- compileroptions : /std:c++latest /O2 /D "NDEBUG" /D "HAVE_ABSEIL" /EHsc /MD /Fe:benchmark.exe
284- outputfile : benchmark.exe
285- reportdir : vs-x86
286- # os: windows-2019
287- os : [self-hosted, Windows, X64]
288- - name : vs-x86
289- compiler : cl
290- architecture : x86
291- sourcefile : scattered_lookup.cpp
292- compileroptions : /std:c++latest /O2 /D "NDEBUG" /D "HAVE_ABSEIL" /EHsc /MD /Fe:benchmark.exe
293- outputfile : benchmark.exe
294- reportdir : vs-x86
295- # os: windows-2019
296- os : [self-hosted, Windows, X64]
297-
298- runs-on : ${{matrix.os}}
299-
300- steps :
301- - uses : actions/checkout@v3
302- - name : Install Boost
303- shell : cmd
304- run : |
305- cd %GITHUB_WORKSPACE%
306- git clone https://github.com/boostorg/boost.git boost-root
307- cd boost-root
308- git checkout develop
309- git submodule update --init
310- cmd /c bootstrap.bat
311- .\b2.exe -d0 headers
312- - name : Install Abseil
313- shell : cmd
314- run : |
315- cd %GITHUB_WORKSPACE%
316- git clone -b lts_2022_06_23 https://github.com/abseil/abseil-cpp.git abseil-root
317- - name : Compile
318- shell : cmd
319- run : |
320- cd %GITHUB_WORKSPACE%
321- call "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\Build\vcvarsall.bat" ${{matrix.architecture}}
322- set INCLUDE=%INCLUDE%;%GITHUB_WORKSPACE%\boost-root;%GITHUB_WORKSPACE%\abseil-root
323- echo %INCLUDE%
324- ${{matrix.compiler}} ${{matrix.sourcefile}} ${{matrix.compileroptions}}
325- - name : Set reportfile name
326- shell : powershell
327- run : |
328- echo "REPORT_FILE=${{matrix.reportdir}}\${{matrix.sourcefile}}.csv" >> $env:GITHUB_ENV
329- - name : Run benchmark
330- shell : powershell
331- run : |
332- echo "running benchmarks and saving to $env:REPORT_FILE"
333- ./${{matrix.outputfile}} | tee $env:REPORT_FILE
334- - name : Push benchmark results to repo
335- shell : powershell
336- run : |
337- git config --global user.name 'joaquintides'
338- git config --global user.email '[email protected] ' 339- git add $env:REPORT_FILE
340- git stash -- $env:REPORT_FILE
341- git pull
342- git stash pop
343- git add $env:REPORT_FILE
344- git commit -m "updated benchmark results"
345- git push
346-
94+
34795 final :
34896 needs : [posix,windows]
34997
0 commit comments