Skip to content

PerfFlowAspect Reader + CPU/Mem Usage - #144

Closed
spencer-gre wants to merge 59 commits into
llnl:developfrom
spencer-gre:pfa-hatchet-pr
Closed

PerfFlowAspect Reader + CPU/Mem Usage#144
spencer-gre wants to merge 59 commits into
llnl:developfrom
spencer-gre:pfa-hatchet-pr

Conversation

@spencer-gre

Copy link
Copy Markdown
Contributor

Improves upon #101 adding ability to read in a PerfFlowAspect log with cpu and memory usage.

This commit follows remarks that llnl#144 will supersede llnl#101, and
specifically prepares for the integration of both an array reader for
PerfFlowAspect Array Trace Files (already present) and PerfFlowAspect
Object Trace Files (to be added). Additionally removes .json files in
the pytest data directory as no longer needed.
Missed two in the prior commit. Refer there for full explanation.
@spencer-gre

Copy link
Copy Markdown
Contributor Author

@tpatki

b1461b5 and faf48b2 address the following points of the roadmap:

  1. Remove any JSON example files from here
  2. Renamed perfflowaspect_reader to perfflowaspect_array_reader (and once @loudsun1997 adds object reader, that will be named accordingly).

loudsun1997 and others added 7 commits July 28, 2024 23:51
This branch cleans up conflicts/redundancies introduced after object
reader added. Specifically, JSON files were reintroduced, and references
to the original perfflowaspect_reader was being used in the graphframe
(and not perfflowaspect_array_reader)
@ilumsden ilumsden added the status-work-in-progress PR is currently being worked on label Sep 4, 2024
@spencer-gre

Copy link
Copy Markdown
Contributor Author

as of e99b000

-> adiak metadata parsing added
-> object format supported via singular perfflowaspect reader that automatically detects object vs array
-> cpu/mem usage

@tpatki @slabasan

Comment thread hatchet/readers/hpctoolkit_reader_latest.py
Comment thread hatchet/readers/timemory_reader.py
Comment thread install.sh
@spencer-gre
spencer-gre marked this pull request as ready for review July 24, 2026 20:18
slabasan added a commit that referenced this pull request Jul 25, 2026
* perf_reader initial commit

* graph updated

* add front-level reader API, add PFA reader example

- add node object to dataframe

* graph updated

* added pfw testfile with one iteration of laghos output

* pfw file processor added

* pfw to literal converter

* sample json

* pfw folder processor

* finalized pfw to caliper reader

* cleaning up code

* update example for pfa reader

* add perfflowaspect unit test

- reorganize data files
- restore ts and dur into frame

* add AMS MPI pfa unit test (concat pfw files per rank), flake, black

* restore kwargs in from_hdf

* update comment

* read cpu/mem usage

* updates to pfa reader, prepare tests

* forgot this test file

* tests for cpu-mem

* fix tests

* Read All PFW Files

The PerfFlowAspect Reader used to require that .pfw files
(PerfFlowAspect Traces) conform to JSON standard. However,
PerfFlowAspect does not generate files that are consistent with JSON.
This commit modifies a PerfFlowAspect trace file that does not conform
to JSON standard - by adding the closing brace and removing the trailing
comma.

* Cleanup/Prep for Object Reader

This commit follows remarks that #144 will supersede #101, and
specifically prepares for the integration of both an array reader for
PerfFlowAspect Array Trace Files (already present) and PerfFlowAspect
Object Trace Files (to be added). Additionally removes .json files in
the pytest data directory as no longer needed.

* Removing PFW JSON Files

Missed two in the prior commit. Refer there for full explanation.

* perf_reader initial commit

* graph updated

* graph updated

* added pfw testfile with one iteration of laghos output

* pfw file processor added

* pfw to literal converter

* sample json

* pfw folder processor

* finalized pfw to caliper reader

* cleaning up code

* add perfflowaspect unit test

- reorganize data files
- restore ts and dur into frame

* add AMS MPI pfa unit test (concat pfw files per rank), flake, black

* Add perfflowaspect object reader and update related tests and scripts

* updated the test file. add extra fields for the time unit and matedata. Renamed and moved pfw test file to the correct folder

* added us to s converter. fixed object reader tests

* Cleanup after merge

This branch cleans up conflicts/redundancies introduced after object
reader added. Specifically, JSON files were reintroduced, and references
to the original perfflowaspect_reader was being used in the graphframe
(and not perfflowaspect_array_reader)

* code format

* pushed

* nearly working single pfa reader

* wrapping up pfa reader

* remove changes to install

* clean up and patch hatchet reader

* update tests

* restore hpctoolkit and timemory readers

* fix license issues

* flake and black format

---------

Co-authored-by: r-yin <ryin2@bu.edu>
Co-authored-by: Spencer Greene <ssgreene@wpi.edu>
Co-authored-by: loudsun1997 <zhiwei.yang1997@gmail.com>
@slabasan slabasan closed this Jul 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-readers Issues and PRs involving Hatchet's data readers priority-normal Normal priority issues and PRs status-work-in-progress PR is currently being worked on type-feature Requests for new features or PRs which implement new features

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants