Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

create new json file output #375

Merged
merged 17 commits into from
Aug 10, 2023

Conversation

debermudez
Copy link
Contributor

@debermudez debermudez commented Aug 2, 2023

Create new json file containing all timestamp information.

Data collection class to gather

  • all request data including timestamp and seq id
  • all response data associated with each response
  • all window boundaries for the profile
  • version information for PA

Report class that converts all the data to an agreed upon json schema

@matthewkotila
Copy link
Contributor

@debermudez I added my commit 👍

@debermudez debermudez force-pushed the dbermudez-create-new-json-file branch 2 times, most recently from 1996b8c to d2ff5f9 Compare August 2, 2023 18:58
@debermudez debermudez marked this pull request as ready for review August 3, 2023 23:39
src/c++/perf_analyzer/inference_profiler.h Outdated Show resolved Hide resolved
src/c++/perf_analyzer/perf_analyzer.cc Outdated Show resolved Hide resolved
src/c++/perf_analyzer/raw_data_collector.h Outdated Show resolved Hide resolved
src/c++/perf_analyzer/raw_data_collector.h Outdated Show resolved Hide resolved
src/c++/perf_analyzer/raw_data_collector.h Outdated Show resolved Hide resolved
src/c++/perf_analyzer/raw_data_reporter.h Outdated Show resolved Hide resolved
src/c++/perf_analyzer/raw_data_reporter.h Outdated Show resolved Hide resolved
src/c++/perf_analyzer/raw_data_reporter.h Outdated Show resolved Hide resolved
src/c++/perf_analyzer/raw_data_reporter.h Outdated Show resolved Hide resolved
src/c++/perf_analyzer/inference_profiler.h Outdated Show resolved Hide resolved
src/c++/perf_analyzer/raw_data_reporter.cc Outdated Show resolved Hide resolved
src/c++/perf_analyzer/raw_data_reporter.cc Outdated Show resolved Hide resolved
src/c++/perf_analyzer/raw_data_collector.h Outdated Show resolved Hide resolved
src/c++/perf_analyzer/raw_data_collector.h Outdated Show resolved Hide resolved
src/c++/perf_analyzer/raw_data_reporter.cc Outdated Show resolved Hide resolved
@debermudez debermudez merged commit f269324 into decoupled-model-support Aug 10, 2023
3 checks passed
@debermudez debermudez deleted the dbermudez-create-new-json-file branch August 10, 2023 20:57
matthewkotila added a commit that referenced this pull request Aug 11, 2023
* Initial commit to gather all experiment data

* Update response_timestamps variable name

* Revert erase_indices deletion

* Add reporter class to create json output

* Add comments to public methods

* Add file and stdout output

* Copy valid request records into RawDataCollector

* Plumb file path to reporter

* Connect collector to reporter

* Add json data to top level object

* Add experiments value to document

* Update json ints to uint64 and fix extry addition

* Print seq id only when non zero

* Moving schema to test repo

* Only write file if specified

* Address feedback

* Address feedback

---------

Co-authored-by: Matthew Kotila <[email protected]>
Co-authored-by: tgerdes <[email protected]>
matthewkotila added a commit that referenced this pull request Aug 15, 2023
* Initial commit to gather all experiment data

* Update response_timestamps variable name

* Revert erase_indices deletion

* Add reporter class to create json output

* Add comments to public methods

* Add file and stdout output

* Copy valid request records into RawDataCollector

* Plumb file path to reporter

* Connect collector to reporter

* Add json data to top level object

* Add experiments value to document

* Update json ints to uint64 and fix extry addition

* Print seq id only when non zero

* Moving schema to test repo

* Only write file if specified

* Address feedback

* Address feedback

---------

Co-authored-by: Matthew Kotila <[email protected]>
Co-authored-by: tgerdes <[email protected]>
matthewkotila added a commit that referenced this pull request Aug 15, 2023
* Update time stamp vector to hold a list of response times (#347)

* WIP change to timestamp vector

* Update testing to use new vector for end times

* Fix lambda and tag todo with a ticket number

* Fix iterator validation

* Update PA async callback to only run with final response (#351)

* Update PA async callback to only run with final response

* Address feedback

* Address feedback

* Address feedback

* Fix bug

* Calculate response throughput metric (#356)

* Calculate response throughput metric

* Address feedback

* Cleanup

* add json schema for output file generation (#364)

* Add json schema for output file and examples

* Add newlines at end of files

* Update json type to correct keyword

* Update schema to fix hierarchy and address feedback

* Add json file with known error for testing

* Move example files to the docs directory

* Remove some example json files

* Update schema to use integer and remove uniqueness from timestamps

* Add CLI option for profile export file (#369)

* Add CLI option for profile export file

* Address feedback

* Store sequence ID in timestamps tuple object (#367)

* Store sequence ID in timestamps tuple object

* Fix bug and address feedback

* Address feedback

* Address feedback

* Output response throughput metric to stdout and csv (#373)

* Add missing --profile-export-file help description and cli docs description (#374)

* create new json file output (#375)

* Initial commit to gather all experiment data

* Update response_timestamps variable name

* Revert erase_indices deletion

* Add reporter class to create json output

* Add comments to public methods

* Add file and stdout output

* Copy valid request records into RawDataCollector

* Plumb file path to reporter

* Connect collector to reporter

* Add json data to top level object

* Add experiments value to document

* Update json ints to uint64 and fix extry addition

* Print seq id only when non zero

* Moving schema to test repo

* Only write file if specified

* Address feedback

* Address feedback

---------

Co-authored-by: Matthew Kotila <[email protected]>
Co-authored-by: tgerdes <[email protected]>

* Fix bug where null response were accidentally excluded from profile export (#379)

* Fix bug where null response were accidentally excluded from profile export

* Fix bug

* Address feedback

* Add unit tests for ProfileDataCollector and ProfileDataExporter classes (#380)

* Add initial mock class and test file for ProfileDataCollector

* Mock FindExperiment method

* Add test for FindExperiment and fix a bug in the function

* Add tests for AddData and AddWindow in ProfileDataCollector

* Add a skeleton unit test code for ProfileDataExporter

* Mock ConvertToJson

* Add subcase for ConvertToJson method

* Add subcase for OutputToFile method

* Add subcase for AddExperiment method

* Split tests into multiple test cases

* Set request rate as double in json

* Address feedback

---------

Co-authored-by: Elias Bermudez <[email protected]>
Co-authored-by: tgerdes <[email protected]>
Co-authored-by: Hyunjae Woo <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

4 participants