Releases: aws/aperf
v1.2.2
What's Changed
- New data type: ENA and EFA metrics on supported instances
- New data type: Memory Allocation metrics (
/proc/slabinfo,/proc/pagetypeinfo, and/proc/buddyinfo) - New report generation option
--time-range, which trims the report data to the specified time range - Report generation now supports renamed archives and duplicate run names (with auto deduplication)
- Nightly Build is available at https://github.com/aws/aperf/releases/tag/nightly, which contains the binaries that were built with latest changes; Nightly docker images are also available at public.ecr.aws/aperf/aperf:nightly
- APerf releases now contain RPM and DEB packages for easier installation
- Enhanced the EKS script and added kubectl plugin
- Report UI improvement in the navigation panel
- Error message improvements
Full Changelog: v1.2.1...v1.2.2
Nightly Build
Built from commit 05d7877c5a6c5710239d4395c22b084b094bd2cd.
v1.2.1
What's Changed
- APerf images are now available on public ECR repository: https://gallery.ecr.aws/aperf/aperf
- Metrics data points with all zero values are now compressed to reduce report size
- Fixed the incorrect evaluation of some analytical rules when comparing data with zero values
Full Changelog: v1.2.0...v1.2.1
v1.2.0
What's Changed
- APerf is now built and released on Windows and MacOS with the
reportfeature. Any APerf run data produced byaperf recordcan now be processed by APerf executable on Windows and MacOS to generate reports. - Improved robustness when processing raw CPU utilization data that contains decreased accumulative CPU time values.
Full Changelog: v1.1.0...v1.2.0
v1.1.0
What's Changed
- APerf now supports analytics. Analytical rules are defined in the Rust code, which during report generation are matched against the processed data and produce analytical findings. Statistical analysis are automatically performed in the report frontend, which compares all time-series metric stats among different runs. The report now has the "Analytical findings" and "Statistical findings" sections.
- Container usage improvements:
- Supported
--profile-javaineks-aperf.sh - Added
devcontainerDockerfile
- Supported
- UI bug fixes and improvements:
- Enforced ordering of sections within the graph data type
- Removed case sensitivity for keys in key-value data
- Improved unit for bytes data
- Matched Java profiling graphs using JVM name
- Added helpful links and optimization guides in the help panel
- Showed the top 16 processes with the highest CPU time in all processes metrics
- Saved the preference of number of graphs per page to browser local storage
- Added
strex-spec-pkimetric in PMU data to detect usage of STREX instructions - Added DEVELOPMENT.md to include code change guidelines
Full Changelog: v1.0.0...v1.1.0
v1.0.0
What's Changed
-
Update README and perf_stat warnings by @lancelui-amzn in #313
-
Implemented uniform report data format by @CongkaiTan and @lancelui-amzn
- add aperf standard report data format #321
- Process cpu_utilization into uniform data format #325
- Process diskstats into uniform data format #326
- Process interrupts into uniform data format #330
- Process processes into uniform data format #331
- Process perf_stat into uniform data format #332
- Process vmstat into uniform data format #333
- Process netstat into uniform data format #334
- Process aperf_stats into uniform data format #335
- Process meminfo into uniform data format #336
- Process sysctl into uniform data format #337
- Process kernel_config into uniform data format #338
- Process all graph data and text data into uniform data format #339
- Process systeminfo into uniform data format #340
-
Fix crash when previous disk stat value is missing by @CristianPrundeanu in #324
-
chore: Scope down GitHub Token permissions by @AdnaneKhan in #327
-
Update to AWS Cloudscape React Based UI by @CongkaiTan and @lancelui-amzn
- Introduce react-based report UI #342
- Enable component resize for the new report UI and make side panels closable #343
- Add post-processing logic to consolidate sorted_metric_names and value_ranges across all runs #344
- Use Grid component for the report home page #345
- add data descriptions in the new report #346
- Remove interrupt info from interrupt metric names #347
- Fix aperf_stat value range, perf_stat zero denominator, and cpu_utilization series order #349
- Add vertical and horizontal scroll bar to text data page in new report #350
- Add descriptions for aperf_stat metrics and unify its series ordering #352
- Fix KeyValueDataPage crash when run data not available #353
- add dark mode #354
- Remove old processing logic and switch to new data format and UI #357
- minor ui fixes, interrupts renaming #359
- remove old ui, y-axis scaling, pmu ordering #360
-
Install MUSL from github source code in ci.yml, add run stat comparison, fix report generation from report #348
New Contributors
- @natict made their first contribution in #322
- @CristianPrundeanu made their first contribution in #324
- @AdnaneKhan made their first contribution in #327
Full Changelog: v0.1.18-alpha...v1.0.0
v0.1.18-alpha
What's Changed
- Update Hotline frontend by @kkhulbe-aws in #297
- Demangle function names during serialization by @kkhulbe-aws in #301
- Refactor record and report data initialization to improve code reuse by @CongkaiTan in #302
- Add --dont-collect and --collect-only flags to customize which data to collect by @CongkaiTan in #303
- Restore compile-time loading of JS files and adapt empty data files by @CongkaiTan in #304
- Added reverse flamegraph
- Added Stats to plots
- update java profiling to output heatmaps for cpu, alloc, and wall profiles
New Contributors
- @CongkaiTan made their first contribution in #298
- @aperf-bot made their first contribution in #307
Full Changelog: v0.1.16-alpha...v0.1.18-alpha
v0.1.17-alpha
Add --dont-collect and --collect-only flags to customize which data t…
v0.1.16-alpha
What's Changed
- Added eks-aperf.sh, Dockerfile and README-EKS.md for EKS instructions by @salvatoredipietro in #286
- Improved eks-aperf.sh, Dockerfile and README-EKS.md for EKS instructions by @salvatoredipietro in #287
- Add Hotline SPE code profiling by @kkhulbe-aws in #288
New Contributors
- @salvatoredipietro made their first contribution in #286
- @kkhulbe-aws made their first contribution in #288
Full Changelog: v0.1.15-alpha...v0.1.16-alpha
v0.1.15-alpha
What's Changed
- CustomPMU: Update README documentation by @janaknat in #243
- Report: Fix issue with '.' in run names by @janaknat in #245
- Aperf: Add build options for Release profile by @janaknat in #246
- Record: Move to using newer aws-config by @janaknat in #247
- Workflow changes to move to github-hosted runners, x86_64 and aarch64 builds by @wash-amzn in #248
- Report: Add infrastructure for Perf Stat rules by @janaknat in #244
- Report: Fix bug in Kernel Config diff by @janaknat in #250
- Bump trufflesecurity/trufflehog from f4045259751e6a6566fc9b88083f04b914f324d5 to a5b09951c1eaf6834730dd10db67cf5d8b71fffa by @dependabot in #233
- Bump ossf/scorecard-action from 2.3.3 to 2.4.0 by @dependabot in #214
- Bump svenstaro/upload-release-action from 2.7.0 to 2.9.0 by @dependabot in #210
- Bump actions/dependency-review-action from 4.3.2 to 4.3.4 by @dependabot in #212
- Report: Fix Yes/No buttons by @janaknat in #252
- Report: Onboard more datatypes for Analytics by @janaknat in #253
- Add basic rules for L1, L2, and L3 miss counters by @lrbison in #263
- Fix interval period check by @parthnkp in #272
- Add IOWait CPU time to aggregate CPU utilization graph. by @sgwizdak-aws in #278
- Enable perf_frequency command line option. by @yugesk in #279
New Contributors
- @parthnkp made their first contribution in #272
- @sgwizdak-aws made their first contribution in #278
Full Changelog: v0.1.14-alpha...v0.1.15-alpha