Speeding Up Algorithms: When Parallel Computing and GPUs Do and Don't Accelerate