5d22d5ac8e
* pip-compile docs/requirements.txt
Signed-off-by: Peter Jun Park <peter.park@amd.com>
Add Sphinx docs config
Signed-off-by: Peter Jun Park <peter.park@amd.com>
Add Sphinx config
Signed-off-by: Peter Jun Park <peter.park@amd.com>
Update docs build config
Signed-off-by: Peter Jun Park <peter.park@amd.com>
* style(conf.py): Apply black formatting to docs/conf.py
Signed-off-by: Sam Wu <22262939+samjwu@users.noreply.github.com>
* Update docs requirements
Signed-off-by: Peter Jun Park <peter.park@amd.com>
Update to rocm-docs-core 1.3.0
Signed-off-by: Peter Jun Park <peter.park@amd.com>
Update docs requirements
Signed-off-by: Peter Jun Park <peter.park@amd.com>
pip-compile requirements
Signed-off-by: Peter Jun Park <peter.park@amd.com>
bump rocm-docs-core to 1.5.0
bump rocm-docs-core to 1.4.1
Signed-off-by: Peter Jun Park <peter.park@amd.com>
* Add dependabot.yml and update CODEOWNERS
Signed-off-by: Peter Jun Park <peter.park@amd.com>
Update toc and conf
Signed-off-by: Peter Jun Park <peter.park@amd.com>
update dependabot
* Port docs to rocm-docs standard
Signed-off-by: Peter Jun Park <peter.park@amd.com>
Add toc and Diataxis cards
Signed-off-by: Peter Jun Park <peter.park@amd.com>
Add basic file structure
Signed-off-by: Peter Jun Park <peter.park@amd.com>
add glossary
Signed-off-by: Peter Jun Park <peter.park@amd.com>
add includes
Signed-off-by: Peter Jun Park <peter.park@amd.com>
Add license.rst
Signed-off-by: Peter Jun Park <peter.park@amd.com>
add compatible hw
Signed-off-by: Peter Jun Park <peter.park@amd.com>
fix spelling and license
Signed-off-by: Peter Jun Park <peter.park@amd.com>
clean up index
Signed-off-by: Peter Jun Park <peter.park@amd.com>
clean up installation guides
Signed-off-by: Peter Jun Park <peter.park@amd.com>
add basic usage (quickstart)
Signed-off-by: Peter Jun Park <peter.park@amd.com>
add ref to global options
update toc
Signed-off-by: Peter Jun Park <peter.park@amd.com>
modularize modes and global options
Signed-off-by: Peter Jun Park <peter.park@amd.com>
add profile mode
Signed-off-by: Peter Jun Park <peter.park@amd.com>
fixes
Signed-off-by: Peter Jun Park <peter.park@amd.com>
reorg and clean up
Signed-off-by: Peter Jun Park <peter.park@amd.com>
add dynamic omniperf version number in installation guide
Signed-off-by: Peter Jun Park <peter.park@amd.com>
add datatemplate
more reorg
Signed-off-by: Peter Jun Park <peter.park@amd.com>
clean up
Signed-off-by: Peter Jun Park <peter.park@amd.com>
reorg images
move profile mode
reorg
reorg
reorg more
fix formatting
fix headings
ref anchor mi2xx note
add extlinks
add extlinks
Signed-off-by: Peter Jun Park <peter.park@amd.com>
black format
fix formatting, anchors
Signed-off-by: Peter Jun Park <peter.park@amd.com>
reorg
fix words and formatting
Signed-off-by: Peter Jun Park <peter.park@amd.com>
formatting
Signed-off-by: Peter Jun Park <peter.park@amd.com>
same
reorg
format
fix formatting
fix toc
Signed-off-by: Peter Jun Park <peter.park@amd.com>
format
* impr internal linking and fix sphinx warnings
Signed-off-by: Peter Jun Park <peter.park@amd.com>
* add spellcheck/linting from rocm-docs-core
Signed-off-by: Peter Jun Park <peter.park@amd.com>
fix rst directives
satisfy spellcheck
fix more spelling
rm unused files
fix spelling and update wordlist
* bump rocm-docs-core to 1.6.0
Signed-off-by: Peter Jun Park <peter.park@amd.com>
* add fixes from @skyreflectedinmirrors and @lpaoletti
Signed-off-by: Peter Jun Park <peter.park@amd.com>
add references to toc
Signed-off-by: Peter Jun Park <peter.park@amd.com>
add more fixes
Signed-off-by: Peter Jun Park <peter.park@amd.com>
* add package manager install section
Signed-off-by: Peter Jun Park <peter.park@amd.com>
* add fixes
Signed-off-by: Peter Jun Park <peter.park@amd.com>
add metadata and fixes
Signed-off-by: Peter Jun Park <peter.park@amd.com>
add fixes
bump to 1.6.1
more fixes
fix fmt in profiling examples
Signed-off-by: Peter Jun Park <peter.park@amd.com>
add missing mem type table
Signed-off-by: Peter Jun Park <peter.park@amd.com>
fix formatting
fmt
* add custom css
Signed-off-by: Peter Jun Park <peter.park@amd.com>
fix css fs
* make images/figs click-to-expand
Signed-off-by: Peter Jun Park <peter.park@amd.com>
add missed image
update
fix link
* update documentation link in README
Signed-off-by: Peter Jun Park <peter.park@amd.com>
* formatting fixes
Signed-off-by: Peter Jun Park <peter.park@amd.com>
more formatting
* fix heading
Signed-off-by: Peter Jun Park <peter.park@amd.com>
* move archived docs
Signed-off-by: Peter Jun Park <peter.park@amd.com>
* exclude archived docs from docs build
Signed-off-by: Peter Jun Park <peter.park@amd.com>
* update archived docs workflow
Signed-off-by: Peter Jun Park <peter.park@amd.com>
move files
update archived docs workflow
Signed-off-by: Peter Jun Park <peter.park@amd.com>
fix version number
clean up workflow
workflow test
workflow test
another workflow test
* rm docs linting
Signed-off-by: Peter Jun Park <peter.park@amd.com>
* Apply cmake-format suggested changes
Signed-off-by: Sam Wu <22262939+samjwu@users.noreply.github.com>
* Apply cmake-format
Signed-off-by: Sam Wu <22262939+samjwu@users.noreply.github.com>
---------
Signed-off-by: Peter Jun Park <peter.park@amd.com>
Signed-off-by: Sam Wu <22262939+samjwu@users.noreply.github.com>
Co-authored-by: Sam Wu <22262939+samjwu@users.noreply.github.com>
[ROCm/rocprofiler-compute commit: a0dc485ceb]
61 regels
2.7 KiB
ReStructuredText
61 regels
2.7 KiB
ReStructuredText
.. meta::
|
|
:description: Omniperf performance model: Compute unit (CU)
|
|
:keywords: Omniperf, ROCm, profiler, tool, Instinct, accelerator, GCN, compute, unit, pipeline, workgroup, wavefront,
|
|
CDNA
|
|
|
|
*****************
|
|
Compute unit (CU)
|
|
*****************
|
|
|
|
The compute unit (CU) is responsible for executing a user's kernels on
|
|
CDNA™-based accelerators. All :ref:`wavefronts <desc-wavefront>` of a
|
|
:ref:`workgroup <desc-workgroup>` are scheduled on the same CU.
|
|
|
|
.. image:: ../data/performance-model/gcn_compute_unit.png
|
|
:align: center
|
|
:alt: AMD CDNA accelerator compute unit diagram
|
|
:width: 800
|
|
|
|
The CU consists of several independent execution pipelines and functional units.
|
|
The :doc:`/conceptual/pipeline-descriptions` section details the various
|
|
execution pipelines -- VALU, SALU, LDS, scheduler, and so forth. The metrics
|
|
presented by Omniperf for these pipelines are described in
|
|
:doc:`pipeline-metrics`. The :doc:`vL1D <vector-l1-cache>` cache and
|
|
:doc:`LDS <local-data-share>` are described in their own sections.
|
|
|
|
* The :ref:`desc-valu` is composed of multiple SIMD (single
|
|
instruction, multiple data) vector processors, vector general purpose
|
|
registers (VGPRs) and instruction buffers. The VALU is responsible for
|
|
executing much of the computational work on CDNA accelerators, including but
|
|
not limited to floating-point operations (FLOPs) and integer operations
|
|
(IOPs).
|
|
|
|
* The vector memory (VMEM) unit is responsible for issuing loads, stores and
|
|
atomic operations that interact with the memory system.
|
|
|
|
* The :ref:`desc-salu` is shared by all threads in a
|
|
:ref:`wavefront <desc-wavefront>`, and is responsible for executing
|
|
instructions that are known to be uniform across the wavefront at compile
|
|
time. The SALU has a memory unit (SMEM) for interacting with memory, but it
|
|
cannot issue separately from the SALU.
|
|
|
|
* The :doc:`local-data-share` is an on-CU software-managed scratchpad memory
|
|
that can be used to efficiently share data between all threads in a
|
|
:ref:`workgroup <desc-workgroup>`.
|
|
|
|
* The :ref:`desc-scheduler` is responsible for issuing and decoding instructions
|
|
for all the :ref:`wavefronts <desc-wavefront>` on the compute unit.
|
|
|
|
* The :doc:`vector L1 data cache (vL1D) <vector-l1-cache>` is the first level
|
|
cache local to the compute unit. On current CDNA accelerators, the vL1D is
|
|
write-through. The vL1D caches from multiple compute units are kept coherent
|
|
with one another through software instructions.
|
|
|
|
* CDNA accelerators -- that is, AMD Instinct™ MI100 and newer -- contain
|
|
specialized matrix-multiplication accelerator pipelines known as the
|
|
:ref:`desc-mfma`.
|
|
|
|
For a more in-depth description of a compute unit on a CDNA accelerator, see
|
|
:hip-training-pdf:`22` and :gcn-crash-course:`27`.
|
|
|