def default_resource_request(cls, config): cf = dict(cls._default_config, **config) Agent._validate_config(cf) return Resources( cpu=cf["num_cpus_for_driver"], gpu=cf["num_gpus"], extra_cpu=cf["num_cpus_per_worker"] * cf["num_workers"] + cf["num_aggregation_workers"], extra_gpu=cf["num_gpus_per_worker"] * cf["num_workers"])
def default_resource_request(cls, config): cf = dict(cls._default_config, **config) Agent._validate_config(cf) if cf["optimizer_class"] == "AsyncReplayOptimizer": extra = cf["optimizer"]["num_replay_buffer_shards"] else: extra = 0 return Resources( cpu=cf["num_cpus_for_driver"], gpu=cf["num_gpus"], extra_cpu=cf["num_cpus_per_worker"] * cf["num_workers"] + extra, extra_gpu=cf["num_gpus_per_worker"] * cf["num_workers"])
def __getstate__(self): state = Agent.__getstate__(self) state.update({ "num_target_updates": self.num_target_updates, "last_target_update_ts": self.last_target_update_ts, }) return state
def __setstate__(self, state): Agent.__setstate__(self, state) self.num_target_updates = state["num_target_updates"] self.last_target_update_ts = state["last_target_update_ts"]