ScalableMemoryObject<T>

public ScalableArray<T> Data { get; }

Language: C#

Связанный масштабируемый массив данных

public ScalableMemoryObject(CommandQueue queue, ScalableArray<T> array, MemFlags flags)

Language: C#

Инициализирует масштабируемый объект памяти OpenCL с заданным массивом и флагами памяти

Parameters:

  • queue: Очередь команд OpenCL
  • array: Связанный масштабируемый массив данных
  • flags: Флаги памяти OpenCL

public ScalableMemoryObject(CommandQueue queue, int startBatch, MemFlags flags, float scalingFactor = 2)

Language: C#

Инициализирует масштабируемый объект памяти OpenCL с заданным начальным размером и флагами памяти

Parameters:

  • queue: Очередь команд OpenCL
  • startBatch: Начальный размер массива
  • flags: Флаги памяти OpenCL
  • scalingFactor: Коэффициент масштабирования массива

public unsafe void Read(uint offset, uint size)

Language: C#

Читает данные из объекта памяти OpenCL в связанный массив

Parameters:

  • offset: Смещение в элементах для чтения
  • size: Количество элементов для чтения

public void Read()

Language: C#

Читает все данные из объекта памяти OpenCL в связанный массив

public unsafe void Write(uint offset, uint size)

Language: C#

Записывает данные из связанного массива в объект памяти OpenCL

Parameters:

  • offset: Смещение в элементах для записи
  • size: Количество элементов для записи

public void Write()

Language: C#

Записывает все данные из связанного массива в объект памяти OpenCL

public unsafe void GetProperty(MemInfo info, out T1 value)

Language: C#

Получает свойство объекта памяти OpenCL

Type Parameters:

  • T1: Тип свойства

Parameters:

  • info: Тип запрашиваемой информации
  • value: Переменная для хранения значения свойства

public void Dispose()

Language: C#

Освобождает ресурсы объекта памяти OpenCL