Commit Graph

89 Commits

Author SHA1 Message Date
andrew ladenberger
49ad5a8fc1 [PerfReportTool] Added gamethread summary stat for percent of frames over fps target at {1.25x, 1.5x, 1.75x, 2x}. This can be used in summary tables to show a histogram distrubition.
#rb ben.woodhouse
[FYI] tyler.staples, jordan.cristiano

#ROBOMERGE-AUTHOR: andrew.ladenberger
#ROBOMERGE-SOURCE: CL 21386718 via CL 21389178 via CL 21389672
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v975-21357124)

[CL 21391174 by andrew ladenberger in ue5-main branch]
2022-08-15 14:54:21 -04:00
andrew ladenberger
679b0004c6 PerfReportTool - Updated the Histogram summary table
- New option to suppress the averages table
- Reversed from under to over budget
- Removed the hitch table since the tool already has a seperate hitch summary

#rb Ben.Woodhouse
[FYI] Tyler.Staples

#ROBOMERGE-AUTHOR: andrew.ladenberger
#ROBOMERGE-SOURCE: CL 21358870 via CL 21358876 via CL 21358887
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21360773 by andrew ladenberger in ue5-main branch]
2022-08-12 15:06:33 -04:00
ben woodhouse
a3c3ea66e9 PerfReportTool 4.91 - replace autoColorize bool xml param with colorizeMode, which can be default, auto or off (new option). Add equivalent commandline param (-colorizeTable)
- Adding a diff row no longer disables colorization (unless colorizeMode is explicitly set to off)
- More formatting improvements for transposed tables

#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 21238557 via CL 21238558 via CL 21239577
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21239660 by ben woodhouse in ue5-main branch]
2022-07-26 17:00:58 -04:00
ben woodhouse
c3331cec01 PerfReportTool 4.90 - Improve column formatting. Remove hacky min-width calculation and just rely on CSS no-wrap.
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 21236844 via CL 21236845 via CL 21236850
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21236864 by ben woodhouse in ue5-main branch]
2022-07-25 15:56:41 -04:00
ben woodhouse
c516a018ef PerfReportTool 4.89 - Transposed summary table and diff row/column support
- Add support for transposed summary tables with -transposeTable or -transposeCollatedTable. Html will be transposed on write.
- Add Diff row support with -addDiffRows. This overrides disables automatic colouring for readability. If -transposeTable is specified, the diff rows become diff columns. Diff text is colorized based on a percentage of the max of the two diffs.
- Various fixes and cleanup for summary table writing. Added HtmlTable helper to assist with HTML table formatting and output.


#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 21236341 via CL 21236354 via CL 21236357
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21236383 by ben woodhouse in ue5-main branch]
2022-07-25 13:50:18 -04:00
ben woodhouse
5fde534a48 Add -summaryTableXmlSubst method to allow replacing of entries in a summary table. Format is <find1>=<replace1>;<find2>=<replace2>...
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 21233908 via CL 21233914 via CL 21233915
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21233925 by ben woodhouse in ue5-main branch]
2022-07-23 10:30:52 -04:00
ben woodhouse
55246a4e02 PerfReportTool 3.87 - add a -summaryTableStatThreshold param to filter out columns based on a threshold. If all values are below the threshold, the column will be removed. Only applies to CsvStatAverage and SummaryTableMetric thresholds. This can also be specified in the SummaryTable XML
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 21122129 via CL 21122162 via CL 21122180
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21143051 by ben woodhouse in ue5-main branch]
2022-07-17 23:54:33 -04:00
ben woodhouse
a11d307cf2 PerfReportTool 4.86 - Add maxStringLength and maxStringLengthCollated XML params to SummaryTableColumnFormatInfo so we can optionally truncate column strings.
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 21070387 via CL 21070389 via CL 21070390
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21079600 by ben woodhouse in ue5-main branch]
2022-07-13 16:25:11 -04:00
ben woodhouse
d13a14629e PerfReportTool 4.85 - Add hideStatPrefix summary table XML attribute to allow hiding of stat CSV prefixes in summary tables for clearer formatting. e.g "Exclusive/"
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 21035255 via CL 21035258 via CL 21035265
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21035475 by ben woodhouse in ue5-main branch]
2022-07-10 14:14:02 -04:00
ben woodhouse
0870d5705a PerfReportTool 4.84 - fix inconsistent summary table sorting with numeric values
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 21035013 via CL 21035017 via CL 21035019
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21035210 by ben woodhouse in ue5-main branch]
2022-07-10 12:37:43 -04:00
ben woodhouse
c6f8c13e72 PerfReportTool 4.83 - add -collateTableOnly arg which only generates a collated table (skips full table generation). Also fix filename bug where -collateTable can produce a summary table that overwrites the full table
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 21034930 via CL 21034932 via CL 21034935
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21035126 by ben woodhouse in ue5-main branch]
2022-07-10 12:07:44 -04:00
ben woodhouse
d62f104e0d PerfReportTool 4.82 - add -summaryTableToJsonFileStream param : use a file stream to write Json. Experimental but can avoid OOMs. Previously this was always on
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 20868817 via CL 20879830 via CL 20880045
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20885587 by ben woodhouse in ue5-main branch]
2022-06-29 18:57:28 -04:00
ben woodhouse
0725b9938e PerfReportTool 4.81 : Add -jsonToPrcDir mode which converts json serialized summary row data exported with -summaryTableToJson -summaryTableToJsonWriteAllElementData to PRCs
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 20866821 via CL 20878760 via CL 20878900
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20880929 by ben woodhouse in ue5-main branch]
2022-06-29 15:44:53 -04:00
ben woodhouse
f5224f0a20 PerfReportTool 4.80. By default, only write SummaryTableRow values to json. Do not include secondary data such as tooltips, budget colors and flags. To enable this data, pass -summaryTableJsonWriteAllElementData
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 20728365 via CL 20728367 via CL 20728370
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v970-20704180)

[CL 20732698 by ben woodhouse in ue5-main branch]
2022-06-19 23:41:49 -04:00
ben woodhouse
1c77ad2557 PerfReportTool 4.79 - Add support for writing summary row data to JSON, either for all data or just for CSV Metadata.
Uses the following args:
  -summaryTableToJson <filename> : json filename to write summary table row data to
  -summaryTableToJsonFastMode : exit after serializing json data (skips making summary tables)
  -summaryTableToJsonMetadataOnly : only write CsvMetadata elements to json

This makes it easy to extract raw perf data and CSV metadata from a collection of PRC files. Non PRC paths are also supported.

[FYI] tyler.staples

#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 20689812 via CL 20689846 via CL 20689864
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v968-20684695)

[CL 20693402 by ben woodhouse in ue5-main branch]
2022-06-16 16:04:15 -04:00
ben woodhouse
dd23ecee0c PerfReportTool 4.78 - add an AutoColorize XML option for summary tables and make this behavior independent of ScrollableFormatting.
- This can be force disabled via the commandline with -autoColorize 0, or enabled with -autoColorize or -autoColorize 1
- The -reverseTable and -scrollableTable params are now also possible to force disable by specifying 0 (using a new GetOptionalBool mechanism)

[FYI] andrew.ladenberger

#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 20675636 via CL 20677476 via CL 20677697
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v955-20579017)

[CL 20679317 by ben woodhouse in ue5-main branch]
2022-06-15 19:53:12 -04:00
ben woodhouse
51e4cfe322 PerfReportTool 4.77 - Use InvariantCulture to fix graph generation issues with some cultures
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 20394546 via CL 20394613 via CL 20394648
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20398677 by ben woodhouse in ue5-main branch]
2022-05-27 16:49:31 -04:00
ben woodhouse
5fbb76f7c2 PerfReportTool 4.76 : Add support for unstripped stats in FPSCharts.
- FPSChart stats can now be tagged as unstripped. Add "unstripped" in the stat bracket parameters, space-separated to enable, e.g MemFreeMB (min unstripped).
- Simplify column handling code
- Don't generate CsvToSvg commandline args if we're not running as a separate process

Note: The unstripped parameter does not affect the column name. E.g MemFreeMB(Min Unstripped) will be output as MemFreeMB Min.

#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 20315540 via CL 20315544 via CL 20315547
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v948-20297126)

[CL 20315662 by ben woodhouse in ue5-main branch]
2022-05-22 16:34:09 -04:00
ben woodhouse
45fdd234a9 PerfReportTool 4.75 - Add logging around map image handling
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 19862730 via CL 19866748 via CL 19866963
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v940-19807014)

[CL 19871403 by ben woodhouse in ue5-main branch]
2022-04-22 16:06:16 -04:00
ben woodhouse
cf8c132bde PerfReportTool 4.74
- Link templates are only added for extra relative links. Links starting with http:// or https:// are not replaced

#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 19828731 via CL 19828779 via CL 19828794
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v940-19807014)

[CL 19835207 by ben woodhouse in ue5-main branch]
2022-04-20 14:43:25 -04:00
ben woodhouse
2709ab9660 Shrink map summary images to the destination size rather than just copying
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 19782302 via CL 19782307 via CL 19782309
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v939-19570697)

[CL 19803417 by ben woodhouse in ue5-main branch]
2022-04-19 00:19:45 -04:00
ben woodhouse
5229ec9b03 PerfReportTool 4.72 - use CsvToSvgLib async tasks instead of processes by default (override to legacy behavior with -csvToSvgProcesses). This reduced bulk report generation from 12s to 7.7s in tests
- fix a bug in custom commandline parsing where last character would be skipped
- Update binaries for PerfReportTool, CsvToSvg, CsvToSvgLib, CsvStats

#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 19781993 via CL 19781999 via CL 19782001
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v939-19570697)

[CL 19803413 by ben woodhouse in ue5-main branch]
2022-04-19 00:19:31 -04:00
ben woodhouse
8f29d53bc6 PerfReportTool updates to support new PerfReportServer
PerfReportTool 4.71
 - Add support for summary table link templates that can be replaced later (e.g by a web server). E.g {LinkTemplate:Csv:<CSVID>}. Pass -linkTemplates to enable. This works for Csv and Report links, as well as ExtraLinks
 - Add -csvList and -PRCList args for specifying a list of PRCs or CSVs
 - Add -summaryTableXML arg for specifying an additional XML file containing summary tables
 - Summary table titles can now be specified with -summaryTitle instead of this being automatic

All CSV tools:
 - Add response file commandline support via -response=<filename>


#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 19686909 via CL 19686925 via CL 19686934
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v938-19570697)

[CL 19687527 by ben woodhouse in ue5-main branch]
2022-04-08 11:08:05 -04:00
ben woodhouse
1124980b31 PerfReportTool 4.70. Make adding duplicate metadata keys non-fatal. A warning will be emitted to the log instead.
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 18826796 via CL 18826862 via CL 18826914 via CL 18835867 via CL 18836719
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18836909 by ben woodhouse in ue5-main branch]
2022-02-02 18:42:20 -05:00
ben woodhouse
0654534f3c PerfReportTool 4.69: Add -maxFileAgeDays <N> arg - CSV or PRC files older than this will be ignored. This is faster than querying timestamp metadata, especially when reading from network drives.
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 18554671 via CL 18554672 via CL 18554673 via CL 18554686 via CL 18554690
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18554691 by ben woodhouse in ue5-release-engine-test branch]
2022-01-08 13:13:03 -05:00