mirror of
https://github.com/wassname/ray.git
synced 2026-07-13 17:45:08 +08:00
73 lines
1.9 KiB
Python
73 lines
1.9 KiB
Python
# coding: utf-8
|
|
from __future__ import absolute_import
|
|
from __future__ import division
|
|
from __future__ import print_function
|
|
|
|
import os
|
|
import shutil
|
|
import tempfile
|
|
import unittest
|
|
|
|
import ray
|
|
from ray import tune
|
|
from ray.tune.util import recursive_fnmatch
|
|
from ray.rllib import _register_all
|
|
|
|
|
|
class TuneRestoreTest(unittest.TestCase):
|
|
def setUp(self):
|
|
ray.init(num_cpus=1, num_gpus=0, local_mode=True)
|
|
tmpdir = tempfile.mkdtemp()
|
|
test_name = "TuneRestoreTest"
|
|
tune.run(
|
|
"PG",
|
|
name=test_name,
|
|
stop={"training_iteration": 1},
|
|
checkpoint_freq=1,
|
|
local_dir=tmpdir,
|
|
config={
|
|
"env": "CartPole-v0",
|
|
},
|
|
)
|
|
|
|
logdir = os.path.expanduser(os.path.join(tmpdir, test_name))
|
|
self.logdir = logdir
|
|
self.checkpoint_path = recursive_fnmatch(logdir, "checkpoint-1")[0]
|
|
|
|
def tearDown(self):
|
|
shutil.rmtree(self.logdir)
|
|
ray.shutdown()
|
|
_register_all()
|
|
|
|
def testTuneRestore(self):
|
|
self.assertTrue(os.path.isfile(self.checkpoint_path))
|
|
tune.run(
|
|
"PG",
|
|
name="TuneRestoreTest",
|
|
stop={"training_iteration": 2}, # train one more iteration.
|
|
checkpoint_freq=1,
|
|
restore=self.checkpoint_path, # Restore the checkpoint
|
|
config={
|
|
"env": "CartPole-v0",
|
|
},
|
|
)
|
|
|
|
|
|
class AutoInitTest(unittest.TestCase):
|
|
def testTuneRestore(self):
|
|
self.assertFalse(ray.is_initialized())
|
|
tune.run(
|
|
"__fake",
|
|
name="TestAutoInit",
|
|
stop={"training_iteration": 1},
|
|
ray_auto_init=True)
|
|
self.assertTrue(ray.is_initialized())
|
|
|
|
def tearDown(self):
|
|
ray.shutdown()
|
|
_register_all()
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main(verbosity=2)
|