From c23c3a82cad7580f7c33cb422383d0ce05761006 Mon Sep 17 00:00:00 2001 From: NguyenNhuDi Date: Thu, 30 May 2024 09:44:49 -0600 Subject: [PATCH 1/3] added alternative to atomic grouping for python versions before 3.11 in select_best_config.py --- scripts/config-tuning/select_best_config.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/scripts/config-tuning/select_best_config.py b/scripts/config-tuning/select_best_config.py index ce56cb0f..778e3aee 100755 --- a/scripts/config-tuning/select_best_config.py +++ b/scripts/config-tuning/select_best_config.py @@ -11,6 +11,7 @@ from matplotlib import pyplot as plt import argparse from jinja2 import Environment, PackageLoader +from sys import version_info env = Environment( loader=PackageLoader("select_best_config"), @@ -51,7 +52,14 @@ def guess_gcn_architecture(path: str, raw_json_data: dict): gb_per_s_series.name = 'gb_per_s' # Extract the groups of the regex match to a DataFrame - name_regex = r'^(?P\S+?)_(?Puniform|normal|log_normal|poisson)_(?P(?>unsigned_)?(?>int|short|char|long_long|float|half|double))_t(?P\d+)_b(?P\d+)' + + # need at least python 3.11 to have possesive quantifier and atomic grouping + if version_info.major >= 3 and version_info.minor >= 11: + name_regex = r'^(?P\S+?)_(?Puniform|normal|log_normal|poisson)_(?P(?>unsigned_)?(?>int|short|char|long_long|float|half|double))_t(?P\d+)_b(?P\d+)' + else: + name_regex = r'^(?P\S+?)_(?Puniform|normal|log_normal|poisson)_(?P(unsigned_)?(int|short|char|long_long|float|half|double))_t(?P\d+)_b(?P\d+)' + + extracted_data = benchmark_data['name'].str.extract(name_regex) extracted_data['block_size'] = extracted_data['block_size'].astype(int) extracted_data['grid_size'] = extracted_data['grid_size'].astype(int) From 1f35be81c7f6c4e405ceb84df2169a7bca2be448 Mon Sep 17 00:00:00 2001 From: NguyenNhuDi Date: Thu, 30 May 2024 09:53:16 -0600 Subject: [PATCH 2/3] updated change log --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ce34c619..dd0068e7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,12 @@ Documentation for rocRAND is available at [https://rocm.docs.amd.com/projects/rocRAND/en/latest/](https://rocm.docs.amd.com/projects/rocRAND/en/latest/) +## (Unreleased) rocRAND-3.1.1 for ROCm 6.2.0 + +## Fixes + * Fixed " unknown extension ?>" issue in scripts/config-tuning/select_best_config.py + when using python version thats older than 3.11 + ## (Unreleased) rocRAND-3.1.0 for ROCm 6.2.0 ### Additions From 93c3176a5a6623da94dbbd075ae925b20cfa6806 Mon Sep 17 00:00:00 2001 From: NguyenNhuDi Date: Tue, 4 Jun 2024 09:50:26 -0600 Subject: [PATCH 3/3] deleted old atomics --- scripts/config-tuning/select_best_config.py | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/scripts/config-tuning/select_best_config.py b/scripts/config-tuning/select_best_config.py index 778e3aee..44e7ed1d 100755 --- a/scripts/config-tuning/select_best_config.py +++ b/scripts/config-tuning/select_best_config.py @@ -11,7 +11,6 @@ from matplotlib import pyplot as plt import argparse from jinja2 import Environment, PackageLoader -from sys import version_info env = Environment( loader=PackageLoader("select_best_config"), @@ -53,12 +52,7 @@ def guess_gcn_architecture(path: str, raw_json_data: dict): # Extract the groups of the regex match to a DataFrame - # need at least python 3.11 to have possesive quantifier and atomic grouping - if version_info.major >= 3 and version_info.minor >= 11: - name_regex = r'^(?P\S+?)_(?Puniform|normal|log_normal|poisson)_(?P(?>unsigned_)?(?>int|short|char|long_long|float|half|double))_t(?P\d+)_b(?P\d+)' - else: - name_regex = r'^(?P\S+?)_(?Puniform|normal|log_normal|poisson)_(?P(unsigned_)?(int|short|char|long_long|float|half|double))_t(?P\d+)_b(?P\d+)' - + name_regex = r'^(?P\S+?)_(?Puniform|normal|log_normal|poisson)_(?P(unsigned_)?(int|short|char|long_long|float|half|double))_t(?P\d+)_b(?P\d+)' extracted_data = benchmark_data['name'].str.extract(name_regex) extracted_data['block_size'] = extracted_data['block_size'].astype(int)