Как выполнять тесты производительности с помощью vLLM на Dell Pro Max 16 Plus с платой Qualcomm Inference Card в Linux

Summary: Узнайте, как выполнять эталонные тесты с помощью vLLM на Dell Pro Max 16 Plus с платой Qualcomm Inference Card в ОС Linux.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

  1. Скачивание контейнера программы Qualcomm (QPC)
    Скачать готовую модель ИИ QPC из каталога предварительно скомпилированных моделей Zentree - Каталог предварительно скомпилированных моделей Zentree-Qualcomm для облачных ускорителей Эта гиперссылка позволяет перейти на сайт за пределами Dell Technologies.ИИ
    Примечание. Чтобы убедиться, что QPC совместим с Dell Pro Max, выполните поиск SoCs / Tensor slicing = 2
    tar -xzvf ~/Downloads/qpc_name.tar.gz
  2. Обслуживание большой языковой модели (LLM) с помощью vLLM.
    Откройте терминал и выполните следующую команду (замените <QPC_DIR>, <MODEL_ID>, <CTX_LEN>, <BATCH_SIZE>и <PREFILL_SEQ_LEN>).
    Примечание. Что <MODEL_ID>, <CTX_LEN>, <BATCH_SIZE>и <PREFILL_SEQ_LEN> зависит от конфигурации компиляции QPC. Для QPC, созданных и размещенных Zentree, эти значения задокументированы на их веб-сайте. Сопоставление выглядит следующим образом: <BATCH_SIZE> с параметром «Полный размер партии», <CTX_LEN> с "Context Length (CL)," и <PREFILL_SEQ_LEN> с "Chunking Prompt Length" из таблицы Zentree model QPC Configurations. Также обратите внимание, что некоторые модели требуют, чтобы вы настроили токен Huggingface, который вам нужно будет передать в контейнер для доступа.
    
        docker run --rm -it \
    
        --name qaic-bench
    
        --device=/dev/accel/accel1 \
    
        --device=/dev/accel/accel2 \
    
        --network host \
    
        --ulimit nofile=1048576 \
    
        -e OMP_NUM_THREADS=8 \
    
        -e HF_TOKEN=$HF_TOKEN \
    
        -v ~/Downloads/<QPC_DIR>:/root/qpc \
    
        ghcr.io/quic/cloud_ai_inference_ubuntu24:1.20.6.0 \
    
        /opt/vllm-env/bin/vllm serve <MODEL_ID> \
    
        --max-num-seq <BATCH_SIZE> \
    
        --max-model-len <CTX_LEN> \
    
        --max-seq_len-to-capture <PREFILL_SEQ_LEN> \
    
        --device qaic \
    
        --device-group 0,1 \
    
        --quantization mxfp6 \
    
        --kv-cache-dtype mxint8 \
    
        --override-qaic-config "qpc_path=/root/qpc/qpc"
     
    Примечание. Все QPC для Dell Pro Max, размещенные на сервере Zentree, содержат num_devices=2, но если модель построена с num_devices=1Затем --device-group должно быть установлено в 0 или 1.

    Все QPC для Dell Pro Max, размещенные на сервере Zentree, содержат mxfp6_matmul=true, но если модель построена с mxfp6_matmul=falseЗатем --quantization mxfp6 должны быть отброшены.

    Все QPC для Dell Pro Max, размещенные на сервере Zentree, содержат mxint8_kv_cache=true, но если модель построена с mxint8_kv_cache=falseЗатем --kv-cache-dtype mxint8 должны быть отброшены.

    Как только появится сообщение «Запуск приложения завершен», модель готова к формированию вывода.

    Чтобы остановить vLLM (выгрузить модель и закрыть контейнер), нажмите Ctrl+C в этом окне терминала . Разгрузка более крупных моделей может занять до 1 минуты.

    Справочные материалы: Docker — руководство Эта гиперссылка позволяет перейти на сайт за пределами Dell Technologies.пользователя Qualcomm Cloud AI SDK и vLLM — руководство Эта гиперссылка позволяет перейти на сайт за пределами Dell Technologies.пользователя Qualcomm Cloud AI SDK
     
  3. Выполните сравнительную оценку.
    Откройте новый терминал и выполните следующую команду (замените <MODEL_ID> и <BATCH_SIZE> в соответствии с моделью, показанной на шаге 2). Значения для num-prompts, random-input-lenи random-output-len можно отрегулировать по желанию.
    
        docker exec -it qaic-bench \
    
        /opt/vllm-env/bin/vllm bench serve \
    
        --model  \
    
        --num-prompts 25 \
    
        --max-concurrency  \
    
        --random-input-len 256 \
    
        --random-output-len 256

    После завершения тестирования производительность vLLM печатает полученные метрики.
     
    Примечание. Чтобы рассчитать пропускную способность (токенов в секунду или TPS) только для этапа декодирования (генерации токенов), исключая этап предварительного заполнения (обработки запросов), можно рассчитать TPS, используя 1000 ÷ среднего TPOT (мс).

    Например, среднее значение TPOT 20 мс соответствует пропускной способности декодирования 50 токенов в секунду (TPS).

    Рабочий пример:
    1. Скачайте предварительно собранный QPC Qwen3-30B-A3B-Instruct-2507.
      Для этого сборника схем мы используем предварительно созданный QPC для Qwen3 30B A3B Instruct 2507 Эта гиперссылка позволяет перейти на сайт за пределами Dell Technologies. .
      Доступны 2 предварительно собранные модели, которые работают на плате логического вывода AI100, поддерживающей 2 SoC - одну с длиной контекста 4K, а другую с длиной контекста 8K. В этом сценарии используется модель длины контекста 2 SoC и 4K.
      Выполните следующие действия, чтобы скачать и извлечь QPC из архива. Обратите внимание, что если у вас еще не установлен curl, вы можете установить его в терминал с помощью команды (sudo apt install curl).
      
              # Use existing Downloads folder for model downloads
      
              cd ~/Downloads
      
              # Download QPC archive from Zentree as qwen3-30b-a3b-instruct-2507.tar.gz
      
              curl -fSL https://dc00tk1pxen80.cloudfront.net/SDK1.20.4/Qwen/Qwen3-30B-A3B-Instruct-2507/
      
              Qwen3-30B-A3B-Instruct-2507_qpc_16cores_1pl_4096cl_1bs_2devices_mxfp6_mxint8.tar.gz -o qwen3-30b-a3b-instruct-2507.tar.gz
      
              # Extract QPC archive
      
              tar -xzvf qwen3-30b-a3b-instruct-2507.tar.gz
      
              # Rename extracted directory to qwen3-30b-a3b-instruct-2507-qpc
      
              mv $(tar -tzf qwen3-30b-a3b-instruct-2507.tar.gz | head -1 | cut -f1 -d"/") qwen3-30b-a3b-instruct-2507-qpc
    2. Обслуживаем модель Qwen3:30B с помощью vLLM.
      Откройте терминал и выполните следующую команду. Обратите внимание на общий рецепт выше, что <QPC_DIR> отображается с помощью команды "-v ~/Downloads/qwen3-30b-a3b-instruct-2507-qpc:/root/qpc" в каталог QPC, в который загружена модель, <MODEL_ID> сопоставляется с "Qwen/Qwen3-30B-A3B-Instruct-2507," <CTX_LEN> сопоставлен с 4096, <BATCH_SIZE> сопоставляется с 1, а <PREFILL_SEQ_LEN> сопоставлено с 1 (все со страницы модели Zentree для модели Qwen3:30B с использованием длины контекста 4K).

      Обратите внимание, что если вы ранее не использовали эту версию контейнера Docker AI100, он получает ~14 ГБ перед открытием контейнера Docker.
      
              docker run --rm -it \
      
              --name qaic-bench \
      
              --device=/dev/accel/accel1 \
      
              --device=/dev/accel/accel2 \
      
              --network host \
      
              --ulimit nofile=1048576 \
      
              -e OMP_NUM_THREADS=8 \
      
              -v ~/Downloads/qwen3-30b-a3b-instruct-2507-qpc:/root/qpc \
      
              ghcr.io/quic/cloud_ai_inference_ubuntu24:1.20.6.0 \
      
              /opt/vllm-env/bin/vllm serve Qwen/Qwen3-30B-A3B-Instruct-2507 \
      
              --max-num-seq 1 \
      
              --max-model-len 4096 \
      
              --max-seq_len-to-capture 1 \
      
              --device qaic \
      
              --device-group 0,1 \
      
              --quantization mxfp6 \
      
              --kv-cache-dtype mxint8 \
      
              --override-qaic-config "qpc_path=/root/qpc/qpc"

      Модель готова к логическому выводу, как только вы увидите сообщение «Application startup complete».
       
      Примечание. Чтобы остановить vLLM (выгрузку модели и закрытие контейнера), нажмите Ctrl+C в этом окне терминала. Разгрузка более крупных моделей может занять до 1 минуты.

      Ссылки: Docker — руководство Эта гиперссылка позволяет перейти на сайт за пределами Dell Technologies.пользователя Qualcomm Cloud AI SDK и vLLM — руководство Эта гиперссылка позволяет перейти на сайт за пределами Dell Technologies.пользователя Qualcomm Cloud AI SDK

       
    3. Выполните сравнительную оценку.
      Откройте новый терминал и выполните следующую команду (замените <MODEL_ID> Для --model и <BATCH_SIZE> Для --max-concurrency в соответствии с моделью, показанной на шаге 2). Значения для num-prompts, random-input-lenи random-output-len можно отрегулировать по желанию.
      
              docker exec -it qaic-bench \
      
              /opt/vllm-env/bin/vllm bench serve \
      
              --model Qwen/Qwen3-30B-A3B-Instruct-2507 \
      
              --num-prompts 25 \
      
              --max-concurrency 1 \
      
              --random-input-len 256 \
      
              --random-output-len 256
    4. Захват выходных данных выборки.
      Пример выходных данных для обслуживания Qwen3:30B с использованием vLLM.
      Пример выходных данных для vLLM:
      
              dell@dell:~/Downloads/qwen3-30b-a3b-instruct-2507-qpc$ docker run --rm -it \
      
              --name qaic-bench \
      
              --device=/dev/accel/accel1 \
      
              --device=/dev/accel/accel2 \
      
              --network host \
      
              --ulimit nofile=1048576 \
      
              -e OMP_NUM_THREADS=8 \
      
              -v ~/Downloads/qwen3-30b-a3b-instruct-2507-qpc:/root/qpc \
      
              ghcr.io/quic/cloud_ai_inference_ubuntu24:1.20.6.0 \
      
              /opt/vllm-env/bin/vllm serve Qwen/Qwen3-30B-A3B-Instruct-2507 \
      
              --max-num-seq 1 \
      
              --max-model-len 4096 \
      
              --max-seq_len-to-capture 1 \
      
              --device qaic \
      
              --device-group 0,1 \
      
              --quantization mxfp6 \
      
              --kv-cache-dtype mxint8 \
      
              --override-qaic-config "qpc_path=/root/qpc/qpc"
      
              loading /opt/qti-aic/dev/lib/x86_64/libQAic.so
      
              INFO 01-15 17:46:28 [__init__.py:269] Automatically detected platform qaic.
      
      
              
              INFO 01-15 17:46:30 [api_server.py:1043] vLLM API server version 0.8.6.dev0+gba41cc90e.d20251229
      
      
      
              INFO 01-15 17:46:30 [api_server.py:1044] args: Namespace(subparser='serve', model_tag='Qwen/Qwen3-30B-A3B-Instruct-2507', config='', host=None, port=8000, uvicorn_log_level='info', disable_uvicorn_access_log=False, allow_credentials=False, allowed_origins=['*'], allowed_methods=['*'], allowed_headers=['*'], api_key=None, lora_modules=None, prompt_adapters=None, chat_template=None, chat_template_content_format='auto', response_role='assistant', ssl_keyfile=None, ssl_certfile=None, ssl_ca_certs=None, enable_ssl_refresh=False, ssl_cert_reqs=0, root_path=None, middleware=[], return_tokens_as_token_ids=False, disable_frontend_multiprocessing=False, enable_request_id_headers=False, enable_auto_tool_choice=False, tool_call_parser=None, tool_parser_plugin='', model='Qwen/Qwen3-30B-A3B-Instruct-2507', task='auto', tokenizer=None, hf_config_path=None, skip_tokenizer_init=False, revision=None, code_revision=None, tokenizer_revision=None, tokenizer_mode='auto', trust_remote_code=False, allowed_local_media_path=None, load_format='auto', download_dir=None, model_loader_extra_config={}, use_tqdm_on_load=True, config_format=<ConfigFormat.AUTO: 'auto'>, dtype='auto', max_model_len=4096, guided_decoding_backend='auto', reasoning_parser=None, logits_processor_pattern=None, model_impl='auto', distributed_executor_backend=None, pipeline_parallel_size=1, tensor_parallel_size=1, data_parallel_size=1, enable_expert_parallel=False, max_parallel_loading_workers=None, ray_workers_use_nsight=False, disable_custom_all_reduce=False, block_size=None, gpu_memory_utilization=0.9, swap_space=4, kv_cache_dtype='mxint8', num_gpu_blocks_override=None, enable_prefix_caching=None, prefix_caching_hash_algo='builtin', cpu_offload_gb=0, calculate_kv_scales=False, disable_sliding_window=False, use_v2_block_manager=True, seed=None, max_logprobs=20, disable_log_stats=False, quantization='mxfp6', rope_scaling=None, rope_theta=None, hf_token=None, hf_overrides=None, enforce_eager=False, max_seq_len_to_capture=1, tokenizer_pool_size=0, tokenizer_pool_type='ray', tokenizer_pool_extra_config={}, limit_mm_per_prompt={}, mm_processor_kwargs=None, disable_mm_preprocessor_cache=False, enable_lora=None, enable_lora_bias=False, max_loras=1, max_lora_rank=16, lora_extra_vocab_size=256, lora_dtype='auto', long_lora_scaling_factors=None, max_cpu_loras=None, fully_sharded_loras=False, enable_prompt_adapter=None, max_prompt_adapters=1, max_prompt_adapter_token=0, device='qaic', speculative_config=None, ignore_patterns=[], served_model_name=None, qlora_adapter_name_or_path=None, show_hidden_metrics_for_version=None, otlp_traces_endpoint=None, collect_detailed_traces=None, disable_async_output_proc=False, max_num_batched_tokens=None, max_num_seqs=1, max_num_partial_prefills=1, max_long_partial_prefills=1, long_prefill_token_threshold=0, num_lookahead_slots=0, scheduler_delay_factor=0.0, preemption_mode=None, num_scheduler_steps=1, multi_step_stream_outputs=True, scheduling_policy='fcfs', enable_chunked_prefill=None, disable_chunked_mm_input=False, scheduler_cls='vllm.core.scheduler.Scheduler', override_neuron_config=None, override_pooler_config=None, compilation_config=None, kv_transfer_config=None, worker_cls='auto', worker_extension_cls='', generation_config='auto', override_generation_config=None, enable_sleep_mode=False, additional_config=None, enable_reasoning=False, disable_cascade_attn=False, override_qaic_config={'qpc_path': '/root/qpc/qpc'}, device_group=[0, 1], disable_log_requests=False, max_log_len=None, disable_fastapi_docs=False, enable_prompt_tokens_details=False, enable_server_load_tracking=False, dispatch_function=<function ServeSubcommand.cmd at 0x7416f976a710>)
      
      
      
      
              config.json: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████| 963/963 [00:00<00:00, 6.38MB/s]
      
      
              
              INFO 01-15 17:46:34 [config.py:728] This model supports multiple tasks: {'score', 'generate', 'classify', 'embed', 'reward'}. Defaulting to 'generate'.
      
      
      
              WARNING 01-15 17:46:34 [arg_utils.py:1711] --kv-cache-dtype is not supported by the V1 Engine. Falling back to V0.
      
      
              
              INFO 01-15 17:46:34 [config.py:1415] Using fp8 data type to store kv cache. It reduces the GPU memory footprint and boosts the performance. Meanwhile, it may cause accuracy drop without a proper scaling factor
      
      
              
              INFO 01-15 17:46:34 [config.py:1820] Disabled the custom all-reduce kernel because it is not supported on current platform.
      
      
              
              config_1m.json: 77.3kB [00:00, 163MB/s]
      
      
              
              generation_config.json: 100%|██████████████████████████████████████████████████████████████████████████████████████| 239/239 [00:00<00:00, 2.47MB/s]
      
      
              
              model.safetensors.index.json: 1.70MB [00:00, 57.5MB/s]
      
      
              
              tokenizer.json: 100%|██████████████████████████████████████████████████████████████████████████████████████████| 11.4M/11.4M [00:02<00:00, 5.23MB/s]
      
      
              
              tokenizer_config.json: 9.38kB [00:00, 41.9MB/s]
      
      
              
              vocab.json: 2.78MB [00:00, 25.4MB/s]
      
      
              
              INFO 01-15 17:46:38 [api_server.py:246] Started engine process with PID 51
      
      
              
              merges.txt: 1.67MB [00:00, 11.8MB/s]
      
      
              
              loading /opt/qti-aic/dev/lib/x86_64/libQAic.so
      
      
              
              INFO 01-15 17:46:40 [__init__.py:269] Automatically detected platform qaic.
      
      
      
              INFO 01-15 17:46:41 [llm_engine.py:247] Initializing a V0 LLM engine (v0.8.6.dev0+gba41cc90e.d20251229) with config: model='Qwen/Qwen3-30B-A3B-Instruct-2507', speculative_config=None, tokenizer='Qwen/Qwen3-30B-A3B-Instruct-2507', skip_tokenizer_init=False, tokenizer_mode=auto, revision=None, override_neuron_config=None, tokenizer_revision=None, trust_remote_code=False, dtype=torch.bfloat16, max_seq_len=4096, download_dir=None, load_format=auto, tensor_parallel_size=1, pipeline_parallel_size=1, disable_custom_all_reduce=True, quantization=mxfp6, enforce_eager=False, kv_cache_dtype=mxint8,  device_config=cpu, decoding_config=DecodingConfig(guided_decoding_backend='auto', reasoning_backend=None), observability_config=ObservabilityConfig(show_hidden_metrics=False, otlp_traces_endpoint=None, collect_model_forward_time=False, collect_model_execute_time=False), seed=None, served_model_name=Qwen/Qwen3-30B-A3B-Instruct-2507, num_scheduler_steps=1, multi_step_stream_outputs=True, enable_prefix_caching=None, chunked_prefill_enabled=False, use_async_output_proc=False, disable_mm_preprocessor_cache=False, mm_processor_kwargs=None, pooler_config=None, compilation_config={"splitting_ops":[],"compile_sizes":[],"cudagraph_capture_sizes":[1],"max_capture_size":1}, use_cached_outputs=True,
      
      
      
              WARNING 01-15 17:46:42 [qaic.py:100] Pin memory is not supported on Qaic.
      
      
      
              WARNING 01-15 17:46:42 [registry.py:217] Model class <class 'vllm.model_executor.models.mllama.MllamaForConditionalGeneration'> already has a multi-modal processor registered to <vllm.multimodal.registry.MultiModalRegistry object at 0x7f2ffb2ddc90>. It is overwritten by the new one.
      
      
      
              WARNING 01-15 17:46:42 [registry.py:217] Model class <class 'vllm.model_executor.models.mllama4.Llama4ForConditionalGeneration'> already has a multi-modal processor registered to <vllm.multimodal.registry.MultiModalRegistry object at 0x7f2ffb2ddc90>. It is overwritten by the new one.
      
      
      
              WARNING 01-15 17:46:42 [qaic_worker.py:102] Reducing Torch parallelism from 8 threads to 8 to avoid unnecessary CPU contention. Set VLLM_QAIC_MAX_CPU_THREADS to tune this value as needed.
      
      
      
              INFO 01-15 17:46:42 [qaic_worker.py:87] Setting RLIMIT_STACK to 16.0MB.
      
      
              
              INFO 01-15 17:46:44 [parallel_state.py:1004] rank 0 in world size 1 is assigned as DP rank 0, PP rank 0, TP rank 0
      
      
              
              loading /opt/qti-aic/dev/lib/x86_64/libQAic.so
      
      
              
              INFO 01-15 17:46:44 [executor_base.py:112] # qaic blocks: 1, # CPU blocks: 0
      
      
              
              INFO 01-15 17:46:44 [executor_base.py:117] Maximum concurrency for 4096 tokens per request: 1.00x
      
      
              
              {'prefill_seq_len': 1, 'ctx_len': 4096, 'batch_size': 1, 'full_batch_size': 1, 'device_group': [0, 1], 'num_devices': 2, 'num_cores': 16, 'mxfp6_matmul': True, 'mxint8_kv_cache': True, 'aic_enable_depth_first': True, 'prefill_only': None, 'compile_only': False}
      
      
      
              INFO 01-15 17:46:44 [qaic.py:959] Using qpc:-/root/qpc/qpc
      
      
              
              Stages:  1
      
      
              
              INFO 01-15 17:46:44 [qserve_model_runner.py:66] Loading QPC...
      
      
              
              INFO 01-15 17:46:44 [qserve_model_runner.py:67] This may take some time, please don't press CTRL-C during this phase...
      
      
      
              INFO 01-15 17:46:52 [qserve_model_runner.py:88] Successfully loaded QPC in 7.791425864999837 secs
      
      
      
              WARNING 01-15 17:46:52 [qserve_model_runner.py:122] User entered `include_sampler`=True. But the provided QPC is not compiled to run sampling on the QAIC device. Falling back to the PyTorch backend.
      
      
              
              INFO 01-15 17:46:52 [qserve_model_runner.py:162] Warming-up with Dummy run...
      
      
              
              INFO 01-15 17:46:52 [qserve_model_runner.py:178] Successfully finished Dummy run in 0.04556767500025671 secs
      
      
              
              INFO 01-15 17:46:52 [llm_engine.py:444] init engine (profile, create kv cache, warmup model) took 7.86 seconds
      
      
              
              WARNING 01-15 17:46:53 [config.py:1251] Default sampling parameters have been overridden by the model's Hugging Face generation config recommended from the model creator. If this is not intended, please relaunch vLLM instance with `--generation-config vllm`.
      
      
              
              INFO 01-15 17:46:53 [serving_chat.py:124] Using default chat sampling params from model: {'temperature': 0.7, 'top_k': 20, 'top_p': 0.8}
      
      
              
              INFO 01-15 17:46:53 [serving_completion.py:61] Using default completion sampling params from model: {'temperature': 0.7, 'top_k': 20, 'top_p': 0.8}
      
      
              
              INFO 01-15 17:46:53 [api_server.py:1090] Starting vLLM API server on http://0.0.0.0:8000
      
      
              
              INFO 01-15 17:46:53 [launcher.py:28] Available routes are:
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /openapi.json, Methods: GET, HEAD
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /docs, Methods: GET, HEAD
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /docs/oauth2-redirect, Methods: GET, HEAD
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /redoc, Methods: GET, HEAD
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /health, Methods: GET
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /load, Methods: GET
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /ping, Methods: POST, GET
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /tokenize, Methods: POST
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /detokenize, Methods: POST
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /v1/models, Methods: GET
      
      
      
              INFO 01-15 17:46:53 [launcher.py:36] Route: /version, Methods: GET
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /v1/chat/completions, Methods: POST
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /v1/completions, Methods: POST
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /v1/embeddings, Methods: POST
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /pooling, Methods: POST
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /score, Methods: POST
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /v1/score, Methods: POST
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /v1/audio/transcriptions, Methods: POST
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /rerank, Methods: POST
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /v1/rerank, Methods: POST
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /v2/rerank, Methods: POST
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /invocations, Methods: POST
      
      
              
              INFO 01-15 17:46:53 [launcher.py:36] Route: /metrics, Methods: GET
      
      
              
              INFO:     Started server process [1]
      
      
              
              INFO:     Waiting for application startup.
      
      
              
              INFO:     Application startup complete.

      Пример выходных данных сравнительного анализа для qaic-bench.

      Вывод проб для стенда для контроля качества
      
              dell@dell:~$ docker exec -it qaic-bench \
      
              /opt/vllm-env/bin/vllm bench serve \
      
              --model Qwen/Qwen3-30B-A3B-Instruct-2507 \
      
              --num-prompts 25 \
      
              --max-concurrency 1 \
      
              --random-input-len 256 \
      
              --random-output-len 256
      
      
      
              loading /opt/qti-aic/dev/lib/x86_64/libQAic.so
      
      
              
              INFO 01-15 17:47:44 [__init__.py:269] Automatically detected platform qaic.
      
      
      
              Namespace(subparser='bench', bench_type='serve', dispatch_function=<function BenchmarkServingSubcommand.cmd at 0x71abbd45e9e0>, endpoint_type='openai-comp', label=None, base_url=None, host='127.0.0.1', port=8000, endpoint='/v1/completions', dataset_name='random', max_concurrency=1, model='Qwen/Qwen3-30B-A3B-Instruct-2507', tokenizer=None, best_of=1, use_beam_search=False, num_prompts=25, logprobs=None, request_rate=inf, burstiness=1.0, seed=0, trust_remote_code=False, disable_tqdm=False, profile=False, save_result=False, metadata=None, result_dir=None, result_filename=None, ignore_eos=False, percentile_metrics='ttft,tpot,itl', metric_percentiles='99', goodput=None, random_input_len=256, random_output_len=256, random_range_ratio=1.0, random_prefix_len=0, tokenizer_mode='auto', served_model_name=None, lora_modules=None)
      
      
      
              Starting initial single prompt test run...
      
      
              
              Initial test run completed. Starting main benchmark run...
      
      
              
              Traffic request rate: inf
      
      
              
              Burstiness factor: 1.0 (Poisson process)
      
      
              
              Maximum request concurrency: 1
      
      
      
              100%|████████████████████████████████████████████████████████████████████████████████████| 25/25 [05:00<00:00, 12.02s/it]
      
      
      
              ============ Serving Benchmark Result ============
      
              Successful requests:                     25        
      
              Benchmark duration (s):                  300.53    
      
              Total input tokens:                      6400      
      
              Total generated tokens:                  6400      
      
              Request throughput (req/s):              0.08      
      
              Output token throughput (tok/s):         21.30     
      
              Total Token throughput (tok/s):          42.59     
      
              ---------------Time to First Token----------------
      
              Mean TTFT (ms):                          5915.88   
      
              Median TTFT (ms):                        5803.64   
      
              P99 TTFT (ms):                           7153.97   
      
              -----Time per Output Token (excl. 1st token)------
      
              Mean TPOT (ms):                          23.94     
      
              Median TPOT (ms):                        23.82     
      
              P99 TPOT (ms):                           25.18     
      
              ---------------Inter-token Latency----------------
      
              Mean ITL (ms):                           23.94     
      
              Median ITL (ms):                         23.78     
      
              P99 ITL (ms):                            25.77     
      
              ==================================================
      
              dell@dell:~$

      Чтобы рассчитать результаты TPS (токенов в секунду) для токенов, сгенерированных на выходе, используйте 1000 ÷ среднее значение TPOT (23,94 сверху) = 41,8 TPS.

В начало

Affected Products

Dell Pro Max 16 Plus MB16250
Article Properties
Article Number: 000446730
Article Type: How To
Last Modified: 24 May 2026
Version:  5
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.