CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
60 lines
2.5 KiB
ReStructuredText
60 lines
2.5 KiB
ReStructuredText
.. meta::
|
|
:description: rocSHMEM intra-kernel networking runtime for AMD dGPUs on the ROCm platform.
|
|
:keywords: rocSHMEM, API, ROCm, documentation, HIP, Networking, Communication
|
|
|
|
.. _rocshmem-api-ctx:
|
|
|
|
-----------------------------------
|
|
Context management routines
|
|
-----------------------------------
|
|
|
|
ROCSHMEM_CTX_CREATE
|
|
-------------------
|
|
|
|
.. cpp:function:: __device__ int rocshmem_wg_ctx_create(int64_t options, rocshmem_ctx_t *ctx)
|
|
.. cpp:function:: __device__ int rocshmem_wg_team_create_ctx(rocshmem_team_t team, long options, rocshmem_ctx_t *ctx)
|
|
|
|
:param team: Team handle to derive the context from.
|
|
:param options: Options for context creation. Ignored in current design; use the value ``0``.
|
|
:param ctx: A handle to the newly created context.
|
|
|
|
:returns: All threads returns ``0`` if the context was created successfully.
|
|
If any thread returns non-zero value, the operation fails, ctx is set to ``ROCSHMEM_CTX_INVALID`` and a
|
|
higher number of ``ROCSHMEM_MAX_NUM_CONTEXTS`` is required.
|
|
|
|
**Description:**
|
|
This routine creates an rocSHMEM context. By design, the context is private to the calling work-group.
|
|
It must be called collectively by all threads in the work-group. If the context was created successfully, a value
|
|
of zero is returned and the context handle pointed to by ctx specifies a valid context; otherwise, a nonzero value
|
|
is returned and ctx is set to ``ROCSHMEM_CTX_INVALID``. An unsuccessful context creation call is not treated as an
|
|
error and the rocSHMEM library remains in a correct state. The creation call can be reattempted after additional
|
|
resources become available.
|
|
|
|
ROCSHMEM_CTX_DESTROY
|
|
--------------------
|
|
|
|
.. cpp:function:: __device__ void rocshmem_wg_ctx_destroy(rocshmem_ctx_t *ctx)
|
|
|
|
:param ctx: Context handle.
|
|
|
|
:returns: None.
|
|
|
|
**Description:**
|
|
This routine destroys an rocSHMEM context. It must be called collectively by all threads in the work-group.
|
|
If ctx has the value ``ROCSHMEM_CTX_INVALID``, no operation is performed.
|
|
|
|
ROCSHMEM_GET_DEVICE_CTX
|
|
-----------------------
|
|
|
|
.. cpp:function:: __host__ void * rocshmem_get_device_ctx()
|
|
|
|
:param: None.
|
|
|
|
:returns: Returns ``ROCSHMEM_CTX_DEFAULT`` device pointer that users.
|
|
can query from one instance of rocSHMEM host library and
|
|
use later for dynamic module initialization in
|
|
kernel bitcode device library in the same application.
|
|
|
|
**Description:**
|
|
This routine queries rocSHMEM default device context from host API.
|