From 9c5fdbb63cbb9c81d6f649591f8725aa975fd4dd Mon Sep 17 00:00:00 2001 From: Robert Nishihara Date: Thu, 28 Feb 2019 00:32:07 -0800 Subject: [PATCH] Release gil when doing ray.wait. (#4190) --- python/ray/_raylet.pyx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/python/ray/_raylet.pyx b/python/ray/_raylet.pyx index ca20eee99..b33165174 100644 --- a/python/ray/_raylet.pyx +++ b/python/ray/_raylet.pyx @@ -263,9 +263,11 @@ cdef class RayletClient: WaitResultPair result c_vector[CObjectID] wait_ids wait_ids = ObjectIDsToVector(object_ids) - check_status(self.client.get().Wait(wait_ids, num_returns, - timeout_milliseconds, wait_local, - current_task_id.data, &result)) + with nogil: + check_status(self.client.get().Wait(wait_ids, num_returns, + timeout_milliseconds, + wait_local, + current_task_id.data, &result)) return (VectorToObjectIDs(result.first), VectorToObjectIDs(result.second))