def worker(gpu_id, max_per_gpu, exps): env = os.environ.copy() env['CUDA_VISIBLE_DEVICES'] = str(gpu_id) processes = [] for exp in exps: exp['id'] = 'planet_' + exp['id'] args = construct_run_command('cfm/baselines/train_planet.py', exp) print('Running', args) args = shlex.split(args) processes.append(subprocess.Popen(args, env=env)) if len(processes) >= max_per_gpu: [p.wait() for p in processes] processes = [] [p.wait() for p in processes]
def worker(gpu_id, exps): env = os.environ.copy() env['CUDA_VISIBLE_DEVICES'] = str(gpu_id) processes = [] for exp in exps: args = construct_run_command('cfm/evaluate_planning.py', exp) print('Running', args) args = shlex.split(args) processes.append(subprocess.Popen(args, env=env)) if len(processes) >= 1: [p.wait() for p in processes] processes = [] [p.wait() for p in processes]