mirror of
https://github.com/wassname/ray.git
synced 2026-06-29 06:08:03 +08:00
Option to disable profiling and task timeline (#10414)
This commit is contained in:
+14
-3
@@ -697,6 +697,14 @@ cdef void terminate_asyncio_thread() nogil:
|
||||
core_worker.destroy_event_loop_if_exists()
|
||||
|
||||
|
||||
# An empty profile event context to be used when the timeline is disabled.
|
||||
cdef class EmptyProfileEvent:
|
||||
def __enter__(self):
|
||||
pass
|
||||
|
||||
def __exit__(self, *args):
|
||||
pass
|
||||
|
||||
cdef class CoreWorker:
|
||||
|
||||
def __cinit__(self, worker_type, store_socket, raylet_socket,
|
||||
@@ -1172,9 +1180,12 @@ cdef class CoreWorker:
|
||||
return resources_dict
|
||||
|
||||
def profile_event(self, c_string event_type, object extra_data=None):
|
||||
return ProfileEvent.make(
|
||||
CCoreWorkerProcess.GetCoreWorker().CreateProfileEvent(event_type),
|
||||
extra_data)
|
||||
if RayConfig.instance().enable_timeline():
|
||||
return ProfileEvent.make(
|
||||
CCoreWorkerProcess.GetCoreWorker().CreateProfileEvent(
|
||||
event_type), extra_data)
|
||||
else:
|
||||
return EmptyProfileEvent()
|
||||
|
||||
def remove_actor_handle_reference(self, ActorID actor_id):
|
||||
cdef:
|
||||
|
||||
@@ -64,3 +64,5 @@ cdef extern from "ray/common/ray_config.h" nogil:
|
||||
uint32_t max_tasks_in_flight_per_worker() const
|
||||
|
||||
uint64_t metrics_report_interval_ms() const
|
||||
|
||||
c_bool enable_timeline() const
|
||||
|
||||
@@ -111,3 +111,7 @@ cdef class Config:
|
||||
@staticmethod
|
||||
def metrics_report_interval_ms():
|
||||
return RayConfig.instance().metrics_report_interval_ms()
|
||||
|
||||
@staticmethod
|
||||
def enable_timeline():
|
||||
return RayConfig.instance().enable_timeline()
|
||||
|
||||
Reference in New Issue
Block a user