Accelerate k Nearest Neighbor on multiple GPUs using CUDA and MPI