CUDA Sorting - Mailing list pgsql-hackers

From Vitor Reus
Subject CUDA Sorting
Date
Msg-id CALf5ONrg3CPq9TEpoy+1hMUKGLwUfW5PqHJf++hKrt1fRRoqEA@mail.gmail.com
Whole thread Raw
Responses Re: CUDA Sorting
Re: CUDA Sorting
Re: CUDA Sorting
List pgsql-hackers
Hello everyone,

I'm implementing a CUDA based sorting on PostgreSQL, and I believe it
can improve the ORDER BY statement performance in 4 to 10 times. I
already have a generic CUDA sort that performs around 10 times faster
than std qsort. I also managed to load CUDA into pgsql.

Since I'm new to pgsql development, I replaced the code of pgsql
qsort_arg to get used with the way postgres does the sort. The problem
is that I can't use the qsort_arg_comparator comparator function on
GPU, I need to implement my own. I didn't find out how to access the
sorting key value data of the tuples on the Tuplesortstate or
SortTuple structures. This part looks complicated because it seems the
state holds the pointer for the scanner(?), but I didn't managed to
access the values directly. Can anyone tell me how this works?

Cheers,
Vítor


pgsql-hackers by date:

Previous
From: Kerem Kat
Date:
Subject: Re: Adding CORRESPONDING to Set Operations
Next
From: Thom Brown
Date:
Subject: Re: CUDA Sorting