| 67 | |
| 68 | |
| 69 | class _DummyResourceManager: |
| 70 | def __init__(self, max_num_seqs=2): |
| 71 | self.max_num_seqs = max_num_seqs |
| 72 | self.stop_flags = [False] * max_num_seqs |
| 73 | self.tasks_list = [None] * max_num_seqs |
| 74 | self.req_dict = {} |
| 75 | self.requests = {} |
| 76 | self.to_be_rescheduled_request_id_set = set() |
| 77 | self.to_be_aborted_req_id_set = set() |
| 78 | self.abort_req_ids_set = set() |
| 79 | self.recycled = [] |
| 80 | self.cached_tasks = [] |
| 81 | self.cleared = False |
| 82 | |
| 83 | def _recycle_block_tables(self, task): |
| 84 | self.recycled.append(task.request_id) |
| 85 | |
| 86 | def reschedule_preempt_task(self, request_id): |
| 87 | self.recycled.append(f"reschedule-{request_id}") |
| 88 | |
| 89 | def recycle_abort_task(self, request_id): |
| 90 | self.recycled.append(f"recycle-abort-{request_id}") |
| 91 | self.to_be_aborted_req_id_set.discard(request_id) |
| 92 | |
| 93 | def finish_requests_async(self, request_id): |
| 94 | self.recycled.append(f"finish-{request_id}") |
| 95 | |
| 96 | def total_block_number(self): |
| 97 | return 8 |
| 98 | |
| 99 | def available_batch(self): |
| 100 | return self.tasks_list.count(None) |
| 101 | |
| 102 | def info(self): |
| 103 | return "rm-info" |
| 104 | |
| 105 | def get_finished_req(self): |
| 106 | return [] |
| 107 | |
| 108 | def cache_output_tokens(self, task): |
| 109 | self.cached_tasks.append(task.request_id) |
| 110 | |
| 111 | def clear_data(self): |
| 112 | self.cleared = True |
| 113 | |
| 114 | |
| 115 | class _DummyQueue: |
no outgoing calls