use ocl events for async dependencies