Developer Reference for Intel® oneAPI Math Kernel Library for C

ID 766684
Date 3/22/2024
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

?gebr2d

Receives and participates in a broadcast along a scope for a general rectangular matrix.

Syntax

call igebr2d( icontxt, scope, top, m, n, a, lda, rsrc, csrc )

call sgebr2d( icontxt, scope, top, m, n, a, lda, rsrc, csrc )

call dgebr2d( icontxt, scope, top, m, n, a, lda, rsrc, csrc )

call cgebr2d( icontxt, scope, top, m, n, a, lda, rsrc, csrc )

call zgebr2d( icontxt, scope, top, m, n, a, lda, rsrc, csrc )

Input Parameters

icontxt

INTEGER. Integer handle that indicates the context.

scope

CHARACTER*1. Indicates what scope the broadcast should proceed on. Limited to 'Row', 'Column', or 'All'.

top

CHARACTER*1. Indicates the communication pattern to use for the broadcast.

m, n, lda

Describe the matrix to be sent. See Matrix Shapes for details.

rsrc

INTEGER.

The process row coordinate of the process that called broadcast/send.

csrc

INTEGER.

The process column coordinate of the process that called broadcast/send.

Output Parameters

a

An array of dimension (lda,n) to receive the incoming message into.

Description

This routine receives and participates in a broadcast along a scope. At the end of a broadcast, all processes within the scope will possess the data in the general rectangular matrix A. Broadcasts may be globally-blocking. This means no process is guaranteed to return from a broadcast until all processes in the scope have called the appropriate routine (broadcast/send or broadcast/receive).