Merged GPU challenge code

Change-Id: I870ea938d329a996aca7af29f91932bfa74ff9d4