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