From 0f4fdf5d50ff074a5bcfcd0c331012b0a8718f00 Mon Sep 17 00:00:00 2001 From: Grigori Fursin Date: Sun, 24 Nov 2024 23:10:31 +0100 Subject: [PATCH 1/2] - fixed pyproject.toml - fixed docs generation - improved cm pull repo with branch and SHA (#1355) --- cm/CHANGES.md | 2 +- cm/cmind/__init__.py | 2 +- cm/cmind/repos.py | 11 +++++++++++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/cm/CHANGES.md b/cm/CHANGES.md index c3c12206f..358e4d357 100644 --- a/cm/CHANGES.md +++ b/cm/CHANGES.md @@ -1,4 +1,4 @@ -## V3.4.2.1 +## V3.4.3 - fixed pyproject.toml - fixed docs generation - improved cm pull repo with branch and SHA (#1355) diff --git a/cm/cmind/__init__.py b/cm/cmind/__init__.py index f67ba6269..b8f988f88 100644 --- a/cm/cmind/__init__.py +++ b/cm/cmind/__init__.py @@ -2,7 +2,7 @@ # # Written by Grigori Fursin -__version__ = "3.4.2.1" +__version__ = "3.4.3" from cmind.core import access from cmind.core import x diff --git a/cm/cmind/repos.py b/cm/cmind/repos.py index e2d254a00..c86a641ee 100644 --- a/cm/cmind/repos.py +++ b/cm/cmind/repos.py @@ -99,6 +99,17 @@ def load(self, init = False): r = utils.save_json(full_path_to_repo_paths, meta = self.paths) if r['return']>0: return r + # Skip internal repos + skip_internal_repos = os.environ.get('CM_CORE_SKIP_INTERNAL_REPOS','').strip().lower() + if skip_internal_repos not in ['1', 'true', 'yes']: + import pkgutil + for mi, name, ispkg in pkgutil.iter_modules(): + if name.startswith('cm') and name != 'cmind': + path = os.path.join(mi.path, name, 'repo') + path_cmr = os.path.join(path, 'cmr.yaml') + if os.path.isfile(path_cmr) and path not in self.paths: + self.paths.insert(0, path) + # Check internal repo (will be after local) if self.path_to_internal_repo != '' and os.path.isdir(self.path_to_internal_repo): self.paths.insert(0, self.path_to_internal_repo) From 37e71215897a502f25a5a417b78b6819387a824b Mon Sep 17 00:00:00 2001 From: Grigori Fursin Date: Sun, 24 Nov 2024 23:22:14 +0100 Subject: [PATCH 2/2] clean up --- README.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 5ff26b532..beb737a0e 100755 --- a/README.md +++ b/README.md @@ -11,19 +11,16 @@ ### About -[Collective Knowledge (CK)](https://cKnowledge.org) in an educational project -to help researchers and engineers automate their repetitive, tedious and time-consuming tasks -to build, run, benchmark and optimize AI, ML and other applications and systems -across diverse and continuously changing models, data, software and hardware. +[Collective Knowledge (CK, CM, CM4MLOps, CM4MLPerf and CMX)](https://cKnowledge.org) +is an educational community project to learn how to run AI, ML and other emerging workloads +in the most efficient and cost-effective way across diverse models, data sets, software and hardware. CK consists of several sub-projects: * [Collective Mind framework (CM)](cm) - a very lightweight Python-based framework with minimal dependencies - to help users implement, share and reuse cross-platform automation recipes to - build, benchmark and optimize applications on any platform - with any software and hardware. - - * [CM interface to run MLPerf inference benchmarks](https://docs.mlcommons.org/inference) + intended to help researchers and engineers automate their repetitive, tedious and time-consuming tasks + to build, run, benchmark and optimize AI, ML and other applications and systems + across diverse and continuously changing models, data, software and hardware. * [CM4MLOPS](https://github.com/mlcommons/cm4mlops) - a collection of portable, extensible and technology-agnostic automation recipes @@ -31,6 +28,9 @@ CK consists of several sub-projects: on diverse platforms with any software and hardware: see [online catalog at CK playground](https://access.cknowledge.org/playground/?action=scripts), [online MLCommons catalog](https://docs.mlcommons.org/cm4mlops/scripts) + * [CM interface to run MLPerf inference benchmarks](https://docs.mlcommons.org/inference) + + * [CM4ABTF](https://github.com/mlcommons/cm4abtf) - a unified CM interface and automation recipes to run automotive benchmark across different models, data sets, software and hardware from different vendors.