CUB сортировка с итератором - PullRequest
       41

CUB сортировка с итератором

0 голосов
/ 04 сентября 2018

Я хотел бы преобразовать значения и отсортировать их за один раз, например:

thrust::vector<int> dataIn  = ...
thrust::vector<int> dataOut = ...
auto iterIn = cub::TransformInputIterator<int, Ftor, int*>(dataIn.begin(), Ftor());
cub::DeviceRadixSort::SortKeys(dTemp, tempBytes, iterIn, dataOut.begin(), numElems);

Однако для SortKeys требуются необработанные указатели вместо итераторов. Можно ли все же заставить эту работу использовать итераторы? Я знаю, что это возможно с тягой, но я хочу использовать CUB.

Спасибо за предложения.

1 Ответ

0 голосов
/ 05 сентября 2018

Извините, что разочаровал, но AFAIK CUB не поддерживает это. Теоретически, это может быть более глубокая шаблонизация, но это не так.

Вы можете поднять код изнутри cub или изменить код с помощью дополнительного параметра шаблона. Это было бы головной болью, но это выполнимо, если все, что вы хотите сделать, это передать входные значения посредством некоторого преобразования с помощью функции на стороне устройства.

...