OpenCL furthest point from line /parallel reduction

Hello All,

Have been testing with ofxMSAOpenCl particle systems; I’d like to try and use it to detect the particle that is furthest from a given point.

i.e. parallelise a furthest point test so that it can run inline with the

Does anyone know how to go about doing this/have a working example?


Update: It looks like what I am looking for is an OpenCL parallel reduction example written for Openframeworks.
There is an article on parallel reduction here: but whilst I understand the concept I can’t figure out a great deal more yet.

[longer update]

I’ve been hacking away at the C example implementation of an openCL reduction provided here:

It is a little confusing to my novice eye, but I may have a simplified version working for OF: (60.5 KB)

I think that this attempt extracts the largest value from a random array of 4million integers. It takes circa 0.9s to do this on an Intel HD Graphics 4000. Seems a little slow to me. I have a few questions about how it appears to be running; mainly why it only does two passes, why it is fixed to 1000 iterations and if anything in ofxmsaopenCl can do a similar job.

Can anyone verify and or help explain the attached for me?
In hope