Files
ray/protos/graph.proto
T
Robert Nishihara ba56b08474 Reintroduce passing arguments by value to remote functions. (#425)
* Reintroduce passing arguments by value to remote functions.

* Check size of arguments passed by value.

* Fix computation graph visualization.
2016-09-10 21:11:18 -07:00

43 lines
1.2 KiB
Protocol Buffer

syntax = "proto3";
message Arg {
uint64 objectid = 1; // The objectid for the argument.
string serialized_arg = 2; // A serialized representation of an argument passed by value.
}
message Task {
string name = 1; // Name of the function call. Must not be empty.
repeated Arg arg = 2; // List of object IDs of the arguments to the function.
repeated uint64 result = 3; // Object IDs for result
}
message Put {
uint64 objectid = 1; // The objectid for the object that was put
}
message Get {
uint64 objectid = 1; // The objectid for the object that is retrieved
}
// This is used internally by the scheduler. From the scheduler's perspective,
// the submission of tasks (via SubmitTask) and the submission of puts (via
// PutObj) look very similar, and so it is useful to be able to handle them
// together (for example in the computation graph).
message Operation {
Task task = 1;
Put put = 2;
Get get = 4;
uint64 creator_operationid = 3; // The id of the task that called this task or put.
}
message TaskStatus {
uint64 operationid = 1;
string function_name = 2;
string worker_address = 3;
string error_message = 4;
}
message CompGraph {
repeated Operation operation = 1;
}