mirror of
https://github.com/wassname/ray.git
synced 2026-07-07 21:50:14 +08:00
Move task to common module and add checks in getter methods (#5147)
This commit is contained in:
@@ -100,8 +100,8 @@ cdef extern from "ray/protobuf/common.pb.h" namespace "Language" nogil:
|
||||
cdef CLanguage LANGUAGE_JAVA "Language::JAVA"
|
||||
|
||||
|
||||
cdef extern from "ray/raylet/scheduling_resources.h" \
|
||||
namespace "ray::raylet" nogil:
|
||||
cdef extern from "ray/common/task/scheduling_resources.h" \
|
||||
namespace "ray" nogil:
|
||||
cdef cppclass ResourceSet "ResourceSet":
|
||||
ResourceSet()
|
||||
ResourceSet(const unordered_map[c_string, double] &resource_map)
|
||||
|
||||
@@ -35,8 +35,8 @@ cdef extern from "ray/protobuf/gcs.pb.h" namespace "ray::rpc" nogil:
|
||||
const c_string &SerializeAsString()
|
||||
|
||||
|
||||
cdef extern from "ray/raylet/task_spec.h" namespace "ray::raylet" nogil:
|
||||
cdef cppclass CTaskSpec "ray::raylet::TaskSpecification":
|
||||
cdef extern from "ray/common/task/task_spec.h" namespace "ray" nogil:
|
||||
cdef cppclass CTaskSpec "ray::TaskSpecification":
|
||||
CTaskSpec(const RpcTaskSpec message)
|
||||
CTaskSpec(const c_string &serialized_binary)
|
||||
const RpcTaskSpec &GetMessage()
|
||||
@@ -61,7 +61,7 @@ cdef extern from "ray/raylet/task_spec.h" namespace "ray::raylet" nogil:
|
||||
const ResourceSet GetRequiredPlacementResources() const
|
||||
c_bool IsDriverTask() const
|
||||
CLanguage GetLanguage() const
|
||||
|
||||
c_bool IsNormalTask() const
|
||||
c_bool IsActorCreationTask() const
|
||||
c_bool IsActorTask() const
|
||||
CActorID ActorCreationId() const
|
||||
@@ -74,38 +74,38 @@ cdef extern from "ray/raylet/task_spec.h" namespace "ray::raylet" nogil:
|
||||
c_vector[CActorHandleID] NewActorHandles() const
|
||||
|
||||
|
||||
cdef extern from "ray/raylet/task_util.h" namespace "ray::raylet" nogil:
|
||||
cdef cppclass TaskSpecBuilder "ray::raylet::TaskSpecBuilder":
|
||||
cdef extern from "ray/common/task/task_util.h" namespace "ray" nogil:
|
||||
cdef cppclass TaskSpecBuilder "ray::TaskSpecBuilder":
|
||||
TaskSpecBuilder &SetCommonTaskSpec(
|
||||
const CLanguage &language, const c_vector[c_string] &function_descriptor,
|
||||
const CJobID &job_id, const CTaskID &parent_task_id, uint64_t parent_counter,
|
||||
uint64_t num_returns, const unordered_map[c_string, double] &required_resources,
|
||||
const unordered_map[c_string, double] &required_placement_resources);
|
||||
const unordered_map[c_string, double] &required_placement_resources)
|
||||
|
||||
TaskSpecBuilder &AddByRefArg(const CObjectID &arg_id);
|
||||
TaskSpecBuilder &AddByRefArg(const CObjectID &arg_id)
|
||||
|
||||
TaskSpecBuilder &AddByValueArg(const c_string &data);
|
||||
TaskSpecBuilder &AddByValueArg(const c_string &data)
|
||||
|
||||
TaskSpecBuilder &SetActorCreationTaskSpec(
|
||||
const CActorID &actor_id, uint64_t max_reconstructions,
|
||||
const c_vector[c_string] &dynamic_worker_options);
|
||||
const c_vector[c_string] &dynamic_worker_options)
|
||||
|
||||
TaskSpecBuilder &SetActorTaskSpec(
|
||||
const CActorID &actor_id, const CActorHandleID &actor_handle_id,
|
||||
const CObjectID &actor_creation_dummy_object_id, uint64_t actor_counter,
|
||||
const c_vector[CActorHandleID] &new_handle_ids);
|
||||
const c_vector[CActorHandleID] &new_handle_ids)
|
||||
|
||||
RpcTaskSpec GetMessage();
|
||||
RpcTaskSpec GetMessage()
|
||||
|
||||
|
||||
cdef extern from "ray/raylet/task_execution_spec.h" namespace "ray::raylet" nogil:
|
||||
cdef cppclass CTaskExecutionSpec "ray::raylet::TaskExecutionSpecification":
|
||||
cdef extern from "ray/common/task/task_execution_spec.h" namespace "ray" nogil:
|
||||
cdef cppclass CTaskExecutionSpec "ray::TaskExecutionSpecification":
|
||||
CTaskExecutionSpec(RpcTaskExecutionSpec message)
|
||||
CTaskExecutionSpec(const c_string &serialized_binary)
|
||||
const RpcTaskExecutionSpec &GetMessage()
|
||||
c_vector[CObjectID] ExecutionDependencies()
|
||||
uint64_t NumForwards()
|
||||
|
||||
cdef extern from "ray/raylet/task.h" namespace "ray::raylet" nogil:
|
||||
cdef cppclass CTask "ray::raylet::Task":
|
||||
cdef extern from "ray/common/task/task.h" namespace "ray" nogil:
|
||||
cdef cppclass CTask "ray::Task":
|
||||
CTask(CTaskSpec task_spec, CTaskExecutionSpec task_execution_spec)
|
||||
|
||||
@@ -15,7 +15,7 @@ from ray.includes.task cimport (
|
||||
|
||||
|
||||
cdef class TaskSpec:
|
||||
"""Cython wrapper class of C++ `ray::raylet::TaskSpecification`."""
|
||||
"""Cython wrapper class of C++ `ray::TaskSpecification`."""
|
||||
cdef:
|
||||
unique_ptr[CTaskSpec] task_spec
|
||||
|
||||
@@ -121,6 +121,18 @@ cdef class TaskSpec:
|
||||
"""
|
||||
return self.task_spec.get().Serialize()
|
||||
|
||||
def is_normal_task(self):
|
||||
"""Whether this task is a normal task."""
|
||||
return self.task_spec.get().IsNormalTask()
|
||||
|
||||
def is_actor_task(self):
|
||||
"""Whether this task is an actor task."""
|
||||
return self.task_spec.get().IsActorTask()
|
||||
|
||||
def is_actor_creation_task(self):
|
||||
"""Whether this task is an actor creation task."""
|
||||
return self.task_spec.get().IsActorCreationTask()
|
||||
|
||||
def job_id(self):
|
||||
"""Return the job ID for this task."""
|
||||
return JobID(self.task_spec.get().JobId().Binary())
|
||||
@@ -206,24 +218,32 @@ cdef class TaskSpec:
|
||||
|
||||
def actor_creation_id(self):
|
||||
"""Return the actor creation ID for the task."""
|
||||
if not self.is_actor_creation_task():
|
||||
return ActorID.nil()
|
||||
return ActorID(self.task_spec.get().ActorCreationId().Binary())
|
||||
|
||||
def actor_creation_dummy_object_id(self):
|
||||
"""Return the actor creation dummy object ID for the task."""
|
||||
if not self.is_actor_task():
|
||||
return ObjectID.nil()
|
||||
return ObjectID(
|
||||
self.task_spec.get().ActorCreationDummyObjectId().Binary())
|
||||
|
||||
def actor_id(self):
|
||||
"""Return the actor ID for this task."""
|
||||
if not self.is_actor_task():
|
||||
return ActorID.nil()
|
||||
return ActorID(self.task_spec.get().ActorId().Binary())
|
||||
|
||||
def actor_counter(self):
|
||||
"""Return the actor counter for this task."""
|
||||
if not self.is_actor_task():
|
||||
return 0
|
||||
return self.task_spec.get().ActorCounter()
|
||||
|
||||
|
||||
cdef class TaskExecutionSpec:
|
||||
"""Cython wrapper class of C++ `ray::raylet::TaskExecutionSpecification`."""
|
||||
"""Cython wrapper class of C++ `ray::TaskExecutionSpecification`."""
|
||||
cdef:
|
||||
unique_ptr[CTaskExecutionSpec] c_spec
|
||||
|
||||
@@ -259,7 +279,7 @@ cdef class TaskExecutionSpec:
|
||||
|
||||
|
||||
cdef class Task:
|
||||
"""Cython wrapper class of C++ `ray::raylet::Task`."""
|
||||
"""Cython wrapper class of C++ `ray::Task`."""
|
||||
cdef:
|
||||
unique_ptr[CTask] c_task
|
||||
|
||||
|
||||
Reference in New Issue
Block a user