Releases: intel/PerfSpect
v3.3.0
Features/Enhancements:
- add instruction mix reporting to telemetry command by @harp-intel in #179
- add storage performance benchmark to 'report' command by @harp-intel in #161
- add 2nd level TMA metrics to chart by @harp-intel in #165
- add metadata tab to metrics summary HTML report by @harp-intel in #171
Maintenance/Bug Fixes:
- accept metric list without including "metric_" prefix by @harp-intel in #155
- add support for customized "no data found" message for any table by @harp-intel in #156
- recognize L3 cache size in GiB by @harp-intel in #158
- add cpu def for Turin zen 5c by @harp-intel in #160
- add benchmark descriptions by @harp-intel in #163
- add pid to ssh control master file name so that it doesn't get reused… by @harp-intel in #169
- if instructions event cannot be collected then assume target is not s… by @harp-intel in #170
- remove parse error from report, add to log by @harp-intel in #175
- provide sudo password to script when needed by @harp-intel in #177
- change flame and lock help to show 'all' is default format option by @harp-intel in #184
- fix bug where higher granularity metrics are not properly printed by @harp-intel in #182
- don't use bc in script as it is not available, by default, on some Linux OS distributions by @harp-intel in #189
- Bump github.com/spf13/pflag from 1.0.5 to 1.0.6 by @dependabot in #190
- fix metrics socket and cpu granularity metric calculations by @harp-intel in #191
Full Changelog: v3.2.0...v3.3.0
v3.2.0
What's Changed
Features/Enhancements:
- support for GCP C4 instances by @harp-intel in #134
- add AMD Turin CPU identifier by @harp-intel in #127
- make sure PMUs are not in use when running the metrics command by @harp-intel in #144
- Enable interruption of PerfSpect with SIGINT (ctrl-c) when collecting data over SSH by @harp-intel in #145
- limit config flags to specific uarchs by @harp-intel in #149
Maintenance/Bug Fixes:
- consider pkg control value when getting and setting EPP by @harp-intel in #142
- clean up benchmark summary table when no min latency collected by @harp-intel in #129
- perfspect report flag 'all' is true by default by @harp-intel in #128
- assume events not supported on failure when loading metadata for metrics command by @harp-intel in #139
- Bump golang.org/x/term from 0.27.0 to 0.28.0 by @dependabot in #140
- fix metrics HTML title field by @harp-intel in #147
- filter out infinite values in metrics summary by @harp-intel in #152
- Update README.md by @HarpPDX in #136
Full Changelog: v3.1.0...v3.2.0
v3.1.0
Version 3.1.0 is a feature and maintenance release with the following additions/fixes.
New Features
- The 'lock' command was added to support the analysis of lock contention on high core count servers.
- L3 cache size reported in system summary table of perfspect 'report'
Fixes
- Add timeout to perspect 'report' data collection commands that run too long
- L3 cache size was reported as total from system. Changed to cache size per processor.
- The 'metrics' command was occasionally erroneously detecting the lack of support for some events.
What's Changed
- Bump github.com/deckarep/golang-set/v2 from 2.6.0 to 2.7.0 by @dependabot in #108
- don't prepend sudo to command if user is superuser by @harp-intel in #110
- Bump golang.org/x/term from 0.26.0 to 0.27.0 by @dependabot in #111
- Bump golang.org/x/text from 0.20.0 to 0.21.0 by @dependabot in #112
- build perf with support for bpf by @harp-intel in #117
- Add support for kernel lock analysis by @TianyouLi in #114
- timeout on commands by @harp-intel in #115
- report l3 size per socket by @harp-intel in #120
- Bump golang.org/x/crypto from 0.28.0 to 0.31.0 by @dependabot in #121
New Contributors
- @TianyouLi made their first contribution in #114
Full Changelog: v3.0.1...v3.1.0
v3.0.1
Version 3.0.1 is a maintenance release that addresses a few issues/bugs:
- improve error handling and messaging when a target system does not support metrics collection
- stop metrics collection and produce output files when SIGINT is sent only to the perfspect process
- abbreviate uncore event names to shorten the perf stat command line arguments on target systems with a high core/uncore device count in order to fit within the bash argument size limits
- re-enable NMI watchdog after metrics collection on remote targets
What's Changed
- fix build badge in readme by @harp-intel in #84
- pin build process dependencies by @harp-intel in #86
- address issues raised by golangci-lint by @harp-intel in #88
- add no root requirements for metrics to readme by @harp-intel in #91
- Bump golang.org/x/term from 0.25.0 to 0.26.0 by @dependabot in #90
- Bump golang.org/x/text from 0.19.0 to 0.20.0 by @dependabot in #89
- document --noroot option for metrics by @harp-intel in #92
- Improve error handling when cannot connect to target(s) and when target doesn't meet requirements for metrics command by @harp-intel in #95
- send SIGINT and SIGTERM to children when received by @harp-intel in #97
- show flame and telemetry duration in status by @harp-intel in #98
- build tarball without version in name by @harp-intel in #100
- pin systat version by @harp-intel in #106
- abbreviate uncore event names to shorten the length of the arguments on the perf command line by @harp-intel in #102
- re-enable NMI watchdog when disabled for remote targets by @harp-intel in #104
Full Changelog: v3.0.0...v3.0.1
v3.0.0
PerfSpect 3.0 is a new design with many new features. Please see the README for a description of the features and for hints that will help with migration from earlier releases of PerfSpect.
Summary of changes:
- PerfSpect 3.0 produces user friendly metrics in a single invocation. The post-processing step required in earlier releases has been eliminated.
- PerfSpect 3.0 optionally produces "live" metrics.
- PerfSpect 3.0 now includes features previously only available in Intel System Health Inspector, AKA svr-info, including system configuration reports, benchmarks, telemetry, and flamegraphs.
- PerfSpect 3.0 can operate on the local host and/or 1 or more remote hosts.
Please see the README for more details. And, for a complete list of available features, explore the application's help system, e.g., perfspect metrics -h.
Please post Questions, Bug Reports, and Feature Requests using GitHub Issues, here: https://github.com/intel/PerfSpect/issues.
v1.5.0
This release adds basic metrics support for Intel "Granite Rapids" processors. Full support, including TMA metrics, will come in a follow-up release.
v1.4.2
Addresses the following:
- HTML report failing to render in browser
- deprecation warning from Pandas
- cgroup cpuset parsing error
v1.4.1
Bugs Fixed:
- The previous release added this feature: Support for AWS m6i.16xlarge, m6i.32xlarge, and m7i.*xlarge VM instances. The metric definition files for these instance types were not included in the release build. This release addresses that issue, i.e., the files are now included in the build.
v1.4.0
New Features / Improvements
- Support for 6th-generation Intel Xeon processors (Sierra Forest)
- Support for AWS m6i.16xlarge, m6i.32xlarge, and m7i.*xlarge VM instances.
- Allow running perf-collect as regular, non-root, user without sudo. See system configuration requirements in the README.
- Add options to override default event and metric files used by perf-collect and perf-postprocess respectively.
- Support platforms where enumeration of uncore device IDs does not start at 0.
- Add detection and logging of fixed purpose PMU slots, e.g. cpu-cycles, instructions, etc., availability.
1.3.11
- move LLC metrics under L2 by @swanandmhalagi
- add pivoted csv's for CPU and Socket runmodes