mirror of
https://github.com/vllm-project/vllm.git
synced 2026-08-13 01:08:14 +00:00
[KV Offload] Return None from lookup() for in-flight blocks (#41795)
Signed-off-by: Ronen Schaffer <[email protected]>
This commit is contained in:
@@ -163,9 +163,9 @@ def test_cpu_manager():
|
||||
),
|
||||
)
|
||||
|
||||
# lookup [1, 2] -> not ready
|
||||
assert cpu_manager.lookup(to_key(1), _EMPTY_REQ_CTX) is False
|
||||
assert cpu_manager.lookup(to_key(2), _EMPTY_REQ_CTX) is False
|
||||
# lookup [1, 2] -> write in-flight, not yet ready
|
||||
assert cpu_manager.lookup(to_key(1), _EMPTY_REQ_CTX) is None
|
||||
assert cpu_manager.lookup(to_key(2), _EMPTY_REQ_CTX) is None
|
||||
|
||||
# no events so far
|
||||
assert list(cpu_manager.take_events()) == []
|
||||
@@ -296,9 +296,9 @@ class TestARCPolicy:
|
||||
),
|
||||
)
|
||||
|
||||
# lookup [1, 2] -> not ready
|
||||
assert cpu_manager.lookup(to_key(1), _EMPTY_REQ_CTX) is False
|
||||
assert cpu_manager.lookup(to_key(2), _EMPTY_REQ_CTX) is False
|
||||
# lookup [1, 2] -> write in-flight, not yet ready
|
||||
assert cpu_manager.lookup(to_key(1), _EMPTY_REQ_CTX) is None
|
||||
assert cpu_manager.lookup(to_key(2), _EMPTY_REQ_CTX) is None
|
||||
|
||||
# no events so far
|
||||
assert list(cpu_manager.take_events()) == []
|
||||
|
||||
@@ -86,7 +86,11 @@ class CPUOffloadingManager(OffloadingManager):
|
||||
|
||||
def lookup(self, key: OffloadKey, req_context: ReqContext) -> bool | None:
|
||||
block = self._policy.get(key)
|
||||
return block is not None and block.is_ready
|
||||
if block is None:
|
||||
return False
|
||||
if not block.is_ready:
|
||||
return None # write in-flight; caller should retry
|
||||
return True
|
||||
|
||||
def prepare_load(
|
||||
self,
|
||||
|
||||
Reference in New Issue
Block a user