Commit graph

10835 commits

Author SHA1 Message Date
Antoni Baum
3632494ce0
[train] Fix start_training in logging callbacks (#21357)
Fixes outdated `start_training` definitions and calls in Train logging callbacks & abstract classes.
2022-01-04 12:46:39 -08:00
xwjiang2010
fc22200af8
[tune] deflake pbt. (#21366)
We use `trial.checkpoint` to restore a perturbed trial. Currently trial.checkpoint is looking at both in-memory and persistent checkpoints to find the most recent one. The definition of "the most recent one" is based on iteration. This may no longer be a valid assumption in PBT case, considering `trial_low_quantile` may have an iter=2_persistent_checkpoint as well as a iter=1_in_memory_checkpoint (perturbed from `trial_upper_quantile`).
2022-01-04 20:33:17 +00:00
shrekris-anyscale
e45383793f
[Serve] Clean up router.py (#21344) 2022-01-04 09:46:33 -08:00
Sven Mika
c01245763e
[RLlib] Revert "Revert "updated pettingzoo wrappers, env versions, urls"" (#21339) 2022-01-04 18:30:26 +01:00
Kai Fricke
94242e3e6e
[ci/repro] Add SYS_PTRACE to docker container, use unique name (#21377)
This will start repro docker containers with SYS_PTRACE capabilities to enable debugging e.g. via py-spy.
Additionally, default instance name tags for instance re-use will be generated using the buildkite build id and job id.
2022-01-04 16:59:12 +00:00
Jiajun Yao
5aa00ba5eb
[doc] Fix typos in serve documentation (#21379) 2022-01-04 10:56:07 -06:00
Kai Fricke
aa35045b6f
[ci/release] Update to recent anyscale API changes (#21149)
Recent changes in the anyscale API rendered the current e2e script incompatible. This PR resolves these subtle API changes.
2022-01-04 11:21:47 +00:00
Sven Mika
abd3bef63b
[RLlib] QMIX better defaults + added to CI learning tests (#21332) 2022-01-04 08:54:41 +01:00
mwtian
8cc268096c
[GCS][Bootstrap 3/n] Refactor to support GCS bootstrap (#21295)
This PR refactors several components to support switching to GCS address bootstrapping later:
- Treat address from `ray.init()` and `ray` CLI as bootstrap address instead of assuming it is Redis address.
- Ray client servers support `--address` flag instead of `--redis-address`.
- A few other miscellaneous cleanup.

Also, add a test for starting non-head node with `ray start`.
2022-01-03 23:52:12 -08:00
Jiao
6e77b3945d
[Serve] [nit] Remove unreachable line in ActorReplicaWrapper(#21361) 2022-01-03 17:08:58 -08:00
Simon Mo
e60a5f52eb
[Serve] Fix iterator-and-mutate bug in FastAPI view (#21362) 2022-01-03 17:02:31 -08:00
Tao Wang
b9106483af
[Core]Clear the unnecessary fields before broadcasting (#20965)
Only `resource_avaialbe` and `resource_total` are used in raylet, so let's clear the rest before broadcasting.
2022-01-03 15:56:41 -08:00
Balaji Veeramani
7efe1bef11
[Train] Add PrintCallback (#21261)
Co-authored-by: Amog Kamsetty <amogkamsetty@yahoo.com>
2022-01-03 14:03:04 -08:00
Chen Shen
704404d408
[BigDataTraining] Fix test script introduced by API change (#21347)
* fix

* fix test failure

* Update release/nightly_tests/dataset/ray_sgd_training.py

Co-authored-by: matthewdeng <matthew.j.deng@gmail.com>
2022-01-03 12:14:36 -08:00
Archit Kulkarni
4581baa7dc
Revert "WINDOWS: unskip passing runtime_env tests (#21252)" (#21352)
This reverts commit fcb952e1bc.
2022-01-03 11:07:17 -08:00
Balaji Veeramani
43a9e95dc0
[CI] Add support for Black formatting (#21281) 2022-01-03 10:06:41 -08:00
Balaji Veeramani
4e8f90aca2
[Train] Replace abc.ABCMeta with abc.ABC in callbacks (#21262)
Inheriting from `abc.ABC` is more readable than setting the meta class to `abc.ABCMeta`.

Relevant snippet from the Python 3.4 release notes:
> New class ABC has ABCMeta as its meta class. Using ABC as a base class has essentially the same effect as specifying metaclass=abc.ABCMeta, but is simpler to type and easier to read. (Contributed by Bruno Dupuis in bpo-16049.)

Co-authored-by: Richard Liaw <rliaw@berkeley.edu>
Co-authored-by: Matthew Deng <matthew.j.deng@gmail.com>
2022-01-03 09:25:44 -08:00
Balaji Veeramani
fa4e41c5b2
[Train] Monkeypatch environment variables in test_json (#21260)
If we use `os.environ` to set environment variables in tests, then our tests become coupled. By using `monkeypatch`, we can safely set environment variables while ensuring our tests remain decoupled. 

For more information, see the [monkeypatching documentation](https://docs.pytest.org/en/6.2.x/monkeypatch.html#monkeypatching-environment-variables).
2022-01-03 09:12:44 -08:00
Antoni Baum
7ce22b72ed
[datasets] Expand to_torch's functionality (#21117)
Expands the `to_torch` method for Datasets with:
* An ability to choose to output a list/dict of feature tensors instead of just one (through setting `feature_columns` to be a list of lists or a dict of lists)
* An ability to choose whether the label should be unsqueezed or not
* An ability to pass `None` as the label (for prediction).

Furthermore, this changes how the `feature_column_dtypes` argument works. Previously, it took a list of dtypes for each feature. However, as the tensor was concatenated in the end, only one dtype mattered (the biggest one). Now, this argument expects a single dtype which will be applied to the features tensor (or a list/dict if `feature_columns` is a list of list/dict of lists).

Unit tests for all cases are included.

Co-authored-by: matthewdeng <matthew.j.deng@gmail.com>
2022-01-03 09:03:50 -08:00
xwjiang2010
c18caa4db3
[tune] remove TrialExecutor.resume_trial. (#21225)
This removes unused code.
2022-01-03 16:38:40 +00:00
Antoni Baum
6a2dedb41d
[tune] Fix dtype coercion in tune.choice (#21270)
When a list with mixed types is passed to tune.choice, they will be coerced to a single dtype during sampling (due to numpy.choice converting to an array internally). This behaviour is unintentional and surprising. This PR fixes this issue.
2022-01-03 16:32:30 +00:00
Kai Fricke
10290eeb2f
[ci] Pin manylinux docker image (#21341) 2022-01-03 14:36:21 +00:00
Kai Fricke
489e6945a6
Revert "[RLlib] Updated pettingzoo wrappers, env versions, urls (#20113)" (#21338)
This reverts commit 327eb84154.
2022-01-03 10:21:25 +00:00
Benjamin Black
327eb84154
[RLlib] Updated pettingzoo wrappers, env versions, urls (#20113) 2022-01-02 21:29:09 +01:00
Ishant Mrinal
ec34185771
[RLlib] RE3 documentation (#21199) 2022-01-02 17:31:53 +01:00
Carlo Grisetti
ff768ea9d4
[RLlib] Change deprecated rllib/utils/tf_ops.py import (#20978) 2022-01-02 17:29:37 +01:00
Balaji Veeramani
c263008c07
[RLlib] Move __grouping_doc_end__ (#21321)
These changes are needed for two reasons.

**`__grouping_doc_end__` is in the wrong place**
If you look at the part of the Ray documentation where the tag is referenced, you'll read
> You can use the MultiAgentEnv.with_agent_groups() method to define these groups:

However, if you look at the code snippet below, you'll see the implementation of `to_base_env` in addition to the implementation of `with_agent_groups`.

To remove `to_base_env` from the code snippet, we need to move `__grouping_doc__end__`.

**Black cannot format `multi_agent_env.py`**
For some reason, Black errors while formatting `multi_agent_env.py`. However, if we move `__grouping_doc_end__` up, the issue is resolved.
2022-01-01 20:11:06 -08:00
Balaji Veeramani
fae5b9b1af
[Core] Disable formatting in test_add_min_workers_nodes (#21322)
Black errors while formatting `test_resource_demand_scheduler.py`. The issue is caused by the [assertions](https://github.com/ray-project/ray/blob/master/python/ray/tests/test_resource_demand_scheduler.py#L383-L428) at the end of `test_add_min_workers_nodes`. 



To prevent `format.sh` from erroring once we switch to Black, I've disabled formatting around the assertions.
2022-01-01 18:16:33 -08:00
Balaji Veeramani
416bce6378
Ignore E731 in worker_set.py and sampler.py (#21320) 2022-01-01 18:05:14 -08:00
Qing Wang
340fbf53c0
[Java] Support actor handle reference counting. (#21249) 2022-01-01 10:26:22 +08:00
Kai Fricke
14ed7cfaaa
[ci] Add repro-ci.py script to automatically setup Buildkite-runner-like instances to debug CI runs (#21292)
Create an AWS instance to reproduce Buildkite CI builds.

This script will take a Buildkite build URL as an argument and create
an AWS instance with the same properties running the same Docker container
as the original Buildkite runner. The user is then attached to this instance
and can reproduce any builds commands as if they were executed within the
runner.

This utility can be used to reproduce and debug build failures that come up
on the Buildkite runner instances but not on a local machine.
2021-12-31 10:31:50 +00:00
WanXing Wang
412cd6be76
[Core]Add RAY_REDIS_ADDRESS environment to specify external address. (#20966)
Support RAY_REDIS_ADDRESS environment variable option when ray start.
2021-12-31 16:12:56 +08:00
Tao Wang
a78baf4075
[Java]Init gcs client in runtime only if necessary (#21072)
There's a redis connection in gcs client, but most time the gcs client is never used in worker. We can make the initialization lazy to reduce redis connections.
After that, the number of redis connections reduces from 2 to 1 in one core worker.
2021-12-30 15:44:06 +08:00
Shawn
4f9aceb3a6
[Java] Native memory support (#21256)
This PR povided universal native memory access support in java worker mentioned in #21234, which will also be the foundation for later zero-copy and serialization.
The main changes include:
* Native memory operations based on `sun.misc.Unsafe`
* Little-Endian based Native memory buffer.
* Native memory based IO operations:
  * InputStream/OutputStream
  * ReadChannel/WriteChannel
  * MockReadChannel/MockWriteChannel
2021-12-30 15:31:22 +08:00
mwtian
20ca1d85c2
[GCS][Bootstrap 2/n] Fix tests to enable using GCS address for bootstrapping (#21288)
This PR contains most of the fixes @iycheng made in #21232, to make tests pass with GCS bootstrapping by supporting both Redis and GCS address as the bootstrap address. The main change is to use address_info["address"] to obtain the bootstrap address to pass to ray.init(), instead of using address_info["redis_address"]. In a subsequent PR, address_info["address"] will return the Redis or GCS address depending on whether using GCS to bootstrap.
2021-12-29 19:25:51 -07:00
Jiajun Yao
9776e21842
Revert "Round robin during spread scheduling (#19968)" (#21293)
This reverts commit 60388b2834.
2021-12-30 10:33:06 +09:00
mwtian
0b3fed5ef3
Revert "[Nightly Test] Add a team column to each test config. (#21198)" (#21289)
This reverts commit b5b11b2d06.
2021-12-30 06:44:51 +09:00
Qing Wang
8d2f53e25b
[Java] Add dependency reduced pom file to gitignore. (#21282) 2021-12-29 21:49:06 +08:00
mwtian
5377832383
[GCS][Bootstrap 1/n] Support bootstrapping with GCS in node.py (#21267) 2021-12-28 08:14:38 -07:00
Qing Wang
663e14b232
[Java] Fix namespace test case. (#21280)
Since we've supported lifetime in Java, we should set the DETACHED for the detached actors in test.
2021-12-28 22:31:51 +08:00
WanXing Wang
e5920dee8e
[Core]Refine StealTasks rpc. (#21258)
It seems that the `StealTasks` rpc has no different from other common rpc methods, should be implemented by `VOID_RPC_CLIENT_METHOD` macro. We find this when merge code into our internal codebase.
2021-12-28 14:17:25 +08:00
Philipp Moritz
4b9e865fd7
Unskip remaining tests in test_basic.py on Windows (#21273) 2021-12-27 21:20:45 -08:00
SangBin Cho
b5b11b2d06
[Nightly Test] Add a team column to each test config. (#21198)
Please review **e2e.py and test_suite belonging to your team**! 

This is the first part of https://docs.google.com/document/d/16IrwerYi2oJugnRf5hvzukgpJ6FAVEpB6stH_CiNMjY/edit#

This PR adds a team name to each test suite.

If the name is not specified, it will be reported as unspecified. 

If you are running a local test, and if the new test suite doesn't have a team name specified, it will raise an exception (in this way, we can avoid missing team names in the future).

Note that we will aggregate all of test config into a single file, nightly_test.yaml.
2021-12-27 14:42:41 -08:00
Matti Picus
3de18d2ada
WINDOWS: enable passing/skipping tests (#21136) 2021-12-27 11:59:00 -08:00
Israël Hallé
59209d695b
Includes .pyi files in package data. (#21247) 2021-12-27 11:50:02 -08:00
Philipp Moritz
583744ab57
Graduate Ray on Windows from experimental to beta (#21268) 2021-12-27 00:19:48 -08:00
Matti Picus
fcb952e1bc
WINDOWS: unskip passing runtime_env tests (#21252) 2021-12-26 20:49:02 -08:00
Akash Patel
cbcd03b779
Upgrade cython to 0.29.26 for py310 (#21244) 2021-12-26 20:26:08 -08:00
xwjiang2010
0b9cdb1eae
[tune] Have one canonical way of stopping trial. (#21021)
This PR is introducing a canonical impl for stopping trials by collecting scattered logic from process_trial_result back into stop_trial. This way, we know what is expected (e.g. what callbacks are invoked and when they are invoked).
This PR will correct the current wrong logic that on_trial_complete callback is invoked before on_trial_checkpoint, which is the source of Syncer clean up issues.
2021-12-25 10:13:30 +01:00
Gagandeep Singh
c5c5fec22b
Unskip test_standalone from ci.sh (#21235) 2021-12-25 00:21:58 -08:00