Public
  1. Public

benchmark

Public
AuthorCommitMessageCommit dateIssues
EfesXGitHubEfesX
ff5c94d860dchange setup and teardown callback type (#1934)Change type of callbacks to take `std::function`
DillonGitHubDillon
8d4fdd6e6e0Fix build errors on QuRT (Hexagon) (#1938)
dominicGitHubdominic
951429282a9[clang-tidy] resolve some global clang-tidy issues (#1933)* [clang-tidy] resolve some global clang-tidy issues * more nolint and some global fixes
dominicGitHubdominic
57efbfb3a05use smart pointers (#1935)* use smart pointers * use vectors * size_t
Nicholas JungeGitHubNicholas Junge
afa46a38d92deps: Update nanobind_bazel to v2.5.0 (#1936)No new functionality, just an update to the newest nanobind. Co-authored-by: dominic <510002+dmah42@users.noreply.github.com>
Nicholas JungeGitHubNicholas Junge
657a55a0d49dx: Update pre-commit repos, change imports of Python / CC rules (#1937)The changes are an autofix added in Buildifier 8.0.1, designed to future-proof Bazel projects against the eventual removal of these rules from the native Bazel namespace.
dominicGitHubdominic
adbda82db30[clang-tidy] autofix readability issues (#1931)* [clang-tidy] autofix readability issues * more modern clang format
dominicGitHubdominic
2d4c8dd21a2[clang-tidy] autofix cppcoreguidelines (#1932)* [clang-tidy] autofix cppcoreguidelines * better than automation maybe
dominicGitHubdominic
f8db7f6c070[clang-tidy] fix missing braces (#1928)* [clang-tidy] fix missing braces
dominicGitHubdominic
c68e308b4f5[clang-tidy] fix warning about decaying array to pointer (#1926)* [clang-tidy] fix warning about decaying array to pointer * fix a different warning (old style cast) * use string_view instead of old-style const char* strings * ensure bazel windows is using c++17 * learn to use bazel * and tests * precommit fix * more string_view creation and casting * format * format * [clang-tidy] use unique_ptr for benchmark registration (#1927) * use unique_pt...
dominicGitHubdominic
05c5930d963[clang-tidy] use unique_ptr for benchmark registration (#1927)* use unique_ptr for benchmark registration
dominicGitHubdominic
6a508bf11e4benchmark declarations can and should be const (clang-tidy) (#1924)* benchmark declarations can and should be const (clang-tidy) * clang-format * add clang-tidy ignore file to remove googletest (and other third party) source for consideration
dominicGitHubdominic
a125fb67362run clang-tidy using a common config and reduced set of tests (#1923)* move clang-tidy config somewhere central and reduce it
dominicGitHubdominic
835365f99a0remove cxx03 test, fully unblocking c++1X development (#1903)* remove cxx03 test, fully unblocking c++1X development * remove unnecessary macros * pre-commit * remove opt-in analyzer warnings from clang-tidy * revert some changes, flush streams * replace abort with exit(1) to call atexit and dtors * remove more endl and put in explicit flush
UebelAndreGitHubUebelAndre
933e6d3c1f3Build `libpfm` with `rules_cc` (#1922)Co-authored-by: dominic <510002+dmah42@users.noreply.github.com>
Brad SmithGitHubBrad Smith
da9d68953b0Remove /proc/cpuinfo fallback path (#1921)AIX, WASM (fork of musl for libc) and a few others should now use the sysconf path. /proc is not portable and cpuinfo is Linux specific. It does not work anywhere else.
dominicGitHubdominic
9d8201efd4cfix sanitizer cmake builds (#1906)* bump llvm version to 19 * use same standard for feature checks as for the build
Brad SmithGitHubBrad Smith
edb1e76d8cbTry to use the _SC_NPROCESSORS_ONLN sysconf elsewhere (#1920)Try to use the sysconf method on other OS's other than just Linux and Solaris if it exists. Also slight shuffling of the order of sysctl and sysconf methods.
Brad SmithGitHubBrad Smith
faaa266d33fReplace usage of deprecated sysctl on macOS (#1919)The use of the sysctl hw.ncpu has long been deprecated and should be replaced by hw.logicalcpu.
Brad SmithGitHubBrad Smith
41e81b1ca4bRetrieve the number of online CPUs on OpenBSD and NetBSD (#1916)* Retrieve the number of online CPUs on OpenBSD and NetBSD * Spacing adjustment --------- Co-authored-by: dominic <510002+dmah42@users.noreply.github.com>
dominicGitHubdominic
47bc26c8b5cchange pacboy compiler target for windows builds (#1915)* change pacboy compiler target for windows builds * use an action for cmake instead of doing things manually * set compiler for cmake * remove cmake action from msys2 build * readd cmake package for msys2 * fix cmake test path to match build * fix msvc build type setting * fix msvc build type setting * consistent output directory for msvc * remove legacy environments (https://www.msys...
dominicGitHubdominic
2e16afc3fd5add back /proc/cpuinfo as a fallback for some platforms (#1918)
Brad SmithGitHubBrad Smith
c35af58b61dUpdate error message now that /proc/cpuinfo is no longer in use (#1917)c24774dc4f4402c3ad150363321cc972ed2669e7 removed using /proc/cpuinfo so no longer mention it in the error message.
Dominic HamonDominic Hamon
4a805f9f0f4clang-tidy warning
Dominic HamonDominic Hamon
46427584386fix some clang-tidy issues
xdje42GitHubxdje42
049f6e79cc3[BUG] Run external profiler (ProfilerManager) same number of iterations #1913 (#1914)Run the external profiler the same number of iterations as the benchmark was run normally. This makes, for example, a trace collected via ProfilerManager consistent with collected PMU data.
Christian ClaussGitHubChristian Clauss
3d027d7e381ruff rule E501: Fix long lines in Python code (#1910)* ruff rule E501: Fix long lines in Python code * Add missing space --------- Co-authored-by: dominic <510002+dmah42@users.noreply.github.com>
Christian ClaussGitHubChristian Clauss
6f21075d9ccGitHub Actions: build-and-test on an ARM processor (#1911)[Standard GitHub-hosted runners for public repositories](https://docs.github.com/en/actions/using-github-hosted-runners/using-github-hosted-runners/about-github-hosted-runners#standard-github-hosted-runners-for-public-repositories) --> `ubuntu-22.04-arm`, `ubuntu-24.04-arm`
Christian ClaussGitHubChristian Clauss
ecb5df64734Lint Python: Add more ruff rules (#1909)* Lint Python: Add more ruff rules * range(len()) --> enumerate() * zip(strict=True)
Nicholas JungeGitHubNicholas Junge
d6536acfe80ci: Update pre-commit hooks (#1905)As a fix, also turn the comment in libpfm's build file into a proper Starlark docstring. Co-authored-by: dominic <510002+dmah42@users.noreply.github.com>
Nicholas JungeGitHubNicholas Junge
4834ae9e575Update nanobind-bazel to v2.4.0 (#1904)Contains nanobind v2.4.0, which brings some more functionality, free-threading fixes, and performance improvements.
Helge DellerGitHubHelge Deller
c24774dc4f4Get number of CPUs with sysconf() on Linux (#1901)* Get number of CPUs with sysconf() on Linux Avoid parsing the /proc/cpuinfo just to get number of CPUs. Instead use the portable function provided by glibc. * Update sysinfo.cc
Helge DellerGitHubHelge Deller
39be87d3004Fix runtime crash when parsing /proc/cpuinfo fails (#1900)The testcase fails on sparc64, because the parsing of /proc/cpuinfo fails and thus currently returns "0" CPUs which finally leads to division-by-zero faults in the tests. Fix the issue by returning at least "1" CPU which allows the tests to run. A error message will be printed in any case. Long-term the code should be fixed to parse the cpuinfo output on sparch which looks like this: ... type...
Helge DellerGitHubHelge Deller
077db43001bcycleclock: Use cock_gettime() as fallback for any Linux architecture (#1899)The Linux kernel provides the clock_gettime() functions since a long time already, so it's possible to use it as a generic fallback option for any architecture if no other (better) possibility has been provided instead. I noticed the benchmark package failed to build on debian on the SH-4 architecture, so with this change SH-4 is now the first user of this fallback option.SH-4
0dminnimdaGitHub0dminnimda
f981f58da37README.md: fix build instructions (#1880)Co-authored-by: dominic <510002+dmah42@users.noreply.github.com>
HamzaGitHubHamza
7ddc400d623fix: remove clang-cl compilation warning (#1895)- MP flag only applies to cl, not cl frontends to other compilers (e.g. clang-cl, icx-cl etc). Co-authored-by: dominic <510002+dmah42@users.noreply.github.com>
Helge DellerGitHubHelge Deller
f65741b2bd9cycleclock: Support for PA-RISC (hppa) architecture (#1894)Co-authored-by: dominic <510002+dmah42@users.noreply.github.com>
Keith SmileyGitHubKeith Smiley
5af40e824de[bazel] Remove selects on CPU (#1892)In a future version of bazel this produces a warning. In this case using only the platform being windows is enough. Fixes: ``` WARNING: /.../benchmark/BUILD.bazel:29:15: in config_setting rule //:windows: select() on cpu is deprecated. Use platform constraints instead: https://bazel.build/docs/configurable-attributes#platforms. ```
Devon LoehrGitHubDevon Loehr
f4f93b5553cChange SDK version check (#1887)Now that github seems to have updated its builders, perhaps we can check the SDK version the more standard way.
Nicholas JungeGitHubNicholas Junge
ae52c9e66e7Remove wheel merge job, merge artifacts on download (#1886)This is supported by `actions/download-artifact@v4`, and endorsed by cibuildwheel in their documentation (see https://cibuildwheel.pypa.io/en/stable/deliver-to-pypi/#github-actions). Co-authored-by: dominic <510002+dmah42@users.noreply.github.com>
Dominic HamonDominic Hamon
c8c66e0b4a4remove unnecessary bazel action parameter
Dominic HamonDominic Hamon
b32ae9c9afdremove noenable_bzlmod as workspace support is going away
Nicholas JungeGitHubNicholas Junge
b2b0aab464bFix malformed clang invocation in build_ext.run (#1884)The fix is, unsurprisingly, to not invoke clang at all, because we use Bazel to build everything anyway. This also means that we can drop the setuptools pin.
Nicholas JungeGitHubNicholas Junge
3d88affa59eRemove if statement from wheel upload job (#1883)This to see if it works with the new artifact download config.
Nicholas JungeGitHubNicholas Junge
4b0533b726dAdd artifact name to download before wheel PyPI upload (#1882)Otherwise, the folder structure gets messed up, and twine errors out.
Dominic HamonDominic Hamon
c58e6d07105v1.9.1 bump
Guo CiGitHubGuo Ci
d26047a0ac8Improve examples on `ComputeStatistics` (#1881)
dominicGitHubdominic
62a321d6dc3update standard to C++17 per C++ build support (#1875)* update standard to C++17 per C++ build support * disable deadcode checks from clang-tidy * fix redundant definition of constexpr
Nicholas JungeGitHubNicholas Junge
50ffd3e546cDeclare a Python 3.13 toolchain, revert setup.py toolchain arget selection (#1876)The new solution was too smart (read: dense), because it did not account for the fact that we look for the Windows libs of the interpreter building the wheel, not the hermetic one supplying the header files. The fix is to just align the versions again, so that the libs and headers come from the same minor version.
Nicholas JungeGitHubNicholas Junge
a6af6eeb6a5Add a Python matrix to ensure the bindings build on all supported versions (#1871)Also contains a run of `pre-commit autoupdate`, and a bump of cibuildwheel to its latest tag for CPython 3.13 support. But, since we build for 3.10+ with SABI from 3.12 onwards, we don't even need a dedicated Python 3.13 build job or toolchain - the wheels from 3.12 can be reused. Simplifies some version-dependent logic around assembling the bazel build command in setup.py, and fixes a possib...