TensorRT-LLMs/performance/perf-overview.html
2025-06-18 05:57:03 +00:00

1485 lines
76 KiB
HTML

<!DOCTYPE html>
<html lang="en" data-content_root="../" >
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Overview &#8212; TensorRT-LLM</title>
<script data-cfasync="false">
document.documentElement.dataset.mode = localStorage.getItem("mode") || "";
document.documentElement.dataset.theme = localStorage.getItem("theme") || "";
</script>
<!--
this give us a css class that will be invisible only if js is disabled
-->
<noscript>
<style>
.pst-js-only { display: none !important; }
</style>
</noscript>
<!-- Loaded before other Sphinx assets -->
<link href="../_static/styles/theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />
<link href="../_static/styles/pydata-sphinx-theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />
<link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=8f2a1f02" />
<link rel="stylesheet" type="text/css" href="../_static/styles/nvidia-sphinx-theme.css?v=df3ac72c" />
<link rel="stylesheet" type="text/css" href="../_static/copybutton.css?v=76b2166b" />
<link rel="stylesheet" type="text/css" href="../_static/autodoc_pydantic.css" />
<!-- So that users can add custom icons -->
<script src="../_static/scripts/fontawesome.js?digest=8878045cc6db502f8baf"></script>
<!-- Pre-loaded scripts that we'll load fully later -->
<link rel="preload" as="script" href="../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf" />
<link rel="preload" as="script" href="../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf" />
<script src="../_static/documentation_options.js?v=5929fcd5"></script>
<script src="../_static/doctools.js?v=9a2dae69"></script>
<script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
<script src="../_static/clipboard.min.js?v=a7894cd8"></script>
<script src="../_static/copybutton.js?v=65e89d2a"></script>
<script>DOCUMENTATION_OPTIONS.pagename = 'performance/perf-overview';</script>
<script>
DOCUMENTATION_OPTIONS.theme_version = '0.16.1';
DOCUMENTATION_OPTIONS.theme_switcher_json_url = './_static/switcher.json';
DOCUMENTATION_OPTIONS.theme_switcher_version_match = '0.21.0rc2';
DOCUMENTATION_OPTIONS.show_version_warning_banner =
false;
</script>
<link rel="icon" href="../_static/favicon.png"/>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="next" title="TensorRT-LLM Benchmarking" href="perf-benchmarking.html" />
<link rel="prev" title="Disaggregated-Service (experimental)" href="../advanced/disaggregated-service.html" />
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="docsearch:language" content="en"/>
<meta name="docsearch:version" content="0.21.0rc2" />
</head>
<body data-bs-spy="scroll" data-bs-target=".bd-toc-nav" data-offset="180" data-bs-root-margin="0px 0px -60%" data-default-mode="">
<div id="pst-skip-link" class="skip-link d-print-none"><a href="#main-content">Skip to main content</a></div>
<div id="pst-scroll-pixel-helper"></div>
<button type="button" class="btn rounded-pill" id="pst-back-to-top">
<i class="fa-solid fa-arrow-up"></i>Back to top</button>
<dialog id="pst-search-dialog">
<form class="bd-search d-flex align-items-center"
action="../search.html"
method="get">
<i class="fa-solid fa-magnifying-glass"></i>
<input type="search"
class="form-control"
name="q"
placeholder="Search the docs ..."
aria-label="Search the docs ..."
autocomplete="off"
autocorrect="off"
autocapitalize="off"
spellcheck="false"/>
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span>
</form>
</dialog>
<div class="pst-async-banner-revealer d-none">
<aside id="bd-header-version-warning" class="d-none d-print-none" aria-label="Version warning"></aside>
</div>
<header class="bd-header navbar navbar-expand-lg bd-navbar d-print-none">
<div class="bd-header__inner bd-page-width">
<button class="pst-navbar-icon sidebar-toggle primary-toggle" aria-label="Site navigation">
<span class="fa-solid fa-bars"></span>
</button>
<div class="col-lg-3 navbar-header-items__start">
<div class="navbar-item">
<a class="navbar-brand logo" href="../index.html">
<img src="../_static/nvidia-logo-horiz-rgb-blk-for-screen.svg" class="logo__image only-light" alt="TensorRT-LLM - Home"/>
<img src="../_static/nvidia-logo-horiz-rgb-wht-for-screen.svg" class="logo__image only-dark pst-js-only" alt="TensorRT-LLM - Home"/>
<p class="title logo__title">TensorRT-LLM</p>
</a></div>
</div>
<div class="col-lg-9 navbar-header-items">
<div class="me-auto navbar-header-items__center">
<div class="navbar-item">
<div class="version-switcher__container dropdown pst-js-only">
<button id="pst-version-switcher-button-2"
type="button"
class="version-switcher__button btn btn-sm dropdown-toggle"
data-bs-toggle="dropdown"
aria-haspopup="listbox"
aria-controls="pst-version-switcher-list-2"
aria-label="Version switcher list"
>
Choose version <!-- this text may get changed later by javascript -->
<span class="caret"></span>
</button>
<div id="pst-version-switcher-list-2"
class="version-switcher__menu dropdown-menu list-group-flush py-0"
role="listbox" aria-labelledby="pst-version-switcher-button-2">
<!-- dropdown will be populated by javascript on page load -->
</div>
</div></div>
</div>
<div class="navbar-header-items__end">
<div class="navbar-item navbar-persistent--container">
<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
<i class="fa-solid fa-magnifying-glass"></i>
<span class="search-button__default-text">Search</span>
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
</button>
</div>
<div class="navbar-item">
<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode" data-bs-placement="bottom" data-bs-toggle="tooltip">
<i class="theme-switch fa-solid fa-sun fa-lg" data-mode="light" title="Light"></i>
<i class="theme-switch fa-solid fa-moon fa-lg" data-mode="dark" title="Dark"></i>
<i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto" title="System Settings"></i>
</button></div>
</div>
</div>
<div class="navbar-persistent--mobile">
<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
<i class="fa-solid fa-magnifying-glass"></i>
<span class="search-button__default-text">Search</span>
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
</button>
</div>
<button class="pst-navbar-icon sidebar-toggle secondary-toggle" aria-label="On this page">
<span class="fa-solid fa-outdent"></span>
</button>
</div>
</header>
<div class="bd-container">
<div class="bd-container__inner bd-page-width">
<dialog id="pst-primary-sidebar-modal"></dialog>
<div id="pst-primary-sidebar" class="bd-sidebar-primary bd-sidebar">
<a class="navbar-brand logo" href="../index.html">
<img src="../_static/nvidia-logo-horiz-rgb-blk-for-screen.svg" class="logo__image only-light" alt="TensorRT-LLM - Home"/>
<img src="../_static/nvidia-logo-horiz-rgb-wht-for-screen.svg" class="logo__image only-dark pst-js-only" alt="TensorRT-LLM - Home"/>
<p class="title logo__title">TensorRT-LLM</p>
</a>
<div class="sidebar-header-items sidebar-primary__section">
<div class="sidebar-header-items__center">
<div class="navbar-item">
<div class="version-switcher__container dropdown pst-js-only">
<button id="pst-version-switcher-button-3"
type="button"
class="version-switcher__button btn btn-sm dropdown-toggle"
data-bs-toggle="dropdown"
aria-haspopup="listbox"
aria-controls="pst-version-switcher-list-3"
aria-label="Version switcher list"
>
Choose version <!-- this text may get changed later by javascript -->
<span class="caret"></span>
</button>
<div id="pst-version-switcher-list-3"
class="version-switcher__menu dropdown-menu list-group-flush py-0"
role="listbox" aria-labelledby="pst-version-switcher-button-3">
<!-- dropdown will be populated by javascript on page load -->
</div>
</div></div>
</div>
<div class="sidebar-header-items__end">
<div class="navbar-item">
<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode" data-bs-placement="bottom" data-bs-toggle="tooltip">
<i class="theme-switch fa-solid fa-sun fa-lg" data-mode="light" title="Light"></i>
<i class="theme-switch fa-solid fa-moon fa-lg" data-mode="dark" title="Dark"></i>
<i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto" title="System Settings"></i>
</button></div>
</div>
</div>
<div class="sidebar-primary-items__start sidebar-primary__section">
<div class="sidebar-primary-item">
<nav class="bd-docs-nav bd-links"
aria-label="Table of Contents">
<p class="bd-links__title" role="heading" aria-level="1">Table of Contents</p>
<div class="bd-toc-item navbar-nav"><p aria-level="2" class="caption" role="heading"><span class="caption-text">Getting Started</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../overview.html">Overview</a></li>
<li class="toctree-l1"><a class="reference internal" href="../quick-start-guide.html">Quick Start Guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../key-features.html">Key Features</a></li>
<li class="toctree-l1"><a class="reference internal" href="../torch.html">PyTorch Backend</a></li>
<li class="toctree-l1"><a class="reference internal" href="../release-notes.html">Release Notes</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">Installation</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../installation/linux.html">Installing on Linux</a></li>
<li class="toctree-l1"><a class="reference internal" href="../installation/build-from-source-linux.html">Building from Source Code on Linux</a></li>
<li class="toctree-l1"><a class="reference internal" href="../installation/grace-hopper.html">Installing on Grace Hopper</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">LLM API</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../llm-api/index.html">API Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="../llm-api/reference.html">API Reference</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">Examples</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1 has-children"><a class="reference internal" href="../examples/index.html">LLM Examples Introduction</a><details><summary><span class="toctree-toggle" role="presentation"><i class="fa-solid fa-chevron-down"></i></span></summary><ul>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_medusa_decoding.html">Generate Text Using Medusa Decoding</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_multilora.html">Generate text with multiple LoRA adapters</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_eagle_decoding.html">Generate Text Using Eagle Decoding</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_inference_async.html">Generate Text Asynchronously</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_inference_distributed.html">Distributed LLM Generation</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_logits_processor.html">Control generated text using logits processor</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_eagle2_decoding.html">Generate Text Using Eagle2 Decoding</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_inference_kv_events.html">Get KV Cache Events</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_lookahead_decoding.html">Generate Text Using Lookahead Decoding</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_quantization.html">Generation with Quantization</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_inference_async_streaming.html">Generate Text in Streaming</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_guided_decoding.html">Generate text with guided decoding</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_inference.html">Generate text</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_inference_customize.html">Generate text with customization</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_auto_parallel.html">Automatic Parallelism with LLM</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_mgmn_llm_distributed.html">Llm Mgmn Llm Distributed</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_mgmn_trtllm_bench.html">Llm Mgmn Trtllm Bench</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_mgmn_trtllm_serve.html">Llm Mgmn Trtllm Serve</a></li>
</ul>
</details></li>
<li class="toctree-l1"><a class="reference internal" href="../examples/customization.html">LLM Common Customizations</a></li>
<li class="toctree-l1 has-children"><a class="reference internal" href="../examples/llm_api_examples.html">LLM Examples</a><details><summary><span class="toctree-toggle" role="presentation"><i class="fa-solid fa-chevron-down"></i></span></summary><ul>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_medusa_decoding.html">Generate Text Using Medusa Decoding</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_multilora.html">Generate text with multiple LoRA adapters</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_eagle_decoding.html">Generate Text Using Eagle Decoding</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_inference_async.html">Generate Text Asynchronously</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_inference_distributed.html">Distributed LLM Generation</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_logits_processor.html">Control generated text using logits processor</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_eagle2_decoding.html">Generate Text Using Eagle2 Decoding</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_inference_kv_events.html">Get KV Cache Events</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_lookahead_decoding.html">Generate Text Using Lookahead Decoding</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_quantization.html">Generation with Quantization</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_inference_async_streaming.html">Generate Text in Streaming</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_guided_decoding.html">Generate text with guided decoding</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_inference.html">Generate text</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_inference_customize.html">Generate text with customization</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_auto_parallel.html">Automatic Parallelism with LLM</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_mgmn_llm_distributed.html">Llm Mgmn Llm Distributed</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_mgmn_trtllm_bench.html">Llm Mgmn Trtllm Bench</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/llm_mgmn_trtllm_serve.html">Llm Mgmn Trtllm Serve</a></li>
</ul>
</details></li>
<li class="toctree-l1 has-children"><a class="reference internal" href="../examples/trtllm_serve_examples.html">Online Serving Examples</a><details><summary><span class="toctree-toggle" role="presentation"><i class="fa-solid fa-chevron-down"></i></span></summary><ul>
<li class="toctree-l2"><a class="reference internal" href="../examples/curl_chat_client.html">Curl Chat Client</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/curl_chat_client_for_multimodal.html">Curl Chat Client For Multimodal</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/curl_completion_client.html">Curl Completion Client</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/deepseek_r1_reasoning_parser.html">Deepseek R1 Reasoning Parser</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/genai_perf_client.html">Genai Perf Client</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/genai_perf_client_for_multimodal.html">Genai Perf Client For Multimodal</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/openai_chat_client.html">OpenAI Chat Client</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/openai_chat_client_for_multimodal.html">OpenAI Chat Client</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/openai_completion_client.html">OpenAI Completion Client</a></li>
</ul>
</details></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">Model Definition API</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../python-api/tensorrt_llm.layers.html">Layers</a></li>
<li class="toctree-l1"><a class="reference internal" href="../python-api/tensorrt_llm.functional.html">Functionals</a></li>
<li class="toctree-l1"><a class="reference internal" href="../python-api/tensorrt_llm.models.html">Models</a></li>
<li class="toctree-l1"><a class="reference internal" href="../python-api/tensorrt_llm.plugin.html">Plugin</a></li>
<li class="toctree-l1"><a class="reference internal" href="../python-api/tensorrt_llm.quantization.html">Quantization</a></li>
<li class="toctree-l1"><a class="reference internal" href="../python-api/tensorrt_llm.runtime.html">Runtime</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">C++ API</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../_cpp_gen/executor.html">Executor</a></li>
<li class="toctree-l1"><a class="reference internal" href="../_cpp_gen/runtime.html">Runtime</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">Command-Line Reference</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../commands/trtllm-build.html">trtllm-build</a></li>
<li class="toctree-l1"><a class="reference internal" href="../commands/trtllm-serve.html">trtllm-serve</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">Architecture</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../architecture/overview.html">TensorRT-LLM Architecture</a></li>
<li class="toctree-l1"><a class="reference internal" href="../architecture/core-concepts.html">Model Definition</a></li>
<li class="toctree-l1"><a class="reference internal" href="../architecture/checkpoint.html">TensorRT-LLM Checkpoint</a></li>
<li class="toctree-l1"><a class="reference internal" href="../architecture/workflow.html">TensorRT-LLM Build Workflow</a></li>
<li class="toctree-l1"><a class="reference internal" href="../architecture/add-model.html">Adding a Model</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">Advanced</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../advanced/gpt-attention.html">Multi-Head, Multi-Query, and Group-Query Attention</a></li>
<li class="toctree-l1"><a class="reference internal" href="../advanced/gpt-runtime.html">C++ GPT Runtime</a></li>
<li class="toctree-l1"><a class="reference internal" href="../advanced/executor.html">Executor API</a></li>
<li class="toctree-l1"><a class="reference internal" href="../advanced/graph-rewriting.html">Graph Rewriting Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="../advanced/lora.html">Run gpt-2b + LoRA using Executor / cpp runtime</a></li>
<li class="toctree-l1"><a class="reference internal" href="../advanced/expert-parallelism.html">Expert Parallelism in TensorRT-LLM</a></li>
<li class="toctree-l1"><a class="reference internal" href="../advanced/kv-cache-management.html">KV Cache Management: Pools, Blocks, and Events</a></li>
<li class="toctree-l1"><a class="reference internal" href="../advanced/kv-cache-reuse.html">KV cache reuse</a></li>
<li class="toctree-l1"><a class="reference internal" href="../advanced/speculative-decoding.html">Speculative Sampling</a></li>
<li class="toctree-l1"><a class="reference internal" href="../advanced/disaggregated-service.html">Disaggregated-Service (experimental)</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">Performance</span></p>
<ul class="current nav bd-sidenav">
<li class="toctree-l1 current active"><a class="current reference internal" href="#">Overview</a></li>
<li class="toctree-l1"><a class="reference internal" href="perf-benchmarking.html">Benchmarking</a></li>
<li class="toctree-l1 has-children"><a class="reference internal" href="performance-tuning-guide/index.html">Performance Tuning Guide</a><details><summary><span class="toctree-toggle" role="presentation"><i class="fa-solid fa-chevron-down"></i></span></summary><ul>
<li class="toctree-l2"><a class="reference internal" href="performance-tuning-guide/benchmarking-default-performance.html">Benchmarking Default Performance</a></li>
<li class="toctree-l2"><a class="reference internal" href="performance-tuning-guide/useful-build-time-flags.html">Useful Build-Time Flags</a></li>
<li class="toctree-l2"><a class="reference internal" href="performance-tuning-guide/tuning-max-batch-size-and-max-num-tokens.html">Tuning Max Batch Size and Max Num Tokens</a></li>
<li class="toctree-l2"><a class="reference internal" href="performance-tuning-guide/deciding-model-sharding-strategy.html">Deciding Model Sharding Strategy</a></li>
<li class="toctree-l2"><a class="reference internal" href="performance-tuning-guide/fp8-quantization.html">FP8 Quantization</a></li>
<li class="toctree-l2"><a class="reference internal" href="performance-tuning-guide/useful-runtime-flags.html">Useful Runtime Options</a></li>
</ul>
</details></li>
<li class="toctree-l1"><a class="reference internal" href="perf-analysis.html">Performance Analysis</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">Reference</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../reference/troubleshooting.html">Troubleshooting</a></li>
<li class="toctree-l1"><a class="reference internal" href="../reference/support-matrix.html">Support Matrix</a></li>
<li class="toctree-l1"><a class="reference internal" href="../reference/precision.html">Numerical Precision</a></li>
<li class="toctree-l1"><a class="reference internal" href="../reference/memory.html">Memory Usage of TensorRT-LLM</a></li>
<li class="toctree-l1"><a class="reference internal" href="../reference/ci-overview.html">Continuous Integration Overview</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">Blogs</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../blogs/H100vsA100.html">H100 has 4.6x A100 Performance in TensorRT-LLM, achieving 10,000 tok/s at 100ms to first token</a></li>
<li class="toctree-l1"><a class="reference internal" href="../blogs/H200launch.html">H200 achieves nearly 12,000 tokens/sec on Llama2-13B with TensorRT-LLM</a></li>
<li class="toctree-l1"><a class="reference internal" href="../blogs/Falcon180B-H200.html">Falcon-180B on a single H200 GPU with INT4 AWQ, and 6.7x faster Llama-70B over A100</a></li>
<li class="toctree-l1"><a class="reference internal" href="../blogs/quantization-in-TRT-LLM.html">Speed up inference with SOTA quantization techniques in TRT-LLM</a></li>
<li class="toctree-l1"><a class="reference internal" href="../blogs/XQA-kernel.html">New XQA-kernel provides 2.4x more Llama-70B throughput within the same latency budget</a></li>
<li class="toctree-l1"><a class="reference internal" href="../blogs/tech_blog/blog1_Pushing_Latency_Boundaries_Optimizing_DeepSeek-R1_Performance_on_NVIDIA_B200_GPUs.html">Pushing Latency Boundaries: Optimizing DeepSeek-R1 Performance on NVIDIA B200 GPUs</a></li>
<li class="toctree-l1"><a class="reference internal" href="../blogs/tech_blog/blog2_DeepSeek_R1_MTP_Implementation_and_Optimization.html">DeepSeek R1 MTP Implementation and Optimization</a></li>
</ul>
</div>
</nav></div>
</div>
<div class="sidebar-primary-items__end sidebar-primary__section">
</div>
</div>
<main id="main-content" class="bd-main" role="main">
<div class="bd-content">
<div class="bd-article-container">
<div class="bd-header-article d-print-none">
<div class="header-article-items header-article__inner">
<div class="header-article-items__start">
<div class="header-article-item">
<nav aria-label="Breadcrumb" class="d-print-none">
<ul class="bd-breadcrumbs">
<li class="breadcrumb-item breadcrumb-home">
<a href="../index.html" class="nav-link" aria-label="Home">
<i class="fa-solid fa-home"></i>
</a>
</li>
<li class="breadcrumb-item active" aria-current="page"><span class="ellipsis">Overview</span></li>
</ul>
</nav>
</div>
</div>
</div>
</div>
<div id="searchbox"></div>
<article class="bd-article">
<section id="overview">
<span id="perf-overview"></span><h1>Overview<a class="headerlink" href="#overview" title="Link to this heading">#</a></h1>
<p>This document summarizes performance measurements of TensorRT-LLM on a number of GPUs across a set of key models.</p>
<p>The data in the following tables is provided as a reference point to help users validate observed performance.
It should <em>not</em> be considered as the peak performance that can be delivered by TensorRT-LLM.</p>
<p>We attempted to keep commands as simple as possible to ease reproducibility and left many options at their default settings.
Tuning batch sizes, parallelism configurations, and other options may lead to improved performance depending on your situaiton.</p>
<p>For DeepSeek R1 performance, please check out our <a class="reference internal" href="../blogs/Best_perf_practice_on_DeepSeek-R1_in_TensorRT-LLM.html"><span class="std std-doc">performance guide</span></a></p>
<section id="throughput-measurements">
<h2>Throughput Measurements<a class="headerlink" href="#throughput-measurements" title="Link to this heading">#</a></h2>
<p>The below table shows performance data where a local inference client is fed requests at an infinite rate (no delay between messages),
and shows the throughput scenario under maximum load. The reported metric is <code class="docutils literal notranslate"><span class="pre">Total</span> <span class="pre">Output</span> <span class="pre">Throughput</span> <span class="pre">(tokens/sec)</span></code>.</p>
<p>The performance numbers below were collected using the steps described in this document.</p>
<p>Testing was performed on models with weights quantized using <a class="reference external" href="https://nvidia.github.io/TensorRT-Model-Optimizer/#">ModelOpt</a> and published by NVIDIA on the <a class="reference external" href="https://huggingface.co/collections/nvidia/model-optimizer-66aa84f7966b3150262481a4">Model Optimizer HuggingFace Collection</a>.</p>
<section id="fp4-models">
<h3>FP4 Models:<a class="headerlink" href="#fp4-models" title="Link to this heading">#</a></h3>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">nvidia</span><span class="o">/</span><span class="n">Llama</span><span class="o">-</span><span class="mf">3.3</span><span class="o">-</span><span class="mi">70</span><span class="n">B</span><span class="o">-</span><span class="n">Instruct</span><span class="o">-</span><span class="n">FP4</span>
<span class="n">nvidia</span><span class="o">/</span><span class="n">Llama</span><span class="o">-</span><span class="mf">3.1</span><span class="o">-</span><span class="mi">405</span><span class="n">B</span><span class="o">-</span><span class="n">Instruct</span><span class="o">-</span><span class="n">FP4</span>
</pre></div>
</div>
<section id="llama-3-3-70b-fp4">
<h4>Llama 3.3 70B FP4<a class="headerlink" href="#llama-3-3-70b-fp4" title="Link to this heading">#</a></h4>
<div class="pst-scrollable-table-container"><table class="table">
<thead>
<tr class="row-odd"><th class="head text-left"><p></p></th>
<th class="head text-left"><p>GPU</p></th>
<th class="head text-left"><p>B200</p></th>
<th class="head text-left"><p></p></th>
<th class="head text-left"><p></p></th>
<th class="head text-left"><p></p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td class="text-left"><p></p></td>
<td class="text-left"><p>TP Size</p></td>
<td class="text-left"><p>1</p></td>
<td class="text-left"><p>2</p></td>
<td class="text-left"><p>4</p></td>
<td class="text-left"><p>8</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>ISL, OSL</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
</tr>
<tr class="row-even"><td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>128, 128</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>11,253.28</p></td>
<td class="text-left"><p>17,867.66</p></td>
<td class="text-left"><p>24,944.50</p></td>
<td class="text-left"><p>27,471.49</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>128, 2048</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>9,925.00</p></td>
<td class="text-left"><p>15,459.71</p></td>
<td class="text-left"><p>23,608.58</p></td>
<td class="text-left"><p>30,742.86</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>128, 4096</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>6,318.92</p></td>
<td class="text-left"><p>8,711.88</p></td>
<td class="text-left"><p>17,659.74</p></td>
<td class="text-left"><p>24,947.05</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>500, 2000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>7,559.88</p></td>
<td class="text-left"><p>10,602.27</p></td>
<td class="text-left"><p>20,910.23</p></td>
<td class="text-left"><p>28,182.34</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>1000, 1000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>6,866.96</p></td>
<td class="text-left"><p>10,838.01</p></td>
<td class="text-left"><p>16,567.86</p></td>
<td class="text-left"><p>19,991.64</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>1000, 2000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>6,736.88</p></td>
<td class="text-left"><p>9,132.08</p></td>
<td class="text-left"><p>15,737.02</p></td>
<td class="text-left"><p>20,518.04</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>1024, 2048</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>6,580.56</p></td>
<td class="text-left"><p>8,767.45</p></td>
<td class="text-left"><p>15,722.55</p></td>
<td class="text-left"><p>20,437.96</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>2048, 128</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>1,375.49</p></td>
<td class="text-left"><p>1,610.69</p></td>
<td class="text-left"><p>2,707.58</p></td>
<td class="text-left"><p>3,717.82</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>2048, 2048</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>4,544.73</p></td>
<td class="text-left"><p>6,956.14</p></td>
<td class="text-left"><p>12,292.23</p></td>
<td class="text-left"><p>15,661.22</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>5000, 500</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>1,488.19</p></td>
<td class="text-left"><p>2,379.73</p></td>
<td class="text-left"><p>3,588.45</p></td>
<td class="text-left"><p>4,810.21</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>20000, 2000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>580.96</p></td>
<td class="text-left"><p>1,043.58</p></td>
<td class="text-left"><p>1,957.84</p></td>
<td class="text-left"><p>3,167.30</p></td>
</tr>
</tbody>
</table>
</div>
</section>
<section id="llama-3-1-405b-fp4">
<h4>Llama 3.1 405B FP4<a class="headerlink" href="#llama-3-1-405b-fp4" title="Link to this heading">#</a></h4>
<div class="pst-scrollable-table-container"><table class="table">
<thead>
<tr class="row-odd"><th class="head text-left"><p></p></th>
<th class="head text-left"><p>GPU</p></th>
<th class="head text-left"><p>B200</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td class="text-left"><p></p></td>
<td class="text-left"><p>TP Size</p></td>
<td class="text-left"><p>8</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>ISL, OSL</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
</tr>
<tr class="row-even"><td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>128, 128</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>9,184.83</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>128, 2048</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>10,387.23</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>128, 4096</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>8,741.80</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>500, 2000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>9,242.34</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>1000, 1000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>7,565.50</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>1000, 2000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>7,696.76</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>1024, 2048</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>7,568.93</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>2048, 128</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>953.57</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>2048, 2048</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>6,092.32</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>5000, 500</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>1,332.22</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>20000, 2000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>961.58</p></td>
</tr>
</tbody>
</table>
</div>
</section>
</section>
<section id="fp8-models">
<h3>FP8 Models:<a class="headerlink" href="#fp8-models" title="Link to this heading">#</a></h3>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">nvidia</span><span class="o">/</span><span class="n">Llama</span><span class="o">-</span><span class="mf">3.1</span><span class="o">-</span><span class="mi">8</span><span class="n">B</span><span class="o">-</span><span class="n">Instruct</span><span class="o">-</span><span class="n">FP8</span>
<span class="n">nvidia</span><span class="o">/</span><span class="n">Llama</span><span class="o">-</span><span class="mf">3.1</span><span class="o">-</span><span class="mi">70</span><span class="n">B</span><span class="o">-</span><span class="n">Instruct</span><span class="o">-</span><span class="n">FP8</span>
<span class="n">nvidia</span><span class="o">/</span><span class="n">Llama</span><span class="o">-</span><span class="mf">3.1</span><span class="o">-</span><span class="mi">405</span><span class="n">B</span><span class="o">-</span><span class="n">Instruct</span><span class="o">-</span><span class="n">FP8</span>
</pre></div>
</div>
<section id="llama-3-1-8b-fp8">
<h4>Llama 3.1 8B FP8<a class="headerlink" href="#llama-3-1-8b-fp8" title="Link to this heading">#</a></h4>
<div class="pst-scrollable-table-container"><table class="table">
<thead>
<tr class="row-odd"><th class="head text-left"><p></p></th>
<th class="head text-left"><p>GPU</p></th>
<th class="head text-left"><p>H200 141GB HBM3</p></th>
<th class="head text-left"><p>H100 80GB HBM3</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td class="text-left"><p></p></td>
<td class="text-left"><p>TP Size</p></td>
<td class="text-left"><p>1</p></td>
<td class="text-left"><p>1</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>ISL, OSL</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
</tr>
<tr class="row-even"><td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>128, 128</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>28,447.38</p></td>
<td class="text-left"><p>27,568.68</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>128, 2048</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>23,294.74</p></td>
<td class="text-left"><p>22,003.62</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>128, 4096</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>17,481.48</p></td>
<td class="text-left"><p>13,640.35</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>500, 2000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>21,462.57</p></td>
<td class="text-left"><p>17,794.39</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>1000, 1000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>17,590.60</p></td>
<td class="text-left"><p>15,270.02</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>1000, 2000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>17,139.51</p></td>
<td class="text-left"><p>13,850.22</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>1024, 2048</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>16,970.63</p></td>
<td class="text-left"><p>13,374.15</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>2048, 128</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>3,531.33</p></td>
<td class="text-left"><p>3,495.05</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>2048, 2048</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>12,022.38</p></td>
<td class="text-left"><p>9,653.67</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>5000, 500</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>3,851.65</p></td>
<td class="text-left"><p>3,371.16</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>20000, 2000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>1,706.06</p></td>
<td class="text-left"><p>1,340.92</p></td>
</tr>
</tbody>
</table>
</div>
</section>
<section id="llama-3-1-70b-fp8">
<h4>Llama 3.1 70B FP8<a class="headerlink" href="#llama-3-1-70b-fp8" title="Link to this heading">#</a></h4>
<div class="pst-scrollable-table-container"><table class="table">
<thead>
<tr class="row-odd"><th class="head text-left"><p></p></th>
<th class="head text-left"><p>GPU</p></th>
<th class="head text-left"><p>H200 141GB HBM3</p></th>
<th class="head text-left"><p></p></th>
<th class="head text-left"><p></p></th>
<th class="head text-left"><p></p></th>
<th class="head text-left"><p>H100 80GB HBM3</p></th>
<th class="head text-left"><p></p></th>
<th class="head text-left"><p></p></th>
<th class="head text-left"><p></p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td class="text-left"><p></p></td>
<td class="text-left"><p>TP Size</p></td>
<td class="text-left"><p>1</p></td>
<td class="text-left"><p>2</p></td>
<td class="text-left"><p>4</p></td>
<td class="text-left"><p>8</p></td>
<td class="text-left"><p>1</p></td>
<td class="text-left"><p>2</p></td>
<td class="text-left"><p>4</p></td>
<td class="text-left"><p>8</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>ISL, OSL</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
</tr>
<tr class="row-even"><td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>128, 128</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>3,657.58</p></td>
<td class="text-left"><p>6,477.50</p></td>
<td class="text-left"><p>10,466.04</p></td>
<td class="text-left"><p>15,554.57</p></td>
<td class="text-left"><p>3,191.27</p></td>
<td class="text-left"><p>6,183.41</p></td>
<td class="text-left"><p>10,260.68</p></td>
<td class="text-left"><p>14,686.01</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>128, 2048</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>4,351.07</p></td>
<td class="text-left"><p>8,450.31</p></td>
<td class="text-left"><p>13,438.71</p></td>
<td class="text-left"><p>20,750.58</p></td>
<td class="text-left"><p>745.19</p></td>
<td class="text-left"><p>5,822.02</p></td>
<td class="text-left"><p>11,442.01</p></td>
<td class="text-left"><p>17,463.99</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>128, 4096</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>2,696.61</p></td>
<td class="text-left"><p>5,598.92</p></td>
<td class="text-left"><p>11,524.93</p></td>
<td class="text-left"><p>16,634.90</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>3,714.87</p></td>
<td class="text-left"><p>8,209.91</p></td>
<td class="text-left"><p>12,598.55</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>500, 2000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>3,475.58</p></td>
<td class="text-left"><p>6,712.35</p></td>
<td class="text-left"><p>12,332.32</p></td>
<td class="text-left"><p>17,311.28</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>4,704.31</p></td>
<td class="text-left"><p>10,278.02</p></td>
<td class="text-left"><p>14,630.41</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>1000, 1000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>2,727.42</p></td>
<td class="text-left"><p>5,097.36</p></td>
<td class="text-left"><p>8,698.15</p></td>
<td class="text-left"><p>12,794.92</p></td>
<td class="text-left"><p>734.67</p></td>
<td class="text-left"><p>4,191.26</p></td>
<td class="text-left"><p>7,427.35</p></td>
<td class="text-left"><p>11,082.48</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>1000, 2000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>2,913.54</p></td>
<td class="text-left"><p>5,841.15</p></td>
<td class="text-left"><p>9,016.49</p></td>
<td class="text-left"><p>13,174.68</p></td>
<td class="text-left"><p>526.31</p></td>
<td class="text-left"><p>3,920.44</p></td>
<td class="text-left"><p>7,590.35</p></td>
<td class="text-left"><p>11,108.11</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>1024, 2048</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>2,893.02</p></td>
<td class="text-left"><p>5,565.28</p></td>
<td class="text-left"><p>9,017.72</p></td>
<td class="text-left"><p>13,117.34</p></td>
<td class="text-left"><p>525.43</p></td>
<td class="text-left"><p>3,896.14</p></td>
<td class="text-left"><p>7,557.32</p></td>
<td class="text-left"><p>11,028.32</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>2048, 128</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>433.30</p></td>
<td class="text-left"><p>772.97</p></td>
<td class="text-left"><p>1,278.26</p></td>
<td class="text-left"><p>1,947.33</p></td>
<td class="text-left"><p>315.90</p></td>
<td class="text-left"><p>747.51</p></td>
<td class="text-left"><p>1,240.12</p></td>
<td class="text-left"><p>1,840.12</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>2048, 2048</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>1,990.25</p></td>
<td class="text-left"><p>3,822.83</p></td>
<td class="text-left"><p>7,068.68</p></td>
<td class="text-left"><p>10,529.06</p></td>
<td class="text-left"><p>357.98</p></td>
<td class="text-left"><p>2,732.86</p></td>
<td class="text-left"><p>5,640.31</p></td>
<td class="text-left"><p>8,772.88</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>5000, 500</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>543.88</p></td>
<td class="text-left"><p>1,005.81</p></td>
<td class="text-left"><p>1,714.77</p></td>
<td class="text-left"><p>2,683.22</p></td>
<td class="text-left"><p>203.27</p></td>
<td class="text-left"><p>866.77</p></td>
<td class="text-left"><p>1,571.92</p></td>
<td class="text-left"><p>2,399.78</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>20000, 2000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>276.99</p></td>
<td class="text-left"><p>618.01</p></td>
<td class="text-left"><p>1,175.35</p></td>
<td class="text-left"><p>2,021.08</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>408.43</p></td>
<td class="text-left"><p>910.77</p></td>
<td class="text-left"><p>1,568.84</p></td>
</tr>
</tbody>
</table>
</div>
</section>
<section id="llama-3-1-405b-fp8">
<h4>Llama 3.1 405B FP8<a class="headerlink" href="#llama-3-1-405b-fp8" title="Link to this heading">#</a></h4>
<div class="pst-scrollable-table-container"><table class="table">
<thead>
<tr class="row-odd"><th class="head text-left"><p></p></th>
<th class="head text-left"><p>GPU</p></th>
<th class="head text-left"><p>H200 141GB HBM3</p></th>
<th class="head text-left"><p>H100 80GB HBM3</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td class="text-left"><p></p></td>
<td class="text-left"><p>TP Size</p></td>
<td class="text-left"><p>8</p></td>
<td class="text-left"><p>8</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>ISL, OSL</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
</tr>
<tr class="row-even"><td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p></p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>128, 128</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>3,800.11</p></td>
<td class="text-left"><p>3,732.40</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>128, 2048</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>5,661.13</p></td>
<td class="text-left"><p>4,572.23</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>128, 4096</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>5,167.18</p></td>
<td class="text-left"><p>2,911.42</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>500, 2000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>4,854.29</p></td>
<td class="text-left"><p>3,661.85</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>1000, 1000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>3,332.15</p></td>
<td class="text-left"><p>2,963.36</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>1000, 2000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>3,682.15</p></td>
<td class="text-left"><p>3,253.17</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>1024, 2048</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>3,685.56</p></td>
<td class="text-left"><p>3,089.16</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>2048, 128</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>453.42</p></td>
<td class="text-left"><p>448.89</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>2048, 2048</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>3,055.73</p></td>
<td class="text-left"><p>2,139.94</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p>5000, 500</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>656.11</p></td>
<td class="text-left"><p>579.14</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p>20000, 2000</p></td>
<td class="text-left"><p></p></td>
<td class="text-left"><p>514.02</p></td>
<td class="text-left"><p>370.26</p></td>
</tr>
</tbody>
</table>
</div>
</section>
</section>
</section>
<section id="reproducing-benchmarked-results">
<h2>Reproducing Benchmarked Results<a class="headerlink" href="#reproducing-benchmarked-results" title="Link to this heading">#</a></h2>
<blockquote>
<div><p>[!NOTE] The only models supported in this workflow are those listed in the table above.</p>
</div></blockquote>
<p>The following tables are references for commands that are used as part of the benchmarking process. For a more detailed
description of this benchmarking workflow, see the <a class="reference external" href="https://nvidia.github.io/TensorRT-LLM/performance/perf-benchmarking.html">benchmarking suite documentation</a>.</p>
<section id="command-overview">
<h3>Command Overview<a class="headerlink" href="#command-overview" title="Link to this heading">#</a></h3>
<p>Starting with v0.19, testing was performed using the PyTorch backend - this workflow does not require an engine to be built.</p>
<div class="pst-scrollable-table-container"><table class="table">
<thead>
<tr class="row-odd"><th class="head text-left"><p>Stage</p></th>
<th class="head"><p>Description</p></th>
<th class="head"><p>Command</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td class="text-left"><p><a class="reference internal" href="#preparing-a-dataset">Dataset</a></p></td>
<td><p>Create a synthetic dataset</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">python</span> <span class="pre">benchmarks/cpp/prepare_dataset.py</span> <span class="pre">--tokenizer=$model_name</span> <span class="pre">--stdout</span> <span class="pre">token-norm-dist</span> <span class="pre">--num-requests=$num_requests</span> <span class="pre">--input-mean=$isl</span> <span class="pre">--output-mean=$osl</span> <span class="pre">--input-stdev=0</span> <span class="pre">--output-stdev=0</span> <span class="pre">&gt;</span> <span class="pre">$dataset_file</span></code></p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p><a class="reference internal" href="#running-the-benchmark">Run</a></p></td>
<td><p>Run a benchmark with a dataset</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">trtllm-bench</span> <span class="pre">--model</span> <span class="pre">$model_name</span> <span class="pre">throughput</span> <span class="pre">--dataset</span> <span class="pre">$dataset_file</span> <span class="pre">--backend</span> <span class="pre">pytorch</span> <span class="pre">--extra_llm_api_options</span> <span class="pre">$llm_options</span></code></p></td>
</tr>
</tbody>
</table>
</div>
</section>
<section id="variables">
<h3>Variables<a class="headerlink" href="#variables" title="Link to this heading">#</a></h3>
<div class="pst-scrollable-table-container"><table class="table">
<thead>
<tr class="row-odd"><th class="head text-left"><p>Name</p></th>
<th class="head"><p>Description</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td class="text-left"><p><code class="docutils literal notranslate"><span class="pre">$isl</span></code></p></td>
<td><p>Benchmark input sequence length.</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p><code class="docutils literal notranslate"><span class="pre">$osl</span></code></p></td>
<td><p>Benchmark output sequence length.</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p><code class="docutils literal notranslate"><span class="pre">$tp_size</span></code></p></td>
<td><p>Tensor parallel mapping degree to run the benchmark with</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p><code class="docutils literal notranslate"><span class="pre">$pp_size</span></code></p></td>
<td><p>Pipeline parallel mapping degree to run the benchmark with</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p><code class="docutils literal notranslate"><span class="pre">$model_name</span></code></p></td>
<td><p>HuggingFace model name eg. meta-llama/Llama-2-7b-hf or use the path to a local weights directory</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p><code class="docutils literal notranslate"><span class="pre">$dataset_file</span></code></p></td>
<td><p>Location of the dataset file generated by <code class="docutils literal notranslate"><span class="pre">prepare_dataset.py</span></code></p></td>
</tr>
<tr class="row-even"><td class="text-left"><p><code class="docutils literal notranslate"><span class="pre">$num_requests</span></code></p></td>
<td><p>The number of requests to generate for dataset generation</p></td>
</tr>
<tr class="row-odd"><td class="text-left"><p><code class="docutils literal notranslate"><span class="pre">$seq_len</span></code></p></td>
<td><p>A sequence length of ISL + OSL</p></td>
</tr>
<tr class="row-even"><td class="text-left"><p><code class="docutils literal notranslate"><span class="pre">$llm_options</span></code></p></td>
<td><p>(optional) A yaml file containing additional options for the LLM API</p></td>
</tr>
</tbody>
</table>
</div>
</section>
<section id="preparing-a-dataset">
<h3>Preparing a Dataset<a class="headerlink" href="#preparing-a-dataset" title="Link to this heading">#</a></h3>
<p>In order to prepare a dataset, you can use the provided <a class="reference download internal" download="" href="../_downloads/ea8faa5e98124e92f96b66dc586fb429/prepare_dataset.py"><span class="xref download myst">script</span></a>.
To generate a synthetic dataset, run the following command:</p>
<div class="highlight-shell notranslate"><div class="highlight"><pre><span></span>python<span class="w"> </span>benchmarks/cpp/prepare_dataset.py<span class="w"> </span>--tokenizer<span class="o">=</span><span class="nv">$model_name</span><span class="w"> </span>--stdout<span class="w"> </span>token-norm-dist<span class="w"> </span>--num-requests<span class="o">=</span><span class="nv">$num_requests</span><span class="w"> </span>--input-mean<span class="o">=</span><span class="nv">$isl</span><span class="w"> </span>--output-mean<span class="o">=</span><span class="nv">$osl</span><span class="w"> </span>--input-stdev<span class="o">=</span><span class="m">0</span><span class="w"> </span>--output-stdev<span class="o">=</span><span class="m">0</span><span class="w"> </span>&gt;<span class="w"> </span><span class="nv">$dataset_file</span>
</pre></div>
</div>
<p>The command will generate a text file located at the path specified <code class="docutils literal notranslate"><span class="pre">$dataset_file</span></code> where all requests are of the same
input/output sequence length combinations. The script works by using the tokenizer to retrieve the vocabulary size and
randomly sample token IDs from it to create entirely random sequences. In the command above, all requests will be uniform
because the standard deviations for both input and output sequences are set to 0.</p>
<p>For each input and output sequence length combination, the table below details the <code class="docutils literal notranslate"><span class="pre">$num_requests</span></code> that were used. For
shorter input and output lengths, a larger number of messages were used to guarantee that the system hit a steady state
because requests enter and exit the system at a much faster rate. For longer input/output sequence lengths, requests
remain in the system longer and therefore require less requests to achieve steady state.</p>
<div class="pst-scrollable-table-container"><table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>Input Length</p></th>
<th class="head"><p>Output Length</p></th>
<th class="head"><p>$seq_len</p></th>
<th class="head"><p>$num_requests</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>128</p></td>
<td><p>128</p></td>
<td><p>256</p></td>
<td><p>30000</p></td>
</tr>
<tr class="row-odd"><td><p>128</p></td>
<td><p>2048</p></td>
<td><p>2176</p></td>
<td><p>3000</p></td>
</tr>
<tr class="row-even"><td><p>128</p></td>
<td><p>4096</p></td>
<td><p>4224</p></td>
<td><p>1500</p></td>
</tr>
<tr class="row-odd"><td><p>1000</p></td>
<td><p>2000</p></td>
<td><p>3000</p></td>
<td><p>1500</p></td>
</tr>
<tr class="row-even"><td><p>2048</p></td>
<td><p>128</p></td>
<td><p>2176</p></td>
<td><p>3000</p></td>
</tr>
<tr class="row-odd"><td><p>2048</p></td>
<td><p>2048</p></td>
<td><p>4096</p></td>
<td><p>1500</p></td>
</tr>
<tr class="row-even"><td><p>5000</p></td>
<td><p>500</p></td>
<td><p>5500</p></td>
<td><p>1500</p></td>
</tr>
<tr class="row-odd"><td><p>1000</p></td>
<td><p>1000</p></td>
<td><p>2000</p></td>
<td><p>3000</p></td>
</tr>
<tr class="row-even"><td><p>500</p></td>
<td><p>2000</p></td>
<td><p>2500</p></td>
<td><p>3000</p></td>
</tr>
<tr class="row-odd"><td><p>20000</p></td>
<td><p>2000</p></td>
<td><p>22000</p></td>
<td><p>1000</p></td>
</tr>
</tbody>
</table>
</div>
</section>
<section id="running-the-benchmark">
<h3>Running the Benchmark<a class="headerlink" href="#running-the-benchmark" title="Link to this heading">#</a></h3>
<p>To run the benchmark with the generated data set, simply use the <code class="docutils literal notranslate"><span class="pre">trtllm-bench</span> <span class="pre">throughput</span></code> subcommand. The benchmarker will
run an offline maximum throughput scenario such that all requests are queued in rapid succession. You simply need to provide
a model name (HuggingFace reference or path to a local model), a <a class="reference internal" href="#preparing-a-dataset">generated dataset</a>, and a file containing any desired extra options to the LLMApi (details in <a class="reference download internal" download="" href="../_downloads/cba6509356738d5d6b4dcb3b7f52cf39/llm_args.py"><span class="xref download myst">tensorrt_llm/llmapi/llm_args.py:LlmArgs</span></a>).</p>
<div class="highlight-shell notranslate"><div class="highlight"><pre><span></span>trtllm-bench<span class="w"> </span>--model<span class="w"> </span><span class="nv">$model_name</span><span class="w"> </span>throughput<span class="w"> </span>--dataset<span class="w"> </span><span class="nv">$dataset_file</span><span class="w"> </span>--backend<span class="w"> </span>pytorch<span class="w"> </span>--extra_llm_api_options<span class="w"> </span><span class="nv">$llm_options</span>
</pre></div>
</div>
<p><code class="docutils literal notranslate"><span class="pre">llm_options.yml</span></code></p>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nt">use_cuda_graph</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
<span class="nt">cuda_graph_padding_enabled</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
<span class="nt">cuda_graph_batch_sizes</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">1</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">2</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">4</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">8</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">16</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">32</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">64</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">128</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">256</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">384</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">512</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">1024</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">2048</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">4096</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">8192</span>
</pre></div>
</div>
<p>In majority of cases, we also use a higher KV cache percentage by setting <code class="docutils literal notranslate"><span class="pre">--kv_cache_free_gpu_mem_fraction</span> <span class="pre">0.95</span></code> in the benchmark command. This allows us to obtain better performance than the default setting of <code class="docutils literal notranslate"><span class="pre">0.90</span></code>. We fall back to <code class="docutils literal notranslate"><span class="pre">0.90</span></code> if we hit an out of memory issue.</p>
<p>The results will be printed to the terminal upon benchmark completion. For example,</p>
<div class="highlight-shell notranslate"><div class="highlight"><pre><span></span><span class="o">===========================================================</span>
<span class="o">=</span><span class="w"> </span>PERFORMANCE<span class="w"> </span><span class="nv">OVERVIEW</span>
<span class="o">===========================================================</span>
Request<span class="w"> </span>Throughput<span class="w"> </span><span class="o">(</span>req/sec<span class="o">)</span>:<span class="w"> </span><span class="m">43</span>.2089
Total<span class="w"> </span>Output<span class="w"> </span>Throughput<span class="w"> </span><span class="o">(</span>tokens/sec<span class="o">)</span>:<span class="w"> </span><span class="m">5530</span>.7382
Per<span class="w"> </span>User<span class="w"> </span>Output<span class="w"> </span>Throughput<span class="w"> </span><span class="o">(</span>tokens/sec/user<span class="o">)</span>:<span class="w"> </span><span class="m">2</span>.0563
Per<span class="w"> </span>GPU<span class="w"> </span>Output<span class="w"> </span>Throughput<span class="w"> </span><span class="o">(</span>tokens/sec/gpu<span class="o">)</span>:<span class="w"> </span><span class="m">5530</span>.7382
Total<span class="w"> </span>Token<span class="w"> </span>Throughput<span class="w"> </span><span class="o">(</span>tokens/sec<span class="o">)</span>:<span class="w"> </span><span class="m">94022</span>.5497
Total<span class="w"> </span>Latency<span class="w"> </span><span class="o">(</span>ms<span class="o">)</span>:<span class="w"> </span><span class="m">115716</span>.9214
Average<span class="w"> </span>request<span class="w"> </span>latency<span class="w"> </span><span class="o">(</span>ms<span class="o">)</span>:<span class="w"> </span><span class="m">75903</span>.4456
Per<span class="w"> </span>User<span class="w"> </span>Output<span class="w"> </span>Speed<span class="w"> </span><span class="o">[</span><span class="m">1</span>/TPOT<span class="o">]</span><span class="w"> </span><span class="o">(</span>tokens/sec/user<span class="o">)</span>:<span class="w"> </span><span class="m">5</span>.4656
Average<span class="w"> </span>time-to-first-token<span class="w"> </span><span class="o">[</span>TTFT<span class="o">]</span><span class="w"> </span><span class="o">(</span>ms<span class="o">)</span>:<span class="w"> </span><span class="m">52667</span>.0339
Average<span class="w"> </span>time-per-output-token<span class="w"> </span><span class="o">[</span>TPOT<span class="o">]</span><span class="w"> </span><span class="o">(</span>ms<span class="o">)</span>:<span class="w"> </span><span class="m">182</span>.9639
--<span class="w"> </span>Per-Request<span class="w"> </span>Time-per-Output-Token<span class="w"> </span><span class="o">[</span>TPOT<span class="o">]</span><span class="w"> </span>Breakdown<span class="w"> </span><span class="o">(</span>ms<span class="o">)</span>
<span class="o">[</span>TPOT<span class="o">]</span><span class="w"> </span>MINIMUM:<span class="w"> </span><span class="m">32</span>.8005
<span class="o">[</span>TPOT<span class="o">]</span><span class="w"> </span>MAXIMUM:<span class="w"> </span><span class="m">208</span>.4667
<span class="o">[</span>TPOT<span class="o">]</span><span class="w"> </span>AVERAGE:<span class="w"> </span><span class="m">182</span>.9639
<span class="o">[</span>TPOT<span class="o">]</span><span class="w"> </span>P50<span class="w"> </span>:<span class="w"> </span><span class="m">204</span>.0463
<span class="o">[</span>TPOT<span class="o">]</span><span class="w"> </span>P90<span class="w"> </span>:<span class="w"> </span><span class="m">206</span>.3863
<span class="o">[</span>TPOT<span class="o">]</span><span class="w"> </span>P95<span class="w"> </span>:<span class="w"> </span><span class="m">206</span>.5064
<span class="o">[</span>TPOT<span class="o">]</span><span class="w"> </span>P99<span class="w"> </span>:<span class="w"> </span><span class="m">206</span>.5821
--<span class="w"> </span>Per-Request<span class="w"> </span>Time-to-First-Token<span class="w"> </span><span class="o">[</span>TTFT<span class="o">]</span><span class="w"> </span>Breakdown<span class="w"> </span><span class="o">(</span>ms<span class="o">)</span>
<span class="o">[</span>TTFT<span class="o">]</span><span class="w"> </span>MINIMUM:<span class="w"> </span><span class="m">3914</span>.7621
<span class="o">[</span>TTFT<span class="o">]</span><span class="w"> </span>MAXIMUM:<span class="w"> </span><span class="m">107501</span>.2487
<span class="o">[</span>TTFT<span class="o">]</span><span class="w"> </span>AVERAGE:<span class="w"> </span><span class="m">52667</span>.0339
<span class="o">[</span>TTFT<span class="o">]</span><span class="w"> </span>P50<span class="w"> </span>:<span class="w"> </span><span class="m">52269</span>.7072
<span class="o">[</span>TTFT<span class="o">]</span><span class="w"> </span>P90<span class="w"> </span>:<span class="w"> </span><span class="m">96583</span>.7187
<span class="o">[</span>TTFT<span class="o">]</span><span class="w"> </span>P95<span class="w"> </span>:<span class="w"> </span><span class="m">101978</span>.4566
<span class="o">[</span>TTFT<span class="o">]</span><span class="w"> </span>P99<span class="w"> </span>:<span class="w"> </span><span class="m">106563</span>.4497
--<span class="w"> </span>Request<span class="w"> </span>Latency<span class="w"> </span>Breakdown<span class="w"> </span><span class="o">(</span>ms<span class="o">)</span><span class="w"> </span>-----------------------
<span class="o">[</span>Latency<span class="o">]</span><span class="w"> </span>P50<span class="w"> </span>:<span class="w"> </span><span class="m">78509</span>.2102
<span class="o">[</span>Latency<span class="o">]</span><span class="w"> </span>P90<span class="w"> </span>:<span class="w"> </span><span class="m">110804</span>.0017
<span class="o">[</span>Latency<span class="o">]</span><span class="w"> </span>P95<span class="w"> </span>:<span class="w"> </span><span class="m">111302</span>.9101
<span class="o">[</span>Latency<span class="o">]</span><span class="w"> </span>P99<span class="w"> </span>:<span class="w"> </span><span class="m">111618</span>.2158
<span class="o">[</span>Latency<span class="o">]</span><span class="w"> </span>MINIMUM:<span class="w"> </span><span class="m">24189</span>.0838
<span class="o">[</span>Latency<span class="o">]</span><span class="w"> </span>MAXIMUM:<span class="w"> </span><span class="m">111668</span>.0964
<span class="o">[</span>Latency<span class="o">]</span><span class="w"> </span>AVERAGE:<span class="w"> </span><span class="m">75903</span>.4456
</pre></div>
</div>
<blockquote>
<div><p>[!WARNING] In some cases, the benchmarker may not print anything at all. This behavior usually
means that the benchmark has hit an out of memory issue. Try reducing the KV cache percentage
using the <code class="docutils literal notranslate"><span class="pre">--kv_cache_free_gpu_mem_fraction</span></code> option to lower the percentage of used memory.</p>
</div></blockquote>
</section>
</section>
</section>
</article>
<footer class="prev-next-footer d-print-none">
<div class="prev-next-area">
<a class="left-prev"
href="../advanced/disaggregated-service.html"
title="previous page">
<i class="fa-solid fa-angle-left"></i>
<div class="prev-next-info">
<p class="prev-next-subtitle">previous</p>
<p class="prev-next-title">Disaggregated-Service (experimental)</p>
</div>
</a>
<a class="right-next"
href="perf-benchmarking.html"
title="next page">
<div class="prev-next-info">
<p class="prev-next-subtitle">next</p>
<p class="prev-next-title">TensorRT-LLM Benchmarking</p>
</div>
<i class="fa-solid fa-angle-right"></i>
</a>
</div>
</footer>
</div>
<dialog id="pst-secondary-sidebar-modal"></dialog>
<div id="pst-secondary-sidebar" class="bd-sidebar-secondary bd-toc"><div class="sidebar-secondary-items sidebar-secondary__inner">
<div class="sidebar-secondary-item">
<div
id="pst-page-navigation-heading-2"
class="page-toc tocsection onthispage">
<i class="fa-solid fa-list"></i> On this page
</div>
<nav class="bd-toc-nav page-toc" aria-labelledby="pst-page-navigation-heading-2">
<ul class="visible nav section-nav flex-column">
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#throughput-measurements">Throughput Measurements</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#fp4-models">FP4 Models:</a><ul class="nav section-nav flex-column">
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#llama-3-3-70b-fp4">Llama 3.3 70B FP4</a></li>
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#llama-3-1-405b-fp4">Llama 3.1 405B FP4</a></li>
</ul>
</li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#fp8-models">FP8 Models:</a><ul class="nav section-nav flex-column">
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#llama-3-1-8b-fp8">Llama 3.1 8B FP8</a></li>
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#llama-3-1-70b-fp8">Llama 3.1 70B FP8</a></li>
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#llama-3-1-405b-fp8">Llama 3.1 405B FP8</a></li>
</ul>
</li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#reproducing-benchmarked-results">Reproducing Benchmarked Results</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#command-overview">Command Overview</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#variables">Variables</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#preparing-a-dataset">Preparing a Dataset</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#running-the-benchmark">Running the Benchmark</a></li>
</ul>
</li>
</ul>
</nav></div>
</div></div>
</div>
<footer class="bd-footer-content">
</footer>
</main>
</div>
</div>
<!-- Scripts loaded after <body> so the DOM is not blocked -->
<script defer src="../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf"></script>
<script defer src="../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf"></script>
<footer class="bd-footer">
<div class="bd-footer__inner bd-page-width">
<div class="footer-items__start">
<div class="footer-item">
<a class="footer-brand logo" href="https://www.nvidia.com">
<img src="../_static/nvidia-logo-horiz-rgb-1c-blk-for-screen.svg" class="logo__image only-light" alt="NVIDIA"/>
<img src="../_static/nvidia-logo-horiz-rgb-1c-wht-for-screen.svg" class="logo__image only-dark" alt="NVIDIA"/>
</a></div>
<div class="footer-item">
<div class="footer-links">
<a class="external" href="https://www.nvidia.com/en-us/about-nvidia/privacy-policy/">Privacy Policy</a>
|
<a class="external" href="https://www.nvidia.com/en-us/about-nvidia/privacy-center/">Manage My Privacy</a>
|
<a class="external" href="https://www.nvidia.com/en-us/preferences/start/">Do Not Sell or Share My Data</a>
|
<a class="external" href="https://www.nvidia.com/en-us/about-nvidia/terms-of-service/">Terms of Service</a>
|
<a class="external" href="https://www.nvidia.com/en-us/about-nvidia/accessibility/">Accessibility</a>
|
<a class="external" href="https://www.nvidia.com/en-us/about-nvidia/company-policies/">Corporate Policies</a>
|
<a class="external" href="https://www.nvidia.com/en-us/product-security/">Product Security</a>
|
<a class="external" href="https://www.nvidia.com/en-us/contact/">Contact</a>
</div>
</div>
<div class="footer-item">
<p class="copyright">
Copyright © 2025, NVidia.
<br/>
</p>
</div>
<div class="footer-item">
<div class="extra_footer">
<p>Last updated on June 16, 2025.</p>
<p>This page is generated by TensorRT-LLM commit <a href="https://github.com/NVIDIA/TensorRT-LLM/tree/8445416">8445416</a>.</p>
</div></div>
</div>
</div>
</footer>
</body>
</html>