Beispiel #1
0
    def testExperimentTagTruncation(self):
        ray.init(num_cpus=2)

        def train(config, reporter):
            reporter(timesteps_total=1)

        trial_executor = RayTrialExecutor()
        register_trainable("f1", train)

        experiments = {
            "foo": {
                "run": "f1",
                "config": {
                    "a" * 50: tune.sample_from(lambda spec: 5.0 / 7),
                    "b" * 50: tune.sample_from(lambda spec: "long" * 40),
                },
            }
        }

        for name, spec in experiments.items():
            trial_generator = BasicVariantGenerator()
            trial_generator.add_configurations({name: spec})
            while not trial_generator.is_finished():
                trial = trial_generator.next_trial()
                if not trial:
                    break
                trial_executor.start_trial(trial)
                self.assertLessEqual(len(os.path.basename(trial.logdir)), 200)
                trial_executor.stop_trial(trial)
Beispiel #2
0
    def testExperimentTagTruncation(self):
        ray.init(num_cpus=2)
        trainable_cls = AdaptDLTrainableCreator(_train_simple, num_workers=1)
        trial_executor = RayTrialExecutor()
        experiments = {
            "foo": {
                "run": trainable_cls.__name__,
                "config": {
                    "a" * 50: tune.sample_from(lambda spec: 5.0 / 7),
                    "b" * 50: tune.sample_from(lambda spec: "long" * 40)
                },
            }
        }

        for name, spec in experiments.items():
            trial_generator = BasicVariantGenerator()
            trial_generator.add_configurations({name: spec})
            while not trial_generator.is_finished():
                trial = trial_generator.next_trial()
                if not trial:
                    break
                trial_executor.start_trial(trial)
                assert trial.status == Trial.RUNNING
                assert len(os.path.basename(trial.logdir)) <= 200
                trial_executor.stop_trial(trial)
                assert trial.status == Trial.TERMINATED
 def generate_trials(spec, name):
     suggester = BasicVariantGenerator()
     suggester.add_configurations({name: spec})
     trials = []
     while not suggester.is_finished():
         trial = suggester.next_trial()
         if trial:
             trials.append(trial)
         else:
             break
     return trials
Beispiel #4
0
 def _add_trials(self, name, spec):
     """Add trial by invoking TrialRunner."""
     resource = {}
     resource["trials"] = []
     trial_generator = BasicVariantGenerator()
     trial_generator.add_configurations({name: spec})
     while not trial_generator.is_finished():
         trial = trial_generator.next_trial()
         if not trial:
             break
         runner.add_trial(trial)
         resource["trials"].append(self._trial_info(trial))
     return resource