Processor Counter Monitor (PCM) is an application programming interface (API)
and a set of tools based on the API to monitor performance and energy metrics
of Intel(r) Core(tm), Xeon(r) and Atom(tm) processors.
This requires the 'cpuctl' module to be loaded.
===> The following configuration options are available for intel-pcm-202405_9:
DOCS=on: Build and/or install documentation
===> Use 'make config' to modify these settings
sysutils/intel-pcm: Fix plist and paths
Some code migrated from pcm-iio.cpp to utils.cpp with hard-coded paths,
but the REINPLACE commands were wrong. Additional binaries and files are
present in newer versions that were neglected in the last commit.
PR: 268730
Fixes: fc33bc299d1e
Sponsored by: Netflix
sysutils/intel-pcm: Update to 202302
Update to latest version, release notes for 202211, 202212 and 202302
are relevant here. Briefly:
* Add Saphire Rapids and Gemini Lake support
* Add SPR HBM support
* Support for monitoring Intel QuickAssist Technology (QAT)
* Add support for memory bandwidth metrics for ADL&TGL CPU models
* Lots of bug fixes
Sponsored by: Netflix
sysutils/intel-pcm: Rework port
- Update WWW and location of repo on GitHub
- Add (lib)simdjson as dependency
- Make DOCS optional
- Install files in paths consistent with name of port
- Fix paths in source files
Reviewed by: imp (maintainer) via IRC (previous version)
Approved by: imp (maintainer) via IRC
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
sysutils: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* <jsmith@resonatingmedia.com>
* Aaron Dalton <aaron@FreeBSD.org>
* Aaron Landwehr <aaron@snaphat.com>
* Adam Weinberger <adamw@FreeBSD.org>
* Adrian Chadd
* Adrian Chadd <adrian@FreeBSD.org>
* Akinori MUSHA aka knu <knu@idaemons.org>
* Alan Eldridge <alane@FreeBSD.org>
* Alan Eldridge <alane@geeksrus.net>
* Aldis Berjoza <aldis@bsdroot.lv>
* Alex Deiter <alex.deiter@gmail.com>
(Only the first 15 lines of the commit message are shown above )
devel/intel-pcm: Update to 202112
There's a new diagnostic in the build:
"The compiler is too old (g++ 6 or below). Parsing events from
01.org/perfmon won't be supported."
despite the fact we're using the latest clang. I'll investigate and see
what other dependencies are needed (since it's testing for the presence
of other libraries). I'll update with the improved functionality when
that's been sorted.
Sponsored by: Netflix
sysutil/intel-pcm: Update to 202109
Update to the latest. It contains a number of minor fixes.
From 202109:
* pcm-raw: support collecting events by names from event lists
(https://download.01.org/perfmon/). Details: link
* pcm-raw: support event group multiplexing
* pcm-iio: support csv output
* Extended Windows PCM driver to support all ICX uncore performance
monitoring units
* Developed a workaround to make PCM work in VMware guest
From 202107:
* support systems with > 1024 logical cores
(Only the first 15 lines of the commit message are shown above )
sysutils/intel-pcm: Update to 202105
Update to latest release, 202105. Notable changes since 202011:
o Support Intel Atom Processor P5900 Series (SnowRidge)
o Support Icelake server processors
o Add Coment Lake support
o Add Tiger Lake support
Sponsored by: Netflix
The code creates a lambda function that takes by reference the core_id local
variable, and pass it to a thread that often executes after constructor has
exited causing per-core thread to use a corrupted core_id.
Depending on compiler and runtime execution (and whether executing over gdb),
the tool might segfault or have incorrect behavior.
This makes sure the lambda function takes copy of automatic variable in
enclosing environment.
Submitted upstream as https://github.com/opcm/pcm/pull/162
Submitted by: Loic Prylli
Sponsored by: Netflix, Inc
Differential Revision: https://reviews.freebsd.org/D21804
Update to 201902
Update to the latest release. There's also been reports of coredumps with the
default -O3 settings and clang 8.0, but not with -O0. Until those are solved,
be conservative and compile -O0. 201902 also fixes a number of stats collection
issues on NUMA / multi-socket machines.
Reported by: gallatin@
Add sysutils/intel-pcm-devel: Process Count Monitor (PCM) for Intel processors
Processor Counter Monitor (PCM) is an application programming interface (API)
and a set of tools based on the API to monitor performance and energy metrics
of Intel(r) Core(tm), Xeon(r) and Atom(tm) processors.
This requires the 'cpuctl' module to be loaded.
WWW: https://github.com/opcm/pcm
PR: 227317
Submitted by: Vinicius Zavam <egypcio@googlemail.com>
Differential Revision: https://reviews.freebsd.org/D14986
sysutils/intel-pcm: update to 2.11.1
- move to official github project
- update comment to changes in project focus
- add license file
- drop use of compiler:c1++11-lib, no longer needed
- remove patch for pci.cpp, no longer needed
- update pkg-descr with text from new website
PR: 215897
Approved by: imp (maintainer, timeout: 16 days)
Move to using tar.gz. The zip file has too much variation with line
endings, so avoid that problem by extracting it, using Unix line
endings and putting that up. Since we have to provide a dist file
anyway, seems like the prudent thing to do.
Add a seat-belt safety check to make sure that cpuctl is loaded before
using it. Otherwise, we can divide by zero with a semaphore held and
it takes extraordinary measures to reset the semaphore...
Submitted by: Jim Harris