Route C: replace PyTorch's cudaMalloc/cudaFree with CCCL CUB's CachingDeviceAllocator via LD_PRELOAD. Eliminates driver-level allocation overhead by reusing freed GPU memory from a bin-based cache. Based on cccl_upstream/cub/cub/util_allocator.cuh (901 lines). Self-contained .so with no CCCL header dependencies at compile time. Files: - cccl_preload_allocator.cu: the allocator (405 lines) - build_cccl_preload_allocator.sh: build script (corex clang++ or g++ fallback) - test_cccl_preload.sh: smoke test suite for BI-V100 - patch_ops.sh: build during docker build - computility-run.yaml: LD_PRELOAD env var for runtime Config via env: CCCL_ALLOC_BIN_GROWTH=8, MIN_BIN=3, MAX_BIN=13, MAX_CACHED_MB=4096 Test on real machine: cd qwen3_6_scripts && bash test_cccl_preload.sh
62 lines
1.4 KiB
YAML
62 lines
1.4 KiB
YAML
concurrency: 1
|
|
command:
|
|
- python3
|
|
- -m
|
|
- vllm.entrypoints.openai.api_server
|
|
- --model
|
|
- /model
|
|
- --served-model-name
|
|
- llm
|
|
- --max-model-len
|
|
- '80000'
|
|
- --gpu-memory-utilization
|
|
- '0.90'
|
|
- --trust-remote-code
|
|
- -tp
|
|
- '4'
|
|
- --max-num-seqs
|
|
- '2'
|
|
- --disable-log-requests
|
|
- --disable-frontend-multiprocessing
|
|
- --max-num-batched-tokens
|
|
- '8192'
|
|
- --enable-chunked-prefill
|
|
- --max-seq-len-to-capture
|
|
- '32768'
|
|
- --enable-auto-tool-choice
|
|
- --tool-call-parser
|
|
- qwen3_coder
|
|
- --reasoning-parser
|
|
- qwen3
|
|
- --enable-prefix-caching
|
|
- --enforce-eager
|
|
- --dtype
|
|
- half
|
|
env:
|
|
- name: VLLM_ENGINE_ITERATION_TIMEOUT_S
|
|
value: 3600
|
|
- name: BI100_MOE_COREX_DIRECT_ROUTED
|
|
value: 1
|
|
- name: BI100_GDN_COREX_PACKED_DECODE
|
|
value: 1
|
|
- name: BI100_HYBRID_KV_ACCOUNTING
|
|
value: full_attention
|
|
- name: BI100_GDN_CACHE_POLICY
|
|
value: admission64
|
|
- name: BI100_GDN_RESTORE_MODE
|
|
value: hybrid64
|
|
- name: BI100_MOE_COREX_TOPK_SOFTMAX
|
|
value: '1'
|
|
- name: PYTORCH_CUDA_ALLOC_CONF
|
|
value: expandable_segments:True
|
|
- name: LD_PRELOAD
|
|
value: /workspace/qwen3_6_scripts/cccl_preload_allocator.so
|
|
- name: CCCL_ALLOC_BIN_GROWTH
|
|
value: '8'
|
|
- name: CCCL_ALLOC_MIN_BIN
|
|
value: '3'
|
|
- name: CCCL_ALLOC_MAX_BIN
|
|
value: '13'
|
|
- name: CCCL_ALLOC_MAX_CACHED_MB
|
|
value: '4096'
|