Table of Contents

Class ExecutionConfiguration

Namespace
DotCompute.Runtime.Services.Types
Assembly
DotCompute.Runtime.dll

Configuration for kernel execution (grid dimensions, shared memory, etc.).

public class ExecutionConfiguration
Inheritance
ExecutionConfiguration
Inherited Members

Properties

ExecutionStream

Gets or sets the stream/queue for execution (null for default).

public object? ExecutionStream { get; init; }

Property Value

object

GlobalWorkSize

Gets or sets the number of work items in the global work group.

public Dimensions3D GlobalWorkSize { get; init; }

Property Value

Dimensions3D

LocalWorkSize

Gets or sets the number of work items in each local work group.

public Dimensions3D LocalWorkSize { get; init; }

Property Value

Dimensions3D

SharedMemoryBytes

Gets or sets the amount of shared memory to allocate in bytes.

public int SharedMemoryBytes { get; init; }

Property Value

int

UseCooperativeGroups

Gets or sets whether to use cooperative groups.

public bool UseCooperativeGroups { get; init; }

Property Value

bool

Methods

Create1D(int, int)

Creates a 1D execution configuration.

public static ExecutionConfiguration Create1D(int globalSize, int localSize = 256)

Parameters

globalSize int
localSize int

Returns

ExecutionConfiguration

Create2D(int, int, int, int)

Creates a 2D execution configuration.

public static ExecutionConfiguration Create2D(int globalX, int globalY, int localX = 16, int localY = 16)

Parameters

globalX int
globalY int
localX int
localY int

Returns

ExecutionConfiguration

Create3D(int, int, int, int, int, int)

Creates a 3D execution configuration.

public static ExecutionConfiguration Create3D(int globalX, int globalY, int globalZ, int localX = 8, int localY = 8, int localZ = 8)

Parameters

globalX int
globalY int
globalZ int
localX int
localY int
localZ int

Returns

ExecutionConfiguration