A high-throughput and memory-efficient inference and serving engine for LLMs
Mirrored from https://github.com/tduncan-lum/Nvidia-Optimization-Stack---VLLM.git
Synced Nov 12, 12:15 UTC
[cpu][fix] Fix Arm CI tests (#29552)
Signed-off-by: Fadi Arafeh <fadi.arafeh@arm.com>
Fadi Arafeh committed
Nov 27, 2025 at 05:09 UTC
ecb1952378dda5c7a3a8d89cc6c2f1d806248b9f
1 file changed
+12
-14
.buildkite/scripts/hardware_ci/run-cpu-test-arm.sh
+12
-14
@@ -7,53 +7,51 @@ set -ex
7
# allow to bind to different cores
8
CORE_RANGE=${CORE_RANGE:-0-16}
9
OMP_CORE_RANGE=${OMP_CORE_RANGE:-0-16}
10
-NUMA_NODE=${NUMA_NODE:-0}
10
12
-export CMAKE_BUILD_PARALLEL_LEVEL=32
11
+export CMAKE_BUILD_PARALLEL_LEVEL=16
12
13
# Setup cleanup
14
remove_docker_container() {
15
set -e;
17
- docker rm -f cpu-test-"$NUMA_NODE" || true;
16
+ docker rm -f cpu-test || true;
17
}
18
trap remove_docker_container EXIT
19
remove_docker_container
20
21
# Try building the docker image
23
-numactl -C "$CORE_RANGE" -N "$NUMA_NODE" docker build --tag cpu-test-"$NUMA_NODE" --target vllm-test -f docker/Dockerfile.cpu .
22
+docker build --tag cpu-test --target vllm-test -f docker/Dockerfile.cpu .
23
25
-# Run the image, setting --shm-size=4g for tensor parallel.
26
-docker run -itd --cpuset-cpus="$CORE_RANGE" --cpuset-mems="$NUMA_NODE" --entrypoint /bin/bash -v ~/.cache/huggingface:/root/.cache/huggingface --privileged=true -e HF_TOKEN --env VLLM_CPU_KVCACHE_SPACE=16 --env VLLM_CPU_CI_ENV=1 -e E2E_OMP_THREADS="$OMP_CORE_RANGE" --shm-size=4g --name cpu-test-"$NUMA_NODE" cpu-test-"$NUMA_NODE"
24
+# Run the image
25
+docker run -itd --cpuset-cpus="$CORE_RANGE" --entrypoint /bin/bash -v ~/.cache/huggingface:/root/.cache/huggingface -e HF_TOKEN --env VLLM_CPU_KVCACHE_SPACE=16 --env VLLM_CPU_CI_ENV=1 -e E2E_OMP_THREADS="$OMP_CORE_RANGE" --shm-size=4g --name cpu-test cpu-test
26
27
function cpu_tests() {
28
set -e
30
- export NUMA_NODE=$2
29
32
- docker exec cpu-test-"$NUMA_NODE" bash -c "
30
+ docker exec cpu-test bash -c "
31
set -e
32
pip list"
33
34
# offline inference
37
- docker exec cpu-test-"$NUMA_NODE" bash -c "
35
+ docker exec cpu-test bash -c "
36
set -e
37
python3 examples/offline_inference/basic/generate.py --model facebook/opt-125m"
38
39
# Run kernel tests
42
- docker exec cpu-test-"$NUMA_NODE" bash -c "
40
+ docker exec cpu-test bash -c "
41
set -e
42
pytest -x -v -s tests/kernels/test_onednn.py
43
pytest -x -v -s tests/kernels/attention/test_cpu_attn.py"
44
45
# basic online serving
48
- docker exec cpu-test-"$NUMA_NODE" bash -c '
46
+ docker exec cpu-test bash -c '
47
set -e
50
- VLLM_CPU_OMP_THREADS_BIND=$E2E_OMP_THREADS vllm serve meta-llama/Llama-3.2-3B-Instruct --max-model-len 2048 &
48
+ VLLM_CPU_OMP_THREADS_BIND=$E2E_OMP_THREADS vllm serve Qwen/Qwen3-0.6B --max-model-len 2048 &
49
server_pid=$!
50
timeout 600 bash -c "until curl localhost:8000/v1/models; do sleep 1; done" || exit 1
51
vllm bench serve \
52
--backend vllm \
53
--dataset-name random \
56
- --model meta-llama/Llama-3.2-3B-Instruct \
54
+ --model Qwen/Qwen3-0.6B \
55
--num-prompts 20 \
56
--endpoint /v1/completions
57
kill -s SIGTERM $server_pid &'
@@ -61,4 +59,4 @@ function cpu_tests() {
59
60
# All of CPU tests are expected to be finished less than 40 mins.
61
export -f cpu_tests
64
-timeout 2h bash -c "cpu_tests $CORE_RANGE $NUMA_NODE"
62
+timeout 2h bash -c cpu_tests