notbugAs an Amazon Associate I earn from qualifying purchases.
Want a good read? Try FreeBSD Mastery: Jails (IT Mastery Book 15)
Want a good monitor light? See my photos
All times are UTC
Ukraine
The recently imposed "must be logged in" restriction is a response to increased bot traffic on the site. This affects search, commits, and vuxml pages.
Search engines are not blocked. Try using "site:www.freshports.org" and your search terms.
After the ports freeze to fix some stuff, the freeze is over. I have some work to do before FreshPorts can start processing commits again before it can start processing again. I've created an issue for that.
Port details
libcpucycles Microlibrary for counting CPU cycles
20260625 benchmarks on this many watch lists=0 search for ports that depend on this port Find issues related to this port Report an issue related to this port View this port on Repology. pkg-fallout 20260105Version of this port present on the latest quarterly branch.
Maintainer: fuz@FreeBSD.org search for ports maintained by this maintainer
Port Added: 2024-10-30 09:03:18
Last Update: 2026-06-28 10:59:30
Commit Hash: 7eda5f2
Also Listed In: devel
License: PD
WWW:
https://cpucycles.cr.yp.to/
Description:
libcpucycles is a microlibrary for counting CPU cycles. Cycle counts are not as detailed as Falk diagrams but are the most precise timers available to typical software; they are central tools used in understanding and improving software performance. The libcpucycles API is simple: include <cpucycles.h>, call cpucycles() to receive a long long whenever desired, and link with -lcpucycles. Internally, libcpucycles understands machine-level cycle counters for amd64 (both PMC and TSC), arm32, arm64 (both PMC and VCT), mips64, ppc32, ppc64, riscv32, riscv64, s390x, sparc64, and x86. libcpucycles also understands four OS-level mechanisms, which give varying levels of accuracy: mach_absolute_time, perf_event, CLOCK_MONOTONIC, and, as a fallback, microsecond-resolution gettimeofday. When the program first calls cpucycles(), libcpucycles automatically benchmarks the available mechanisms and selects the mechanism that does the best job. Subsequent cpucycles() calls are thread-safe and very fast. An accompanying cpucycles-info program prints a summary of cycle-counter accuracy.
Homepage    cgit ¦ Codeberg ¦ GitHub ¦ GitLab ¦ SVNWeb - no subversion history for this port

Manual pages:
pkg-plist: as obtained via: make generate-plist
Expand this list (16 items)
Collapse this list.
  1. @ldconfig
  2. /usr/local/share/licenses/libcpucycles-20260625/catalog.mk
  3. /usr/local/share/licenses/libcpucycles-20260625/LICENSE
  4. /usr/local/share/licenses/libcpucycles-20260625/PD
  5. bin/cpucycles-info
  6. bin/cpucycles-open
  7. include/cpucycles.h
  8. lib/libcpucycles.a
  9. lib/libcpucycles.so
  10. lib/libcpucycles.so.1
  11. share/man/man1/cpucycles-info.1.gz
  12. share/man/man1/cpucycles-open.1.gz
  13. share/man/man3/cpucycles.3.gz
  14. @owner
  15. @group
  16. @mode
Collapse this list.
USE_RC_SUBR (Service Scripts)
  • no SUBR information found for this port
Dependency lines:
  • libcpucycles>0:benchmarks/libcpucycles
To install the port:
cd /usr/ports/benchmarks/libcpucycles/ && make install clean
To add the package, run one of these commands:
  • pkg install benchmarks/libcpucycles
  • pkg install libcpucycles
NOTE: If this package has multiple flavors (see below), then use one of them instead of the name specified above.
PKGNAME: libcpucycles
Flavors: there is no flavor information for this port.
distinfo:
TIMESTAMP = 1782599462 SHA256 (libcpucycles-20260625.tar.gz) = 74a815bfb5ab645e5d07617125824c946ce5039db139e5233467d1ff33f69afa SIZE (libcpucycles-20260625.tar.gz) = 63305

Packages (timestamps in pop-ups are UTC):
libcpucycles
ABIaarch64amd64armv6armv7i386powerpcpowerpc64powerpc64le
FreeBSD:13:latest2026010520260105-20240318_220260105n/an/an/a
FreeBSD:13:quarterly2026010520260105-20240318_220260105n/an/an/a
FreeBSD:14:latest2026062520260625-20240318_220260625---
FreeBSD:14:quarterly2026062520260625-20240318_220260625---
FreeBSD:15:latest2026062520260625n/a20240318_2n/an/a--
FreeBSD:15:quarterly2026062520260625n/a-n/an/a--
FreeBSD:16:latest2026062520260625n/a-n/an/a--
Dependencies
NOTE: FreshPorts displays only information on required and default dependencies. Optional dependencies are not covered.
Build dependencies:
  1. python3.12 : lang/python312
There are no ports dependent upon this port

Configuration Options:
No options to configure
Options name:
benchmarks_libcpucycles
USES:
python:build shebangfix
FreshPorts was unable to extract/find any pkg message
Master Sites:
Expand this list (1 items)
Collapse this list.
  1. https://cpucycles.cr.yp.to/
Collapse this list.

Number of commits found: 7

Commit History - (may be incomplete: for full details, see links to repositories near top of page)
CommitCreditsLog message
20260625
28 Jun 2026 10:59:30
commit hash: 7eda5f2ce0a69b39ee39c0819fba297be547238fcommit hash: 7eda5f2ce0a69b39ee39c0819fba297be547238fcommit hash: 7eda5f2ce0a69b39ee39c0819fba297be547238fcommit hash: 7eda5f2ce0a69b39ee39c0819fba297be547238f files touched by this commit
Robert Clausecker (fuz) search for other commits by this committer
benchmarks/libcpucycles: update to 20260625

This fixes a Linux-specific issue with no changes affecting FreeBSD.

Changelog: https://cpucycles.cr.yp.to/download.html
20260105
11 Jan 2026 15:27:48
commit hash: 1d0a13dbd489fad18bddaf27e09497fda7b50a8fcommit hash: 1d0a13dbd489fad18bddaf27e09497fda7b50a8fcommit hash: 1d0a13dbd489fad18bddaf27e09497fda7b50a8fcommit hash: 1d0a13dbd489fad18bddaf27e09497fda7b50a8f files touched by this commit
Robert Clausecker (fuz) search for other commits by this committer
benchmarks/libcpucycles: update to 20260105

Changelog: https://cpucycles.cr.yp.to/download.html
20251226
28 Dec 2025 15:12:08
commit hash: 26369b2563ea2beb9003156eedafc9b850ad0fc3commit hash: 26369b2563ea2beb9003156eedafc9b850ad0fc3commit hash: 26369b2563ea2beb9003156eedafc9b850ad0fc3commit hash: 26369b2563ea2beb9003156eedafc9b850ad0fc3 files touched by this commit
Robert Clausecker (fuz) search for other commits by this committer
benchmarks/libcpucycles: update to 20251226

Changelog: https://cpucycles.cr.yp.to/download.html

Event:		39C3
20250925
28 Sep 2025 09:29:34
commit hash: 7f47d8879ae096a1af776a78b5a36e4bf68f1e73commit hash: 7f47d8879ae096a1af776a78b5a36e4bf68f1e73commit hash: 7f47d8879ae096a1af776a78b5a36e4bf68f1e73commit hash: 7f47d8879ae096a1af776a78b5a36e4bf68f1e73 files touched by this commit
Robert Clausecker (fuz) search for other commits by this committer
benchmarks/libcpucycles: update to 20250925

Changelog: https://cpucycles.cr.yp.to/download.html

Event:		EuroBSDcon 2025
20240318_2
25 Nov 2024 10:22:04
commit hash: 05515f1759027c2a2b9bb4ca9e20641a048188bacommit hash: 05515f1759027c2a2b9bb4ca9e20641a048188bacommit hash: 05515f1759027c2a2b9bb4ca9e20641a048188bacommit hash: 05515f1759027c2a2b9bb4ca9e20641a048188ba files touched by this commit
Robert Clausecker (fuz) search for other commits by this committer
benchmarks/libcpucycles: report actual CPU frequency if supported

This uses sched_getcpu(2) to find the CPU we are scheduled on and then
cpufreq(4) to find the frequency of that CPU.  The caller is responsible
for pinning the thread to one CPU and/or disabling frequency scaling if
a consistent result is required.
20240318_1
06 Nov 2024 15:14:31
commit hash: 10004332587eb2be62e0ea7ee945770489e049e5commit hash: 10004332587eb2be62e0ea7ee945770489e049e5commit hash: 10004332587eb2be62e0ea7ee945770489e049e5commit hash: 10004332587eb2be62e0ea7ee945770489e049e5 files touched by this commit
Robert Clausecker (fuz) search for other commits by this committer
benchmarks/libcpucycles: fix jmpbuf / sigjmpbuf confusion

I forgot to include this patch originally.  While the warning is
harmless (sigjmp_buf and jmp_buf have the same layout on FreeBSD),
it might not be on downstream ports consumers like DragonflyBSD.
20240318
30 Oct 2024 09:00:37
commit hash: fb1687157216017a3c33d5b1890c3b2b75621735commit hash: fb1687157216017a3c33d5b1890c3b2b75621735commit hash: fb1687157216017a3c33d5b1890c3b2b75621735commit hash: fb1687157216017a3c33d5b1890c3b2b75621735 files touched by this commit
Robert Clausecker (fuz) search for other commits by this committer
benchmarks/libcpucycles: Microlibrary for counting CPU cycles

libcpucycles is a microlibrary for counting CPU cycles.  Cycle counts
are not as detailed as Falk diagrams but are the most precise timers
available to typical software; they are central tools used in
understanding and improving software performance.

The libcpucycles API is simple: include <cpucycles.h>, call cpucycles()
to receive a long long whenever desired, and link with -lcpucycles.

Internally, libcpucycles understands machine-level cycle counters for
amd64 (both PMC and TSC), arm32, arm64 (both PMC and VCT), mips64,
ppc32, ppc64, riscv32, riscv64, s390x, sparc64, and x86. libcpucycles
also understands four OS-level mechanisms, which give varying levels of
accuracy: mach_absolute_time, perf_event, CLOCK_MONOTONIC, and, as a
(Only the first 15 lines of the commit message are shown above View all of this commit message)

Number of commits found: 7