OpenCL approximation of Pi using vectorized implementation
Addressing question #2, you can move the parallel sum out of the for loop, and only do it once.
Use another double16 variable (initialized to all zeros), accumulate the sum into it during the loop body. Then, once the loop is done, do the parallel sum to initialize work_sum before the last loop that handles that last few elements.