Re: Using the GPU

From: Tom Allison <tom(at)tacocat(dot)net>
To: Alban Hertroys <alban(at)magproductions(dot)nl>
Cc: Alexander Staubo <alex(at)purefiction(dot)net>, "Billings, John" <John(dot)Billings(at)paetec(dot)com>, pgsql-general(at)postgresql(dot)org
Subject: Re: Using the GPU
Date: 2007-06-16 11:36:08
Message-ID: C3CCBA3A-E775-4538-85A5-E00CEA1133CA@tacocat.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general


On Jun 11, 2007, at 4:31 AM, Alban Hertroys wrote:

>
> Alexander Staubo wrote:
>> On 6/8/07, Billings, John <John(dot)Billings(at)paetec(dot)com> wrote:
>>> If so which part of the database, and what kind of parallel
>>> algorithms would be used?
>>
>> GPUs are parallel vector processing pipelines, which as far as I can
>> tell do not lend themselves right away to the data structures that
>> PostgreSQL uses; they're optimized for processing high volumes of
>> homogenously typed values in sequence.
>
> But wouldn't vector calculations on database data be sped up? I'm
> thinking of GIS data, joins across ranges like matching one (start,
> end)
> range with another, etc.
> I realize these are rather specific calculations, but if they're
> important to your application...
>
> OTOH modern PC GPU's are optimized for pushing textures; basically
> transferring a lot of data in as short a time as possible. Maybe
> it'd be
> possible to move result sets around that way? Do joins even maybe?

OTOH databases might not be running on modern desktop PC's with the
GPU investment.
Rather they might be running on a "headless" machine that has little
consideration for the GPU.

It might make an interesting project, but I would be really depressed
if I had to go buy an NVidia card instead of investing in more RAM to
optimize my performance! <g>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Allison 2007-06-16 12:02:41 Re: INSERT ... RETURNING in v8.2
Previous Message Noah Heusser 2007-06-16 11:26:57 Dynamic Log tigger (plpgsql)