Результаты поиска по запросу "thrust"

2 ответа

Уплотнение потока с небольшой подготовкой подойдет. Вы можете запустить поток для каждой пары ключ-значение, проверить, равна ли предыдущая пара ключ-значение, если нет: установить флаг (int = 1) в отдельном массиве того же размера, что и эти пары. Все остальные флаги остаются неустановленными (int = 0). Затем выполните потоковое сжатие пар ключ-значение на основе массива флагов.

я есть пара массивов одинакового размера, я буду называть их ключами и значениями. Например: K: V 1: 99 1: 100 1: 100 1: 100 1: 103 2: 103 2: 105 3: 45 3: 67Ключи отсортированы и соответствующие значенияс каждым ключом отсортированы. Как ...

1 ответ

groups.google.com/forum/#!topic/thrust-users/nXQD6j7_xfs

аюsort_by_key с массивами ключ-значение размером 80 миллионов. Устройство являетсяGTX 560 Tiс участием2 ГбVRAM. Когда доступная (свободная) память перед sort_by_key1200MB, завершает сортировку в200ms, Но когда доступная память падает до600MB, ...

2 ответа

Это немного уродливо, но CUDA нужен механизм для передачи данных между RAM и GPU.

аюсь пройтиdevice_vector структур struct point { unsigned int x; unsigned int y; }к функции следующим образом: void print(thrust::device_vector<point> &points, unsigned int index) { std::cout << points[index].y << points[index].y << std::endl; ...

ТОП публикаций

1 ответ

Подсчет вхождений чисел в массиве CUDA

У меня есть массив целых чисел без знака, хранящихся на графическом процессоре с CUDA (обычно1000000 элементы). Я хотел бы посчитать вхождение каждого числа в массиве. Есть только несколько отдельных чисел (о10), но эти цифры могут варьироваться ...

2 ответа

Нахождение максимального значения элемента И его положение с помощью CUDA Thrust

Как получить не только значение, но и положение максимального (минимального) элемента (res.val а такжеres.pos)? thrust::host_vector<float> h_vec(100); thrust::generate(h_vec.begin(), h_vec.end(), rand); thrust::device_vector<float> d_vec = ...

1 ответ

пользовательский оператор быстрого сравнения тяги CUDA

Я оцениваю CUDA и в настоящее время использую библиотеку Thrust для сортировки чисел. Я хотел бы создать свой собственный компаратор для thrust :: sort, но он значительно замедляется! Я создал свой собственныйМеньшереализация путем простого ...

1 ответ

Как отлаживать функции тяги cuda в visual studio 2010 с помощью параллельного nsight

Я использую Visual Studio 2010, параллельные nsight 2.2 и cuda 4.2 для обучения. Моя система Windows 8 Pro x64. Я открыл проект сортировки radix, включенный cuda computing SDK в VS, и скомпилировал его без ошибок. Код сортировки ...

1 ответ

Функциональный объект не работает должным образом

Я определил следующий объект функции: struct Predicate1 { __device__ bool operator () (const DereferencedIteratorTuple& lhs, const DereferencedIteratorTuple& rhs) { using thrust::get; //if you do <=, returns last occurence of largest element. ...

3 ответа

Как нормализовать матричные столбцы в CUDA с максимальной производительностью?

Как эффективно нормализовать матричные столбцы в CUDA? Моя матрица хранится в столбце-мажоре, и типичный размер - 2000x200. Операция может быть представлена в следующем коде Matlab. A = rand(2000,200); A = exp(A); A = A./repmat(sum(A,1), ...

2 ответа

CUDA Thrust: redu_by_key только для некоторых значений в массиве, основываясь на значениях в «ключевом» массиве

Допустим, у меня есть два массива device_vector <byte>,d_keys а такжеd_data. Еслиd_data представляет собой, например, уплощенную двумерную матрицу 3х5 (например, {1, 2, 3, 4, 5, 6, 7, 8, 9, 8, 7, 6, 5, 4, 3}) иd_keys является одномерным массивом ...