Sleep.
(self, level: int = 1)
| 526 | num_cancelled, len(session_ids)) |
| 527 | |
| 528 | async def sleep(self, level: int = 1): |
| 529 | """Sleep.""" |
| 530 | logger.info('PyTorch engine sleep requested: level=%s.', level) |
| 531 | # log sleep tags so we can resume at the right condition in wakeup. |
| 532 | self._sleeping_tags = _SLEEPING_TAGS.copy() |
| 533 | # block ADD_MESSAGE and ADD_SESSION |
| 534 | self._block_new_inputs() |
| 535 | if self._engine_loop is not None: |
| 536 | await self._engine_loop.drain_for_sleep() |
| 537 | logger.info('PyTorch engine loop drained for sleep.') |
| 538 | # cancel all remain sessions |
| 539 | self._cancel_and_end_all_sessions() |
| 540 | await self.executor.sleep(level) |
| 541 | logger.info('PyTorch engine entered sleep: level=%s, sleeping_tags=%s.', level, sorted(self._sleeping_tags)) |
| 542 | |
| 543 | def wakeup(self, tags: list[str] | None = None): |
| 544 | """Wakeup.""" |