Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
 
 

README.rst

Outline

Quick start

Configuration

Ray will read your configurations in the following order:

  • Java system properties: e.g., -Dray.run-mode=SINGLE_PROCESS.
  • A ray.conf file in the classpath: example.
  • Customise your own ray.conf path using system property -Dray.config=/path/to/ray.conf

For all available config items and default values, see this file.

Starting Ray

Ray.init();

Read and write remote objects

Each remote object is considered a RayObject<T> where T is the type for this object. You can use Ray.put and RayObject<T>.get to write and read the objects.

Integer x = 1;
RayObject<Integer> obj = Ray.put(x);
Integer x1 = obj.get();
assert (x.equals(x1));

Remote functions

Here is an ordinary java code piece for composing hello world example.

public class ExampleClass {
    public static void main(String[] args) {
        String str1 = add("hello", "world");
        String str = add(str1, "example");
        System.out.println(str);
    }
    public static String add(String a, String b) {
        return a + " " + b;
    }
}

We use @RayRemote to indicate that a function is remote, and use Ray.call to invoke it. The result from the latter is a RayObject<R> where R is the return type of the target function. The following shows the changed example with add annotated, and correspondent calls executed on remote machines.

public class ExampleClass {
    public static void main(String[] args) {
        Ray.init();
        RayObject<String> objStr1 = Ray.call(ExampleClass::add, "hello", "world");
        RayObject<String> objStr2 = Ray.call(ExampleClass::add, objStr1, "example");
        String str = objStr2.get();
        System.out.println(str);
    }

    @RayRemote
    public static String add(String a, String b) {
        return a + " " + b;
    }
}

More information

Morty Proxy This is a proxified and sanitized view of the page, visit original site.