OpenGL shading language (GLSL) can be used for stream processing, and runs on both ATI and NVidia hardware (possibly Intel graphics cards as well, although I don't have any of those available to play around with).
> 1) There is no good non-proprietary, truly cross-platform solutions yet. > CUDA is very specific to NVidia's hardware, obviously. Apple claims to be > adding generic support for GPU acceleration in their next OS release - they I'd agree with this too. The best application of GPGPU I could come up with was ray-tracing images, which isn't usually a bottleneck (or even strictly a crystallographic problem, but pretty pictures of your protein always seem to help, and to take longer then I'd like). > 3) Like Tassos says, most crystallographic apps are far more complex than a > pure MD simulation. In many cases there's more to be gained from > process-level parallelism (running Phaser on several dozen or several > hundred search models, or trying to autobuild into ten different datasets > collected remotely on a synchrotron beamline) than calculation-level > parallelism. The actual run time for most of these processes is also orders > of magnitude less than most MD simulations. I don't know if the "cloud computing fad" will extend to crystallography either, but for the sake of my blood pressure I hope not. I always feel like I'm going to make somebody's server catch fire when I throw a 500 KDa protein at it, and it gets dramatically more difficult to fix any problems that show up when the server fails. I'm aware of the technical advantages of using external resources/webservers/somebody else's cloud : no need to maintain, update, or test the system , and always using the most recent version. But the technical disadvantage of being unable to debug and modify it, coupled with the scientific disadvantage of not (necessarily*) being able to read it rarely seem to be mentioned. > This time around the external resource is distributed ("cloud computing") >> rather than centralized, but in essence it's "déjà vu all over again". >> Whether the cloud computing fad will extend to crystallography remains >> to be seen. Note that distributed ("cloud") data storage has been >> seriously proposed as a possible solution to the problem of archiving raw >> diffraction images. >> > > In that case it's clearly a technological need. But I think most movement > towards distributed computing is more likely to be logistical and financial > - massive numbers of CPUs are relatively cheap, but housing and > administering them is not. > * Fortunately, some people distribute source packages of their webservers, so I can both read them and not feel guilty about overloading their systems.