From 8019a4db5d31e2af89fef97a9170e3add6653c60 Mon Sep 17 00:00:00 2001 From: Andrija Kolic Date: Wed, 17 Apr 2024 17:48:54 +0200 Subject: [PATCH] Stop the MaxRssCopyRule of the rsspercentiles tracker from rerunning and producing incorrect, unwanted max-rss values for image build. --- src/mx/_impl/mx.py | 2 +- src/mx/_impl/mx_benchmark.py | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/mx/_impl/mx.py b/src/mx/_impl/mx.py index b0773037..3cfcae32 100755 --- a/src/mx/_impl/mx.py +++ b/src/mx/_impl/mx.py @@ -18149,7 +18149,7 @@ def alarm_handler(signum, frame): _CACHE_DIR = get_env('MX_CACHE_DIR', join(dot_mx_dir(), 'cache')) # The version must be updated for every PR (checked in CI) and the comment should reflect the PR's issue -version = VersionSpec("7.22.5") # Support .cpp and .hpp in DefaultNinjaProject +version = VersionSpec("7.22.6") # Stop MaxRssCopyRule of the rsspercentiles tracker from rerunning _mx_start_datetime = datetime.utcnow() diff --git a/src/mx/_impl/mx_benchmark.py b/src/mx/_impl/mx_benchmark.py index a98a885e..acff6178 100644 --- a/src/mx/_impl/mx_benchmark.py +++ b/src/mx/_impl/mx_benchmark.py @@ -2952,6 +2952,10 @@ def getCSVFiles(self, text): return [file] if file else [] def parseResults(self, text): + if self.tracker.most_recent_text_output is None: + mx.log("\tRSS percentile data points have already been parsed.") + return [] + rows = super().parseResults(text) temp_text_output = self.tracker.most_recent_text_output @@ -3022,7 +3026,14 @@ def __init__(self, tracker, bmSuiteArgs): self.tracker = tracker def parseResults(self, text): - for rss_dp in self.tracker.percentile_data_points: + if not self.tracker.percentile_data_points: + mx.log("\tmax-rss data point has already been parsed.") + return [] + + data_points = self.tracker.percentile_data_points + self.tracker.percentile_data_points = [] + + for rss_dp in data_points: if rss_dp['metric_percentile'] == str(RssPercentilesTracker.MaxRssCopyRule.percentile_to_copy_into_max_rss): mx.log(f"\n\tmax-rss copied from {rss_dp['metric_percentile']}th RSS percentile (MB): {rss_dp['metric_value']}") return [{"metric_value": rss_dp['metric_value']}]