CUDA QuickSort в ядре RECALL

Мне нужно решить проблему сортировки с использованием (Быстрая сортировка), поэтому моя проблема заключается в том, что когда я пытаюсь запустить код, мне кажется, что большая ошибка возникает, но основная ошибка - когда я вспоминаю Kernel QuickSort, потому что ядро ​​вызывает себя дважды, поэтому как я могу решить эту проблему, ниже моего кода, поэтому любой может мне помочь.

Примечание: Iam новый в программировании в cuda.

__global__ void QuickSort(int p, int r,char *c)
{
    if (p < r)

    {   int q = Partition(p, r, c);
                QuickSort<<<5,5>>>(p, q-1,c); 
                QuickSort<<<5,5>>>(q+1, r,c);   

    }
}
0
добавлено отредактировано
Просмотры: 1
de
Если вы новичок в программировании CUDA, начните с чего-то более простого, чем параллельная сортировка. То, что вы написали, не будет работать и не имеет никакого смысла.
добавлено автор talonmies, источник
Какой GPU вы используете? То, что вы пытаетесь сделать, называется Dynamic Parallelism (вызов ядра в ядре), доступное только на устройствах Compute Capability 3.5 (в настоящее время только для NVIDIA Tesla K20 и K20x).
добавлено автор sgarizvi, источник
моя карта nvidia - GEFORCE (GT 650M * 2GB), как я могу решить эту проблему на этом устройстве в cuda. спасибо за ваш повтор.
добавлено автор Suno87, источник

1 ответы

Ваша плата GPU (вычислительная способность 3.0) не поддерживает динамический параллелизм, для которого требуется вычислительная способность 3.5 или выше. Динамический параллелизм заключается в поддержке рекурсивного метода с новым выделенным ресурсом в GPU. Здесь показан алгоритм Quicksort с реализацией cuda и информацией о динамическом параллелизме http://blogs.nvidia.com/2012/09/how-tesla-k20-speeds-up-quicksort-a-familiar-comp-sci-code/ .

Однако в вашем GPU я предлагаю использовать другой способ реализации Quicksort, поскольку реализация в приведенной выше ссылке - это просто продемонстрировать преимущества Dynamic Parallelism вместо того, чтобы показывать алгоритм с максимальной производительностью. Вы можете обратиться к этой статье «GPU-Quicksort A Practical Quicksort Algorithm для графических процессоров» для лучшей производительности с вашей картой.

1
добавлено