put sequential, kernel, and cublas approaches together