Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Function template copy

Boost , Chapter 1. Boost.Compute , Reference

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Function template copy

boost::compute::copy

Synopsis

// In header: <boost/compute/algorithm/copy.hpp>

template<typename InputIterator, typename OutputIterator> 
  OutputIterator 
  copy(InputIterator first, InputIterator last, OutputIterator result, 
       command_queue & queue = system::default_queue());

Description

Сопоставляет значения в диапазоне<first>,<last>до диапазона, начинающегося с<result>.

Общая функция копирования может использоваться для различных задач передачи данных и обеспечивает стандартный интерфейс для следующих функций OpenCL:

  • <clEnqueueReadBuffer()>

  • <clEnqueueWriteBuffer()>

  • <clEnqueueCopyBuffer()>

В отличие от вышеупомянутых функций OpenCL, copy() также будет работать с несвязанными структурами данных (например,<std::list<T>>), а также с «причудливыми» итераторами (например,<transform_iterator>).

Например, для копирования массива<int>значений на хосте вектора на устройстве:

// array on the host
int data[] = { 1, 2, 3, 4 };
// vector on the device
boost::compute::vector<int> vec(4, context);
// copy values to the device vector
boost::compute::copy(data, data + 4, vec.begin(), queue);

Алгоритм копирования также может использоваться со стандартными контейнерами, такими как<std::vector<T>>:

std::vector<int> host_vector = ...
boost::compute::vector<int> device_vector = ...
// copy from the host to the device
boost::compute::copy(
    host_vector.begin(), host_vector.end(), device_vector.begin(), queue
);
// copy from the device to the host
boost::compute::copy(
    device_vector.begin(), device_vector.end(), host_vector.begin(), queue
);

Смотрите также:

copy_n(), copy_if(), copy_async()

Параметры:

first

Первый элемент в диапазоне для копирования

<last>

последний элемент в диапазоне для копирования

<queue>

командная очередь для выполнения операции

<result>

Первый элемент в диапазоне результатов

Возвращение:

<OutputIterator>до конца диапазона результатов


PrevUpHomeNext

Статья Function template copy раздела Chapter 1. Boost.Compute Reference может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Reference ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 23:59:12/0.0082700252532959/1