unified management of environment variables for vlm cuda ipc transport (#14501)
This commit is contained in:
@@ -330,6 +330,11 @@ class Envs:
|
|||||||
SGLANG_RESIZE_RESAMPLE = EnvStr("")
|
SGLANG_RESIZE_RESAMPLE = EnvStr("")
|
||||||
SGLANG_MM_BUFFER_SIZE_MB = EnvInt(0)
|
SGLANG_MM_BUFFER_SIZE_MB = EnvInt(0)
|
||||||
|
|
||||||
|
# VLM Item CUDA IPC Transport
|
||||||
|
SGLANG_USE_CUDA_IPC_TRANSPORT=EnvBool(False)
|
||||||
|
SGLANG_MM_FEATURE_CACHE_MB = EnvInt(4 * 1024)
|
||||||
|
SGLANG_MM_ITEM_MEM_POOL_RECYCLE_INTERVAL_SEC = EnvFloat(0.05)
|
||||||
|
|
||||||
# Release & Resume Memory
|
# Release & Resume Memory
|
||||||
SGLANG_MEMORY_SAVER_CUDA_GRAPH = EnvBool(False)
|
SGLANG_MEMORY_SAVER_CUDA_GRAPH = EnvBool(False)
|
||||||
|
|
||||||
|
|||||||
@@ -12,15 +12,9 @@ import torch
|
|||||||
from PIL import Image
|
from PIL import Image
|
||||||
from transformers import BaseImageProcessorFast
|
from transformers import BaseImageProcessorFast
|
||||||
|
|
||||||
|
from sglang.srt.environ import envs
|
||||||
from sglang.srt.managers.schedule_batch import Modality, MultimodalDataItem
|
from sglang.srt.managers.schedule_batch import Modality, MultimodalDataItem
|
||||||
from sglang.srt.utils import (
|
from sglang.srt.utils import is_npu, load_audio, load_image, load_video, logger
|
||||||
get_bool_env_var,
|
|
||||||
is_npu,
|
|
||||||
load_audio,
|
|
||||||
load_image,
|
|
||||||
load_video,
|
|
||||||
logger,
|
|
||||||
)
|
|
||||||
from sglang.srt.utils.cuda_ipc_transport_utils import (
|
from sglang.srt.utils.cuda_ipc_transport_utils import (
|
||||||
MM_FEATURE_CACHE_SIZE,
|
MM_FEATURE_CACHE_SIZE,
|
||||||
MM_ITEM_MEMORY_POOL_RECYCLE_INTERVAL,
|
MM_ITEM_MEMORY_POOL_RECYCLE_INTERVAL,
|
||||||
@@ -30,7 +24,7 @@ from sglang.srt.utils.cuda_ipc_transport_utils import (
|
|||||||
|
|
||||||
_is_npu = is_npu()
|
_is_npu = is_npu()
|
||||||
|
|
||||||
SGL_USE_CUDA_IPC = get_bool_env_var("SGLANG_USE_CUDA_IPC_TRANSPORT")
|
SGL_USE_CUDA_IPC = envs.SGLANG_USE_CUDA_IPC_TRANSPORT.get()
|
||||||
|
|
||||||
|
|
||||||
@dataclasses.dataclass
|
@dataclasses.dataclass
|
||||||
|
|||||||
@@ -8,21 +8,15 @@ from typing import Tuple
|
|||||||
import numpy as np
|
import numpy as np
|
||||||
import torch
|
import torch
|
||||||
|
|
||||||
|
from sglang.srt.environ import envs
|
||||||
from sglang.srt.server_args import get_global_server_args
|
from sglang.srt.server_args import get_global_server_args
|
||||||
from sglang.srt.utils import get_float_env_var, get_int_env_var
|
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
MM_FEATURE_CACHE_SIZE = (
|
MM_FEATURE_CACHE_SIZE = envs.SGLANG_MM_FEATURE_CACHE_MB.get() * 1024 * 1024
|
||||||
4 * 1024 * 1024 * 1024
|
|
||||||
if not get_int_env_var("SGLANG_MM_FEATURE_CACHE_MB")
|
|
||||||
else get_int_env_var("SGLANG_MM_FEATURE_CACHE_MB") * 1024 * 1024
|
|
||||||
)
|
|
||||||
|
|
||||||
MM_ITEM_MEMORY_POOL_RECYCLE_INTERVAL = (
|
MM_ITEM_MEMORY_POOL_RECYCLE_INTERVAL = (
|
||||||
0.05
|
envs.SGLANG_MM_ITEM_MEM_POOL_RECYCLE_INTERVAL_SEC.get()
|
||||||
if not get_float_env_var("SGLANG_MM_ITEM_MEM_POOL_RECYCLE_INTERVAL_SEC")
|
|
||||||
else get_float_env_var("SGLANG_MM_ITEM_MEM_POOL_RECYCLE_INTERVAL_SEC")
|
|
||||||
)
|
)
|
||||||
|
|
||||||
SHM_LOCK_FILE = "/tmp/shm_wr_lock.lock"
|
SHM_LOCK_FILE = "/tmp/shm_wr_lock.lock"
|
||||||
|
|||||||
Reference in New Issue
Block a user