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

Update _toc.yml.in #2587

Closed
wants to merge 69 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
69 commits
Select commit Hold shift + click to select a range
6d2ae15
Update _toc.yml.in
Rmalavally Dec 6, 2023
856b2f1
Update _toc.yml.in
Rmalavally Dec 6, 2023
cae46fd
Update _toc.yml.in
Rmalavally Dec 6, 2023
709164f
Update _toc.yml.in
Rmalavally Dec 6, 2023
0832e53
Update _toc.yml.in
samjwu Dec 6, 2023
cac7a88
Update _toc.yml.in
samjwu Dec 6, 2023
79970e0
Update _toc.yml.in
Rmalavally Dec 8, 2023
f7a771b
Update _toc.yml.in
Rmalavally Dec 12, 2023
3c5e83c
Create reference
Rmalavally Dec 12, 2023
4068655
Delete docs/reference
Rmalavally Dec 12, 2023
d0bc0f0
Create quick-start.rst
Rmalavally Dec 12, 2023
4252d7c
Create what-is-MIOpen.rst
Rmalavally Dec 12, 2023
ad34523
Delete docs/tutorials/quick-start.rst
Rmalavally Dec 12, 2023
be715eb
Update what-is-MIOpen.rst
Rmalavally Dec 12, 2023
ef2a85b
Update what-is-MIOpen.rst
Rmalavally Dec 12, 2023
29005e8
Create apireference.rst
Rmalavally Dec 12, 2023
8473e31
Update apireference.rst
Rmalavally Dec 12, 2023
7acfd67
Create find_and_immediate.md
Rmalavally Dec 12, 2023
b7c73a5
Create finddb.rst
Rmalavally Dec 12, 2023
7064c40
Update finddb.rst
Rmalavally Dec 12, 2023
8de1cf5
Delete docs/tutorials/finddb.rst
Rmalavally Dec 12, 2023
1ca42e6
Create finddb.md
Rmalavally Dec 12, 2023
8e47f79
Create cache.md
Rmalavally Dec 12, 2023
07dd95b
Create perfdatabase.md
Rmalavally Dec 12, 2023
523dd5c
Create getting_started_fusionAPI.md
Rmalavally Dec 12, 2023
b36bd8c
Create debugging_and_logging.md
Rmalavally Dec 12, 2023
e745fe9
Create MI200alternateimplementation.md
Rmalavally Dec 12, 2023
30d9b49
Create MIOpenportingguide.md
Rmalavally Dec 12, 2023
0ebea5e
Create index.rst
Rmalavally Dec 12, 2023
ca4c03b
Create install.md
Rmalavally Dec 12, 2023
70ee48c
Create embed.md
Rmalavally Dec 12, 2023
759eb1d
Create driver.md
Rmalavally Dec 12, 2023
a2c18ca
Update _toc.yml.in
Rmalavally Dec 12, 2023
f5f9f25
Delete docs/DebugAndLogging.md
Rmalavally Dec 12, 2023
7f29f72
Delete docs/Getting_Started_FusionAPI.md
Rmalavally Dec 12, 2023
29d889b
Delete docs/MI200AlternateImplementation.md
Rmalavally Dec 12, 2023
a98c179
Delete docs/MIOpen_Porting_Guide.md
Rmalavally Dec 12, 2023
b136967
Delete docs/apireference.rst
Rmalavally Dec 12, 2023
9468d39
Delete docs/cache.md
Rmalavally Dec 12, 2023
bae376f
Delete docs/driver.md
Rmalavally Dec 12, 2023
83a7bad
Create index.rst
Rmalavally Dec 12, 2023
b4130e0
Delete docs/find_and_immediate.md
Rmalavally Dec 12, 2023
3a194ee
Delete docs/embed.md
Rmalavally Dec 12, 2023
bc5e196
Delete docs/finddb.md
Rmalavally Dec 12, 2023
cc59168
Delete docs/install.md
Rmalavally Dec 12, 2023
c516a26
Delete docs/perfdatabase.md
Rmalavally Dec 12, 2023
e26621d
Update _toc.yml.in
Rmalavally Dec 12, 2023
2ec2460
Update _toc.yml.in
Rmalavally Dec 12, 2023
1762b8b
Update _toc.yml.in
Rmalavally Dec 12, 2023
df8b27d
Update _toc.yml.in
Rmalavally Dec 12, 2023
71f26d3
Update _toc.yml.in
Rmalavally Dec 12, 2023
671a10c
Update index.rst
Rmalavally Dec 12, 2023
40f2468
Merge branch 'develop' into Rmalavally-patch-1
Rmalavally Dec 12, 2023
98c702e
Update .readthedocs.yaml
SwRaw Dec 12, 2023
3cf98ef
Update _toc.yml.in
SwRaw Dec 12, 2023
0ffdf18
Update _toc.yml.in
Rmalavally Dec 12, 2023
6af3b71
Update _toc.yml.in
Rmalavally Dec 12, 2023
64d6b3a
Update what-is-MIOpen.rst
Rmalavally Dec 12, 2023
e75956f
Update what-is-MIOpen.rst
Rmalavally Dec 12, 2023
e79fa33
Update what-is-MIOpen.rst
Rmalavally Dec 12, 2023
054b3d1
Rmalavally-patch-1 : edit index.rst file and added install.rst
bghimireamd Jan 18, 2024
d3cc79b
Rmalavally-patch-1 : fix code block in install.rst
bghimireamd Jan 18, 2024
bd1c96d
Rmalavally-patch-1 : fix install.rst
bghimireamd Jan 18, 2024
880be0b
Rmalavally-patch-1 : fix install.rst
bghimireamd Jan 18, 2024
4eb7f47
Rmalavally-patch-1 : render code section in install.rst
bghimireamd Jan 18, 2024
888eb7c
Rmalavally-patch-1 : render all code section in install.rst
bghimireamd Jan 18, 2024
286b8d7
Rmalavally-patch-1 : render all code section in install.rst
bghimireamd Jan 18, 2024
6517398
Rmalavally-patch-1: fix referencing multiple docs
bghimireamd Jan 19, 2024
1376bdb
Merge branch 'Rmalavally-patch-1' of github.com:ROCm/MIOpen into Rmal…
bghimireamd Jan 19, 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
4 changes: 2 additions & 2 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ version: 2
sphinx:
configuration: docs/conf.py

formats: [htmlzip, pdf, epub]
formats: [htmlzip, pdf]

python:
install:
- requirements: docs/sphinx/requirements.txt

build:
os: ubuntu-22.04
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@samjwu is this change correct?

os: ubuntu-20.04
tools:
python: "3.8"
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
.. _apireference:

API Reference
=============
Expand Down
9 changes: 9 additions & 0 deletions docs/reference/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
Indices and tables
========
.. toctree::
:maxdepth: 2
:caption: Contents:

:ref:`what-is-MIOpen`
:ref:`install`
:ref:`apireference`
73 changes: 53 additions & 20 deletions docs/sphinx/_toc.yml.in
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

where is the API ref heading? you seem to have removed the entire former API ref section and there is no organization to the existing pages

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

look at the build--it's not rendering, so you need to fix the code.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yep. It's a work in progress. Won't render yet.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you haven't added any of the Doxygen content (=the API ref)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • file: reference/apireference.rst is what I have from them. Let's hold off until the structure is finalized.

Copy link
Contributor

@LisaDelaney LisaDelaney Dec 8, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doxygen builds content automatically from the header files (which contains the code/text/content for the API). The team does does not supply the API textual content. This content is build into the "Doxygen" folder--this is what you need to include in the toc in order to incorporate the API ref.

Original file line number Diff line number Diff line change
@@ -1,24 +1,57 @@
# Anywhere {branch} is used, the branch name will be substituted.
# These comments will also be removed.
defaults:
numbered: False
maxdepth: 6
maxdepth: 7
root: index
subtrees:
- entries:
- file: releasenotes
- file: citation
- file: install
- file: embed
- file: driver
- file: DebugAndLogging
- file: cache
- file: perfdatabase
- file: finddb
- file: find_and_immediate
- file: Getting_Started_FusionAPI
- file: MI200AlternateImplementation
- file: MIOpen_Porting_Guide
- file: apireference
- caption: About
entries:
- file: license
- caption: What is MIOpen?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this should not be a heading. it should be an intro page that describes the project.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We are still discussing the content for the Intro page. For now, we have reorganized the ToC on what's available and accurate. We have also removed the reference to release notes, as it is obsolete.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

then we need to wait until we have a page to link to. It's confusing to have a heading represent a placeholder for a future page. A heading (='caption' in the toc) should only be there to represent pages that fit into that heading.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's a decision we must make. Working with the team.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you can use the README file to get a little general info for a 'What is ..?' page until the team gets a chance to add to it. this page doesn't need to super long or elaborate, just has to describe what the project is/does.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, Lisa. Thanks so much for your help and comments.

subtrees:
- entries:
- file: tutorials/what-is-MIOpen.rst
title: What is MIOpen?
- file: tutorials/find_and_immediate.rst
title: Find and Immediate
- file: tutorials/finddb.rst
title: Find database
- file: tutorials/cache.rst
title: Cache
- file: tutorials/perfdatabase.rst
title: Performance database
- file: tutorials/Getting_Started_FusionAPI.rst
title: Getting started with Fusion API
- file: tutorials/DebugAndLogging.rst
title: Debugging and logging
- file: tutorials/MI200AlternateImplementation.rst
title: Alternate implementation for MI200
- file: tutorials/MIOpen_Porting_Guide.rst
title: MIOpen Porting Guide

- file: tutorials/index.rst
- caption: Quick-start
subtrees:
- entries:
- file: tutorials/quick-start/install.rst
title: MIOpen installation
- file: tutorials/quick-start/embed.rst
title: Embedding MIOpen
- file: tutorials/quick-start/driver.rst
title: About MIOpen driver

- file: reference/index.rst
- caption: API reference
subtrees:
- entries
- file: reference/apireference.rst
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You're referencing a lot of files/folders that don't exit...and need to include the API ref from the doxygen folder (see my previous comment).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bibek and I added the API ref from the Doxygen folder. @bghimireamd Please advise.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Exit? or Exist? We have reused all existing and original files. Sam recommended we create the appropriate folders, and as suggested, we used hipSPARSElt as the template. Should we remove the titles and keep it simple for 6.0?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

that was a typo: I meant exist.

title: API library

- file: tutorials/index.rst
- caption: Tutorials
subtrees:
- entries:
- file: tutorials/install.rst
title: MIOpen installation
- file: tutorials/embed.rst
title: Embedding MIOpen
- file: tutorials/driver.rst
title: Installing and building MIOpen

Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ An alternate implementation for the half precision data-type is available in MIO

* The default MIOpen behaviors described above may be overridden using the `miopenSetConvolutionAttribute` API call and passing the convolution descriptor for the appropriate convolution operation and the `MIOPEN_CONVOLUTION_ATTRIB_FP16_ALT_IMPL` convolution attribute with a non-zero value to engage the alternate implementation.

* The behavior might also be overridden using the `MIOPEN_DEBUG_CONVOLUTION_ATTRIB_FP16_ALT_IMPL` environment variable. The above variable when set to a value of `1` engages the alternate implementation while a value of `0` disables it. Keep in mind the environment variable impacts the convolution operation in all directions.
* The behavior might also be overridden using the `MIOPEN_DEBUG_CONVOLUTION_ATTRIB_FP16_ALT_IMPL` environment variable. The above variable when set to a value of `1` engages the alternate implementation while a value of `0` disables it. Keep in mind the environment variable impacts the convolution operation in all directions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@

# MIOpen Porting Guide


Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
1 change: 1 addition & 0 deletions docs/tutorials/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

File renamed without changes.
File renamed without changes.
1 change: 0 additions & 1 deletion docs/embed.md → docs/tutorials/quick-start/embed.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@

Building MIOpen for Embedded Systems
====================================

Expand Down
File renamed without changes.
62 changes: 62 additions & 0 deletions docs/tutorials/quick-start/install.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
.. _install:

Building MIOpen from source
~~~~~~~~~~

Configuring with cmake
----------

First create a build directory:

.. code-block:: bash

mkdir build; cd build;


Next configure cmake. The preferred backend for MIOpen can be set using the `-DMIOPEN_BACKEND` cmake variable.

For the HIP backend (ROCm 3.5 and later), run
----------

Set the C++ compiler to `clang++`.

.. code-block:: bash

export CXX=<location-of-clang++-compiler>
cmake -DMIOPEN_BACKEND=HIP -DCMAKE_PREFIX_PATH="<hip-installed-path>;<rocm-installed-path>;<miopen-dependency-path>" ..

An example cmake step can be:

.. code-block:: bash

export CXX=/opt/rocm/llvm/bin/clang++ && \
cmake -DMIOPEN_BACKEND=HIP -DCMAKE_PREFIX_PATH="/opt/rocm/;/opt/rocm/hip;/root/MIOpen/install_dir" ..

Note: When specifying the path for the `CMAKE_PREFIX_PATH` variable, **do not** use the `~` shorthand for the user home directory.


Setting Up Locations
----------

By default the install location is set to '/opt/rocm', this can be set by using `CMAKE_INSTALL_PREFIX`:

.. code-block:: bash

cmake -DMIOPEN_BACKEND=OpenCL -DCMAKE_INSTALL_PREFIX=<miopen-installed-path> ..

Building MIOpen using docker
~~~~~~~~~~

The easiest way is to use docker. You can build the top-level docker file:

.. code-block:: bash

docker build -t miopen-image .

Then to enter the development environment use `docker run`, for example:

.. code-block:: bash

docker run -it -v $HOME:/data --privileged --rm --device=/dev/kfd --device /dev/dri:/dev/dri:rw --volume /dev/dri:/dev/dri:rw -v /var/lib/docker/:/var/lib/docker --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined miopen-image

Prebuilt docker images can be found on [ROCm's public docker hub here](https://hub.docker.com/r/rocm/miopen/tags).
13 changes: 13 additions & 0 deletions docs/tutorials/what-is-MIOpen.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
.. meta::
:description: MIOpen is AMD’s deep learning primitives library, which provides highly optimized, and hand-tuned implementations of
different operators such as convolution, batch normalization, pooling, softmax, activation and layers for Recurrent Neural
Networks (RNNs), used in both training and inference [9].
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please remove the reference.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did. Let me resend the PR. Here's the final text,

MIOpen is AMD’s deep learning primitives library, which provides highly optimized and hand-tuned implementations of different operators such as convolution, batch normalization, pooling, softmax, activation and layers for Recurrent Neural Networks (RNNs), used in both training and inference. Moreover, MIOpen is fully open source, including all its GPU kernels, complementing AMD’s open source ROCm stack. MIOpen is the first to extend the open source advantage into GPU vendor libraries thereby, continuing to embark on the same ethos as the deep learning community.

:keywords: MIOpen, ROCm, library, API

.. _what-is-MIOpen:

*********************
What is MIOpen?
*********************

MIOpen is AMD’s deep learning primitives library, which provides highly optimized and hand-tuned implementations of different operators such as convolution, batch normalization, pooling, softmax, activation and layers for Recurrent Neural Networks (RNNs), used in both training and inference. Moreover, MIOpen is fully open source, including all its GPU kernels, complementing AMD’s open source ROCm stack. MIOpen is the first to extend the open source advantage into GPU vendor libraries thereby, continuing to embark on the same ethos as the deep learning community.