Developer Reference for Intel® oneAPI Math Kernel Library for C

ID 766684
Date 11/07/2023
Public

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

Document Table of Contents

blacs_set

Sets values that BLACS use for internal defaults.

Syntax

call blacs_set( icontxt, what, val )

Input Parameters

icontxt

INTEGER. For values of what that are tied to a particular context, this parameter is the integer handle indicating the context. Otherwise, ignored.

what

INTEGER. Indicates what BLACS internal(s) should be set. Present values are:

  • 1 = Set the BLACS message ID range
  • 11 = Number of rings for multiring broadcast topology to use
  • 12 = Number of branches for general tree broadcast topology to use
  • 13 = Number of rings for multiring combine topology to use
  • 14 = Number of branches for general tree combine topology to use
  • 15 = Force topologies to be repeatable or not
  • 16 = Force topologies to be heterogenous coherent or not

val

INTEGER. Array of dimension (*). Indicates the value(s) the internals should be set to. The specific meanings depend on what values.

Description

This routine sets the BLACS internal defaults depending on what values:

what = 1

Setting the BLACS message ID range.

If you wish to mix the BLACS with other message-passing packages, restrict the BLACS to a certain message ID range not to be used by the non-BLACS routines. The message ID range must be set before the first call to blacs_gridinit or blacs_gridmap. Subsequent calls will have no effect. Because the message ID range is not tied to a particular context, the parameter icontxt is ignored, and val is defined as:

VAL (input) INTEGER array of dimension (2)

    VAL(1) : The smallest message ID (also called message type or message tag) the BLACS should use.

    VAL(2) : The largest message ID (also called message type or message tag) the BLACS should use.

what = 11

Set number of rings for TOP = 'M' (multiring broadcast).This quantity is tied to a context, so icontxt is used, and val is defined as:

VAL (input) INTEGER array of dimension (1)

    VAL(1) : The number of rings for multiring topology to use.

what = 12

Set number of branches for TOP = 'T' (general tree broadcast). This quantity is tied to a context, so icontxt is used, and val is defined as:

VAL (input) INTEGER array of dimension (1)

    VAL(1) : The number of branches for general tree topology to use.

what = 13

Set number of rings for TOP = 'M' (multiring combine).This quantity is tied to a context, so icontxt is used, and val is defined as:

VAL (input) INTEGER array of dimension (1)

    VAL(1) : The number of rings for multiring topology to use.

what = 14

Set number of branches for TOP = 'T' (general tree gather). This quantity is tied to a context, so icontxt is used, and val is defined as:

VAL (input) INTEGER array of dimension (1)

    VAL(1) : The number of branches for general tree topology to use.

what = 15

Force topologies to be repeatable or not (see Repeatability and Coherence for more information about repeatability).

VAL (input) INTEGER array of dimension (1)

VAL(1) = 0 (default)

Topologies are not required to be repeatable.

VAL(1) 0

All used topologies are required to be repeatable, which might degrade performance.

what = 16

Force topologies to be heterogenous coherent or not (see Repeatability and Coherence for more information about coherence).

VAL (input) INTEGER array of dimension (1)

VAL(1) = 0 (default)

Topologies are not required to be heterogenous coherent.

VAL(1) 0

All used topologies are required to be heterogenous coherent, which might degrade performance.