debugged, require optimization (currently bank conflict and wrong size of work-group)