Beispiel #1
0
    def process_to_celery(self, task: Task, queue: str, computer: dict):
        r = execute.apply_async((task.id, ), queue=queue)
        task.status = TaskStatus.Queued.value
        task.computer_assigned = computer['name']
        task.celery_id = r.id

        if task.gpu_assigned is not None:
            for g in map(int, task.gpu_assigned.split(',')):
                computer['gpu'][g] = task.id
            computer['cpu'] -= task.cpu
            computer['memory'] -= task.memory * 1024

        self.provider.update()
Beispiel #2
0
    def process_to_celery(self, task: Task, queue: str, computer: dict):
        r = execute.apply_async((task.id, ), queue=queue, retry=False)
        task.status = TaskStatus.Queued.value
        task.computer_assigned = computer['name']
        task.celery_id = r.id

        if task.gpu_assigned is not None:
            for g in map(int, task.gpu_assigned.split(',')):
                computer['gpu'][g] = task.id
            computer['cpu'] -= task.cpu
            computer['memory'] -= task.memory * 1024

        self.logger.info(
            f'Sent task={task.id} to celery. Queue = {queue} '
            f'Task status = {task.status} Celery_id = {r.id}',
            ComponentType.Supervisor)
        self.provider.update()