Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
564 commits
Select commit Hold shift + click to select a range
05c5930
[clang-tidy] use unique_ptr for benchmark registration (#1927)
dmah42 Feb 11, 2025
c68e308
[clang-tidy] fix warning about decaying array to pointer (#1926)
dmah42 Feb 11, 2025
f8db7f6
[clang-tidy] fix missing braces (#1928)
dmah42 Feb 11, 2025
2d4c8dd
[clang-tidy] autofix cppcoreguidelines (#1932)
dmah42 Feb 12, 2025
adbda82
[clang-tidy] autofix readability issues (#1931)
dmah42 Feb 12, 2025
657a55a
dx: Update pre-commit repos, change imports of Python / CC rules (#1937)
nicholasjng Feb 17, 2025
afa46a3
deps: Update nanobind_bazel to v2.5.0 (#1936)
nicholasjng Feb 17, 2025
57efbfb
use smart pointers (#1935)
dmah42 Feb 18, 2025
9514292
[clang-tidy] resolve some global clang-tidy issues (#1933)
dmah42 Feb 18, 2025
8d4fdd6
Fix build errors on QuRT (Hexagon) (#1938)
dsharlet Feb 18, 2025
ff5c94d
change setup and teardown callback type (#1934)
EfesX Feb 20, 2025
571c235
Install FindPFM.cmake for bencmarkConfig.cmake (#1942)
parona-source Mar 5, 2025
5a4c459
fix memory manager result bug (#1941)
EfesX Mar 12, 2025
2bf3534
Compilation example was wrong. Fixed standard (#1945)
maxvdec Mar 12, 2025
6cd107f
CI: build libcxxabi against system unwind library
LebedevRI Mar 12, 2025
02c2580
CI: only clone/fetch the parts of LLVM monorepo that we need
LebedevRI Mar 12, 2025
1de7d6a
CI: use Ninja in sanitizer jobs
LebedevRI Mar 12, 2025
dafc634
CI: switch to ninja on all jobs
LebedevRI Mar 12, 2025
45ded53
update version of gtest to v1.15.2 (latest) and also the cmake config…
imrichardcole Mar 12, 2025
1bc59dc
Finish cxx version bump (#1948)
LebedevRI Mar 17, 2025
afa23b7
bump version to 1.9.2 in readiness for release. #1957
dmah42 Mar 25, 2025
cb4239f
Use the top-level ::benchmark namespace to resolve `make_unique` (#1960)
dmah42 Mar 27, 2025
2918a09
Refactor threading run (#1961)
krzikalla Mar 27, 2025
0da57b8
Threading api refactor (#1955)
krzikalla Mar 29, 2025
f828d71
Method templates for Fixtures introduced (#1967)
krzikalla Apr 11, 2025
ff52b22
Fixed private macro name issue (#1968)
krzikalla Apr 11, 2025
48f5cc2
Deprecate ubuntu-20.04 images in actions (#1971)
dmah42 Apr 16, 2025
c19058b
deps: Update nanobind_bazel to v2.7.0 (#1970)
nicholasjng Apr 22, 2025
0e08459
Fix error handling of getloadavg (#1974)
mark-horvath-arm Apr 29, 2025
b616354
Improve user UX on empty benchmarks (#1976)
LebedevRI May 1, 2025
bc0989a
Detect and report ASLR status (#1977)
LebedevRI May 1, 2025
f02794a
Automatic ASLR disablement (#1978)
LebedevRI May 1, 2025
bd9bb64
dev: Update pre-commit hooks (#1979)
nicholasjng May 6, 2025
299e592
bump to v1.9.3 to prepare a release
dmah42 May 7, 2025
afd9c34
Update build instructions for Visual Studio (#1980)
May 9, 2025
f921cfb
`MaybeReenterWithoutASLR()`: be more cautious about argument types (#…
LebedevRI May 12, 2025
4995099
Fix `MaybeReenterWithoutASLR()` in docker (#1985)
chfast May 16, 2025
3231850
fix: enable running in WebAssembly without filesystem (#1956)
XueSongTap May 19, 2025
64151f3
wheels: Build Linux ARM wheels natively on ARM runners (#1969)
nicholasjng May 19, 2025
eddb024
bump to v1.9.4
dmah42 May 19, 2025
0d52283
python binding: add range check (#1990)
senyai May 21, 2025
d24860f
fix: resolve editable installation issue for python package (#1989)
senyai May 21, 2025
176ad6c
Add deprecation warnings for MSVC (#1993)
frederick-vs-ja May 23, 2025
ce80955
[doc] Added nice to reducing_variance (#1994)
Proxihox May 23, 2025
1b721bb
Fix bug: link Shlwapi in Libs.private for Windows (#1996)
xshthkr Jun 6, 2025
d9ed709
Refactor: derive pkg-config info to link static libraries (#1998)
xshthkr Jun 12, 2025
7f72775
python: Update to cibuildwheel 3.0 (#1999)
nicholasjng Jun 12, 2025
f30ba8b
core(perf): use string move constructor for AddCustomContext (#2005)
romintomasetti Jun 27, 2025
b20cea6
Guard adding intel compiler flag behind check for intel compiler. (#2…
EricWF Jun 27, 2025
053b748
Update sysinfo.cc to fix compilation on windows (#2008)
GrinlexGH Jul 7, 2025
8516492
CI: update available containers (#2009)
LebedevRI Jul 7, 2025
4e18a00
Update lib pre-commit for ruff (#2010)
mosfet80 Jul 14, 2025
77c03fb
Added OpenSSF Scorecard Badge for Security Insights (#2014)
kiselik Jul 24, 2025
12ff2c2
Fix build when targetting Arm64EC using Clang (#2012)
dpaoliello Jul 31, 2025
f402ffd
Update README.md removing pylint badge
dmah42 Aug 12, 2025
6747309
python: Assert that libdir is a Path in all branches (#1992)
nicholasjng Aug 12, 2025
593f861
ci: Update pre-commit hooks and GitHub Action (#2000)
nicholasjng Aug 12, 2025
65aeed7
Python: add bindings for `AddCustomContext` (#1988)
senyai Aug 12, 2025
1a8de56
[StepSecurity] Apply security best practices (#2018)
step-security-bot Aug 12, 2025
1c5dd5f
Update ossf.yml to use full commit hash
dmah42 Aug 12, 2025
8f1b32e
trying to get this thing to actually work
dmah42 Aug 12, 2025
8b93126
copied the latest example
dmah42 Aug 12, 2025
e629f99
clang-format python bindings (benchmark.cc) (#2020)
senyai Aug 12, 2025
badec3d
Bump actions/checkout from 4.3.0 to 5.0.0 (#2019)
dependabot[bot] Aug 12, 2025
c262996
Bump actions/download-artifact from 4.3.0 to 5.0.0 (#2024)
dependabot[bot] Aug 12, 2025
7ba3507
Bump DoozyX/clang-format-lint-action from 0.18.2 to 0.20 (#2025)
dependabot[bot] Aug 12, 2025
981e80d
Bump astral-sh/setup-uv from 6.4.3 to 6.5.0 (#2026)
dependabot[bot] Aug 13, 2025
ba91c42
Bump pypa/cibuildwheel from 3.0.0 to 3.1.3 (#2023)
dependabot[bot] Aug 13, 2025
8dd1d82
Bump numpy from 1.25 to 2.0.2 in /tools (#2021)
dependabot[bot] Aug 13, 2025
847dfe4
Bump scipy from 1.10.0 to 1.13.1 in /tools (#2022)
dependabot[bot] Aug 13, 2025
1d58aeb
python: fix segfault on empty `argv` in `main()` (#2003)
senyai Aug 13, 2025
7697796
2011: Installing contents from benchmark's tools/ subdirectory. (#2016)
BuildMonkey Aug 13, 2025
8d19fc0
Bump pypa/cibuildwheel from 3.1.3 to 3.1.4 (#2029)
dependabot[bot] Aug 20, 2025
4b7b129
Bump astral-sh/setup-uv from 6.5.0 to 6.6.0 (#2030)
dependabot[bot] Aug 22, 2025
9c67fe3
Bump msys2/setup-msys2 from 2.28.0 to 2.29.0 (#2031)
dependabot[bot] Sep 2, 2025
ed234a3
Bump astral-sh/setup-uv from 6.6.0 to 6.6.1 (#2032)
dependabot[bot] Sep 3, 2025
fde61ad
Bump lukka/get-cmake from 4.1.0 to 4.1.1 (#2033)
dependabot[bot] Sep 3, 2025
3a8ce45
Bump actions/setup-python from 5.6.0 to 6.0.0 (#2035)
dependabot[bot] Sep 5, 2025
1614415
Bump pypa/gh-action-pypi-publish from 1.12.4 to 1.13.0 (#2034)
dependabot[bot] Sep 5, 2025
5f7d669
Add initializer for statistics field (#2038)
pcc Sep 12, 2025
b2959a7
JSON reporter: make int dumping always happen in C locale (#2040)
LebedevRI Sep 15, 2025
d65c35c
Bump astral-sh/setup-uv from 6.6.1 to 6.7.0 (#2041)
dependabot[bot] Sep 16, 2025
2948b6a
Adding explicit cast to aid in template argument deduction. (#2042)
dmah42 Sep 16, 2025
bc6e223
Bump pypa/cibuildwheel from 3.1.4 to 3.2.0 (#2043)
dependabot[bot] Sep 24, 2025
01deef5
Bump actions/cache from 4.2.4 to 4.3.0 (#2044)
dependabot[bot] Sep 25, 2025
8afba0b
remove done todo
dmah42 Sep 29, 2025
fa782d5
Bump astral-sh/setup-uv from 6.7.0 to 6.8.0 (#2045)
dependabot[bot] Oct 1, 2025
7ad8b80
Bump ossf/scorecard-action from 2.4.2 to 2.4.3 (#2047)
dependabot[bot] Oct 2, 2025
40b63f0
Guard feature checks against failed compilation (#2046)
cnaples79 Oct 2, 2025
ef2da7b
Bump lukka/get-cmake from 4.1.1 to 4.1.2 (#2048)
dependabot[bot] Oct 6, 2025
bfe96c4
Bump numpy from 2.0.2 to 2.3.3 in /tools (#2049)
dependabot[bot] Oct 7, 2025
be59db5
Bump scipy from 1.13.1 to 1.16.2 in /tools (#2050)
dependabot[bot] Oct 7, 2025
4e26a9e
Bump astral-sh/setup-uv from 6.8.0 to 7.0.0 (#2051)
dependabot[bot] Oct 8, 2025
3c5cbde
dev: Update pre-commit hooks and `nanobind_bazel` version (#2053)
nicholasjng Oct 13, 2025
b796597
wheels: Update GitHub Actions runner to avoid errors due to macOS x86…
nicholasjng Oct 13, 2025
37522dc
Bump pypa/cibuildwheel from 3.2.0 to 3.2.1 (#2056)
dependabot[bot] Oct 14, 2025
c291768
bindings(python): Remove hard `absl-py` dependency (#2052)
nicholasjng Oct 14, 2025
6d1aced
Bump astral-sh/setup-uv from 7.0.0 to 7.1.0 (#2055)
dependabot[bot] Oct 14, 2025
4165bf2
Bump numpy from 2.3.3 to 2.3.4 in /tools (#2058)
dependabot[bot] Oct 16, 2025
d029e78
fix: add missing override key word to ThreadRunnerDefault::RunThreads…
colesturza Oct 16, 2025
7b9e482
Bump astral-sh/setup-uv from 7.1.0 to 7.1.1 (#2061)
dependabot[bot] Oct 21, 2025
8498a2a
Fix warnings from Clang (#2062)
dingxiangfei2009 Oct 23, 2025
a61c3a6
Bump actions/upload-artifact from 4.6.2 to 5.0.0 (#2063)
dependabot[bot] Oct 27, 2025
8ece016
Bump actions/download-artifact from 5.0.0 to 6.0.0 (#2064)
dependabot[bot] Oct 27, 2025
cd6bbba
Bump astral-sh/setup-uv from 7.1.1 to 7.1.2 (#2065)
dependabot[bot] Oct 28, 2025
18b746f
Bump scipy from 1.16.2 to 1.16.3 in /tools (#2066)
dependabot[bot] Oct 29, 2025
57d14f7
Bump astral-sh/setup-uv from 7.1.2 to 7.1.3 (#2068)
dependabot[bot] Nov 11, 2025
f87f080
Fix typos in some files (#2070)
Edge-Seven Nov 17, 2025
850b88b
Bump actions/checkout from 5.0.0 to 5.0.1 (#2072)
dependabot[bot] Nov 18, 2025
0f0a272
Bump pypa/cibuildwheel from 3.2.1 to 3.3.0 (#2069)
dependabot[bot] Nov 18, 2025
6509ad7
Bump numpy from 2.3.4 to 2.3.5 in /tools (#2071)
dependabot[bot] Nov 18, 2025
9458f54
Take a closure for benchmark configuration (#2073)
dingxiangfei2009 Nov 20, 2025
188e827
Add missing type_traits include to benchmark_register.h (#2076)
nico Nov 21, 2025
6f0461a
Bump lukka/get-cmake from 4.1.2 to 4.2.0 (#2075)
dependabot[bot] Nov 21, 2025
c3f8657
Bump actions/checkout from 5.0.1 to 6.0.0 (#2074)
dependabot[bot] Nov 21, 2025
31a110a
Bump actions/setup-python from 6.0.0 to 6.1.0 (#2079)
dependabot[bot] Nov 26, 2025
2279f2a
Bump astral-sh/setup-uv from 7.1.3 to 7.1.4 (#2077)
dependabot[bot] Nov 26, 2025
6a8dee9
Remove redundant feature checks on re-run of CMake config step (#2084)
theComputeKid Nov 29, 2025
009f05c
Make the build work with -Wformat=2 (#2088)
davidben Dec 8, 2025
1b150e2
Add tests for user counters w/ threads (#2089)
LebedevRI Dec 8, 2025
ade834a
Bump lukka/get-cmake from 4.2.0 to 4.2.1 (#2091)
dependabot[bot] Dec 10, 2025
2f550a3
Bump actions/checkout from 6.0.0 to 6.0.1 (#2086)
dependabot[bot] Dec 10, 2025
63f16af
Bump astral-sh/setup-uv from 7.1.4 to 7.1.5 (#2090)
dependabot[bot] Dec 10, 2025
3e7dac6
#2080: Fix rate and thread rate counter aggregates (#2081)
FRosner Dec 10, 2025
8b940fb
Bump actions/download-artifact from 6.0.0 to 7.0.0 (#2094)
dependabot[bot] Dec 15, 2025
4caa0f0
Bump actions/upload-artifact from 5.0.0 to 6.0.0 (#2093)
dependabot[bot] Dec 15, 2025
bc71af2
Bump actions/cache from 4.3.0 to 5.0.1 (#2092)
dependabot[bot] Dec 15, 2025
5411a3c
Bump msys2/setup-msys2 from 2.29.0 to 2.30.0 (#2096)
dependabot[bot] Dec 16, 2025
04ccbd8
Bump astral-sh/setup-uv from 7.1.5 to 7.1.6 (#2095)
dependabot[bot] Dec 16, 2025
4a76220
Bump egor-tensin/setup-clang from 1.4 to 2.1 (#2098)
dependabot[bot] Dec 29, 2025
4931237
Bump numpy from 2.3.5 to 2.4.0 in /tools (#2097)
dependabot[bot] Jan 6, 2026
571265d
Bump astral-sh/setup-uv from 7.1.6 to 7.2.0 (#2099)
dependabot[bot] Jan 6, 2026
27fc2bf
Bump pypa/cibuildwheel from 3.3.0 to 3.3.1 (#2100)
dependabot[bot] Jan 6, 2026
a6e0a72
Bump numpy from 2.4.0 to 2.4.1 in /tools (#2102)
dependabot[bot] Jan 13, 2026
262afc9
Bump scipy from 1.16.3 to 1.17.0 in /tools (#2103)
dependabot[bot] Jan 13, 2026
90ebbde
Make the Benchmark class public (#2101)
jmr Jan 14, 2026
494a04f
Bump actions/cache from 5.0.1 to 5.0.2 (#2104)
dependabot[bot] Jan 18, 2026
5c55f5d
clang tidy warnings
dmah42 Jan 20, 2026
31fae1b
rename to avoid gtest warnings
dmah42 Jan 20, 2026
aa3ed62
pin bazelversion to pre-9
dmah42 Jan 21, 2026
d8db2f9
Silence -Wc2y-extensions warning around __COUNTER__ (#2108)
Sunday111 Jan 21, 2026
192ef10
version bump to 1.9.5
dmah42 Jan 21, 2026
97ad7f1
Bump actions/checkout from 6.0.1 to 6.0.2 (#2111)
dependabot[bot] Jan 23, 2026
a86573f
Bump lukka/get-cmake from 4.2.1 to 4.2.2 (#2110)
dependabot[bot] Jan 23, 2026
03325ca
Bump actions/setup-python from 6.1.0 to 6.2.0 (#2112)
dependabot[bot] Jan 23, 2026
ed7081d
exclude linking to lib rt for QNX to avoid linking error (#2114)
Osama131 Jan 28, 2026
4dbe0f4
Bump lukka/get-cmake from 4.2.2 to 4.2.3 (#2115)
dependabot[bot] Jan 29, 2026
4ed29ae
Bump actions/cache from 5.0.2 to 5.0.3 (#2116)
dependabot[bot] Jan 30, 2026
471fb2c
Bump astral-sh/setup-uv from 7.2.0 to 7.2.1 (#2119)
dependabot[bot] Feb 2, 2026
016bef3
fix(pyproject): Update license to SPDX identifier (#2120)
nicholasjng Feb 2, 2026
eed8f5c
Bump numpy from 2.4.1 to 2.4.2 in /tools (#2121)
dependabot[bot] Feb 3, 2026
78a9d85
Bump astral-sh/setup-uv from 7.2.1 to 7.3.0 (#2122)
dependabot[bot] Feb 9, 2026
84732c8
Replicate generic hardware events on all CPU PMUs (#2123)
pcc Feb 11, 2026
559b7cc
Fix error: format string is not a string literal (#2126) (#2126)
sergio-nsk Feb 13, 2026
7da00e8
Revert "Remove redundant feature checks on re-run of CMake config ste…
dsharlet Feb 17, 2026
6ebb287
Bump the version of python used for pip. (#2130)
dmah42 Feb 21, 2026
8b14531
Bump scipy from 1.17.0 to 1.17.1 in /tools (#2132)
dependabot[bot] Feb 24, 2026
a2e384c
Bump actions/upload-artifact from 6.0.0 to 7.0.0 (#2133)
dependabot[bot] Feb 27, 2026
5b9fd10
Bump actions/download-artifact from 7.0.0 to 8.0.0 (#2134)
dependabot[bot] Feb 27, 2026
fbb750d
Add BENCHMARK_NAMED macro for named benchmarks without lambda (#2135)
5kng Feb 27, 2026
5c76a26
cmake: cache HAVE_* results to skip feature checks on re-runs (#2137)
5kng Feb 27, 2026
4ca840d
Bump astral-sh/setup-uv from 7.3.0 to 7.3.1 (#2136)
dependabot[bot] Mar 2, 2026
b8ea42b
multiple fixes to avoid Windows x64 crashes (#2139)
dmah42 Mar 4, 2026
6daf2df
Refactor/modularize headers (#2140)
dmah42 Mar 4, 2026
fae322b
refactor ToExponentAndMantissa to use StrFormat instead of std::strin…
dmah42 Mar 5, 2026
1a54956
Bump pypa/cibuildwheel from 3.3.1 to 3.4.0 (#2142)
dependabot[bot] Mar 6, 2026
56ff6a8
Bump numpy from 2.4.2 to 2.4.3 in /tools (#2143)
dependabot[bot] Mar 10, 2026
f239b05
Bump astral-sh/setup-uv from 7.3.1 to 7.4.0 (#2145)
dependabot[bot] Mar 11, 2026
a51e54b
Fix CMake detection on pthread_affinity test on FreeBSD (#2146)
aokblast Mar 11, 2026
25a6432
Add WASI compatibility (#2144)
ashvardanian Mar 12, 2026
ed9d115
Bump actions/download-artifact from 8.0.0 to 8.0.1 (#2147)
dependabot[bot] Mar 12, 2026
b893ddf
Bump astral-sh/setup-uv from 7.4.0 to 7.5.0 (#2148)
dependabot[bot] Mar 16, 2026
7ea443b
Bump astral-sh/setup-uv from 7.5.0 to 7.6.0 (#2150)
dependabot[bot] Mar 16, 2026
70915a0
Bump lukka/get-cmake from 4.2.3 to 4.3.0 (#2152)
dependabot[bot] Mar 19, 2026
d4393d5
Bump actions/cache from 5.0.3 to 5.0.4 (#2151)
dependabot[bot] Mar 19, 2026
7e413be
Bump msys2/setup-msys2 from 2.30.0 to 2.31.0 (#2153)
dependabot[bot] Mar 23, 2026
8dc85ae
docs: document benchmark_min_time CLI forms (#2154)
felmonon Mar 26, 2026
2d13d40
Bump astral-sh/setup-uv from 7.6.0 to 8.0.0 (#2160)
dependabot[bot] Mar 31, 2026
e91678e
Bump lukka/get-cmake from 4.3.0 to 4.3.1 (#2159)
dependabot[bot] Mar 31, 2026
7671889
Bump numpy from 2.4.3 to 2.4.4 in /tools (#2158)
dependabot[bot] Mar 31, 2026
fc8a082
feat: Add ScopedPauseTiming RAII helper (#2157)
dmah42 Apr 2, 2026
4fa8072
Fix two GCC 16 issues (#2164)
gruenich Apr 5, 2026
8abf1e7
[doc] Properly document CMake minimum required version as 3.13 (#2162)
gruenich Apr 5, 2026
8586b50
Bump pypa/cibuildwheel from 3.4.0 to 3.4.1 (#2161)
dependabot[bot] Apr 7, 2026
88a927f
Bump egor-tensin/setup-clang from 2.1 to 2.2 (#2165)
dependabot[bot] Apr 8, 2026
7bf9750
Bump pypa/gh-action-pypi-publish from 1.13.0 to 1.14.0 (#2166)
dependabot[bot] Apr 8, 2026
1eceef8
Bump actions/cache from 5.0.4 to 5.0.5 (#2169)
dependabot[bot] Apr 14, 2026
af64526
Bump astral-sh/setup-uv from 8.0.0 to 8.1.0 (#2171)
dependabot[bot] Apr 20, 2026
221171c
Bump actions/upload-artifact from 7.0.0 to 7.0.1 (#2168)
dependabot[bot] Apr 20, 2026
96c7ddc
In PerfCountersTest.MultiThreaded, serialize worker threads (#2175)
musicinmybrain Apr 20, 2026
33e9abf
Fix thread safety attribute detection failing to link in CMake check …
anishesg Apr 23, 2026
b808118
Replace deprecated _ReadWriteBarrier with std::atomic_signal_fence in…
qorexdevs Apr 24, 2026
ec0ce39
Document naming benchmark arguments (#2180)
shreejaykurhade Apr 26, 2026
f43ed80
Docs: JSON output format (#2181)
shreejaykurhade Apr 27, 2026
ff773f8
BENCHMARK_ENABLE_WERROR=Off should also disable -pedantic-errors (#2183)
ednolan Apr 28, 2026
dea73ef
docs: Add comprehensive command-line options documentation (#2187)
jlaportebot May 7, 2026
935a2f5
Bump egor-tensin/setup-clang from 2.2 to 2.3 (#2188)
dependabot[bot] May 13, 2026
c47bbfb
Bump lukka/get-cmake from 4.3.1 to 4.3.2 (#2176)
dependabot[bot] May 13, 2026
ac68e7d
Bump numpy from 2.4.4 to 2.4.6 in /tools (#2189)
dependabot[bot] May 19, 2026
486f6ea
Fix .gitignore: unignore .cmake files recursively under cmake/ (#2191)
ShawayL May 19, 2026
83c826c
Sort AUTHORS and CONTRIBUTORS entries (#2192)
ShawayL May 20, 2026
266b9b6
Add libpfm to pkg-config Libs.private when libpfm is enabled (#2194)
kiwigitops May 22, 2026
926a850
Fix pkg-config paths for absolute install dirs (#2198)
Haihan-Jiang May 25, 2026
c6b37ee
Add AGENTS.md (#2202)
LebedevRI May 26, 2026
6f674db
Clarify benchmark_main CMake target usage (#2205)
Haihan-Jiang May 26, 2026
161bbc6
Bump lukka/get-cmake from 4.3.2 to 4.3.3 (#2196)
dependabot[bot] May 26, 2026
7417cb6
Document static library benchmark registration (#2200)
Haihan-Jiang May 26, 2026
223269f
Document CMake embedding guidance (#2203)
Haihan-Jiang May 26, 2026
d6303b2
Skip errored runs when computing repetition statistics (#2199)
Haihan-Jiang May 26, 2026
6408acf
Clarify DoNotOptimize const-ref warning (#2201)
Haihan-Jiang May 27, 2026
345756f
Skip perf counter tests when counters are unavailable (#2204)
Haihan-Jiang May 27, 2026
e27a0c1
Tune AGENTS.md (#2208)
LebedevRI May 27, 2026
56c1349
CONTRIBUTING: actually link to AGENTS.md (#2211)
LebedevRI May 27, 2026
c0f58d3
Disable allocation zeroing in benchmarks on Android (#2214)
charlesmunger Jun 2, 2026
00ae6b0
Bump actions/checkout from 6.0.2 to 6.0.3 (#2216)
dependabot[bot] Jun 3, 2026
a846068
Bump astral-sh/setup-uv from 8.1.0 to 8.2.0 (#2217)
dependabot[bot] Jun 4, 2026
4f38b0a
Bump pypa/cibuildwheel from 3.4.1 to 4.0.0 (#2218)
dependabot[bot] Jun 9, 2026
b5ba9ba
Handle missing locale in test on more platforms (#2219)
alyssais Jun 10, 2026
517b5d5
Fix up windows tests (#2220)
dmah42 Jun 11, 2026
2b0e960
Bump pypa/cibuildwheel from 4.0.0 to 4.1.0 (#2222)
dependabot[bot] Jun 15, 2026
1b3abc8
Bump msys2/setup-msys2 from 2.31.0 to 2.31.1 (#2170)
dependabot[bot] Jun 15, 2026
eb15fc8
Introduce Rust bindings (#2221)
dmah42 Jun 15, 2026
64cc7ce
better rust build/test (#2223)
dmah42 Jun 15, 2026
11ca63f
Bump msys2/setup-msys2 from 2.31.1 to 2.32.0 (#2224)
dependabot[bot] Jun 16, 2026
5bfa2bd
Bump actions/checkout from 6.0.3 to 7.0.0 (#2225)
dependabot[bot] Jun 19, 2026
846feb6
Bump scipy from 1.17.1 to 1.18.0 in /tools (#2226)
dependabot[bot] Jun 22, 2026
ab9383b
Bump lukka/get-cmake from 4.3.3 to 4.3.4 (#2227)
dependabot[bot] Jun 22, 2026
36224c0
Bump numpy from 2.4.6 to 2.5.0 in /tools (#2228)
dependabot[bot] Jun 23, 2026
0b88d5c
Bump actions/cache from 5.0.5 to 6.0.0 (#2230)
dependabot[bot] Jun 23, 2026
bab0f02
Bump actions/setup-python from 6.2.0 to 6.3.0 (#2232)
dependabot[bot] Jun 25, 2026
eedbb49
Bump actions/cache from 6.0.0 to 6.1.0 (#2236)
dependabot[bot] Jun 29, 2026
882336a
rust bindings: keep argv[0] alive across benchmark reporting (#2237)
Alearner12 Jun 30, 2026
b3a8d2f
docs: document Bazel integration (#2238)
tuna4ll Jul 2, 2026
fb5a752
Run an autofix pass on github workflows using zizmor (#2233)
dmah42 Jul 6, 2026
79d0748
fix(linux): prevent infinite re-exec loop under AppArmor (#2239)
anishesg Jul 6, 2026
c46905a
Bump astral-sh/setup-uv from 8.2.0 to 8.3.0 (#2242)
dependabot[bot] Jul 7, 2026
231fffe
Bump numpy from 2.5.0 to 2.5.1 in /tools (#2241)
dependabot[bot] Jul 7, 2026
d5acb69
Bump astral-sh/setup-uv from 8.3.0 to 8.3.1 (#2243)
dependabot[bot] Jul 8, 2026
c4114ca
Bump astral-sh/setup-uv from 8.3.1 to 8.3.2 (#2244)
dependabot[bot] Jul 9, 2026
8b66b54
Make --benchmark_list_tests respect --benchmark_format (#2245)
devtejasx Jul 16, 2026
ff954e9
Fix typos, add codespell configuration (#2262)
mwtoews Jul 24, 2026
2b0bff7
Fix compile error with clang -Werror -Wunused-template (#2268)
aokblast Jul 25, 2026
e624269
zizmor should be happy now
dmah42 Jul 28, 2026
6f09473
Bump lukka/get-cmake from 4.3.4 to 4.4.0 (#2255)
dependabot[bot] Jul 28, 2026
fd4cc2b
pin action to commit hash
dmah42 Jul 28, 2026
76912fe
Bump actions/setup-python from 6.3.0 to 7.0.0 (#2258)
dependabot[bot] Jul 28, 2026
9cd398d
Bump actions/checkout from 7.0.0 to 7.0.1 (#2259)
dependabot[bot] Jul 28, 2026
b25d332
Bump pypa/gh-action-pypi-publish from 1.14.0 to 1.14.1 (#2260)
dependabot[bot] Jul 28, 2026
fffeac7
Fix thread-safety warnings in Mutex::lock/unlock for newer clang
mturnpaugh Jul 28, 2026
f04ab7b
Disabled the -fvisibility on benchmark for duo-GTest runner.
ajorians Jun 22, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .bazelversion
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
8.2.1
40 changes: 35 additions & 5 deletions .clang-tidy
Original file line number Diff line number Diff line change
@@ -1,7 +1,37 @@
---
Checks: 'clang-analyzer-*,readability-redundant-*,performance-*'
WarningsAsErrors: 'clang-analyzer-*,readability-redundant-*,performance-*'
HeaderFilterRegex: '.*'
AnalyzeTemporaryDtors: false
Checks: >
abseil-*,
bugprone-*,
clang-analyzer-*,
cppcoreguidelines-*,
google-*,
misc-*,
performance-*,
readability-*,
-clang-analyzer-deadcode*,
-clang-analyzer-optin*,
-readability-identifier-length
WarningsAsErrors: ''
HeaderFilterRegex: ''
FormatStyle: none
User: user
CheckOptions:
llvm-else-after-return.WarnOnConditionVariables: 'false'
modernize-loop-convert.MinConfidence: reasonable
modernize-replace-auto-ptr.IncludeStyle: llvm
cert-str34-c.DiagnoseSignedUnsignedCharComparisons: 'false'
google-readability-namespace-comments.ShortNamespaceLines: '10'
cert-err33-c.CheckedFunctions: '::aligned_alloc;::asctime_s;::at_quick_exit;::atexit;::bsearch;::bsearch_s;::btowc;::c16rtomb;::c32rtomb;::calloc;::clock;::cnd_broadcast;::cnd_init;::cnd_signal;::cnd_timedwait;::cnd_wait;::ctime_s;::fclose;::fflush;::fgetc;::fgetpos;::fgets;::fgetwc;::fopen;::fopen_s;::fprintf;::fprintf_s;::fputc;::fputs;::fputwc;::fputws;::fread;::freopen;::freopen_s;::fscanf;::fscanf_s;::fseek;::fsetpos;::ftell;::fwprintf;::fwprintf_s;::fwrite;::fwscanf;::fwscanf_s;::getc;::getchar;::getenv;::getenv_s;::gets_s;::getwc;::getwchar;::gmtime;::gmtime_s;::localtime;::localtime_s;::malloc;::mbrtoc16;::mbrtoc32;::mbsrtowcs;::mbsrtowcs_s;::mbstowcs;::mbstowcs_s;::memchr;::mktime;::mtx_init;::mtx_lock;::mtx_timedlock;::mtx_trylock;::mtx_unlock;::printf_s;::putc;::putwc;::raise;::realloc;::remove;::rename;::scanf;::scanf_s;::setlocale;::setvbuf;::signal;::snprintf;::snprintf_s;::sprintf;::sprintf_s;::sscanf;::sscanf_s;::strchr;::strerror_s;::strftime;::strpbrk;::strrchr;::strstr;::strtod;::strtof;::strtoimax;::strtok;::strtok_s;::strtol;::strtold;::strtoll;::strtoul;::strtoull;::strtoumax;::strxfrm;::swprintf;::swprintf_s;::swscanf;::swscanf_s;::thrd_create;::thrd_detach;::thrd_join;::thrd_sleep;::time;::timespec_get;::tmpfile;::tmpfile_s;::tmpnam;::tmpnam_s;::tss_create;::tss_get;::tss_set;::ungetc;::ungetwc;::vfprintf;::vfprintf_s;::vfscanf;::vfscanf_s;::vfwprintf;::vfwprintf_s;::vfwscanf;::vfwscanf_s;::vprintf_s;::vscanf;::vscanf_s;::vsnprintf;::vsnprintf_s;::vsprintf;::vsprintf_s;::vsscanf;::vsscanf_s;::vswprintf;::vswprintf_s;::vswscanf;::vswscanf_s;::vwprintf_s;::vwscanf;::vwscanf_s;::wcrtomb;::wcschr;::wcsftime;::wcspbrk;::wcsrchr;::wcsrtombs;::wcsrtombs_s;::wcsstr;::wcstod;::wcstof;::wcstoimax;::wcstok;::wcstok_s;::wcstol;::wcstold;::wcstoll;::wcstombs;::wcstombs_s;::wcstoul;::wcstoull;::wcstoumax;::wcsxfrm;::wctob;::wctrans;::wctype;::wmemchr;::wprintf_s;::wscanf;::wscanf_s;'
cert-oop54-cpp.WarnOnlyIfThisHasSuspiciousField: 'false'
cert-dcl16-c.NewSuffixes: 'L;LL;LU;LLU'
google-readability-braces-around-statements.ShortStatementLines: '1'
cppcoreguidelines-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic: 'true'
google-readability-namespace-comments.SpacesBeforeComments: '2'
modernize-loop-convert.MaxCopySize: '16'
modernize-pass-by-value.IncludeStyle: llvm
modernize-use-nullptr.NullMacros: 'NULL'
llvm-qualified-auto.AddConstToQualified: 'false'
modernize-loop-convert.NamingStyle: CamelCase
llvm-else-after-return.WarnOnUnfixable: 'false'
google-readability-function-size.StatementThreshold: '800'
...

1 change: 1 addition & 0 deletions .clang-tidy.ignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.*third_party/.*
24 changes: 0 additions & 24 deletions .github/.libcxx-setup.sh

This file was deleted.

11 changes: 11 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: /
schedule:
interval: daily

- package-ecosystem: pip
directory: /tools
schedule:
interval: daily
12 changes: 12 additions & 0 deletions .github/install_bazel.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
if ! bazel version; then
arch=$(uname -m)
if [ "$arch" == "aarch64" ]; then
arch="arm64"
fi
echo "Downloading $arch Bazel binary from GitHub releases."
curl -L -o $HOME/bin/bazel --create-dirs "https://github.com/bazelbuild/bazel/releases/download/8.2.0/bazel-8.2.0-linux-$arch"
chmod +x $HOME/bin/bazel
else
# Bazel is installed for the correct architecture
exit 0
fi
35 changes: 35 additions & 0 deletions .github/libcxx-setup.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
#!/usr/bin/env bash

set -e

# Checkout LLVM sources
git clone --filter=blob:none --depth=1 --branch llvmorg-19.1.6 --no-checkout https://github.com/llvm/llvm-project.git llvm-project
cd llvm-project
git sparse-checkout set --cone
git checkout llvmorg-19.1.6
git sparse-checkout set cmake llvm/cmake runtimes libcxx libcxxabi
cd ..

## Setup libc++ options
if [ -z "$BUILD_32_BITS" ]; then
export BUILD_32_BITS=OFF && echo disabling 32 bit build
fi

## Build and install libc++ (Use unstable ABI for better sanitizer coverage)
mkdir llvm-build && cd llvm-build
cmake -GNinja \
-DCMAKE_C_COMPILER=${CC} \
-DCMAKE_CXX_COMPILER=${CXX} \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIBCXX_ABI_UNSTABLE=OFF \
-DLLVM_USE_SANITIZER=${LIBCXX_SANITIZER} \
-DLLVM_BUILD_32_BITS=${BUILD_32_BITS} \
-DLIBCXXABI_USE_LLVM_UNWINDER=OFF \
-DLLVM_INCLUDE_TESTS=OFF \
-DLIBCXX_INCLUDE_TESTS=OFF \
-DLIBCXX_INCLUDE_BENCHMARKS=OFF \
-DLLVM_ENABLE_RUNTIMES='libcxx;libcxxabi' \
../llvm-project/runtimes/
cmake --build . -- cxx cxxabi
cd ..
17 changes: 12 additions & 5 deletions .github/workflows/bazel.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,27 @@ on:
push: {}
pull_request: {}

env:
CMAKE_GENERATOR: Ninja

permissions:
contents: read

jobs:
job:
build_and_test_default:
name: bazel.${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-2022]

os: [ubuntu-latest, macos-latest, windows-latest]
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false

- name: mount bazel cache
uses: actions/cache@v2.0.0
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
env:
cache-name: bazel-cache
with:
Expand Down
54 changes: 54 additions & 0 deletions .github/workflows/build-and-test-min-cmake.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: build-and-test-min-cmake

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]

permissions:
contents: read

env:
CMAKE_GENERATOR: Ninja

jobs:
job:
name: ${{ matrix.os }}.min-cmake
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest]

steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false

- uses: lukka/get-cmake@e6906078ebd1ccb8ce51ab4626ac46a1b5a517e3 # latest
with:
cmakeVersion: 3.13.0

- name: create build environment
run: cmake -E make_directory $RUNNER_WORKSPACE/_build

- name: setup cmake initial cache
run: touch compiler-cache.cmake

- name: configure cmake
env:
CXX: ${{ matrix.compiler }}
shell: bash
working-directory: ${{ runner.workspace }}/_build
run: >
cmake -C ${{ github.workspace }}/compiler-cache.cmake
$GITHUB_WORKSPACE
-DBENCHMARK_DOWNLOAD_DEPENDENCIES=ON
-DCMAKE_CXX_VISIBILITY_PRESET=hidden
-DCMAKE_VISIBILITY_INLINES_HIDDEN=ON

- name: build
shell: bash
working-directory: ${{ runner.workspace }}/_build
run: cmake --build .
66 changes: 14 additions & 52 deletions .github/workflows/build-and-test-perfcounters.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,12 @@ on:
pull_request:
branches: [ main ]

env:
CMAKE_GENERATOR: Ninja

permissions:
contents: read

jobs:
job:
# TODO(dominic): Extend this to include compiler and set through env: CC/CXX.
Expand All @@ -14,21 +20,20 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, ubuntu-20.04]
os: [ubuntu-latest]
build_type: ['Release', 'Debug']
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false

- name: install libpfm
run: sudo apt -y install libpfm4-dev

- name: setup cmake
uses: jwlawson/actions-setup-cmake@v1.9
with:
cmake-version: '3.5.1'
run: |
sudo apt update
sudo apt -y install libpfm4-dev

- name: create build environment
run: cmake -E make_directory ${{ runner.workspace }}/_build
run: cmake -E make_directory $RUNNER_WORKSPACE/_build

- name: configure cmake
shell: bash
Expand All @@ -52,46 +57,3 @@ jobs:
# working-directory: ${{ runner.workspace }}/_build
# run: ctest -C ${{ matrix.build_type }} --rerun-failed --output-on-failure

ubuntu-16_04:
name: ubuntu-16.04.${{ matrix.build_type }}
runs-on: [ubuntu-latest]
strategy:
fail-fast: false
matrix:
build_type: ['Release', 'Debug']
container: ubuntu:16.04
steps:
- uses: actions/checkout@v2

- name: install required bits
run: |
apt update
apt -y install clang cmake g++ git

- name: install libpfm
run: apt -y install libpfm4-dev

- name: create build environment
run: cmake -E make_directory $GITHUB_WORKSPACE/_build

- name: configure cmake
shell: bash
working-directory: ${{ github.workspace }}/_build
run: >
cmake $GITHUB_WORKSPACE
-DBENCHMARK_ENABLE_LIBPFM=1
-DBENCHMARK_DOWNLOAD_DEPENDENCIES=ON
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }}

- name: build
shell: bash
working-directory: ${{ github.workspace }}/_build
run: cmake --build . --config ${{ matrix.build_type }}

# Skip testing, for now. It seems perf_event_open does not succeed on the
# hosting machine, very likely a permissions issue.
# TODO(mtrofin): Enable test.
# - name: test
# shell: bash
# working-directory: ${{ runner.workspace }}/_build
# run: ctest -C ${{ matrix.build_type }} --rerun-failed --output-on-failure
Loading
Loading