Hello, Not being a GEGL or OpenGL developer, I would nevertheless being interested in how acceleration of filters etc. can basically work with OpenGL (with matrix operations on buffers? Can you do other operations, too?) because I always thought OpenGL was an API for accelerated (3D but also 2D, considering it as a plane in 3D space) rendering, but not for calculating (like it is required with many filters). Wouldn't it, from a technical view, be more useful to implement CUDA (http://www.nvidia.com/cuda/) support? I heard that there is a similar API for ATI. I also know that there is a GIMP plugin using CUDA (it has won the first place of a CUDA challenge: http://www.nvidia.co.uk/object/io_1222782056939.html). As far as I have seen taking a quick look at the GEGL source code, the hardest task seems to be changing the single-threaded algorithm while (more_work) render(); to for (i = 0; i < work_packets; i++) create_thread(render_packets); where the packets are rectangles. This would introduce a parallelism which would allow to 1) use all CPUs (would be very useful too, especially if you don't have 3D graphics acceleration available, but more than 1 CPU) 2) use CUDA to process the threads directly using GPU shaders (in parallel). However, I have to say that I have no GEGL experience and little OpenGL and CUDA experience, so maybe I have some wrong assumptions, so feel free to correct me if I just wrote nonsense. -- Richard H. (via www.gimpusers.com) _______________________________________________ Gegl-developer mailing list Gegl-developer@xxxxxxxxxxxxxxxxxxxxxx https://lists.XCF.Berkeley.EDU/mailman/listinfo/gegl-developer