Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

regular update based on user feedback #1188

Merged
merged 44 commits into from
Apr 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
2114a4c
continue improving CM-MLPerf GUI: Nvidia & Qualcomm cleanup
gfursin Mar 21, 2024
b5133e8
added skip of delayed help to simplify output of `cmr [tags] --help`
gfursin Mar 21, 2024
ad8e06b
fixing year in copyright
gfursin Mar 21, 2024
5403cd6
Enhanced patch creation
gfursin Mar 21, 2024
ba682bf
fixing "get git repo" on Windows to process MLPerf inference results
gfursin Mar 21, 2024
8b87981
revisited automatically generated READMEs for CM scripts (automation …
gfursin Mar 22, 2024
f987cc9
fixing typo
gfursin Mar 22, 2024
d7919cd
fixed READMEs
gfursin Mar 22, 2024
313fae0
clean up test scripts
gfursin Mar 22, 2024
7d23bd0
clean up
gfursin Mar 22, 2024
c28b5fa
clean up git
gfursin Mar 22, 2024
d532f7e
clean up
gfursin Mar 22, 2024
d59b00f
improved deleting of CM entries on Windows
gfursin Mar 24, 2024
8bd3049
various fixes to show v4.0 inference results
gfursin Mar 28, 2024
9904c4c
minor clean up
gfursin Mar 28, 2024
2992a6b
updating docs
gfursin Apr 1, 2024
e75a332
fixed typo
gfursin Apr 2, 2024
6193e18
added MLPerf inference loadgen v4.0 (download and copy)
gfursin Apr 2, 2024
61fe7e9
Updated docs
ctuning-admin Apr 2, 2024
b3abd23
clean up
gfursin Apr 2, 2024
ec3f24c
Merge branch 'dev' of https://github.com/mlcommons/ck into dev
gfursin Apr 2, 2024
40d00c1
added MLPerf loadgen test (python)
gfursin Apr 3, 2024
e01c838
clean up
gfursin Apr 3, 2024
9341899
clean up
gfursin Apr 3, 2024
35c01ae
clean up
gfursin Apr 3, 2024
1ae141e
clean up
gfursin Apr 3, 2024
485ad9d
clean up
gfursin Apr 3, 2024
4e5bcf8
moved tests to cknowledge@cm-prototyping to have clean repo
gfursin Apr 3, 2024
40e5b29
Test Onnx C++
gfursin Apr 3, 2024
65c8818
improved path generation for MLPerf loadgen (to better support our C+…
gfursin Apr 3, 2024
43268ef
moving get-target-device to prototyping
gfursin Apr 3, 2024
a87ad85
enhancing run_native_script
gfursin Apr 5, 2024
2c3fec6
clean up
gfursin Apr 5, 2024
b8ed504
Merge branch 'master' into dev
gfursin Apr 5, 2024
1600562
added generic "data" automation
gfursin Apr 6, 2024
0f47e10
added PyTorch model support to the CM's universal Python loadgen harness
gfursin Apr 8, 2024
292bfcf
added support for PyTorch model cfg in universal python loadgen harness
gfursin Apr 8, 2024
a8a5f65
added support to pass cfg dict from cmd to pytorch loadgen
gfursin Apr 8, 2024
8911ec8
added cuda support
gfursin Apr 8, 2024
db2cb5e
removing outdated file
gfursin Apr 9, 2024
d9e79fd
fix default user name in GitHub workflows
gfursin Apr 10, 2024
535ece8
fixed outdated repo name
gfursin Apr 10, 2024
440d41e
removed large files to keep this repository small before moving it to…
gfursin Apr 10, 2024
eb49636
Merge branch 'dev' of https://github.com/mlcommons/ck into dev
gfursin Apr 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/update-script-dockerfiles.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:

FOLDER=`cm find repo mlcommons@ck | cut -d' ' -f3`

USER=cTuning
USER=ctuning-admin
[email protected]

git config --global user.name "$USER"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/update-script-readme.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
cd $FOLDER
echo "Changed to $FOLDER"

USER=cTuning
USER=ctuning-admin
[email protected]

git config --global user.name "$USER"
Expand Down
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -216,7 +216,7 @@ cm replay experiment --tags=tuning,experiment,batch_size

cmr "get conda"

cm pull repo ctuning@cm-reproduce-research-projects
cm pull repo ctuning@cm4research
cmr "reproduce paper micro-2023 victima _install_deps"
cmr "reproduce paper micro-2023 victima _run"

Expand All @@ -237,6 +237,7 @@ cmr "reproduce paper micro-2023 victima _run"

### CM documentation

* [Nes](docs/news.md)
* [Getting Started Guide and FAQ](docs/getting-started.md)
* [Common CM interface to run MLPerf inference benchmarks](docs/mlperf/inference)
* [Common CM interface to re-run experiments from ML and Systems papers including MICRO'23 and the Student Cluster Competition @ SuperComputing'23](docs/tutorials/common-interface-to-reproduce-research-projects.md)
Expand Down
9 changes: 9 additions & 0 deletions cm-mlops/automation/data/_cm.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"alias": "data",
"automation_alias": "automation",
"automation_uid": "bbeb15d8f0a944a4",
"tags": [
"automation"
],
"uid": "84d8ef6914bf4d78"
}
52 changes: 52 additions & 0 deletions cm-mlops/automation/data/module.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
import os

from cmind.automation import Automation
from cmind import utils

class CAutomation(Automation):
"""
Automation actions
"""

############################################################
def __init__(self, cmind, automation_file):
super().__init__(cmind, __file__)

############################################################
def test(self, i):
"""
Test automation

Args:
(CM input dict):

(out) (str): if 'con', output to console

automation (str): automation as CM string object

parsed_automation (list): prepared in CM CLI or CM access function
[ (automation alias, automation UID) ] or
[ (automation alias, automation UID), (automation repo alias, automation repo UID) ]

(artifact) (str): artifact as CM string object

(parsed_artifact) (list): prepared in CM CLI or CM access function
[ (artifact alias, artifact UID) ] or
[ (artifact alias, artifact UID), (artifact repo alias, artifact repo UID) ]

...

Returns:
(CM return dict):

* return (int): return code == 0 if no error and >0 if error
* (error) (str): error string if return>0

* Output from this automation action

"""

import json
print (json.dumps(i, indent=2))

return {'return':0}
3 changes: 3 additions & 0 deletions cm-mlops/automation/script/module.py
Original file line number Diff line number Diff line change
Expand Up @@ -2987,6 +2987,9 @@ def run_native_script(self, i):

r = prepare_and_run_script_with_postprocessing(run_script_input, postprocess="")

env_tmp = copy.deepcopy(run_script_input['env'])
r['env_tmp'] = env_tmp

run_script_input['state'] = run_script_input_state_copy
run_script_input['env'] = env_copy
run_script_input['script_name'] = script_name_copy
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ automation_uid: 3d84abd768f34e08
title: Add MLCommons CM workflows and unifed interface to automate MLPerf inference v3.1 and v4.0 benchmarks (Intel, Nvidia, Qualcomm, Arm64, TPU ...)

date_open: '20231215'
date_close: '20240315'

hot: true

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
This challenge is under preparation.
This challenge is under preparation. You can read about the motivation behind this challenge in our [invited talk at MLPerf-Bench @ HPCA'24](https://doi.org/10.5281/zenodo.10786893).

We plan to extend [MLCommons CM framework](https://github.com/mlcommons/ck)
to automatically compose high-performance and cost-efficient AI systems
Expand Down
2 changes: 1 addition & 1 deletion cm-mlops/challenge/repro-micro2023/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ Conference: [ACM/IEEE MICRO 2023](https://www.microarch.org/micro56)

## Artifacts with the CM interface

* https://github.com/ctuning/cm-reproduce-research-projects
* https://github.com/ctuning/cm4research

## Our experience report

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"alias": "mlperf-inference-v4.0-press-release-ctuning",
"automation_alias": "report",
"automation_uid": "6462ecdba2054467",
"date": "20230913",
"redirect": "https://www.linkedin.com/pulse/new-cm-mlperf-automation-helps-benchmark-commodity-hardware-fursin-61noe",
"tags": [
"mlperf",
"inference",
"mlperf-inference",
"v4.0",
"analysis",
"ctuning"
],
"title": "cTuning press-release about a new version of the CM workflow to automate MLPerf",
"uid": "acc35b8e9ed14c98"
}
11 changes: 11 additions & 0 deletions cm-mlops/script/app-image-corner-detection/README-extra.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,16 @@
# Examples

First download images:

```bash
cmr "download file _wget" --url=https://cKnowledge.org/ai/data/data.pgm --verify=no --env.CM_DOWNLOAD_CHECKSUM=0af279e557a8de252d7ff0751a999379
cmr "download file _wget" --url=https://cKnowledge.org/ai/data/computer_mouse.jpg --verify=no --env.CM_DOWNLOAD_CHECKSUM=45ae5c940233892c2f860efdf0b66e7e
cmr "download file _wget" --url=https://cKnowledge.org/ai/data/computer_mouse2.jpg --verify=no --env.CM_DOWNLOAD_CHECKSUM=e7e2050b41e0b85cedca3ca87ab55390
cmr "download file _wget" --url=https://cKnowledge.org/ai/data/computer_mouse2.pgm --verify=no --env.CM_DOWNLOAD_CHECKSUM=a4e48556d3eb09402bfc98e375b41311
```

Then run app

```bash
cm run script "app image corner-detection"
cm run script "app image corner-detection" -add_deps_recursive.compiler.tags=llvm
Expand Down
Binary file not shown.
Loading
Loading