Skip to content

Commit

Permalink
GNN documentation (#364)
Browse files Browse the repository at this point in the history
MLCube documentation updates.

- Adding information about new Graph Neural Network (GNN) benchmark.
- Fixing various typos.
  • Loading branch information
davidjurado authored Sep 13, 2024
1 parent adb45e5 commit 923097c
Show file tree
Hide file tree
Showing 5 changed files with 56 additions and 4 deletions.
4 changes: 2 additions & 2 deletions docs/minified-benchmarks/bert.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ virtualenv -p python3 ./env && source ./env/bin/activate && pip install pip==24.
git clone https://github.com/mlcommons/training && cd ./training/language_model/tensorflow/bert
```

Go to mlcube directory and study what tasks MLCube implements.
Go to the mlcube directory and study what tasks MLCube implements.

```shell
cd ./mlcube
Expand Down Expand Up @@ -80,7 +80,7 @@ In the Google Cloud console, search for the Cloud TPU API page, then click Enabl

Then go to the virtual machine sections and select [TPUs](https://console.cloud.google.com/compute/tpus)

Select create TPU node, fill in all the needed parameters, the recommended TPU type in the [readme](../README.md#on-tpu-v3-128) is v3-128 and the recommended TPU software version is 2.4.0.
Select create TPU node, fill in all the needed parameters, the recommended TPU type in the [readme](https://github.com/mlcommons/training/blob/3283fc35e68deb88f7197155964f7c3858705649/language_model/tensorflow/bert/README.md#on-tpu-v3-128) is v3-128 and the recommended TPU software version is 2.4.0.

The 3 most important parameters you need to remember are: `project name`, `TPU name`, and `TPU Zone`.

Expand Down
50 changes: 50 additions & 0 deletions docs/minified-benchmarks/gnn.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Graph Neural Network

The benchmark reference for Graph Neural Network can be found in this [link](https://github.com/mlcommons/training/tree/master/graph_neural_network), and here is the PR for the minified benchmark implementation: [link](https://github.com/mlcommons/training/pull/762).

## Project setup

An important requirement is that you must have Docker installed.

```bash
# Create Python environment and install MLCube Docker runner
virtualenv -p python3 ./env && source ./env/bin/activate && pip install pip==24.0 && pip install mlcube-docker
# Fetch the implementation from GitHub
git clone https://github.com/mlcommons/training && cd ./training
git fetch origin pull/762/head:feature/mlcube_graph_nn && git checkout feature/mlcube_graph_nn
cd ./graph_neural_network/mlcube
```

Inside the mlcube directory run the following command to check implemented tasks.

```shell
mlcube describe
```

### MLCube tasks

Download dataset.

```shell
mlcube run --task=download_data -Pdocker.build_strategy=always
```

Process dataset.

```shell
mlcube run --task=process_data -Pdocker.build_strategy=always
```

Train GNN.

```shell
mlcube run --task=train -Pdocker.build_strategy=always
```

### Execute the complete pipeline

You can execute the complete pipeline with one single command.

```shell
mlcube run --task=download_data,process_data,train -Pdocker.build_strategy=always
```
3 changes: 2 additions & 1 deletion docs/minified-benchmarks/introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ A minified benchmark is a reduced version of a MLCommons training benchmark desi

The main advantages of these minified benchmarks are:

- **Faster Execution**: Minified benchmarks are quicker to run (between 10 to 15 mintues), allowing for faster iteration and validation.
- **Faster Execution**: Minified benchmarks are quicker to run (between 10 to 15 minutes), allowing for faster iteration and validation.
- **Easier implementation**: By using MLCube users don't need to worry about installing everything from scratch.
- **Reference preparation**: Minified benchmarks could be used as an introductory step for users interested in executing the MLCommons reference benchmarks.

Expand All @@ -18,3 +18,4 @@ The main advantages of these minified benchmarks are:
- [ResNet](resnet.md)
- [Bert](bert.md)
- [Object Detection](object-detection.md)
- [Graph Neural Network](gnn.md)
2 changes: 1 addition & 1 deletion docs/minified-benchmarks/object-detection.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ It's also possible to execute the two tasks in one single instruction:
mlcube run --task=download_demo,demo -Pdocker.build_strategy=always
```

### Aditonal options
### Additional options

Parameters defined at **mculbe/mlcube.yaml** could be overridden using: `--param=input`

Expand Down
1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ nav:
- ResNet: minified-benchmarks/resnet.md
- Bert: minified-benchmarks/bert.md
- Object Detection: minified-benchmarks/object-detection.md
- Graph Neural Network: minified-benchmarks/gnn.md

theme:
features:
Expand Down

0 comments on commit 923097c

Please sign in to comment.