Skip to content

Commit

Permalink
Standardize hipBLAS documentation builds to use the rocm-docs-core te…
Browse files Browse the repository at this point in the history
…mplate (ROCm#566)

* Changing Documentation Template

* Changing Documentation Template

* hipBLAS documentation refactored for pitchfork

* Remove old rocm logo

* Reorganize sections to match swab-documentation for reference libraries

https://github.com/RadeonOpenCompute/swab-documentation/blob/main/docs/sphinx/templates/references/reference_library.md

* Moving files around

* Renaming conf.py to sphix_conf.py

* Recompile requirements.txt

* Fix typo

* Renaming back

* Update requirements

* Point requirements to rocm-docs-core

* updating yml

* final move for conf.py

* Update toc file entries

* Renaming folders

* Updating rtd yaml with new folder structure

* Rename sphinx and doxygen folders

prepend . to indicate config folders

* Remove extra header

* Build html only

pdf etc not used

* Add section on how to build documentation locally

---------

Co-authored-by: Sergey Kostrov <[email protected]>
Co-authored-by: Saad Rahim <[email protected]>
  • Loading branch information
3 people authored and daineAMD committed May 29, 2023
1 parent 03e7f8a commit 213ed4a
Show file tree
Hide file tree
Showing 5 changed files with 61 additions and 105 deletions.
2 changes: 0 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,8 @@ build*
*~

# documentation artifacts
build/
_build/
_images/
_static/
_templates/
_toc.yml
docBin/
4 changes: 0 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,11 @@ hipBLAS requires either **rocBLAS** + **rocSOLVER** or **cuBLAS** APIs for BLAS

### How to build documentation

Run the steps below to build documentation locally.

```
cd docs

pip3 install -r .sphinx/requirements.txt

python3 -m sphinx -T -E -b html -d _build/doctrees -D language=en . _build/html
```

## Quickstart build

Expand Down
91 changes: 44 additions & 47 deletions docs/.sphinx/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,41 +2,39 @@
# This file is autogenerated by pip-compile with Python 3.8
# by the following command:
#
# pip-compile requirements.in
# pip-compile docs/sphinx/requirements.in
#
accessible-pygments==0.0.3
# via pydata-sphinx-theme
alabaster==0.7.13
alabaster==0.7.12
# via sphinx
asttokens==2.2.1
asttokens==2.2.0
# via stack-data
attrs==22.2.0
attrs==22.1.0
# via
# jsonschema
# jupyter-cache
babel==2.12.1
babel==2.10.3
# via
# pydata-sphinx-theme
# sphinx
backcall==0.2.0
# via ipython
beautifulsoup4==4.11.2
beautifulsoup4==4.11.1
# via pydata-sphinx-theme
breathe==4.34.0
# via rocm-docs-core
certifi==2022.12.7
certifi==2022.6.15
# via requests
cffi==1.15.1
# via pynacl
charset-normalizer==3.1.0
charset-normalizer==2.1.0
# via requests
click==8.1.3
# via
# jupyter-cache
# sphinx-external-toc
comm==0.1.2
# via ipykernel
debugpy==1.6.6
debugpy==1.6.4
# via ipykernel
decorator==5.1.1
# via ipython
Expand All @@ -49,32 +47,33 @@ docutils==0.16
# pydata-sphinx-theme
# rocm-docs-core
# sphinx
entrypoints==0.4
# via jupyter-client
executing==1.2.0
# via stack-data
fastjsonschema==2.16.3
fastjsonschema==2.16.2
# via nbformat
gitdb==4.0.10
# via gitpython
gitpython==3.1.31
# via rocm-docs-core
greenlet==2.0.2
greenlet==2.0.1
# via sqlalchemy
idna==3.4
idna==3.3
# via requests
imagesize==1.4.1
# via sphinx
importlib-metadata==6.0.0
importlib-metadata==5.1.0
# via
# jupyter-cache
# jupyter-client
# myst-nb
importlib-resources==5.10.4
# via
# jsonschema
# rocm-docs-core
ipykernel==6.21.3
ipykernel==6.17.1
# via myst-nb
ipython==8.11.0
ipython==8.7.0
# via
# ipykernel
# myst-nb
Expand All @@ -88,28 +87,27 @@ jsonschema==4.17.3
# via nbformat
jupyter-cache==0.5.0
# via myst-nb
jupyter-client==8.0.3
jupyter-client==7.4.7
# via
# ipykernel
# nbclient
jupyter-core==5.3.0
jupyter-core==5.1.0
# via
# ipykernel
# jupyter-client
# nbformat
linkify-it-py==1.0.3
# via myst-parser
markdown-it-py==2.2.0
markdown-it-py==2.1.0
# via
# mdit-py-plugins
# myst-parser
markupsafe==2.1.2
markupsafe==2.1.1
# via jinja2
matplotlib-inline==0.1.6
# via
# ipykernel
# ipython
mdit-py-plugins==0.3.5
mdit-py-plugins==0.3.1
# via myst-parser
mdurl==0.1.2
# via markdown-it-py
Expand All @@ -123,16 +121,17 @@ nbclient==0.5.13
# via
# jupyter-cache
# myst-nb
nbformat==5.7.3
nbformat==5.7.0
# via
# jupyter-cache
# myst-nb
# nbclient
nest-asyncio==1.5.6
# via
# ipykernel
# jupyter-client
# nbclient
packaging==23.0
packaging==21.3
# via
# ipykernel
# pydata-sphinx-theme
Expand All @@ -145,9 +144,9 @@ pickleshare==0.7.5
# via ipython
pkgutil-resolve-name==1.3.10
# via jsonschema
platformdirs==3.1.1
platformdirs==2.5.4
# via jupyter-core
prompt-toolkit==3.0.38
prompt-toolkit==3.0.33
# via ipython
psutil==5.9.4
# via ipykernel
Expand All @@ -161,7 +160,7 @@ pydata-sphinx-theme==0.13.1
# via sphinx-book-theme
pygithub==1.57
# via rocm-docs-core
pygments==2.14.0
pygments==2.12.0
# via
# accessible-pygments
# ipython
Expand All @@ -171,28 +170,30 @@ pyjwt==2.6.0
# via pygithub
pynacl==1.5.0
# via pygithub
pyrsistent==0.19.3
pyparsing==3.0.9
# via packaging
pyrsistent==0.19.2
# via jsonschema
python-dateutil==2.8.2
# via jupyter-client
pytz==2022.7.1
pytz==2022.1
# via babel
pyyaml==6.0
# via
# jupyter-cache
# myst-nb
# myst-parser
# sphinx-external-toc
pyzmq==25.0.1
pyzmq==24.0.1
# via
# ipykernel
# jupyter-client
requests==2.28.2
requests==2.28.1
# via
# pygithub
# sphinx
rocm-docs-core @ git+https://github.com/RadeonOpenCompute/rocm-docs-core.git
# via -r requirements.in
# via -r docs/sphinx/requirements.in
six==1.16.0
# via
# asttokens
Expand All @@ -201,7 +202,7 @@ smmap==5.0.0
# via gitdb
snowballstemmer==2.2.0
# via sphinx
soupsieve==2.4
soupsieve==2.3.2.post1
# via beautifulsoup4
sphinx==4.3.1
# via
Expand All @@ -214,7 +215,6 @@ sphinx==4.3.1
# sphinx-copybutton
# sphinx-design
# sphinx-external-toc
# sphinx-notfound-page
sphinx-book-theme==1.0.0rc2
# via rocm-docs-core
sphinx-copybutton==0.5.1
Expand All @@ -223,21 +223,19 @@ sphinx-design==0.3.0
# via rocm-docs-core
sphinx-external-toc==0.3.1
# via rocm-docs-core
sphinx-notfound-page==0.8.3
# via rocm-docs-core
sphinxcontrib-applehelp==1.0.4
sphinxcontrib-applehelp==1.0.2
# via sphinx
sphinxcontrib-devhelp==1.0.2
# via sphinx
sphinxcontrib-htmlhelp==2.0.1
sphinxcontrib-htmlhelp==2.0.0
# via sphinx
sphinxcontrib-jsmath==1.0.1
# via sphinx
sphinxcontrib-qthelp==1.0.3
# via sphinx
sphinxcontrib-serializinghtml==1.1.5
# via sphinx
sqlalchemy==1.4.46
sqlalchemy==1.4.44
# via jupyter-cache
stack-data==0.6.2
# via ipython
Expand All @@ -247,29 +245,28 @@ tornado==6.2
# via
# ipykernel
# jupyter-client
traitlets==5.9.0
traitlets==5.6.0
# via
# comm
# ipykernel
# ipython
# jupyter-client
# jupyter-core
# matplotlib-inline
# nbclient
# nbformat
typing-extensions==4.5.0
typing-extensions==4.4.0
# via
# myst-nb
# myst-parser
uc-micro-py==1.0.1
# via linkify-it-py
urllib3==1.26.15
urllib3==1.26.11
# via requests
wcwidth==0.2.6
wcwidth==0.2.5
# via prompt-toolkit
wrapt==1.15.0
# via deprecated
zipp==3.15.0
zipp==3.11.0
# via
# importlib-metadata
# importlib-resources
Expand Down
52 changes: 0 additions & 52 deletions docs/deprecation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,55 +26,3 @@ The packed_int8x4 datatype will be removed in hipBLAS 1.0. There are two int8 da
int8_t is the C99 unsigned 8 bit integer. packed_int8x4 has 4 consecutive int8_t numbers
in the k dimension packed into 32 bits. packed_int8x4 is only used in hipblasGemmEx.
int8_t will continue to be available in hipblasGemmEx.

Announced in hipBLAS 1.0
^^^^^^^^^^^^^^^^^^^^^^^^

Replace Legacy BLAS in-place trmm functions with trmm functions that support both in-place and out-of-place functionality
=========================================================================================================================
Use of the deprecated Legacy BLAS in-place trmm functions will give deprecation warnings telling
you to compile with -DHIPBLAS_V1 and use the new in-place and out-of-place trmm functions.

Note that there are no deprecation warnings for the hipBLAS Fortran API.

The Legacy BLAS in-place trmm calculates B <- alpha * op(A) * B. Matrix B is replaced in-place by
triangular matrix A multiplied by matrix B. The prototype in the include file rocblas-functions.h is:

::

hipblasStatus_t hipblasStrmm(hipblasHandle_t handle,
hipblasSideMode_t side,
hipblasFillMode_t uplo,
hipblasOperation_t transA,
hipblasDiagType_t diag,
int m,
int n,
const float* alpha,
const float* AP,
int lda,
float* BP,
int ldb);

hipBLAS 1.0 deprecates the legacy BLAS trmm functionality and replaces it with C <- alpha * op(A) * B. The prototype is:

::

hipblasStatus_t hipblasStrmmOutofplace(hipblasHandle_t handle,
hipblasSideMode_t side,
hipblasFillMode_t uplo,
hipblasOperation_t transA,
hipblasDiagType_t diag,
int m,
int n,
const float* alpha,
const float* AP,
int lda,
const float* BP,
int ldb,
float* CP,
int ldc);

The new API provides the legacy BLAS in-place functionality if you set pointer C equal to pointer B and
ldc equal to ldb.

There are similar deprecations for the _batched and _strided_batched versions of trmm.
17 changes: 17 additions & 0 deletions docs/disclaimer.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
************
Disclaimer
************

The information contained herein is for informational purposes only and is subject to change without notice. While every precaution has been taken in the preparation of this document, it may contain technical inaccuracies, omissions and typographical errors, and AMD is under no obligation to update or otherwise correct this information. Advanced Micro Devices, Inc. makes no representations or warranties with respect to the accuracy or completeness of the contents of this document, and assumes no liability of any kind, including the implied warranties of noninfringement, merchantability or fitness for particular purposes, with respect to the operation or use of AMD hardware, software or other products described herein. No license, including implied or arising by estoppel, to any intellectual property rights is granted by this document. Terms and limitations applicable to the purchase or use of AMD's products are as set forth in a signed agreement between the parties or in AMD's Standard Terms and Conditions of Sale.

- AMD, the AMD Arrow logo, Radeon, Ryzen, Epyc, and combinations thereof are trademarks of Advanced Micro Devices, Inc.

- Google(R) is a registered trademark of Google LLC.

- PCIe(R) is a registered trademark of PCI-SIG Corporation.

- Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.

- Ubuntu and the Ubuntu logo are registered trademarks of Canonical Ltd.

- Other product names used in this publication are for identification purposes only and may be trademarks of their respective companies.

0 comments on commit 213ed4a

Please sign in to comment.