Crazy hot possibility - GPU based GIS Database processing

Okay so let's take some out of the box thinking here (not grounded in any understanding of what's going on under the hood in GIS database extensions, or CUDA - I'm just reaching here, so feel free to comment and tell me why technically it's not possible!) 


On one side of the fence we have this crazy stuff called 'Geospatial database extensions', that allow for database driven geometric/geographic calculations which are pretty damned impressive. I.e. tell me all the people from this one table, who live within 15 miles of this road that is this zig zag shape, that is defined is another table of roads. 


On the other side of the fence, just released was this 'Cluster GPU' instance type at Amazon (http://aws.typepad.com/aws/2010/11/new-ec2-instance-type-the-cluster-gpu-instance.html), powered by one of these bad boys: 



Now what does a GPU do and why am I putting a GPU in the same post as a GIS database ? Well for one thing, phenomenal parallel processing "GPUs work best on problem sets that are ideally solved using massive fine-grained parallelism, using for example at least 5,000 - 10,000 threads"  (http://www.allthingsdistributed.com/2010/11/cluster_gpu_instances_amazon_ec2.html). Sounds interesting, but where is that GPU based processing actually used ? most commonly seen in .....games. 


What do games have to do with the price of fish ? Well, they do lots of 2d/3d calculations. Lines, vertexes, shaders, all that fun stuff... Now hey what do GIS extensions do for databases ? Add geometric calculations, lines, polylines, hmmm see where I'm going ? 


Imagine if you could switch a compile flag on with PostgreSQL/PostGIS to enable it to use the GPU CUDA architecture. Imagine the possibilities with taking this new parallel execution model and applying to a spatial query, one would assume it would run one heck of a lot faster! Real time complex spatial analysis.... 


Now that, I would pay $2.10/per hour for.  

blog comments powered by Disqus
Creative Commons License
This work is licensed under a Creative Commons Attribution 3.0 Unported License.