Skip to content

Commit 2345c54

Browse files
author
wangzaijun
committed
fix
1 parent b01f213 commit 2345c54

File tree

7 files changed

+3
-108
lines changed

7 files changed

+3
-108
lines changed

lightllm/server/core/objs/atomic_array_lock.py

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
from multiprocessing import shared_memory
44
from lightllm.utils.log_utils import init_logger
55
from lightllm.utils.shm_utils import create_or_link_shm
6-
from lightllm.utils.auto_shm_cleanup import register_posix_shm_for_cleanup
76

87
logger = init_logger(__name__)
98

@@ -19,17 +18,6 @@ def __init__(self, lock_name: str, lock_num: int):
1918
self.shm.buf.cast("i")[index] = 0
2019
return
2120

22-
def _init_shm(self):
23-
try:
24-
shm = shared_memory.SharedMemory(name=self.lock_name, create=True, size=self.dest_size)
25-
register_posix_shm_for_cleanup(self.lock_name)
26-
logger.info(f"create lock shm {self.lock_name}")
27-
except:
28-
shm = shared_memory.SharedMemory(name=self.lock_name, create=False, size=self.dest_size)
29-
logger.info(f"link lock shm {self.lock_name}")
30-
self.shm = shm
31-
return
32-
3321
def get_lock_context(self, lock_index: int) -> "AtomicLockItem":
3422
assert lock_index < self.lock_num
3523
return AtomicLockItem(self, lock_index)

lightllm/server/core/objs/atomic_lock.py

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
from multiprocessing import shared_memory
44
from lightllm.utils.log_utils import init_logger
55
from lightllm.utils.shm_utils import create_or_link_shm
6-
from lightllm.utils.auto_shm_cleanup import register_posix_shm_for_cleanup
76

87
logger = init_logger(__name__)
98

@@ -17,17 +16,6 @@ def __init__(self, lock_name: str):
1716
self.shm.buf.cast("i")[0] = 0
1817
return
1918

20-
def _init_shm(self):
21-
try:
22-
shm = shared_memory.SharedMemory(name=self.lock_name, create=True, size=self.dest_size)
23-
logger.info(f"create lock shm {self.lock_name}")
24-
register_posix_shm_for_cleanup(self.lock_name)
25-
except:
26-
shm = shared_memory.SharedMemory(name=self.lock_name, create=False, size=self.dest_size)
27-
logger.info(f"link lock shm {self.lock_name}")
28-
self.shm = shm
29-
return
30-
3119
def __enter__(self):
3220
with atomics.atomicview(buffer=self.shm.buf, atype=atomics.INT) as a:
3321
while not a.cmpxchg_weak(0, 1):

lightllm/server/core/objs/rpc_shm.py

Lines changed: 2 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
from lightllm.utils.envs_utils import get_unique_server_name
77
from lightllm.utils.log_utils import init_logger
88
from lightllm.utils.shm_utils import create_or_link_shm
9-
from lightllm.utils.auto_shm_cleanup import register_posix_shm_for_cleanup
109

1110
logger = init_logger(__name__)
1211

@@ -21,13 +20,8 @@ def __init__(self):
2120

2221
def create_or_link_shm(self):
2322
self.shm = create_or_link_shm(self.name, LIGHTLLM_RPC_BYTE_SIZE)
24-
try:
25-
shm = shared_memory.SharedMemory(name=self.name, create=True, size=LIGHTLLM_RPC_BYTE_SIZE)
26-
register_posix_shm_for_cleanup(self.name)
27-
except:
28-
shm = shared_memory.SharedMemory(name=self.name, create=False, size=LIGHTLLM_RPC_BYTE_SIZE)
2923

30-
return shm
24+
return
3125

3226
def write_func_params(self, func_name, args):
3327
objs_bytes = pickle.dumps((func_name, args))
@@ -48,24 +42,6 @@ def __init__(self):
4842

4943
def create_or_link_shm(self):
5044
self.shm = create_or_link_shm(self.name, LIGHTLLM_RPC_RESULT_BYTE_SIZE)
51-
try:
52-
shm = shared_memory.SharedMemory(name=self.name, create=True, size=LIGHTLLM_RPC_RESULT_BYTE_SIZE)
53-
register_posix_shm_for_cleanup(self.name)
54-
except:
55-
shm = shared_memory.SharedMemory(name=self.name, create=False, size=LIGHTLLM_RPC_RESULT_BYTE_SIZE)
56-
57-
if shm.size != LIGHTLLM_RPC_RESULT_BYTE_SIZE:
58-
logger.warning(f"size not same, unlink shm {self.name} and create again")
59-
shm.close()
60-
shm.unlink()
61-
try:
62-
shm = shared_memory.SharedMemory(name=self.name, create=True, size=LIGHTLLM_RPC_RESULT_BYTE_SIZE)
63-
logger.info(f"create shm {self.name}")
64-
except:
65-
shm = shared_memory.SharedMemory(name=self.name, create=False, size=LIGHTLLM_RPC_RESULT_BYTE_SIZE)
66-
logger.info(f"link shm {self.name}")
67-
68-
self.shm = shm
6945
return
7046

7147
def write_func_result(self, func_name, ret):
@@ -92,17 +68,12 @@ def __init__(self, world_size):
9268

9369
def create_or_link_shm(self):
9470
self.shm = create_or_link_shm(self.name, self.dest_size)
95-
try:
96-
shm = shared_memory.SharedMemory(name=self.name, create=True, size=self.dest_size)
97-
register_posix_shm_for_cleanup(self.name)
98-
except:
99-
shm = shared_memory.SharedMemory(name=self.name, create=False, size=self.dest_size)
10071

10172
self.arr = np.ndarray(self.shape, dtype=self.dtype, buffer=self.shm.buf)
10273
self.arr[:] = 0
10374
self.arr0 = self.arr[0 : self.world_size]
10475
self.arr1 = self.arr[self.world_size : 2 * self.world_size]
105-
return shm
76+
return
10677

10778
def add_mark(self, tp_rank: int):
10879
self.arr0[tp_rank] += 1

lightllm/server/core/objs/shm_array.py

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import numpy as np
22
from multiprocessing import shared_memory
3-
from lightllm.utils.auto_shm_cleanup import register_posix_shm_for_cleanup
43
from lightllm.utils.log_utils import init_logger
54
from lightllm.utils.shm_utils import create_or_link_shm
65

@@ -19,25 +18,6 @@ def __init__(self, name, shape, dtype):
1918

2019
def create_shm(self):
2120
self.shm = create_or_link_shm(self.name, self.dest_size)
22-
try:
23-
shm = shared_memory.SharedMemory(name=self.name, create=True, size=self.dest_size)
24-
register_posix_shm_for_cleanup(self.name)
25-
except:
26-
shm = shared_memory.SharedMemory(name=self.name, create=False, size=self.dest_size)
27-
28-
if shm.size != self.dest_size:
29-
logger.warning(f"size not same, unlink shm {self.name} and create again")
30-
shm.close()
31-
shm.unlink()
32-
try:
33-
shm = shared_memory.SharedMemory(name=self.name, create=True, size=self.dest_size)
34-
logger.info(f"create shm {self.name}")
35-
register_posix_shm_for_cleanup(self.name)
36-
except:
37-
shm = shared_memory.SharedMemory(name=self.name, create=False, size=self.dest_size)
38-
logger.info(f"link shm {self.name}")
39-
40-
self.shm = shm # SharedMemory 对象一定要被持有,否则会被释放
4121
self.arr = np.ndarray(self.shape, dtype=self.dtype, buffer=self.shm.buf)
4222

4323
def link_shm(self):

lightllm/server/core/objs/shm_objs_io_buffer.py

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@
55
from lightllm.utils.envs_utils import get_unique_server_name
66
from lightllm.utils.log_utils import init_logger
77
from lightllm.utils.shm_utils import create_or_link_shm
8-
from lightllm.utils.auto_shm_cleanup import register_posix_shm_for_cleanup
9-
from multiprocessing import shared_memory
108

119
LIGHTLLM_REQS_BUFFER_BYTE_SIZE = int(os.getenv("LIGHTLLM_REQS_BUFFER_BYTE_SIZE", 64 * 1024 * 1024)) # 默认64M buf
1210

@@ -55,27 +53,6 @@ def read_obj(self):
5553

5654
def _create_or_link_shm(self):
5755
self.shm = create_or_link_shm(self.name, LIGHTLLM_REQS_BUFFER_BYTE_SIZE)
58-
try:
59-
shm = shared_memory.SharedMemory(name=self.name, create=True, size=LIGHTLLM_REQS_BUFFER_BYTE_SIZE)
60-
logger.info(f"create shm {self.name}")
61-
register_posix_shm_for_cleanup(self.name)
62-
except:
63-
shm = shared_memory.SharedMemory(name=self.name, create=False, size=LIGHTLLM_REQS_BUFFER_BYTE_SIZE)
64-
logger.info(f"link shm {self.name}")
65-
66-
if shm.size != LIGHTLLM_REQS_BUFFER_BYTE_SIZE:
67-
logger.warning(f"size not same, unlink shm {self.name} and create again")
68-
shm.close()
69-
shm.unlink()
70-
try:
71-
shm = shared_memory.SharedMemory(name=self.name, create=True, size=LIGHTLLM_REQS_BUFFER_BYTE_SIZE)
72-
logger.info(f"create shm {self.name}")
73-
register_posix_shm_for_cleanup(self.name)
74-
except:
75-
shm = shared_memory.SharedMemory(name=self.name, create=False, size=LIGHTLLM_REQS_BUFFER_BYTE_SIZE)
76-
logger.info(f"link shm {self.name}")
77-
78-
self.shm = shm
7956
self.int_view = self.shm.buf.cast("i")
8057
# 前4个字节是特殊的计数用途,router写入后,被各个推理进程在拿去所有数据后,减1后归0
8158
self.int_view[0] = 0

lightllm/server/core/objs/shm_req_manager.py

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
import numpy as np
33
from lightllm.utils.envs_utils import get_unique_server_name
44
from multiprocessing import shared_memory
5-
from lightllm.utils.auto_shm_cleanup import register_posix_shm_for_cleanup
65
from lightllm.utils.log_utils import init_logger
76
from .req import Req, ChunkedPrefillReq, TokenHealingReq
87
from .shm_array import ShmArray
@@ -54,14 +53,6 @@ def init_reqs_shm(self):
5453
def _init_reqs_shm(self):
5554
shm_name = f"{get_unique_server_name()}_req_shm_total"
5655
self.reqs_shm = create_or_link_shm(shm_name, self.req_shm_byte_size)
57-
try:
58-
shm = shared_memory.SharedMemory(name=shm_name, create=True, size=self.req_shm_byte_size)
59-
register_posix_shm_for_cleanup(shm_name)
60-
logger.info(f"create lock shm {shm_name}")
61-
except:
62-
shm = shared_memory.SharedMemory(name=shm_name, create=False, size=self.req_shm_byte_size)
63-
logger.info(f"link lock shm {shm_name}")
64-
self.reqs_shm = shm
6556
return
6657

6758
def init_to_req_objs(self):

lightllm/server/httpserver/manager.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -515,7 +515,7 @@ async def transfer_to_next_module(
515515
)
516516
return
517517

518-
if self.pd_mode == NodeRole.D:
518+
if self.pd_mode.is_D():
519519
# 在 D 模式下,不需要传输真的多模态参数,因为其已经被 P 处理好了
520520
self.send_to_router.send_pyobj(
521521
group_req_objs.to_group_req_index(),

0 commit comments

Comments
 (0)