Re: GPUSort project - Mailing list pgsql-hackers

From Mischa Sandberg
Subject Re: GPUSort project
Date
Msg-id 443D3245.3060506@activestate.com
Whole thread Raw
In response to Re: GPUSort project  (Martijn van Oosterhout <kleptog@svana.org>)
Responses Re: GPUSort project  (Simon Riggs <simon@2ndquadrant.com>)
List pgsql-hackers
Martijn van Oosterhout wrote:
> On Tue, Apr 11, 2006 at 04:02:07PM -0700, Mischa Sandberg wrote:
> 
>>Anybody on this list hear/opine anything pf the GPUSort project for 
>>postgresql? I'm working on a radix-sort subcase for tuplesort, and there 
>>are similarities.
>>
>>http://www.andrew.cmu.edu/user/ngm/15-823/project/
> 
> I've heard it meantioned, didn't know they'd got it working. However,
> none of my database servers have a 3D graphics anywhere near the power
> they suggest in the article.
> 
> Is this of practical use for run-of-the-mill video cards?

Short answer: maybe.

Long answer: we're shipping a server (appliance) product built on stock 
rackmount hardware, that includes an ATI Rage (8MB) with nothing to do. Much of 
what the box does is a single cpu-bound process, sorting  maillog extracts. The 
GPU is an asset, even at 8MB; the headwork is in mapping/truncating sort keys 
down to dense ~32bit prefixes; and in making smooth judgements as to when to 
give the job to (a) the GPU (b) quicksort (c) a tiny bitonic sort in the SSE2 
registers.

Any of this would apply to postgres, if tuplesort.c can tolerate a preprocessing 
step that looks for special cases, and degrades gracefully into the standard 
case. I'm guessing that there are enough internal sorts (on oid, for example) 
having only small, memcmp-able sort keys, that this is worth adding in.

-- 
Engineers think that equations approximate reality.
Physicists think that reality approximates the equations.
Mathematicians never make the connection.


pgsql-hackers by date:

Previous
From: Mischa Sandberg
Date:
Subject: Re: Get explain output of postgresql in Tables
Next
From: Mischa Sandberg
Date:
Subject: Re: Get explain output of postgresql in Tables