Final edits (#126)

* final edits

* more edits per review

* more edits

* attempt to fix dead link

[ROCm/rocshmem commit: 8a266e698c]
This commit is contained in:
yugang-amd
2025-05-21 16:59:00 -04:00
committed by GitHub
orang tua 35e3a27890
melakukan 8fbb892cc1
7 mengubah file dengan 19 tambahan dan 20 penghapusan
+2 -2
Melihat File
@@ -17,7 +17,7 @@ ROCSHMEM_INIT
:returns: None.
**Description:**
This routine initializes the rocSHMEM runtime and underlying transport layer.
This routine initializes the rocSHMEM library and underlying transport layer.
Before ``rocshmem_init`` is called,
you must select the device that this PE is associated to by calling
`hipSetDevice
@@ -41,7 +41,7 @@ ROCSHMEM_FINALIZE
:returns: None.
**Description:**
This routine finalizes the rocSHMEM runtime.
This routine finalizes the rocSHMEM library.
.. cpp:function:: __device__ void rocshmem_wg_finalize(void)
+1 -2
Melihat File
@@ -96,12 +96,11 @@ ROCSHMEM_TEST
**Description:**
This routine tests if the condition ``(*ivars cmp val)`` is true.
.. _CMP_VALUES:
Supported comparisons
---------------------
.. _CMP_VALUES:
The following table lists the point-to-point comparison constants:
.. list-table:: Point-to-Point Comparison Constants
@@ -1,14 +1,14 @@
.. meta::
:description: Information on how to compile and run rocSHMEM programs.
:description: Information on how to compile and run rocSHMEM applications.
:keywords: rocSHMEM, ROCm, library, API, compile, link, hipcc
.. _running-programs:
.. _running-applications:
--------------------------------------------------
Compiling and running rocSHMEM programs
Compiling and running rocSHMEM applications
--------------------------------------------------
This topic explains how to compile and run rocSHMEM programs.
This topic explains how to compile and run rocSHMEM applications.
Compiling and linking with rocSHMEM
-----------------------------------
@@ -16,7 +16,7 @@ Compiling and linking with rocSHMEM
rocSHMEM is a library that can be statically linked to your application during compilation with ``hipcc``. For more information, see :doc:`HIPCC <hipcc:index>`.
When compiling your application with ``hipcc``, you must include the rocSHMEM header files and the rocSHMEM library.
Because rocSHMEM depends on MPI, you must manually add the arguments for MPI linkage instead of using ``mpicc``.
Because rocSHMEM depends on MPI (Message Passing Interface), you must manually add the arguments for MPI linkage instead of using ``mpicc``.
When using ``hipcc`` directly without a build system, it's recommended to perform the compilation and linking steps separately.
@@ -39,10 +39,10 @@ Example compile and link commands are provided at the top of the example files i
If your project uses CMake, see
`Using CMake with AMD ROCm <https://rocmdocs.amd.com/en/latest/conceptual/cmake-packages.html>`_.
Running a rocSHMEM program
Running a rocSHMEM application
--------------------------
Programs using rocSHMEM typically deploy multiple processes, usually one per GPU.
Applications using rocSHMEM typically deploy multiple processes, usually one per GPU.
The MPI launcher, for example, ``mpiexec`` with Open MPI, is used to start the required number
of processes. For example, to launch two ``getmem`` example processes (available when compiled from source):
+3 -3
Melihat File
@@ -6,9 +6,9 @@
rocSHMEM documentation
****************************
The ROCm OpenSHMEM (rocSHMEM) runtime is an intra-kernel networking library that provides GPU-centric networking through an `OpenSHMEM-like <http://www.openshmem.org/site/>`_ interface. It simplifies application code complexity and enables finer communication and computation overlap than traditional host-driven networking. rocSHMEM uses a single symmetric heap (SHEAP) allocated to GPU memories. For more information, see :doc:`introduction`
The ROCm OpenSHMEM (rocSHMEM) is an intra-kernel networking library that provides GPU-centric networking through an `OpenSHMEM-like <http://www.openshmem.org/site/>`_ interface. It simplifies application code complexity and enables finer communication and computation overlap than traditional host-driven networking. rocSHMEM uses a single symmetric heap (SHEAP) allocated to GPU memories. For more information, see :doc:`introduction`
The code is open and hosted at `<https://github.com/ROCm/rocSHMEM>`_.
The rocSHMEM public repository is located at `<https://github.com/ROCm/rocSHMEM>`_.
.. grid:: 2
:gutter: 3
@@ -19,7 +19,7 @@ The code is open and hosted at `<https://github.com/ROCm/rocSHMEM>`_.
.. grid-item-card:: How to
* :doc:`Compile and run rocSHMEM programs <./compile_and_run>`
* :doc:`Compile and run applications <./compile_and_run>`
.. grid-item-card:: API reference
+2 -2
Melihat File
@@ -13,7 +13,7 @@ This topic describes how to install rocSHMEM.
Requirements
---------------------------
* ROCm 6.4.0 or later, including the :doc:`HIP runtime <hip:index>`.
* ROCm 6.4.0 or later, including the :doc:`HIP runtime <hip:index>`. For more information, see `ROCm installation for Linux <https://rocm.docs.amd.com/projects/install-on-linux/en/latest/>`_.
* AMD GPUs
@@ -79,7 +79,7 @@ Alternatively, you can use a script to install dependencies:
For more information about OpenMPI-UCX support, see
`GPU-enabled Message Passing Interface <https://rocm.docs.amd.com/en/latest/how-to/gpu-enabled-mpi.html>`_.
Installing rocSHMEM from source
Installing from source
--------------------------------
To build and install rocSHMEM with the IPC on-node, GPU-to-GPU backend, run:
+1 -1
Melihat File
@@ -8,7 +8,7 @@
What is rocSHMEM?
---------------------------
The ROCm OpenSHMEM (rocSHMEM) runtime is an intra-kernel networking library that provides GPU-centric networking through an OpenSHMEM-like interface. It simplifies application code complexity and enables finer communication and computation overlap than traditional host-driven networking. rocSHMEM uses a single symmetric heap (SHEAP) allocated on GPU memories.
The ROCm OpenSHMEM (rocSHMEM) is an intra-kernel networking library that provides GPU-centric networking through an OpenSHMEM-like interface. It simplifies application code complexity and enables finer communication and computation overlap than traditional host-driven networking. rocSHMEM uses a single symmetric heap allocated on GPU memories.
The rocSHMEM programming model
-------------------------------
+3 -3
Melihat File
@@ -2,8 +2,8 @@ defaults:
numbered: False
root: index
subtrees:
- caption: Introduction
entries:
- entries:
- file: introduction.rst
title: What is rocSHMEM?
@@ -16,7 +16,7 @@ subtrees:
- caption: How to
entries:
- file: compile_and_run.rst
title: Compile and run rocSHMEM programs
title: Compile and run applications
- caption: API reference
entries: