gpu updated

gpu_main almost finished