Robert Nishihara 4669c59fa8 Release GPU resources as soon as an actor exits. (#1088)
* Release GPU resources as soon as an actor exits.

* Add a test.

* Store local_scheduler_id and driver_id in the worker object instead of the actor object.
2017-10-06 17:58:19 -07:00
2016-11-22 17:04:24 -08:00
2016-07-28 13:11:13 -07:00
2017-09-30 00:11:09 -07:00
2016-07-08 12:39:11 -07:00
2016-11-22 17:04:24 -08:00

Ray
===

.. image:: https://travis-ci.org/ray-project/ray.svg?branch=master
    :target: https://travis-ci.org/ray-project/ray

.. image:: https://readthedocs.org/projects/ray/badge/?version=latest
    :target: http://ray.readthedocs.io/en/latest/?badge=latest

|

Ray is a flexible, high-performance distributed execution framework.


Installation
------------

- Ray can be installed on Linux and Mac with ``pip install ray``.
- To build Ray from source, see the instructions for `Ubuntu`_ and `Mac`_.

.. _`Ubuntu`: http://ray.readthedocs.io/en/latest/install-on-ubuntu.html
.. _`Mac`: http://ray.readthedocs.io/en/latest/install-on-macosx.html


Example Program
---------------

+------------------------------------------------+----------------------------------------------+
| **Basic Python**                               | **Distributed with Ray**                     |
+------------------------------------------------+----------------------------------------------+
|.. code:: python                                |.. code-block:: python                        |
|                                                |                                              |
|  import time                                   |  import time                                 |
|                                                |  import ray                                  |
|                                                |                                              |
|                                                |  ray.init()                                  |
|                                                |                                              |
|                                                |  @ray.remote                                 |
|  def f():                                      |  def f():                                    |
|      time.sleep(1)                             |      time.sleep(1)                           |
|      return 1                                  |      return 1                                |
|                                                |                                              |
|  # Execute f serially.                         |  # Execute f in parallel.                    |
|  results = [f() for i in range(4)]             |  object_ids = [f.remote() for i in range(4)] |
|                                                |  results = ray.get(object_ids)               |
+------------------------------------------------+----------------------------------------------+


More Information
----------------

- `Documentation`_
- `Tutorial`_
- `Blog`_
- `Ray HotOS paper`_

.. _`Documentation`: http://ray.readthedocs.io/en/latest/index.html
.. _`Tutorial`: https://github.com/ray-project/tutorial
.. _`Blog`: https://ray-project.github.io/
.. _`Ray HotOS paper`: https://arxiv.org/abs/1703.03924

Getting Involved
----------------

- Ask questions on our mailing list `ray-dev@googlegroups.com`_.
- Please report bugs by submitting a `GitHub issue`_.
- Submit contributions using `pull requests`_.

.. _`ray-dev@googlegroups.com`: https://groups.google.com/forum/#!forum/ray-dev
.. _`GitHub issue`: https://github.com/ray-project/ray/issues
.. _`pull requests`: https://github.com/ray-project/ray/pulls
S
Description
An open source framework that provides a simple, universal API for building distributed applications. Ray is packaged with RLlib, a scalable reinforcement learning library, and Tune, a scalable hyperparameter tuning library.
Readme Multiple Licenses 111 MiB
Languages
Python 56.6%
C++ 28.8%
Java 8.5%
TypeScript 1.7%
Starlark 1.4%
Other 2.8%