From a325c99804c86b6e7568801d632ffba920818f17 Mon Sep 17 00:00:00 2001 From: hanxinke Date: Mon, 27 Jul 2020 20:41:18 +0800 Subject: [PATCH] atune: profiles support multiple include values --- analysis/atuned/collector.py | 4 +++- analysis/engine/optimizer.py | 2 +- analysis/optimizer/optimizer.py | 2 +- common/profile/loader.go | 4 +++- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/analysis/atuned/collector.py b/analysis/atuned/collector.py index 2903b7a..c595a3c 100755 --- a/analysis/atuned/collector.py +++ b/analysis/atuned/collector.py @@ -61,6 +61,7 @@ class Collector(Resource): current_app.logger.info(monitors) data = [] + data_field = [] for _ in range(collect_num): raw_data = MPI.get_monitors_data(monitors, mpis) current_app.logger.info(raw_data) @@ -73,12 +74,13 @@ class Collector(Resource): if n_pipe is not None: n_pipe.write(" ".join(str_data) + "\n") + data_field.append(float_data.copy()) if data_type != "": for type_name in data_type.split(":"): float_data.append(type_name) data.append(float_data) - data_average = [sum(elem)/len(elem) for elem in zip(*data)] + data_average = [sum(elem)/len(elem) for elem in zip(*data_field)] data_result = {} for index, _ in enumerate(data_average): data_result[field_name[index]] = data_average[index] diff --git a/analysis/engine/optimizer.py b/analysis/engine/optimizer.py index 054a90d..7ffd977 100644 --- a/analysis/engine/optimizer.py +++ b/analysis/engine/optimizer.py @@ -22,7 +22,7 @@ from flask_restful import reqparse, Resource from analysis.engine.parser import OPTIMIZER_POST_PARSER, OPTIMIZER_PUT_PARSER from analysis.engine.utils import task_cache -from optimizer import optimizer +from analysis.optimizer import optimizer LOGGER = logging.getLogger(__name__) diff --git a/analysis/optimizer/optimizer.py b/analysis/optimizer/optimizer.py index 1af0825..8524b76 100644 --- a/analysis/optimizer/optimizer.py +++ b/analysis/optimizer/optimizer.py @@ -162,7 +162,7 @@ class Optimizer(multiprocessing.Process): return None except Exception as e: LOGGER.error('Unexpected Error: %s', repr(e)) - self.child_conn.send(Exception("Unexpected Error:", repr(e)) + self.child_conn.send(Exception("Unexpected Error:", repr(e))) return None for i, knob in enumerate(self.knobs): diff --git a/common/profile/loader.go b/common/profile/loader.go index 81a5837..bd6d1dd 100644 --- a/common/profile/loader.go +++ b/common/profile/loader.go @@ -64,7 +64,9 @@ func loadProfile(profileNames []string, profiles []Profile, if profile.options.HasKey("include") { include, _ := profile.options.GetKey("include") names := make([]string, 0) - names = append(names, strings.Trim(include.Value(), "")) + for _, includeValue := range strings.Split(include.Value(), ",") { + names = append(names, includeValue) + } profiles, processedProfiles = loadProfile(names, profiles, processedProfiles, true) } } -- GitLab