Thom Brown-2 wrote:
> 
> On 15 November 2010 11:26, Greg Stark <st...@mit.edu> wrote:
> 
>> I keep wondering if there's a role for GPUs in Postgres and haven't
>> figure out how to integrate them yet but the day when we'll be
>> expected to exploit them seems to be getting nearer:
>>
>>
>> http://aws.typepad.com/aws/2010/11/new-ec2-instance-type-the-cluster-gpu-instance.html
>>
>>  <http://www.postgresql.org/mailpref/pgsql-hackers>
> 
> 
> Is this somewhere OpenCL is an option?
> 
> -- 
> Thom Brown
> Twitter: @darkixion
> IRC (freenode): dark_ixion
> Registered Linux user: #516935
> 
> 

OpenCL is a good option as its

1) Open -  supported by many vendors Apple, AMD/ATI, Nvidia, IBM, Intel, ..

2) Runs on CPU's and GPU's.  - There is  definitely  I/O overhead and other
challenges to running code on a GPU.  See  my Pg EU  Day  2010 prezzy 
http://www.scribd.com/doc/44661593/PostgreSQL-OpenCL-Procedural-Language.

3)  Supports SIMD  instructions  and multi-threading on CPU's  -   No GPU
required!  This can boost  an app by  executing 4 floating points  ops 
concurrently per FPU. 

There is an interesting class of chip due from AMD, due in mid 2011, with
combined CPU & GPU.  Hopefully these chips will  reduce the GPU I/O 
overhead and be more amenable to  program concurrency.  See 
http://sites.amd.com/us/fusion/apu/Pages/fusion.aspx.

For some applications running SIMD  instructions and using all the cores
will provide a boost. Intel are pushing this point staying  running SSE4 
instructions  on 4 or 8 cores can get up to 16x increase.  Of course you can
hand-roll  all this  SSE4  code, But  why not let an OpenCL  compiler  get
you 80% of the increases?

My  first phase was to implement some OpenCL code  as  User Defined
Functions. This comes with the overhead of creating OpenCL  run-time context
and compiling OpenCL Kernels.  Phase Two is the OpenCL as procedure language
and moving run-time context and program compiling to PG_init() and  the SQL
create function  statement.

For floating point numeric and image processing  apps OpenCL and GPU's are
pretty much  a no-brainer.
They are are easier to parallelize and and have been  proven in many case to
benefit from GPU's

The big question is can OpenCL improve  any existing apps with sorting and
searching  in parallel? We can find out more  in Jan  2011 when I'll make a
drop of  the pGOpenCL  code.

Regards

Tim


-- 
View this message in context: 
http://postgresql.1045698.n5.nabble.com/Amazon-now-supporting-GPU-focused-EC2-instances-tp3265420p3311407.html
Sent from the PostgreSQL - hackers mailing list archive at Nabble.com.

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to