square_ocl porting