Commit Graph

367 Commits

Author SHA1 Message Date
Yuhao Yang ad4da17899 [Tune] Add example and tutorial for DCGAN (#6400) 2019-12-13 14:15:44 -08:00
Eric Liang be5dd8eb5e Enable direct calls by default (#6367)
* wip

* add

* timeout fix

* const ref

* comments

* fix

* fix

* Move actor state into actor handle

* comments 2

* enable by default

* temp reorder

* some fixes

* add debug code

* tmp

* fix

* wip

* remove dbg

* fix compile

* fix

* fix check

* remove non direct tests

* Increment ref count before resolving value

* rename

* fix another bug

* tmp

* tmp

* Fix object pinning

* build change

* lint

* ActorManager

* tmp

* ActorManager

* fix test component failures

* Remove old code

* Remove unused

* fix

* fix

* fix resources

* fix advanced

* eric's diff

* blacklist

* blacklist

* cleanup

* annotate

* disable tests for now

* remove

* fix

* fix

* clean up verbosity

* fix test

* fix concurrency test

* Update .travis.yml

* Update .travis.yml

* Update .travis.yml

* split up analysis suite

* split up trial runner suite

* fix detached direct actors

* fix

* split up advanced tesT

* lint

* fix core worker test hang

* fix bad check fail which breaks test_cluster.py in tune

* fix some minor diffs in test_cluster

* less workers

* make less stressful

* split up test

* retry flaky tests

* remove old test flags

* fixes

* lint

* Update worker_pool.cc

* fix race

* fix

* fix bugs in node failure handling

* fix race condition

* fix bugs in node failure handling

* fix race condition

* nits

* fix test

* disable heartbeatS

* disable heartbeatS

* fix

* fix

* use worker id

* fix max fail

* debug exit

* fix merge, and apply [PATCH] fix concurrency test

* [patch] fix core worker test hang

* remove NotifyActorCreation, and return worker on completion of actor creation task

* remove actor diied callback

* Update core_worker.cc

* lint

* use task manager

* fix merge

* fix deadlock

* wip

* merge conflits

* fix

* better sysexit handling

* better sysexit handling

* better sysexit handling

* check id

* better debug

* task failed msg

* task failed msg

* retry failed tasks with delay

* retry failed tasks with delay

* clip deps

* fix

* fix core worker tests

* fix task manager test

* fix all tests

* cleanup

* set to 0 for direct tests

* dont check worker id for ownership rpc

* dont check worker id for ownership rpc

* debug messages

* add comment

* remove debug statements

* nit

* check worker id

* fix test

* owner

* fix tests
2019-12-13 13:58:04 -08:00
Eric Liang b3eb374817 [tune] Really disable retries by default 2019-12-11 13:12:28 -08:00
Yuhao Yang 3db8faab0d [tune] fix log dir race condition (#6420) 2019-12-10 21:00:19 -08:00
Ujval Misra 4e1d1ed00d [tune] Report trials by state fairly (#6395)
* Fairly represented trial states.

* filter test

* Indent

* Add test to BUILD

* Address Eric's comments (show truncation by state).

* Sort trials, only show 20.

* Fix lint
2019-12-10 14:56:54 -08:00
Eric Liang 304b4f0d3d Shard unit tests into medium sized files for test stability (#6398) 2019-12-09 13:15:29 -08:00
visatish e2ba8c1898 [tune] Fixed bug in PBT where initial trial result is empty. (#6351)
* Fixed bug in tune pbt where initial result is empty.

* Updated mock trial executor in test suite.

* Added comment.
2019-12-06 15:30:27 -08:00
Eric Liang 6223d2ed0b [direct call] Assign resource ids for direct call tasks (#6364) 2019-12-05 10:16:04 -08:00
Eric Liang 4c6739476b [rllib] Raise an error if GPUs are enabled but not tf.test.is_gpu_available() (#6365) 2019-12-05 10:13:54 -08:00
Ujval Misra fa5d62e8ba [tune] Retry restore on timeout (#6284)
* Retry recovery on timeout

* fix bug, revert some code

* Add test for restore time outs.

* Fix lint

* Address comments

* Don't timeout restores.
2019-12-02 20:01:47 -08:00
Yuhao Yang ffa043d4b7 [tune] replace self.config (#6313) 2019-11-29 11:09:30 -08:00
Eric Liang b7b655c851 Also use NotifyDirectCallTaskBlock/Unblocked for plasma store accesses (#6249)
* wip

* fix it

* lint

* wip

* fix

* unblock

* flaky

* use fetch only flag

* Revert "use fetch only flag"

This reverts commit 56e938a0ee2024f5c99c9ab2d55fd35558fb15e1.

* restore error resolution

* use worker task id

* proto comments

* fix if
2019-11-27 22:46:15 -08:00
Eric Liang 53641f1f74 Move more unit tests to bazel (#6250)
* move more unit tests to bazel

* move to avoid conflict

* fix lint

* fix deps

* seprate

* fix failing tests

* show tests

* ignore mismatch

* try combining bazel runs

* build lint

* remove tests from install

* fix test utils

* better config

* split up

* exclusive

* fix verbosity

* fix tests class

* cleanup

* remove flaky

* fix metrics test

* Update .travis.yml

* no retry flaky

* split up actor

* split basic test

* split up trial runner test

* split stress

* fix basic test

* fix tests

* switch to pytest runner for main

* make microbench not fail

* move load code to py3

* test is no longer package

* bazel to end
2019-11-24 11:43:34 -08:00
Yuhao Yang f6a5baf844 [tune] minor doc fix (#6248) 2019-11-23 21:54:41 -08:00
Eric Liang b052bcf1fc Bazelify tune tests in travis (#6219) 2019-11-22 13:58:50 -08:00
Eric Liang 7559fdb141 [rllib/tune] Cache get_preprocessor() calls, default max_failur… (#6211) 2019-11-21 15:55:56 -08:00
Ujval Misra 0010382cc7 [tune] Report failures in a separate table (#6160)
* Report errors in a separate table.

* Single error file.
2019-11-20 10:53:47 -08:00
Ujval Misra 2965dc1b72 [tune] Fault tolerance improvements (#5877)
* Precede ray.get with ray.wait.

* Trigger checkpoint deletes locally in Trainable

* Clean-up code.

* Minor changes.

* Track best checkpoint so far again

* Pulled checkpoint GC out of Trainable.

* Added comments, error logging.

* Immediate pull after checkpoint taken; rsync source delete on pull

* Minor doc fixes

* Fix checkpoint manager bug

* Fix bugs, tests, formatting

* Fix bugs, feature flag for force sync.

* Fix test.

* Fix minor bugs: clear proc and less verbose sync_on_checkpoint warnings.

* Fix bug: update IP of last_result.

* Fixed message.

* Added a lot of logging.

* Changes to ray trial executor.

* More bug fixes (logging after failure), better logging.

* Fix richards bug and logging

* Add comments.

* try-except

* Fix heapq bug.

* .

* Move handling of no available trials to ray_trial_executor (#1)

* Fix formatting bug, lint.

* Addressed Richard's comments

* Revert tests.

* fix rebase

* Fix trial location reporting.

* Fix test

* Fix lint

* Rebase, use ray.get w/ timeout, lint.

* lint

* fix rebase

* Address richard's comments
2019-11-18 01:14:41 -08:00
Philipp Moritz fc655acfee Fix linting on master branch (#6174) 2019-11-16 10:02:58 -08:00
Hersh Godse 7aa06fb25c [tune] ExperimentalAnalysis in-memory cache (#5962) 2019-11-15 12:47:50 -08:00
Richard Liaw 62cbc043b4 [tune] tbx logger (#6133)
* tbx

* add_hparams

* fix_hparams

* ok

* ok

* fix

* ok

* fix
2019-11-15 08:45:44 -08:00
Eric Liang b924299833 Add large scale regression test for RLlib (#6093) 2019-11-13 12:22:55 -08:00
Adi Zimmerman 776b071f3b [tune] Let Search Algorithms use early stopped trials (#5651) 2019-11-11 09:38:14 -08:00
Adam Gleave c157e93ba1 [tune] Retry failed tasks with checkpointing disabled (#6126)
* Allow recovery for failed tasks without checkpointing

* Update docs
2019-11-09 19:35:27 -08:00
David Bignell 3f83b2daa9 [rllib] Rollout extensions (#6065)
* Rollout improvements

* Make info-saving optional, to avoid breaking change.

* Store generating ray version in checkpoint metadata

* Keep the linter happy

* Add small rollout test

* Terse.

* Update test_io.py
2019-11-05 20:34:18 -08:00
visatish 18241f4a2d [tune] Added resources_per_trial arg to validate_save_restore u… (#6032) 2019-11-04 13:24:46 -08:00
Richard Liaw e94bebb1de [tune] Fix Jenkins tests (#6028) 2019-11-01 16:42:04 -07:00
Ujval Misra cf16b2f0c4 Add timesteps and remove ID from progress output (#5999) 2019-10-25 00:48:42 -07:00
Richard Liaw 81dd0dfb0a [tune] fix conditional identifier (#5971)
* fix conditional identifier

* fix

* doc
2019-10-22 02:00:49 -07:00
Richard Liaw 252a5d13ed [sgd/tune][minor] more tf ports (#5953) 2019-10-21 16:46:16 -07:00
Richard Liaw 91acecc9f9 [tune][minor] gpu warning (#5948)
* gpu

* formaat

* defaults

* format_and_check

* better registration

* fix

* fix

* trial

* foramt

* tune
2019-10-19 17:09:48 -07:00
Richard Liaw 48ba484640 [tune] Test TF2.0, TF1.14, TF1.12 Tensorboard support (#5931) 2019-10-18 13:50:42 -07:00
Richard Liaw 9f23620412 [tune] tf2.0 mnist example (#5898)
* tfmnistexample

* tfmnist

* add_to_ci

* format

* exampledownlaod

* fix
2019-10-15 22:25:01 -07:00
Eric Liang 6843a01a7f Automatically create custom node id resource (#5882)
* node id

* comment

* comments

* fix tests
2019-10-15 21:31:11 -07:00
Richard Liaw c52bb0621d [tune] Support TF2.0 on Keras Callback (#5912) 2019-10-15 10:49:50 -07:00
Camille Couturier 320cba313f [tune] Explicitly set scheduler in run() (#5871)
* Explicitely set scheduler in run()

* Better formatting/indentation (after running format.sh)

* Remove accidental paste in parameters definitions.

* format
2019-10-14 15:44:59 -07:00
Richard Liaw 1650f7b174 [tune] Remove TF MNIST example + add TrialRunner hook to execut… (#5868)
* remove test

* add trial runner

* remvoerestore

* Remove other mnist examples

* tunetest

* revert

* v1

* Revert "v1"

This reverts commit c8bddaf2db7a8270c43c02021cac0e75df15ed20.

* Revert "revert"

This reverts commit b58f56884a0c288d3a6f997d149ab4d496ddd7a3.

* errors

* format
2019-10-13 20:33:56 -07:00
Richard Liaw 52e5c9b22d [tune] CPU-Only Head Node support (#5900)
* trialqueue

* add tests
2019-10-13 20:31:42 -07:00
Robert Nishihara 523c764c25 Python 2 compatibility. (#5887) 2019-10-10 19:09:25 -07:00
Richard Liaw 1181924077 [tune][minor] formatting examples, fix travis (#5869)
* formatting

* formatting
2019-10-08 17:58:43 -07:00
Ujval Misra a851d7eb87 [tune] Readable trial progress output (#5822)
* Cleaner, tabulated progress output.

* Minor HTML changes, trial ID instead of name

* Revert basic variant changes

* Cleanup, address richard's comments, add progress_reporter.py

* Add tabulate dependency

* Added more info to table, auto-hide columns with no data.

* lint

* Address comments

* Replace experiment tag w/ trial ID

* Fixed tests.

* Fixed test

* Added requirement

* Fix formatting
2019-10-08 16:38:39 -07:00
Ujval Misra 375852af23 [tune] Check node liveness before result fetch (#5844)
* Check if trial's node is alive before trying to fetch result

* Added function for failed trials to trial_executor interface

* Address comments, add test.
2019-10-08 11:41:01 -07:00
waldroje 054583ffe6 [tune] MedianStopping on result (#5402)
* added class median_stopping_result to schedulers and updated __init__

* Dicts flatten and combine schedulers.

MedianStoppingRule is now combined with MedianStoppingResult; I think
the functionality is essentially the same so there's no need to
duplicate.

Dict flattening was already taken care of in a separate PR, so I've
reverted that.

* lint

* revert

* remove time sharing and simplify state

* fix

* fixtests

* added class median_stopping_result to schedulers and updated __init__

* update property names and types to reflect suggestions by ray developers, merged get_median_result and get_best_result into a single method to eliminate duplicate steps, added resource check on PAUSE condition, modified utility function to use updated properties

* updated tests for median_stopping_result in separate file

* remove stray characters from previous merge conflict

* reformatted and cleaned up dependencies from running code format and linting

* added class median_stopping_result to schedulers and updated __init__

* Dicts flatten and combine schedulers.

MedianStoppingRule is now combined with MedianStoppingResult; I think
the functionality is essentially the same so there's no need to
duplicate.

Dict flattening was already taken care of in a separate PR, so I've
reverted that.

* lint

* revert

* remove time sharing and simplify state

* fix

* added class median_stopping_result to schedulers and updated __init__

* update property names and types to reflect suggestions by ray developers, merged get_median_result and get_best_result into a single method to eliminate duplicate steps, added resource check on PAUSE condition, modified utility function to use updated properties

* updated tests for median_stopping_result in separate file

* remove stray characters from previous merge conflict

* reformatted and cleaned up dependencies from running code format and linting

* update scheduler to coordinate eval interval

* modify median_stopping_result to synchronize result evaluation at regular intervals, driven by least common interval

* add some logging info to median_result

* add new scheduler, SyncMedianStoppingResult, which evaluates and stops trials in a synchronous fashion

* Cleanup median_stopping_rule

- remove eval_interval
- pause trials with insufficient samples if there are other waiting trials
- compute score only for trials that have reached result_time

* Remove extraneous classes

* Fix median stopping rule tests

* Added min_time_slice flag to reduce potential checkpointing cost

* Only compute mean after grace

* Relegate logging to debug mode
2019-10-08 11:40:41 -07:00
Erik Cederstrand 5834c56c64 Restore support for Python 3.5 (#5818)
* Advertise that Python >= 3.6 is needed

ray/tune/examples/ax_example.py contains f-strings which limits support of this package to Python 3.6 and up.

* Python 3.5 does not support f-strings

Rewrite by using format()

* Lower required version after 9f88fe9d

* Remove python_requires again by request

* Fix linter warning
2019-10-07 00:10:00 -07:00
Anthony Yu b99cdf4e39 [tune] PBT + Memnn example (#5723)
* Add example file

* Move into train function

* Somewhat working example of MemNN, still has some failed trials

* Reorganize into a class

* Small fixes

* Iteration decrease and fix hyperparam_mutations

* Add example file

* Move into train function

* Somewhat working example of MemNN, still has some failed trials

* Reorganize into a class

* Small fixes

* Iteration decrease and fix hyperparam_mutations

* Some style edits

* Address PR changes without modifying learning rate

* Add configs and hyperparameter mutations

* Add tune test

* Modify import locations

* Some parameter changes for testing

* Update memnn example

* Add tensorboard support and address PR comment

* Final changes

* lint

* generator
2019-10-05 09:22:37 -07:00
Ujval Misra 9df6eda84f [tune] Add error case for member functions passed as stopping c… (#5823) 2019-10-03 09:49:03 -07:00
Ujval Misra a4659a8f8b [tune] Add support for function-based stopping condition (#5754) 2019-09-23 18:39:00 -07:00
Richard Liaw e00071721a [tune] tf2.0 testing and supporting callables (#5738) 2019-09-21 17:01:14 -07:00
Hersh Godse d17b35494d [tune] Save/Restore for Suggestion Algs (#5719) 2019-09-21 11:11:57 -07:00
Vince Jankovics 7e214fd95e [tune] TensorBoard HParams for TF2.0 (#5678) 2019-09-21 11:06:34 -07:00