def experiment(variant): cuda = True from gym.envs.mujoco import HalfCheetahEnv from mujoco_torch.core.bridge import MjCudaRender R = 84 env = HalfCheetahEnv() c = Convnet(6, output_activation=torch.tanh, input_channels=3) if cuda: c.cuda() gt.stamp("start") for i in range(100): img = env.sim.render(R, R, device_id=1) gt.stamp("warmstart") for i in gt.timed_for(range(1000)): env.step(np.random.rand(6)) gt.stamp('step') img = env.sim.render(R, R, device_id=1) gt.stamp('render') x = np_to_var(img) if cuda: x = x.cuda() torch.cuda.synchronize() gt.stamp('transfer') # cv2.imshow("img", img) # cv2.waitKey(1) gt.stamp("end") print(img) print(gt.report(include_itrs=False))
def experiment(variant): from gym.envs.mujoco import HalfCheetahEnv from mujoco_torch.core.bridge import MjCudaRender renderer = MjCudaRender(84, 84) env = HalfCheetahEnv() gt.stamp("start") for i in range(100): tensor, img = renderer.get_cuda_tensor(env.sim, False) gt.stamp("warmstart") for i in range(1000): env.step(np.random.rand(6)) tensor, img = renderer.get_cuda_tensor(env.sim, True) x = np_to_var(img).cuda() torch.cuda.synchronize() # cv2.imshow("img", img) # cv2.waitKey(1) gt.stamp("end") print(img) print(gt.report())
def experiment(variant): from gym.envs.mujoco import HalfCheetahEnv from mujoco_torch.core.bridge import MjCudaRender renderer = MjCudaRender(84, 84) env = HalfCheetahEnv() gt.stamp("start") for i in range(100): tensor, img = renderer.get_cuda_tensor(env.sim, False) gt.stamp("warmstart") for i in gt.timed_for(range(1000)): env.step(np.random.rand(6)) gt.stamp('step') tensor, img = renderer.get_cuda_tensor(env.sim, False) gt.stamp('render') # cv2.imshow("img", img) # cv2.waitKey(1) gt.stamp("end") print(img) print(gt.report(include_itrs=False))