Commit Graph

5 Commits

Author SHA1 Message Date
ben woodhouse
bf257cb06f Upgrade CSV tools to .NET core 6. Includes various required fixes for decompression, json reading, graph component hash generation and exception handling. Performance is better than .Net Framework.
[CL 29839806 by ben woodhouse in ue5-main branch]
2023-11-20 08:04:34 -05:00
ben woodhouse
8d91b3258f PerfReportTool 4.108.0 + CsvToSvg: -maxAutoMaxY support for graphs + other fixes:
- Add maxAutoMaxY param to graphs and csvToSVG params which allows us to clamp the max automatic Y to a particular value. Also:
- Fix some naming clashes when there are mulltiple graphs on a page. This was preventing us from having graphs with different sizes in a perf report
- Add -embedGraphCommandline arg to help debugging
[FYI] tyler.staples

[CL 29745624 by ben woodhouse in ue5-main branch]
2023-11-15 09:55:24 -05:00
ben woodhouse
85f75b9bd0 CsvToSVG 2.53 - Refactor and optimize SmoothStats via add a SmoothKernel class.
- Add support for downsampled smoothing for an up to 16x speedup
 - More efficient threading
 - Minor perflog fixes
 - Add -PerfLog arg for detailed timings

#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 19786432 via CL 19786566 via CL 19786610
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v939-19570697)

[CL 19803461 by ben woodhouse in ue5-main branch]
2022-04-19 00:20:54 -04:00
ben woodhouse
6c40ffa0aa Add support for fixed point graphs (enabled by default)
Fixed point graphs are smaller because they don't include the decimal point. They're also faster to write. We need to apply a scale in order to have subpixel accuracy. The scale is specified by -fixedpointPrecisionScale <N> (default is 2)
- This improves perf report generation speed by ~15% and report size by 20%.

#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 19782268 via CL 19782269 via CL 19782270
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v939-19570697)

[CL 19803416 by ben woodhouse in ue5-main branch]
2022-04-19 00:19:38 -04:00
ben woodhouse
da0f70912a CsvToSvg 2.50. Refactor code to move graph generation into a separate lib, so we can use it from PerfReportTool directly instead of executing a separate process and reading all the Csv data multiple times. This also cleans up the code in CsvToSvg considerably.
- Graph Generation is now handled by a GraphGenerator class with MakeGraphs async and synchronous methods. Settings are passed via a GraphParams struct.
- Optimize various functions to speed up graph generation.
Generating graphs for a report is now around 25% faster.

#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 19781991 via CL 19781996 via CL 19782000
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v939-19570697)

[CL 19803410 by ben woodhouse in ue5-main branch]
2022-04-19 00:19:24 -04:00