vllm.core.interfaces
AllocStatus
¶
Bases: Enum
Result for BlockSpaceManager.can_allocate
- Ok: seq_group can be allocated now.
- Later: seq_group cannot be allocated. The capacity of allocator is larger than seq_group required.
- Never: seq_group can never be allocated. The seq_group is too large to allocated in GPU.
Source code in vllm/core/interfaces.py
BlockSpaceManager
¶
Bases: ABC
Source code in vllm/core/interfaces.py
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 |
|
access_all_blocks_in_seq
abstractmethod
¶
allocate
abstractmethod
¶
allocate(seq_group: SequenceGroup) -> None
append_slots
abstractmethod
¶
can_allocate
abstractmethod
¶
can_allocate(
seq_group: SequenceGroup, num_lookahead_slots: int = 0
) -> AllocStatus
can_append_slots
abstractmethod
¶
can_append_slots(
seq_group: SequenceGroup, num_lookahead_slots: int
) -> bool
can_swap_in
abstractmethod
¶
can_swap_in(
seq_group: SequenceGroup, num_lookahead_slots: int
) -> AllocStatus
can_swap_out
abstractmethod
¶
can_swap_out(seq_group: SequenceGroup) -> bool
fork
abstractmethod
¶
get_block_space_manager_class
staticmethod
¶
get_block_space_manager_class(version: str)
Source code in vllm/core/interfaces.py
get_block_table
abstractmethod
¶
get_common_computed_block_ids
abstractmethod
¶
get_num_cached_tokens
abstractmethod
¶
get_prefix_cache_hit_rate
abstractmethod
¶
mark_blocks_as_computed
abstractmethod
¶
mark_blocks_as_computed(
seq_group: SequenceGroup, token_chunk_size: int
)
remove_seq_from_computed_blocks_tracker
abstractmethod
¶
remove_seq_from_computed_blocks_tracker(
seq: Sequence,
) -> None