Kernel

public unsafe void SetArgument(uint index, T argument)

Language: C#

Устанавливает аргумент ядра по индексу

Type Parameters:

  • T: Тип аргумента

Parameters:

  • index: Индекс аргумента
  • argument: Значение аргумента

public unsafe void SetArgument(uint index, T[] argument)

Language: C#

Устанавливает массив в качестве аргумента ядра по индексу

Type Parameters:

  • T: Тип элементов массива

Parameters:

  • index: Индекс аргумента
  • argument: Массив значений аргумента

public unsafe void SetArgument(uint index, IPointable<nint> objects)

Language: C#

Устанавливает указатель IPointable в качестве аргумента ядра по индексу

Parameters:

  • index: Индекс аргумента
  • objects: Объект, реализующий IPointable

public void SetArgs(params object?[] args)

Language: C#

Устанавливает несколько аргументов по порядку

Parameters:

  • args: Аргументы (скаляры, массивы или IPointable)

public void SetDebugArguments(CommandQueue queue, uint firstArgumentIndex)

Language: C#

Подключает стандартные debug-аргументы библиотеки к ядру, если они включены на очереди.

Parameters:

  • queue: Очередь, на которой включен kernel debug
  • firstArgumentIndex: Индекс первого debug-аргумента в сигнатуре ядра

public void Run1D(CommandQueue queue, nuint globalSize, nuint localSize = 64)

Language: C#

Запускает ядро для 1D сетки работы

Parameters:

  • queue: Очередь команд
  • globalSize: Общее количество work-items
  • localSize: Размер work-group (опционально, по умолчанию 64)

public void Run2D(CommandQueue queue, nuint globalWidth, nuint globalHeight, nuint localWidth = 16, nuint localHeight = 16)

Language: C#

Запускает ядро для 2D сетки работы

Parameters:

  • queue: Очередь команд
  • globalWidth: Ширина глобальной сетки
  • globalHeight: Высота глобальной сетки
  • localWidth: Ширина work-group (опционально)
  • localHeight: Высота work-group (опционально)

public void Run3D(CommandQueue queue, nuint globalWidth, nuint globalHeight, nuint globalDepth, nuint localWidth = 8, nuint localHeight = 8, nuint localDepth = 1)

Language: C#

Запускает ядро для 3D сетки работы

Parameters:

  • queue: Очередь команд
  • globalWidth: Ширина глобальной сетки
  • globalHeight: Высота глобальной сетки
  • globalDepth: Глубина глобальной сетки
  • localWidth: Ширина work-group (опционально)
  • localHeight: Высота work-group (опционально)
  • localDepth: Глубина work-group (опционально)

public unsafe void Run(CommandQueue queue, nuint[] globalSize, nuint[] localSize)

Language: C#

Запускает ядро с указанными глобальными и локальными размерами

Parameters:

  • queue: Очередь команд
  • globalSize: Глобальные размеры
  • localSize: Локальные размеры

public void Dispose()

Language: C#

Освобождает ресурсы ядра OpenCL