opencl minimization seperate class for each method created