Generating and Evaluating all Permutations of an Array using CUDA