From f045501eefd9f9f239617de6257bda88c6bac1a4 Mon Sep 17 00:00:00 2001 From: dalthecow Date: Mon, 20 Oct 2025 19:51:17 -0400 Subject: [PATCH 1/5] add dots with tooltip to line chart Signed-off-by: dalthecow --- src/guidellm/presentation/data_models.py | 22 ++++++++++++++- .../MetricLine/MetricLine.component.tsx | 28 +++++++++++++++++-- .../MetricsSummary.component.tsx | 2 +- src/ui/lib/store/benchmarksWindowData.ts | 10 +++++++ .../benchmarks/benchmarks.interfaces.ts | 1 + .../slices/benchmarks/benchmarks.selectors.ts | 25 ++++++++++++++--- tests/unit/presentation/test_data_models.py | 10 ++++++- 7 files changed, 88 insertions(+), 10 deletions(-) diff --git a/src/guidellm/presentation/data_models.py b/src/guidellm/presentation/data_models.py index deec925c1..17a8b2980 100644 --- a/src/guidellm/presentation/data_models.py +++ b/src/guidellm/presentation/data_models.py @@ -5,6 +5,8 @@ from pydantic import BaseModel, computed_field +from guidellm.scheduler.strategy import SchedulingStrategy + if TYPE_CHECKING: from guidellm.benchmark import GenerativeBenchmark @@ -216,11 +218,29 @@ class BenchmarkDatum(BaseModel): ttft: TabularDistributionSummary throughput: TabularDistributionSummary time_per_request: TabularDistributionSummary + strategy_display_str: str + + @classmethod + def get_strategy_display_str(cls, strategy: SchedulingStrategy): + strategy_type = strategy if isinstance(strategy, str) else strategy.type_ + strategy_instance = ( + strategy if isinstance(strategy, SchedulingStrategy) else None + ) + + if strategy_type == "concurrent": + rate = f"@{strategy.streams}" if strategy_instance else "@##" # type: ignore[attr-defined] + elif strategy_type in ("constant", "poisson"): + rate = f"@{strategy.rate:.2f}" if strategy_instance else "@#.##" # type: ignore[attr-defined] + else: + rate = "" + return f"{strategy_type}{rate}" @classmethod def from_benchmark(cls, bm: "GenerativeBenchmark"): + rps = bm.metrics.requests_per_second.successful.mean return cls( - requests_per_second=bm.metrics.requests_per_second.successful.mean, + strategy_display_str=cls.get_strategy_display_str(bm.args.strategy), + requests_per_second=rps, itl=TabularDistributionSummary.from_distribution_summary( bm.metrics.inter_token_latency_ms.successful ), diff --git a/src/ui/lib/components/Charts/MetricLine/MetricLine.component.tsx b/src/ui/lib/components/Charts/MetricLine/MetricLine.component.tsx index 8b1b4df25..eb1235937 100644 --- a/src/ui/lib/components/Charts/MetricLine/MetricLine.component.tsx +++ b/src/ui/lib/components/Charts/MetricLine/MetricLine.component.tsx @@ -1,5 +1,6 @@ -import { useTheme } from '@mui/material'; -import { ResponsiveLine } from '@nivo/line'; +import { Typography, useTheme } from '@mui/material'; +import { PointTooltipProps, ResponsiveLine } from '@nivo/line'; +import { BasicTooltip } from '@nivo/tooltip'; import React, { FC } from 'react'; import { useColor } from '@/lib/hooks/useColor'; @@ -49,11 +50,30 @@ export const Component: FC = ({ reverse: false, }; } + type PointTooltipPropsWithLabel = PointTooltipProps & { + point: { + data: { + label: string; + }; + }; + }; return ( ( + + {(point as PointTooltipPropsWithLabel).point.data.label} + + } + color={point.point.color} + enableChip={true} + /> + )} + pointSize={10} colors={[selectedColor]} margin={{ top: 20, right: 10, bottom: 20, left: 35.5 }} xScale={{ type: 'linear', min: minX }} @@ -92,7 +112,6 @@ export const Component: FC = ({ }} enableGridX={false} enableGridY={false} - pointSize={0} useMesh={true} layers={[ CustomAxes, @@ -115,6 +134,9 @@ export const Component: FC = ({ ), 'axes', 'lines', + 'points', + 'markers', + 'mesh', ]} theme={lineTheme} /> diff --git a/src/ui/lib/components/MetricsSummary/MetricsSummary.component.tsx b/src/ui/lib/components/MetricsSummary/MetricsSummary.component.tsx index 8f5e3aed2..0a453d1f8 100644 --- a/src/ui/lib/components/MetricsSummary/MetricsSummary.component.tsx +++ b/src/ui/lib/components/MetricsSummary/MetricsSummary.component.tsx @@ -102,7 +102,7 @@ export const Component = () => { return ( <> - + diff --git a/src/ui/lib/store/benchmarksWindowData.ts b/src/ui/lib/store/benchmarksWindowData.ts index 87faf7bc3..5bbbcfaa2 100644 --- a/src/ui/lib/store/benchmarksWindowData.ts +++ b/src/ui/lib/store/benchmarksWindowData.ts @@ -1,5 +1,6 @@ export const benchmarksScript = `window.benchmarks = [ { + strategyDisplayStr: "synchronous", requestsPerSecond: 11.411616848282272, itl: { mean: 8.758024845683707, @@ -171,6 +172,7 @@ export const benchmarksScript = `window.benchmarks = [ }, }, { + strategyDisplayStr: "constant@36.28", requestsPerSecond: 36.289181300710815, itl: { mean: 588.0161376137819, @@ -342,6 +344,7 @@ export const benchmarksScript = `window.benchmarks = [ }, }, { + strategyDisplayStr: "constant@20.75", requestsPerSecond: 20.752070927855794, itl: { mean: 116.28360712595156, @@ -513,6 +516,7 @@ export const benchmarksScript = `window.benchmarks = [ }, }, { + strategyDisplayStr: "constant@26.81", requestsPerSecond: 26.81917480361788, itl: { mean: 299.7306064613554, @@ -684,6 +688,7 @@ export const benchmarksScript = `window.benchmarks = [ }, }, { + strategyDisplayStr: "constant@26.82", requestsPerSecond: 26.823988819498975, itl: { mean: 683.8011571339198, @@ -855,6 +860,7 @@ export const benchmarksScript = `window.benchmarks = [ }, }, { + strategyDisplayStr: "constant@24.50", requestsPerSecond: 24.50047903792646, itl: { mean: 742.9258901891964, @@ -1026,6 +1032,7 @@ export const benchmarksScript = `window.benchmarks = [ }, }, { + strategyDisplayStr: "constant@25.61", requestsPerSecond: 25.617829792196602, itl: { mean: 663.3098317044122, @@ -1197,6 +1204,7 @@ export const benchmarksScript = `window.benchmarks = [ }, }, { + strategyDisplayStr: "constant@37.02", requestsPerSecond: 37.02892550982192, itl: { mean: 606.4144710877113, @@ -1368,6 +1376,7 @@ export const benchmarksScript = `window.benchmarks = [ }, }, { + strategyDisplayStr: "constant@37.29", requestsPerSecond: 37.29183354201869, itl: { mean: 603.3237551205925, @@ -1539,6 +1548,7 @@ export const benchmarksScript = `window.benchmarks = [ }, }, { + strategyDisplayStr: "throughput", requestsPerSecond: 37.45318312972309, itl: { mean: 600.7204526769262, diff --git a/src/ui/lib/store/slices/benchmarks/benchmarks.interfaces.ts b/src/ui/lib/store/slices/benchmarks/benchmarks.interfaces.ts index 2a5f319eb..a17bfb5f0 100644 --- a/src/ui/lib/store/slices/benchmarks/benchmarks.interfaces.ts +++ b/src/ui/lib/store/slices/benchmarks/benchmarks.interfaces.ts @@ -27,6 +27,7 @@ export interface BenchmarkMetrics { export interface Benchmark extends BenchmarkMetrics { requestsPerSecond: number; + strategyDisplayStr: string; } export type Benchmarks = Benchmark[]; diff --git a/src/ui/lib/store/slices/benchmarks/benchmarks.selectors.ts b/src/ui/lib/store/slices/benchmarks/benchmarks.selectors.ts index 9aa5fd819..f7b9da238 100644 --- a/src/ui/lib/store/slices/benchmarks/benchmarks.selectors.ts +++ b/src/ui/lib/store/slices/benchmarks/benchmarks.selectors.ts @@ -11,6 +11,18 @@ import { selectSloState } from '../slo/slo.selectors'; export const selectBenchmarks = (state: RootState) => state.benchmarks.data; +const getUnitsByMetric = (metric: string) => { + switch (metric) { + case 'ttft': + case 'tpot': + return 'ms'; + case 'timePerRequest': + return 'sec'; + case 'throughput': + return 'tok/s'; + } +}; + export const selectMetricsSummaryLineData = createSelector( [selectBenchmarks, selectSloState], (benchmarks, sloState) => { @@ -18,8 +30,10 @@ export const selectMetricsSummaryLineData = createSelector( ?.slice() ?.sort((bm1, bm2) => (bm1.requestsPerSecond > bm2.requestsPerSecond ? 1 : -1)); const selectedPercentile = sloState.enforcedPercentile; - - const lineData: { [K in keyof BenchmarkMetrics]: Point[] } = { + interface PointWithLabel extends Point { + label: string; + } + const lineData: { [K in keyof BenchmarkMetrics]: PointWithLabel[] } = { ttft: [], itl: [], timePerRequest: [], @@ -32,14 +46,17 @@ export const selectMetricsSummaryLineData = createSelector( 'throughput', ]; metrics.forEach((metric) => { - const data: Point[] = []; + const data: PointWithLabel[] = []; sortedByRPS?.forEach((benchmark) => { const percentile = benchmark[metric].percentileRows.find( (p) => p.percentile === selectedPercentile ); + const yValue = percentile?.value ?? 0; + const units = getUnitsByMetric(metric); data.push({ x: benchmark.requestsPerSecond, - y: percentile?.value ?? 0, + y: yValue, + label: `${benchmark.strategyDisplayStr} ${formatNumber(yValue)} ${units}`, }); }); diff --git a/tests/unit/presentation/test_data_models.py b/tests/unit/presentation/test_data_models.py index c1663c435..e879406df 100644 --- a/tests/unit/presentation/test_data_models.py +++ b/tests/unit/presentation/test_data_models.py @@ -1,6 +1,7 @@ import pytest -from guidellm.presentation.data_models import Bucket +from guidellm.presentation.data_models import BenchmarkDatum, Bucket +from tests.unit.mock_benchmark import mock_generative_benchmark @pytest.mark.smoke @@ -18,3 +19,10 @@ def test_bucket_from_data(): assert buckets[1].value == 8.0 assert buckets[1].count == 5 assert bucket_width == 1 + + +@pytest.mark.smoke +def test_from_benchmark_includes_strategy_display_str(): + mock_bm = mock_generative_benchmark() + bm = BenchmarkDatum.from_benchmark(mock_bm) + assert bm.strategy_display_str == "synchronous" From e175f2b690b1086e141bec19497ce840c6318cdc Mon Sep 17 00:00:00 2001 From: dalthecow Date: Mon, 20 Oct 2025 23:22:30 -0400 Subject: [PATCH 2/5] fix type issues Signed-off-by: dalthecow --- src/guidellm/presentation/data_models.py | 4 +- src/ui/lib/store/benchmarksWindowData.ts | 2722 +++++++++-------- src/ui/lib/store/runInfoWindowData.ts | 6 +- src/ui/lib/store/workloadDetailsWindowData.ts | 244 +- 4 files changed, 1533 insertions(+), 1443 deletions(-) diff --git a/src/guidellm/presentation/data_models.py b/src/guidellm/presentation/data_models.py index 17a8b2980..bb2a99c5d 100644 --- a/src/guidellm/presentation/data_models.py +++ b/src/guidellm/presentation/data_models.py @@ -5,7 +5,7 @@ from pydantic import BaseModel, computed_field -from guidellm.scheduler.strategy import SchedulingStrategy +from guidellm.scheduler import SchedulingStrategy if TYPE_CHECKING: from guidellm.benchmark import GenerativeBenchmark @@ -239,7 +239,7 @@ def get_strategy_display_str(cls, strategy: SchedulingStrategy): def from_benchmark(cls, bm: "GenerativeBenchmark"): rps = bm.metrics.requests_per_second.successful.mean return cls( - strategy_display_str=cls.get_strategy_display_str(bm.args.strategy), + strategy_display_str=cls.get_strategy_display_str(bm.scheduler.strategy), requests_per_second=rps, itl=TabularDistributionSummary.from_distribution_summary( bm.metrics.inter_token_latency_ms.successful diff --git a/src/ui/lib/store/benchmarksWindowData.ts b/src/ui/lib/store/benchmarksWindowData.ts index 5bbbcfaa2..cf3f3f5e9 100644 --- a/src/ui/lib/store/benchmarksWindowData.ts +++ b/src/ui/lib/store/benchmarksWindowData.ts @@ -1,1722 +1,1762 @@ export const benchmarksScript = `window.benchmarks = [ { - strategyDisplayStr: "synchronous", - requestsPerSecond: 11.411616848282272, - itl: { - mean: 8.758024845683707, - median: 8.788176945277623, - mode: 7.119315011160714, - variance: 0.3289263782653722, - stdDev: 0.5735210355909992, - min: 7.119315011160714, - max: 10.9208311353411, - count: 141, - totalSum: 1234.8815032414027, - percentiles: { - p001: 7.119315011160714, - p01: 7.164444242204938, - p05: 7.513999938964844, - p10: 8.169140134538923, - p25: 8.586951664515905, - p50: 8.788176945277623, - p75: 9.003571101597377, - p90: 9.308576583862305, - p95: 9.504761014665876, - p99: 10.393142700195312, - p999: 10.9208311353411, + "itl": { + "mean": 336.5177893577242, + "median": 302.4392366409302, + "mode": 155.73881123517012, + "variance": 23420.77999319178, + "min": 155.73881123517012, + "max": 601.7317175865173, + "count": 5, + "percentiles": { + "p001": 155.73881123517012, + "p01": 155.73881123517012, + "p05": 155.73881123517012, + "p10": 155.73881123517012, + "p25": 235.00086466471353, + "p50": 302.4392366409302, + "p75": 387.6783166612898, + "p90": 601.7317175865173, + "p95": 601.7317175865173, + "p99": 601.7317175865173, + "p999": 601.7317175865173 }, - percentileRows: [ + "stdDev": 153.0384918678689, + "totalSum": 1682.588946788621, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 8.788176945277623, + "percentile": "p50", + "value": 302.4392366409302 }, { - percentile: 'p90', - value: 9.308576583862305, + "percentile": "p90", + "value": 601.7317175865173 }, { - percentile: 'p95', - value: 9.504761014665876, + "percentile": "p95", + "value": 601.7317175865173 }, { - percentile: 'p99', - value: 10.393142700195312, - }, - ], + "percentile": "p99", + "value": 601.7317175865173 + } + ] }, - ttft: { - mean: 24.680864726398006, - median: 23.874998092651367, - mode: 22.01700210571289, - variance: 6.960879030702799, - stdDev: 2.6383477842587015, - min: 22.01700210571289, - max: 38.763999938964844, - count: 141, - totalSum: 3480.001926422119, - percentiles: { - p001: 22.01700210571289, - p01: 22.218942642211914, - p05: 22.49598503112793, - p10: 22.723674774169922, - p25: 23.18596839904785, - p50: 23.874998092651367, - p75: 24.981975555419922, - p90: 27.83489227294922, - p95: 30.942916870117188, - p99: 34.74783897399902, - p999: 38.763999938964844, + "ttft": { + "mean": 5.120992660522461, + "median": 4.297971725463867, + "mode": 3.3860206604003906, + "variance": 3.8452672697530943, + "min": 3.3860206604003906, + "max": 8.816242218017578, + "count": 5, + "percentiles": { + "p001": 3.3860206604003906, + "p01": 3.3860206604003906, + "p05": 3.3860206604003906, + "p10": 3.3860206604003906, + "p25": 3.7658214569091797, + "p50": 4.297971725463867, + "p75": 5.338907241821289, + "p90": 8.816242218017578, + "p95": 8.816242218017578, + "p99": 8.816242218017578, + "p999": 8.816242218017578 }, - percentileRows: [ + "stdDev": 1.9609353048362137, + "totalSum": 25.604963302612305, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 23.874998092651367, + "percentile": "p50", + "value": 4.297971725463867 }, { - percentile: 'p90', - value: 27.83489227294922, + "percentile": "p90", + "value": 8.816242218017578 }, { - percentile: 'p95', - value: 30.942916870117188, + "percentile": "p95", + "value": 8.816242218017578 }, { - percentile: 'p99', - value: 34.74783897399902, - }, - ], + "percentile": "p99", + "value": 8.816242218017578 + } + ] }, - throughput: { - mean: 91.21200133343346, - median: 111.06031880527459, - mode: 112.25822337606724, - variance: 1131.7836977561178, - stdDev: 33.64199307050814, - min: 0.0, - max: 132.49633560778366, - count: 388, - totalSum: 33659.178494722335, - percentiles: { - p001: 0.0, - p01: 29.332438178359627, - p05: 37.242645687749174, - p10: 39.52416132679985, - p25: 42.258712582994974, - p50: 111.06031880527459, - p75: 114.19908516663037, - p90: 116.31136130445634, - p95: 117.65228611500702, - p99: 122.08714888662495, - p999: 132.49633560778366, + "throughput": { + "mean": 3.9529636900665994, + "median": 3.631115365932668, + "mode": 2.0692075588386403, + "variance": 2.3918490244800985, + "min": 2.0692075588386403, + "max": 6.58984523263562, + "count": 5, + "percentiles": { + "p001": 2.0692075588386403, + "p01": 2.0692075588386403, + "p05": 2.0692075588386403, + "p10": 2.0692075588386403, + "p25": 2.943291965733905, + "p50": 3.631115365932668, + "p75": 4.531358327192162, + "p90": 6.58984523263562, + "p95": 6.58984523263562, + "p99": 6.58984523263562, + "p999": 6.58984523263562 }, - percentileRows: [ + "stdDev": 1.5465603850092948, + "totalSum": 19.764818450332996, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 111.06031880527459, + "percentile": "p50", + "value": 3.631115365932668 }, { - percentile: 'p90', - value: 116.31136130445634, + "percentile": "p90", + "value": 6.58984523263562 }, { - percentile: 'p95', - value: 117.65228611500702, + "percentile": "p95", + "value": 6.58984523263562 }, { - percentile: 'p99', - value: 122.08714888662495, - }, - ], + "percentile": "p99", + "value": 6.58984523263562 + } + ] }, - timePerRequest: { - mean: 0.0869351363351159, - median: 0.08605790138244629, - mode: 0.08000683784484863, - variance: 1.7069091574769884e-5, - stdDev: 0.004131475713927153, - min: 0.08000683784484863, - max: 0.10561299324035645, - count: 141, - totalSum: 12.257854223251343, - percentiles: { - p001: 0.08000683784484863, - p01: 0.08143115043640137, - p05: 0.08298420906066895, - p10: 0.08342385292053223, - p25: 0.08434486389160156, - p50: 0.08605790138244629, - p75: 0.08783197402954102, - p90: 0.09138989448547363, - p95: 0.09475302696228027, - p99: 0.10389590263366699, - p999: 0.10561299324035645, + "requestsPerSecond": 0.28626425388917154, + "timePerRequest": { + "mean": 3.492239856719971, + "median": 3.029372215270996, + "mode": 2.416383981704712, + "variance": 1.4289222508031936, + "min": 2.416383981704712, + "max": 5.766448020935059, + "count": 5, + "percentiles": { + "p001": 2.416383981704712, + "p01": 2.416383981704712, + "p05": 2.416383981704712, + "p10": 2.416383981704712, + "p25": 2.7180449962615967, + "p50": 3.029372215270996, + "p75": 3.5309500694274902, + "p90": 5.766448020935059, + "p95": 5.766448020935059, + "p99": 5.766448020935059, + "p999": 5.766448020935059 }, - percentileRows: [ + "stdDev": 1.1953753597942336, + "totalSum": 17.461199283599854, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 0.08605790138244629, + "percentile": "p50", + "value": 3.029372215270996 }, { - percentile: 'p90', - value: 0.09138989448547363, + "percentile": "p90", + "value": 5.766448020935059 }, { - percentile: 'p95', - value: 0.09475302696228027, + "percentile": "p95", + "value": 5.766448020935059 }, { - percentile: 'p99', - value: 0.10389590263366699, - }, - ], + "percentile": "p99", + "value": 5.766448020935059 + } + ] }, + "strategyDisplayStr": "synchronous" }, { - strategyDisplayStr: "constant@36.28", - requestsPerSecond: 36.289181300710815, - itl: { - mean: 588.0161376137819, - median: 461.7137227739607, - mode: 323.1611592429025, - variance: 19560.214456505688, - stdDev: 139.85783659311224, - min: 323.1611592429025, - max: 988.006728036063, - count: 256, - totalSum: 150532.13122912816, - percentiles: { - p001: 323.1611592429025, - p01: 388.2312774658203, - p05: 394.99473571777344, - p10: 460.00800813947404, - p25: 460.8048711504255, - p50: 461.7137227739607, - p75: 726.0744231087821, - p90: 726.3181550162179, - p95: 726.4585835593087, - p99: 726.9112723214286, - p999: 988.006728036063, + "itl": { + "mean": 334.4438080323693, + "median": 323.4562344021267, + "mode": 154.71270922068004, + "variance": 13980.04854795609, + "min": 154.71270922068004, + "max": 602.2610068321228, + "count": 2114, + "percentiles": { + "p001": 154.750682212211, + "p01": 154.8772631464778, + "p05": 155.01394787350216, + "p10": 184.2253307501475, + "p25": 267.29025443394977, + "p50": 323.4562344021267, + "p75": 386.63128444126676, + "p90": 600.1293063163757, + "p95": 601.1272072792053, + "p99": 601.635992527008, + "p999": 602.0324230194092 }, - percentileRows: [ + "stdDev": 118.23725532993436, + "totalSum": 707014.2101804288, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 461.7137227739607, + "percentile": "p50", + "value": 323.4562344021267 }, { - percentile: 'p90', - value: 726.3181550162179, + "percentile": "p90", + "value": 600.1293063163757 }, { - percentile: 'p95', - value: 726.4585835593087, + "percentile": "p95", + "value": 601.1272072792053 }, { - percentile: 'p99', - value: 726.9112723214286, - }, - ], + "percentile": "p99", + "value": 601.635992527008 + } + ] }, - ttft: { - mean: 2801.9311213865876, - median: 3645.9569931030273, - mode: 120.23282051086426, - variance: 876438.9633642528, - stdDev: 936.1831889989548, - min: 120.23282051086426, - max: 4289.892911911011, - count: 256, - totalSum: 717294.3670749664, - percentiles: { - p001: 120.23282051086426, - p01: 1860.9709739685059, - p05: 1867.4709796905518, - p10: 1874.9330043792725, - p25: 1898.1659412384033, - p50: 3645.9569931030273, - p75: 3683.4659576416016, - p90: 3707.062005996704, - p95: 3714.3311500549316, - p99: 4193.973064422607, - p999: 4289.892911911011, + "ttft": { + "mean": 5.782735494362823, + "median": 2.456188201904297, + "mode": 1.0809898376464844, + "variance": 78.66216694110919, + "min": 1.0809898376464844, + "max": 43.398141860961914, + "count": 2114, + "percentiles": { + "p001": 1.0938644409179688, + "p01": 1.216888427734375, + "p05": 1.4331340789794922, + "p10": 1.5881061553955078, + "p25": 1.911163330078125, + "p50": 2.456188201904297, + "p75": 3.4770965576171875, + "p90": 22.060155868530273, + "p95": 31.609058380126953, + "p99": 37.21785545349121, + "p999": 39.9317741394043 }, - percentileRows: [ + "stdDev": 8.869169461742695, + "totalSum": 12224.702835083008, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 3645.9569931030273, + "percentile": "p50", + "value": 2.456188201904297 }, { - percentile: 'p90', - value: 3707.062005996704, + "percentile": "p90", + "value": 22.060155868530273 }, { - percentile: 'p95', - value: 3714.3311500549316, + "percentile": "p95", + "value": 31.609058380126953 }, { - percentile: 'p99', - value: 4193.973064422607, - }, - ], + "percentile": "p99", + "value": 37.21785545349121 + } + ] }, - throughput: { - mean: 290.17169579123066, - median: 2.574805445619618, - mode: 1.0106780980195134, - variance: 32683153.434954323, - stdDev: 5716.91817633892, - min: 0.0, - max: 1677721.6, - count: 541, - totalSum: 26954108.473821327, - percentiles: { - p001: 0.0, - p01: 0.0, - p05: 1.0106780980195134, - p10: 1.0106780980195134, - p25: 1.1875075558681243, - p50: 2.574805445619618, - p75: 4.724922214536926, - p90: 7.90451942158339, - p95: 16.513072886113726, - p99: 1795.5068493150684, - p999: 62601.55223880597, + "throughput": { + "mean": 3.720002154325547, + "median": 3.4258599702411217, + "mode": 2.04542903153663, + "variance": 1.4774396220493204, + "min": 2.04542903153663, + "max": 6.636503352696102, + "count": 2114, + "percentiles": { + "p001": 2.047653058783497, + "p01": 2.0612266741731684, + "p05": 2.0766673380440657, + "p10": 2.0803713089477656, + "p25": 2.952173366027304, + "p50": 3.4258599702411217, + "p75": 4.049588226639594, + "p90": 5.649951064247546, + "p95": 6.620571215703854, + "p99": 6.62725766339113, + "p999": 6.6339250483901955 }, - percentileRows: [ + "stdDev": 1.2154997416903552, + "totalSum": 7864.084554244206, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 2.574805445619618, + "percentile": "p50", + "value": 3.4258599702411217 }, { - percentile: 'p90', - value: 7.90451942158339, + "percentile": "p90", + "value": 5.649951064247546 }, { - percentile: 'p95', - value: 16.513072886113726, + "percentile": "p95", + "value": 6.620571215703854 }, { - percentile: 'p99', - value: 1795.5068493150684, - }, - ], + "percentile": "p99", + "value": 6.62725766339113 + } + ] }, - timePerRequest: { - mean: 6.962754532694817, - median: 6.958127975463867, - mode: 6.888041973114014, - variance: 0.002266230397153679, - stdDev: 0.04760494089013954, - min: 6.888041973114014, - max: 7.051568031311035, - count: 256, - totalSum: 1782.465160369873, - percentiles: { - p001: 6.888041973114014, - p01: 6.888926029205322, - p05: 6.892949104309082, - p10: 6.902682065963745, - p25: 6.92248797416687, - p50: 6.958127975463867, - p75: 6.9972498416900635, - p90: 7.035952091217041, - p95: 7.041622877120972, - p99: 7.051159858703613, - p999: 7.051568031311035, + "requestsPerSecond": 140.88276610971627, + "timePerRequest": { + "mean": 3.217339436739486, + "median": 2.909677028656006, + "mode": 2.4034171104431152, + "variance": 0.7625678535614032, + "min": 2.4034171104431152, + "max": 5.776604890823364, + "count": 2114, + "percentiles": { + "p001": 2.403795003890991, + "p01": 2.4051802158355713, + "p05": 2.40767502784729, + "p10": 2.444474935531616, + "p25": 2.711035966873169, + "p50": 2.909677028656006, + "p75": 3.246847152709961, + "p90": 4.427346229553223, + "p95": 5.735586166381836, + "p99": 5.747497081756592, + "p999": 5.772127151489258 }, - percentileRows: [ + "stdDev": 0.8732513118005625, + "totalSum": 6801.455569267273, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 6.958127975463867, + "percentile": "p50", + "value": 2.909677028656006 }, { - percentile: 'p90', - value: 7.035952091217041, + "percentile": "p90", + "value": 4.427346229553223 }, { - percentile: 'p95', - value: 7.041622877120972, + "percentile": "p95", + "value": 5.735586166381836 }, { - percentile: 'p99', - value: 7.051159858703613, - }, - ], + "percentile": "p99", + "value": 5.747497081756592 + } + ] }, + "strategyDisplayStr": "throughput" }, { - strategyDisplayStr: "constant@20.75", - requestsPerSecond: 20.752070927855794, - itl: { - mean: 116.28360712595156, - median: 26.769569941929408, - mode: 10.624987738473076, - variance: 12697.514443947253, - stdDev: 112.68324828450436, - min: 10.624987738473076, - max: 378.4891196659633, - count: 229, - totalSum: 26628.946031842912, - percentiles: { - p001: 10.624987738473076, - p01: 11.029584067208427, - p05: 12.239864894321986, - p10: 12.511866433279854, - p25: 13.14084870474679, - p50: 26.769569941929408, - p75: 254.47828429085868, - p90: 254.67797688075476, - p95: 254.72869191850936, - p99: 340.54568835667203, - p999: 378.4891196659633, + "itl": { + "mean": 345.1165106829576, + "median": 323.6877918243408, + "mode": 154.96321626611658, + "variance": 13622.033197008926, + "min": 154.96321626611658, + "max": 602.2494435310364, + "count": 212, + "percentiles": { + "p001": 154.96321626611658, + "p01": 155.03327266590014, + "p05": 155.21494117943016, + "p10": 184.52478448549905, + "p25": 267.91401704152423, + "p50": 323.6877918243408, + "p75": 387.0775359017508, + "p90": 601.0950207710266, + "p95": 601.5480160713196, + "p99": 601.7169952392578, + "p999": 602.2494435310364 }, - percentileRows: [ + "stdDev": 116.71346621966518, + "totalSum": 73164.70026478702, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 26.769569941929408, + "percentile": "p50", + "value": 323.6877918243408 }, { - percentile: 'p90', - value: 254.67797688075476, + "percentile": "p90", + "value": 601.0950207710266 }, { - percentile: 'p95', - value: 254.72869191850936, + "percentile": "p95", + "value": 601.5480160713196 }, { - percentile: 'p99', - value: 340.54568835667203, - }, - ], + "percentile": "p99", + "value": 601.7169952392578 + } + ] }, - ttft: { - mean: 350.13929725213853, - median: 48.3551025390625, - mode: 23.19192886352539, - variance: 171533.22641308085, - stdDev: 414.1656992232467, - min: 23.19192886352539, - max: 974.7560024261475, - count: 229, - totalSum: 80181.89907073975, - percentiles: { - p001: 23.19192886352539, - p01: 23.784875869750977, - p05: 25.762081146240234, - p10: 27.454376220703125, - p25: 30.905961990356445, - p50: 48.3551025390625, - p75: 924.9362945556641, - p90: 960.2079391479492, - p95: 966.1390781402588, - p99: 974.3149280548096, - p999: 974.7560024261475, + "ttft": { + "mean": 4.311190461212734, + "median": 4.006147384643555, + "mode": 2.337217330932617, + "variance": 1.7861892038429152, + "min": 2.337217330932617, + "max": 8.635282516479492, + "count": 212, + "percentiles": { + "p001": 2.337217330932617, + "p01": 2.3937225341796875, + "p05": 2.593994140625, + "p10": 2.7608871459960938, + "p25": 3.386974334716797, + "p50": 4.006147384643555, + "p75": 5.198955535888672, + "p90": 6.335973739624023, + "p95": 6.657838821411133, + "p99": 8.065938949584961, + "p999": 8.635282516479492 }, - percentileRows: [ + "stdDev": 1.3364838958412164, + "totalSum": 913.9723777770996, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 48.3551025390625, + "percentile": "p50", + "value": 4.006147384643555 }, { - percentile: 'p90', - value: 960.2079391479492, + "percentile": "p90", + "value": 6.335973739624023 }, { - percentile: 'p95', - value: 966.1390781402588, + "percentile": "p95", + "value": 6.657838821411133 }, { - percentile: 'p99', - value: 974.3149280548096, - }, - ], + "percentile": "p99", + "value": 8.065938949584961 + } + ] }, - throughput: { - mean: 165.92594702578148, - median: 78.71010358804985, - mode: 2.640067325020095, - variance: 6402491.209634123, - stdDev: 2530.314448766027, - min: 0.0, - max: 1048576.0, - count: 1287, - totalSum: 19225083.512811106, - percentiles: { - p001: 0.0, - p01: 2.640067325020095, - p05: 2.6408868303973385, - p10: 8.261512885765386, - p25: 63.60692133877254, - p50: 78.71010358804985, - p75: 113.60827758064953, - p90: 186.8536552768744, - p95: 244.65142323845077, - p99: 554.5087255420412, - p999: 19878.218009478675, + "throughput": { + "mean": 3.5861798930955686, + "median": 3.427483977632916, + "mode": 2.0694558515025854, + "variance": 1.2714834482750745, + "min": 2.0694558515025854, + "max": 6.6240739366162815, + "count": 212, + "percentiles": { + "p001": 2.0694558515025854, + "p01": 2.072363629679946, + "p05": 2.073337233864387, + "p10": 2.0757078620768836, + "p25": 2.9473737098598543, + "p50": 3.427483977632916, + "p75": 4.038666828432725, + "p90": 5.6373520161225725, + "p95": 6.610686759476904, + "p99": 6.619646213586942, + "p999": 6.6240739366162815 }, - percentileRows: [ + "stdDev": 1.1276007486140982, + "totalSum": 760.2701373362606, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 78.71010358804985, + "percentile": "p50", + "value": 3.427483977632916 }, { - percentile: 'p90', - value: 186.8536552768744, + "percentile": "p90", + "value": 5.6373520161225725 }, { - percentile: 'p95', - value: 244.65142323845077, + "percentile": "p95", + "value": 6.610686759476904 }, { - percentile: 'p99', - value: 554.5087255420412, - }, - ], + "percentile": "p99", + "value": 6.619646213586942 + } + ] }, - timePerRequest: { - mean: 1.1796869305023459, - median: 0.22142529487609863, - mode: 0.10968017578125, - variance: 1.3985689524884573, - stdDev: 1.1826110740596238, - min: 0.10968017578125, - max: 2.7613768577575684, - count: 229, - totalSum: 270.14830708503723, - percentiles: { - p001: 0.10968017578125, - p01: 0.11065411567687988, - p05: 0.11456704139709473, - p10: 0.11728477478027344, - p25: 0.12422728538513184, - p50: 0.22142529487609863, - p75: 2.7111761569976807, - p90: 2.748539924621582, - p95: 2.7520828247070312, - p99: 2.7607710361480713, - p999: 2.7613768577575684, + "requestsPerSecond": 14.17234850591863, + "timePerRequest": { + "mean": 3.126304955977314, + "median": 2.914428234100342, + "mode": 2.4067530632019043, + "variance": 0.6446699445526382, + "min": 2.4067530632019043, + "max": 5.74929404258728, + "count": 212, + "percentiles": { + "p001": 2.4067530632019043, + "p01": 2.4088168144226074, + "p05": 2.4107859134674072, + "p10": 2.4127039909362793, + "p25": 2.714280843734741, + "p50": 2.914428234100342, + "p75": 3.2154228687286377, + "p90": 4.429044008255005, + "p95": 5.740488052368164, + "p99": 5.748268127441406, + "p999": 5.74929404258728 }, - percentileRows: [ + "stdDev": 0.8029134103704073, + "totalSum": 662.7766506671906, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 0.22142529487609863, + "percentile": "p50", + "value": 2.914428234100342 }, { - percentile: 'p90', - value: 2.748539924621582, + "percentile": "p90", + "value": 4.429044008255005 }, { - percentile: 'p95', - value: 2.7520828247070312, + "percentile": "p95", + "value": 5.740488052368164 }, { - percentile: 'p99', - value: 2.7607710361480713, - }, - ], + "percentile": "p99", + "value": 5.748268127441406 + } + ] }, + "strategyDisplayStr": "constant@17.86" }, { - strategyDisplayStr: "constant@26.81", - requestsPerSecond: 26.81917480361788, - itl: { - mean: 299.7306064613554, - median: 372.7384294782366, - mode: 13.360295976911273, - variance: 43881.168589896006, - stdDev: 209.47832486893722, - min: 13.360295976911273, - max: 646.5137345450265, - count: 278, - totalSum: 83325.1085962568, - percentiles: { - p001: 13.360295976911273, - p01: 14.045170375279017, - p05: 17.420836857387, - p10: 18.262999398367747, - p25: 35.025290080479216, - p50: 372.7384294782366, - p75: 484.5614092690604, - p90: 484.67516899108887, - p95: 646.2434019361224, - p99: 646.4788573128836, - p999: 646.5137345450265, + "itl": { + "mean": 317.3139079134668, + "median": 323.20846451653375, + "mode": 0.00021949646964905753, + "variance": 20145.18920543681, + "min": 0.00021949646964905753, + "max": 602.308988571167, + "count": 426, + "percentiles": { + "p001": 0.00021949646964905753, + "p01": 0.0002422030009920635, + "p05": 0.000491974845765129, + "p10": 155.08399782954035, + "p25": 234.41259066263834, + "p50": 323.20846451653375, + "p75": 386.6967133113316, + "p90": 600.5538105964661, + "p95": 601.1494994163513, + "p99": 601.7235517501831, + "p999": 602.308988571167 }, - percentileRows: [ + "stdDev": 141.93374935312886, + "totalSum": 135175.72477113685, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 372.7384294782366, + "percentile": "p50", + "value": 323.20846451653375 }, { - percentile: 'p90', - value: 484.67516899108887, + "percentile": "p90", + "value": 600.5538105964661 }, { - percentile: 'p95', - value: 646.2434019361224, + "percentile": "p95", + "value": 601.1494994163513 }, { - percentile: 'p99', - value: 646.4788573128836, - }, - ], + "percentile": "p99", + "value": 601.7235517501831 + } + ] }, - ttft: { - mean: 603.4488720859555, - median: 323.30799102783203, - mode: 23.794889450073242, - variance: 385351.6075362678, - stdDev: 620.7669510663948, - min: 23.794889450073242, - max: 2183.549165725708, - count: 278, - totalSum: 167758.78643989563, - percentiles: { - p001: 23.794889450073242, - p01: 25.097131729125977, - p05: 28.53107452392578, - p10: 31.769990921020508, - p25: 42.52219200134277, - p50: 323.30799102783203, - p75: 1421.4229583740234, - p90: 1454.333782196045, - p95: 1465.749979019165, - p99: 1481.3649654388428, - p999: 2183.549165725708, + "ttft": { + "mean": 3.4538143677330915, + "median": 3.2930374145507812, + "mode": 1.3980865478515625, + "variance": 1.2798387627461172, + "min": 1.3980865478515625, + "max": 7.90715217590332, + "count": 426, + "percentiles": { + "p001": 1.3980865478515625, + "p01": 1.583099365234375, + "p05": 1.966238021850586, + "p10": 2.1882057189941406, + "p25": 2.5491714477539062, + "p50": 3.2930374145507812, + "p75": 4.194021224975586, + "p90": 5.101919174194336, + "p95": 5.531072616577148, + "p99": 6.304025650024414, + "p999": 7.90715217590332 }, - percentileRows: [ + "stdDev": 1.131299590182069, + "totalSum": 1471.3249206542969, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 323.30799102783203, + "percentile": "p50", + "value": 3.2930374145507812 }, { - percentile: 'p90', - value: 1454.333782196045, + "percentile": "p90", + "value": 5.101919174194336 }, { - percentile: 'p95', - value: 1465.749979019165, + "percentile": "p95", + "value": 5.531072616577148 }, { - percentile: 'p99', - value: 1481.3649654388428, - }, - ], + "percentile": "p99", + "value": 6.304025650024414 + } + ] }, - throughput: { - mean: 214.45692657713144, - median: 59.739410340407346, - mode: 1.5484621717509202, - variance: 10330273.607661681, - stdDev: 3214.0743002708696, - min: 0.0, - max: 1677721.6, - count: 1408, - totalSum: 23048554.08119256, - percentiles: { - p001: 0.0, - p01: 0.0, - p05: 1.5484621717509202, - p10: 1.5484621717509202, - p25: 11.441965016422422, - p50: 59.739410340407346, - p75: 104.92580177115124, - p90: 204.92007035372288, - p95: 328.06445052796244, - p99: 1077.6731757451182, - p999: 27776.847682119205, + "throughput": { + "mean": 23.21344850219626, + "median": 3.4329341356573666, + "mode": 2.0712250264859566, + "variance": 24683.969863199258, + "min": 2.0712250264859566, + "max": 2174.6581765744745, + "count": 426, + "percentiles": { + "p001": 2.0712250264859566, + "p01": 2.073755065845109, + "p05": 2.0754751152537554, + "p10": 2.0784317728649824, + "p25": 2.951518973869093, + "p50": 3.4329341356573666, + "p75": 4.545566947323431, + "p90": 6.619101892029231, + "p95": 55.25720250633655, + "p99": 700.8630547222375, + "p999": 2174.6581765744745 }, - percentileRows: [ + "stdDev": 157.11132951890917, + "totalSum": 9888.929061935605, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 59.739410340407346, + "percentile": "p50", + "value": 3.4329341356573666 }, { - percentile: 'p90', - value: 204.92007035372288, + "percentile": "p90", + "value": 6.619101892029231 }, { - percentile: 'p95', - value: 328.06445052796244, + "percentile": "p95", + "value": 55.25720250633655 }, { - percentile: 'p99', - value: 1077.6731757451182, - }, - ], + "percentile": "p99", + "value": 700.8630547222375 + } + ] }, - timePerRequest: { - mean: 2.727286984594606, - median: 2.9081506729125977, - mode: 0.12541699409484863, - variance: 3.887494791582503, - stdDev: 1.9716730945018504, - min: 0.12541699409484863, - max: 4.927099943161011, - count: 278, - totalSum: 758.1857817173004, - percentiles: { - p001: 0.12541699409484863, - p01: 0.12821292877197266, - p05: 0.15644598007202148, - p10: 0.1615278720855713, - p25: 0.2925078868865967, - p50: 2.9081506729125977, - p75: 4.833041191101074, - p90: 4.866931915283203, - p95: 4.889725923538208, - p99: 4.91511082649231, - p999: 4.927099943161011, + "requestsPerSecond": 28.509620631812744, + "timePerRequest": { + "mean": 3.029224460673444, + "median": 2.9103050231933594, + "mode": 0.029429912567138672, + "variance": 1.0046819928294406, + "min": 0.029429912567138672, + "max": 5.7580931186676025, + "count": 426, + "percentiles": { + "p001": 0.029429912567138672, + "p01": 0.09131598472595215, + "p05": 1.1582200527191162, + "p10": 2.4076988697052, + "p25": 2.6148200035095215, + "p50": 2.9103050231933594, + "p75": 3.217337131500244, + "p90": 4.429029941558838, + "p95": 5.737119913101196, + "p99": 5.743388891220093, + "p999": 5.7580931186676025 }, - percentileRows: [ + "stdDev": 1.0023382626785433, + "totalSum": 1290.4496202468872, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 2.9081506729125977, + "percentile": "p50", + "value": 2.9103050231933594 }, { - percentile: 'p90', - value: 4.866931915283203, + "percentile": "p90", + "value": 4.429029941558838 }, { - percentile: 'p95', - value: 4.889725923538208, + "percentile": "p95", + "value": 5.737119913101196 }, { - percentile: 'p99', - value: 4.91511082649231, - }, - ], + "percentile": "p99", + "value": 5.743388891220093 + } + ] }, + "strategyDisplayStr": "constant@35.44" }, { - strategyDisplayStr: "constant@26.82", - requestsPerSecond: 26.823988819498975, - itl: { - mean: 683.8011571339198, - median: 742.2689029148647, - mode: 317.1694278717041, - variance: 28604.497606927893, - stdDev: 169.12864218377646, - min: 317.1694278717041, - max: 1093.381404876709, - count: 282, - totalSum: 192831.9263117654, - percentiles: { - p001: 317.1694278717041, - p01: 321.53899329049244, - p05: 339.3098626817976, - p10: 382.89002009800504, - p25: 576.0242598397391, - p50: 742.2689029148647, - p75: 835.7884543282645, - p90: 835.8725479670933, - p95: 835.9301771436419, - p99: 835.9494209289551, - p999: 1093.381404876709, + "itl": { + "mean": 266.0120946078307, + "median": 301.0220766067505, + "mode": 0.00012488592238653275, + "variance": 27377.911382474136, + "min": 0.00012488592238653275, + "max": 601.8545031547546, + "count": 630, + "percentiles": { + "p001": 0.00012488592238653275, + "p01": 0.00017408340696304563, + "p05": 0.0002384185791015625, + "p10": 0.0002838316417875744, + "p25": 184.15463964144388, + "p50": 301.0220766067505, + "p75": 351.16201639175415, + "p90": 434.4729979832967, + "p95": 600.8800268173218, + "p99": 601.544976234436, + "p999": 601.8545031547546 }, - percentileRows: [ + "stdDev": 165.46271901088213, + "totalSum": 167587.61960293335, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 742.2689029148647, + "percentile": "p50", + "value": 301.0220766067505 }, { - percentile: 'p90', - value: 835.8725479670933, + "percentile": "p90", + "value": 434.4729979832967 }, { - percentile: 'p95', - value: 835.9301771436419, + "percentile": "p95", + "value": 600.8800268173218 }, { - percentile: 'p99', - value: 835.9494209289551, - }, - ], + "percentile": "p99", + "value": 601.544976234436 + } + ] }, - ttft: { - mean: 1175.8291366252492, - median: 1099.5359420776367, - mode: 31.527996063232422, - variance: 656345.7486101, - stdDev: 810.1516824706963, - min: 31.527996063232422, - max: 3620.6698417663574, - count: 282, - totalSum: 331583.8165283203, - percentiles: { - p001: 31.527996063232422, - p01: 45.86386680603027, - p05: 83.20093154907227, - p10: 158.12087059020996, - p25: 363.6949062347412, - p50: 1099.5359420776367, - p75: 1955.5552005767822, - p90: 2000.9040832519531, - p95: 2015.0668621063232, - p99: 2435.93692779541, - p999: 3620.6698417663574, + "ttft": { + "mean": 2.98961495596265, + "median": 2.7561187744140625, + "mode": 1.2059211730957031, + "variance": 1.0545428115981754, + "min": 1.2059211730957031, + "max": 7.242918014526367, + "count": 630, + "percentiles": { + "p001": 1.2059211730957031, + "p01": 1.4119148254394531, + "p05": 1.7180442810058594, + "p10": 1.8389225006103516, + "p25": 2.2017955780029297, + "p50": 2.7561187744140625, + "p75": 3.582000732421875, + "p90": 4.535198211669922, + "p95": 4.94694709777832, + "p99": 5.925893783569336, + "p999": 7.242918014526367 }, - percentileRows: [ + "stdDev": 1.0269093492602819, + "totalSum": 1883.4574222564697, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 1099.5359420776367, + "percentile": "p50", + "value": 2.7561187744140625 }, { - percentile: 'p90', - value: 2000.9040832519531, + "percentile": "p90", + "value": 4.535198211669922 }, { - percentile: 'p95', - value: 2015.0668621063232, + "percentile": "p95", + "value": 4.94694709777832 }, { - percentile: 'p99', - value: 2435.93692779541, - }, - ], + "percentile": "p99", + "value": 5.925893783569336 + } + ] }, - throughput: { - mean: 214.4967900282631, - median: 7.5584893487808, - mode: 0.9142165629474438, - variance: 14926330.042152546, - stdDev: 3863.4608891708153, - min: 0.0, - max: 838860.8, - count: 888, - totalSum: 21536027.789829955, - percentiles: { - p001: 0.0, - p01: 0.0, - p05: 0.9142165629474438, - p10: 0.9142165629474438, - p25: 3.153194765204003, - p50: 7.5584893487808, - p75: 23.973067975925787, - p90: 67.82180683343304, - p95: 126.88864014521252, - p99: 1646.116169544741, - p999: 39568.90566037736, + "throughput": { + "mean": 59.41688814526176, + "median": 3.650368843772072, + "mode": 2.073234954244342, + "variance": 30921.153600680766, + "min": 2.073234954244342, + "max": 1633.6140214216164, + "count": 630, + "percentiles": { + "p001": 2.073234954244342, + "p01": 2.0745992391313273, + "p05": 2.077494127319069, + "p10": 2.681426381102091, + "p25": 3.1995776924584995, + "p50": 3.650368843772072, + "p75": 5.65285348137974, + "p90": 39.41041583654883, + "p95": 546.360094114582, + "p99": 728.531529795555, + "p999": 1633.6140214216164 }, - percentileRows: [ + "stdDev": 175.84411733316747, + "totalSum": 37432.63953151491, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 7.5584893487808, + "percentile": "p50", + "value": 3.650368843772072 }, { - percentile: 'p90', - value: 67.82180683343304, + "percentile": "p90", + "value": 39.41041583654883 }, { - percentile: 'p95', - value: 126.88864014521252, + "percentile": "p95", + "value": 546.360094114582 }, { - percentile: 'p99', - value: 1646.116169544741, - }, - ], + "percentile": "p99", + "value": 728.531529795555 + } + ] }, - timePerRequest: { - mean: 5.992494348938584, - median: 6.383468866348267, - mode: 2.272388219833374, - variance: 3.362285611082358, - stdDev: 1.8336536235293617, - min: 2.272388219833374, - max: 7.87853217124939, - count: 282, - totalSum: 1689.8834064006805, - percentiles: { - p001: 2.272388219833374, - p01: 2.36775279045105, - p05: 2.9363210201263428, - p10: 3.3975088596343994, - p25: 4.363567113876343, - p50: 6.383468866348267, - p75: 7.805588245391846, - p90: 7.848597049713135, - p95: 7.86446475982666, - p99: 7.874046802520752, - p999: 7.87853217124939, + "requestsPerSecond": 42.04918883881521, + "timePerRequest": { + "mean": 2.8007848020583865, + "median": 2.8125340938568115, + "mode": 0.03917694091796875, + "variance": 1.5478847628009484, + "min": 0.03917694091796875, + "max": 5.747352123260498, + "count": 630, + "percentiles": { + "p001": 0.03917694091796875, + "p01": 0.08784794807434082, + "p05": 0.11713886260986328, + "p10": 1.6243083477020264, + "p25": 2.409705877304077, + "p50": 2.8125340938568115, + "p75": 3.214505910873413, + "p90": 4.426720857620239, + "p95": 5.73663592338562, + "p99": 5.7429420948028564, + "p999": 5.747352123260498 }, - percentileRows: [ + "stdDev": 1.244140170077692, + "totalSum": 1764.4944252967834, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 6.383468866348267, + "percentile": "p50", + "value": 2.8125340938568115 }, { - percentile: 'p90', - value: 7.848597049713135, + "percentile": "p90", + "value": 4.426720857620239 }, { - percentile: 'p95', - value: 7.86446475982666, + "percentile": "p95", + "value": 5.73663592338562 }, { - percentile: 'p99', - value: 7.874046802520752, - }, - ], + "percentile": "p99", + "value": 5.7429420948028564 + } + ] }, + "strategyDisplayStr": "constant@53.01" }, { - strategyDisplayStr: "constant@24.50", - requestsPerSecond: 24.50047903792646, - itl: { - mean: 742.9258901891964, - median: 773.0941431862967, - mode: 538.750410079956, - variance: 5888.534815943889, - stdDev: 76.73678919490891, - min: 538.750410079956, - max: 1112.7384049551827, - count: 256, - totalSum: 190189.02788843427, - percentiles: { - p001: 538.750410079956, - p01: 559.9275997706821, - p05: 622.4285534449986, - p10: 651.3757365090506, - p25: 691.4628573826382, - p50: 773.0941431862967, - p75: 803.8818495614188, - p90: 804.060867854527, - p95: 804.1924408503941, - p99: 804.2235374450684, - p999: 1112.7384049551827, + "itl": { + "mean": 256.3527636715027, + "median": 268.03334554036456, + "mode": 0.00015894571940104166, + "variance": 29028.340608642713, + "min": 0.00015894571940104166, + "max": 602.0485162734985, + "count": 844, + "percentiles": { + "p001": 0.00015894571940104166, + "p01": 0.00018543667263454862, + "p05": 0.00020814320397755456, + "p10": 0.0002384185791015625, + "p25": 155.01194386868863, + "p50": 268.03334554036456, + "p75": 351.2148857116699, + "p90": 434.4780047734578, + "p95": 600.863516330719, + "p99": 601.4912724494934, + "p999": 602.0485162734985 }, - percentileRows: [ + "stdDev": 170.3770542316151, + "totalSum": 216361.73253874827, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 773.0941431862967, + "percentile": "p50", + "value": 268.03334554036456 }, { - percentile: 'p90', - value: 804.060867854527, + "percentile": "p90", + "value": 434.4780047734578 }, { - percentile: 'p95', - value: 804.1924408503941, + "percentile": "p95", + "value": 600.863516330719 }, { - percentile: 'p99', - value: 804.2235374450684, - }, - ], + "percentile": "p99", + "value": 601.4912724494934 + } + ] }, - ttft: { - mean: 1639.041354879737, - median: 2199.6800899505615, - mode: 40.383100509643555, - variance: 769961.5680314268, - stdDev: 877.4745398194906, - min: 40.383100509643555, - max: 3934.627056121826, - count: 256, - totalSum: 419594.58684921265, - percentiles: { - p001: 40.383100509643555, - p01: 46.3411808013916, - p05: 128.04388999938965, - p10: 259.2899799346924, - p25: 663.4221076965332, - p50: 2199.6800899505615, - p75: 2240.969181060791, - p90: 2276.355028152466, - p95: 2569.640874862671, - p99: 2960.084915161133, - p999: 3934.627056121826, + "ttft": { + "mean": 2.969398317743817, + "median": 2.9070377349853516, + "mode": 1.2171268463134766, + "variance": 0.8935379774207954, + "min": 1.2171268463134766, + "max": 7.6160430908203125, + "count": 844, + "percentiles": { + "p001": 1.2171268463134766, + "p01": 1.4388561248779297, + "p05": 1.6713142395019531, + "p10": 1.8208026885986328, + "p25": 2.1882057189941406, + "p50": 2.9070377349853516, + "p75": 3.634929656982422, + "p90": 4.223108291625977, + "p95": 4.5642852783203125, + "p99": 5.40614128112793, + "p999": 7.6160430908203125 }, - percentileRows: [ + "stdDev": 0.9452713776587099, + "totalSum": 2506.1721801757812, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 2199.6800899505615, + "percentile": "p50", + "value": 2.9070377349853516 }, { - percentile: 'p90', - value: 2276.355028152466, + "percentile": "p90", + "value": 4.223108291625977 }, { - percentile: 'p95', - value: 2569.640874862671, + "percentile": "p95", + "value": 4.5642852783203125 }, { - percentile: 'p99', - value: 2960.084915161133, - }, - ], + "percentile": "p99", + "value": 5.40614128112793 + } + ] }, - throughput: { - mean: 195.90812730716976, - median: 5.651687770251424, - mode: 0.8974143971723011, - variance: 16305893.758862041, - stdDev: 4038.0556904111713, - min: 0.0, - max: 1048576.0, - count: 718, - totalSum: 25179910.958649173, - percentiles: { - p001: 0.0, - p01: 0.0, - p05: 0.8974143971723011, - p10: 0.8974143971723011, - p25: 1.3957095523970422, - p50: 5.651687770251424, - p75: 13.66877299553858, - p90: 32.61435580818488, - p95: 59.516467299533154, - p99: 990.1567516525024, - p999: 40136.88038277512, + "throughput": { + "mean": 207.1895652078436, + "median": 4.038272901014235, + "mode": 2.0735916443774194, + "variance": 718082.3463438083, + "min": 2.0735916443774194, + "max": 13801.30879177378, + "count": 844, + "percentiles": { + "p001": 2.0735916443774194, + "p01": 2.0747024744054485, + "p05": 2.0775344653044696, + "p10": 2.6822060975889395, + "p25": 3.19897060034867, + "p50": 4.038272901014235, + "p75": 6.621514907195542, + "p90": 191.83950499938896, + "p95": 1064.4133057880733, + "p99": 3525.4121324350235, + "p999": 13801.30879177378 }, - percentileRows: [ + "stdDev": 847.3973957617573, + "totalSum": 174867.99303542002, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 5.651687770251424, + "percentile": "p50", + "value": 4.038272901014235 }, { - percentile: 'p90', - value: 32.61435580818488, + "percentile": "p90", + "value": 191.83950499938896 }, { - percentile: 'p95', - value: 59.516467299533154, + "percentile": "p95", + "value": 1064.4133057880733 }, { - percentile: 'p99', - value: 990.1567516525024, - }, - ], + "percentile": "p99", + "value": 3525.4121324350235 + } + ] }, - timePerRequest: { - mean: 6.883434834890068, - median: 7.825762987136841, - mode: 4.416188955307007, - variance: 1.3703848800474456, - stdDev: 1.1706343921342162, - min: 4.416188955307007, - max: 7.9228410720825195, - count: 256, - totalSum: 1762.1593177318573, - percentiles: { - p001: 4.416188955307007, - p01: 4.504012584686279, - p05: 4.920926094055176, - p10: 5.141816139221191, - p25: 5.672410011291504, - p50: 7.825762987136841, - p75: 7.86903715133667, - p90: 7.897527694702148, - p95: 7.910752058029175, - p99: 7.920928716659546, - p999: 7.9228410720825195, + "requestsPerSecond": 56.28377691137325, + "timePerRequest": { + "mean": 2.724335377532724, + "median": 2.8109958171844482, + "mode": 0.004637241363525391, + "variance": 1.6778719735617704, + "min": 0.004637241363525391, + "max": 5.746603012084961, + "count": 844, + "percentiles": { + "p001": 0.004637241363525391, + "p01": 0.018153905868530273, + "p05": 0.06012701988220215, + "p10": 0.33361220359802246, + "p25": 2.407761812210083, + "p50": 2.8109958171844482, + "p75": 3.2149789333343506, + "p90": 4.424422264099121, + "p95": 5.734241962432861, + "p99": 5.7422730922698975, + "p999": 5.746603012084961 }, - percentileRows: [ + "stdDev": 1.2953269755400643, + "totalSum": 2299.339058637619, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 7.825762987136841, + "percentile": "p50", + "value": 2.8109958171844482 }, { - percentile: 'p90', - value: 7.897527694702148, + "percentile": "p90", + "value": 4.424422264099121 }, { - percentile: 'p95', - value: 7.910752058029175, + "percentile": "p95", + "value": 5.734241962432861 }, { - percentile: 'p99', - value: 7.920928716659546, - }, - ], + "percentile": "p99", + "value": 5.7422730922698975 + } + ] }, + "strategyDisplayStr": "constant@70.58" }, { - strategyDisplayStr: "constant@25.61", - requestsPerSecond: 25.617829792196602, - itl: { - mean: 663.3098317044122, - median: 613.7458937508719, - mode: 440.9824098859514, - variance: 10479.9469011006, - stdDev: 102.37161179301907, - min: 440.9824098859514, - max: 1060.6839997427803, - count: 256, - totalSum: 169807.31691632952, - percentiles: { - p001: 440.9824098859514, - p01: 440.9982817513602, - p05: 442.1650000980922, - p10: 534.6532889774868, - p25: 612.1257373264858, - p50: 613.7458937508719, - p75: 755.2382605416434, - p90: 755.9503146580288, - p95: 756.0351576123919, - p99: 786.0629899161203, - p999: 1060.6839997427803, + "itl": { + "mean": 277.71525410872215, + "median": 301.1136054992676, + "mode": 0.0001438080318390377, + "variance": 27918.42843619352, + "min": 0.0001438080318390377, + "max": 602.2152900695801, + "count": 1054, + "percentiles": { + "p001": 0.0001438080318390377, + "p01": 0.00015894571940104166, + "p05": 0.0001930055164155506, + "p10": 0.00022328089153955853, + "p25": 184.27208065986633, + "p50": 301.1136054992676, + "p75": 351.62675380706787, + "p90": 434.64918931325275, + "p95": 601.035475730896, + "p99": 601.5462279319763, + "p999": 601.9014716148376 }, - percentileRows: [ + "stdDev": 167.0880858595056, + "totalSum": 292711.87783059315, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 613.7458937508719, + "percentile": "p50", + "value": 301.1136054992676 }, { - percentile: 'p90', - value: 755.9503146580288, + "percentile": "p90", + "value": 434.64918931325275 }, { - percentile: 'p95', - value: 756.0351576123919, + "percentile": "p95", + "value": 601.035475730896 }, { - percentile: 'p99', - value: 786.0629899161203, - }, - ], + "percentile": "p99", + "value": 601.5462279319763 + } + ] }, - ttft: { - mean: 1987.0930286124349, - median: 2171.497106552124, - mode: 26.77607536315918, - variance: 755024.7838922634, - stdDev: 868.9216212595146, - min: 26.77607536315918, - max: 4371.719121932983, - count: 256, - totalSum: 508695.8153247833, - percentiles: { - p001: 26.77607536315918, - p01: 55.07302284240723, - p05: 291.4888858795166, - p10: 515.1617527008057, - p25: 1566.1020278930664, - p50: 2171.497106552124, - p75: 2225.597858428955, - p90: 3119.4918155670166, - p95: 3129.302978515625, - p99: 4363.926887512207, - p999: 4371.719121932983, + "ttft": { + "mean": 2.944597709337267, + "median": 2.914905548095703, + "mode": 1.3308525085449219, + "variance": 0.4226731069575882, + "min": 1.3308525085449219, + "max": 8.517980575561523, + "count": 1054, + "percentiles": { + "p001": 1.3971328735351562, + "p01": 1.5780925750732422, + "p05": 1.9903182983398438, + "p10": 2.1779537200927734, + "p25": 2.521038055419922, + "p50": 2.914905548095703, + "p75": 3.3359527587890625, + "p90": 3.7140846252441406, + "p95": 3.9701461791992188, + "p99": 4.579067230224609, + "p999": 6.286144256591797 }, - percentileRows: [ + "stdDev": 0.6501331455614213, + "totalSum": 3103.6059856414795, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 2171.497106552124, + "percentile": "p50", + "value": 2.914905548095703 }, { - percentile: 'p90', - value: 3119.4918155670166, + "percentile": "p90", + "value": 3.7140846252441406 }, { - percentile: 'p95', - value: 3129.302978515625, + "percentile": "p95", + "value": 3.9701461791992188 }, { - percentile: 'p99', - value: 4363.926887512207, - }, - ], + "percentile": "p99", + "value": 4.579067230224609 + } + ] }, - throughput: { - mean: 204.84256868994706, - median: 1.3254838186715343, - mode: 0.9418142869653279, - variance: 13137897.553754935, - stdDev: 3624.623780995061, - min: 0.0, - max: 1677721.6, - count: 808, - totalSum: 26909147.73473306, - percentiles: { - p001: 0.0, - p01: 0.0, - p05: 0.9418142869653279, - p10: 0.9418142869653279, - p25: 1.2725896353660826, - p50: 1.3254838186715343, - p75: 8.018996417141132, - p90: 20.67656874682652, - p95: 52.4720894738159, - p99: 2868.8809849521203, - p999: 36157.793103448275, + "throughput": { + "mean": 103.07030884371288, + "median": 3.6487513260502786, + "mode": 2.0730046058487708, + "variance": 335030.8025043685, + "min": 2.0730046058487708, + "max": 12755.914084774759, + "count": 1054, + "percentiles": { + "p001": 2.073112191032784, + "p01": 2.075113464956773, + "p05": 2.0769425185178143, + "p10": 2.6809242025860396, + "p25": 3.195525741689429, + "p50": 3.6487513260502786, + "p75": 5.648711691473945, + "p90": 59.54202526164865, + "p95": 745.937915262197, + "p99": 1458.4207020574925, + "p999": 8336.504844720497 }, - percentileRows: [ + "stdDev": 578.8184538388255, + "totalSum": 108636.10552127339, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 1.3254838186715343, + "percentile": "p50", + "value": 3.6487513260502786 }, { - percentile: 'p90', - value: 20.67656874682652, + "percentile": "p90", + "value": 59.54202526164865 }, { - percentile: 'p95', - value: 52.4720894738159, + "percentile": "p95", + "value": 745.937915262197 }, { - percentile: 'p99', - value: 2868.8809849521203, - }, - ], + "percentile": "p99", + "value": 1458.4207020574925 + } + ] }, - timePerRequest: { - mean: 6.655263062566519, - median: 7.432342052459717, - mode: 3.603327989578247, - variance: 1.427610769055824, - stdDev: 1.194826669042763, - min: 3.603327989578247, - max: 7.537046670913696, - count: 256, - totalSum: 1703.7473440170288, - percentiles: { - p001: 3.603327989578247, - p01: 3.6770501136779785, - p05: 4.052419900894165, - p10: 4.532166004180908, - p25: 5.912662982940674, - p50: 7.432342052459717, - p75: 7.480893135070801, - p90: 7.51776123046875, - p95: 7.526960849761963, - p99: 7.536363124847412, - p999: 7.537046670913696, + "requestsPerSecond": 70.25198416169893, + "timePerRequest": { + "mean": 2.7543634782479884, + "median": 2.8111989498138428, + "mode": 0.005017280578613281, + "variance": 1.3489459345160266, + "min": 0.005017280578613281, + "max": 5.7481369972229, + "count": 1054, + "percentiles": { + "p001": 0.0076770782470703125, + "p01": 0.04388308525085449, + "p05": 0.08579802513122559, + "p10": 1.0748710632324219, + "p25": 2.409471035003662, + "p50": 2.8111989498138428, + "p75": 3.2133419513702393, + "p90": 4.423052072525024, + "p95": 4.42962384223938, + "p99": 5.740433931350708, + "p999": 5.744389772415161 }, - percentileRows: [ + "stdDev": 1.1614413177238128, + "totalSum": 2903.0991060733795, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 7.432342052459717, + "percentile": "p50", + "value": 2.8111989498138428 }, { - percentile: 'p90', - value: 7.51776123046875, + "percentile": "p90", + "value": 4.423052072525024 }, { - percentile: 'p95', - value: 7.526960849761963, + "percentile": "p95", + "value": 4.42962384223938 }, { - percentile: 'p99', - value: 7.536363124847412, - }, - ], + "percentile": "p99", + "value": 5.740433931350708 + } + ] }, + "strategyDisplayStr": "constant@88.16" }, { - strategyDisplayStr: "constant@37.02", - requestsPerSecond: 37.02892550982192, - itl: { - mean: 606.4144710877113, - median: 543.5235500335693, - mode: 331.6155501774379, - variance: 9907.596850846778, - stdDev: 99.53691200176334, - min: 331.6155501774379, - max: 970.1211452484131, - count: 256, - totalSum: 155242.10459845408, - percentiles: { - p001: 331.6155501774379, - p01: 401.9838741847447, - p05: 471.85257502964566, - p10: 482.9780033656529, - p25: 542.1572753361294, - p50: 543.5235500335693, - p75: 707.3319980076382, - p90: 708.0604348863874, - p95: 708.2712990897043, - p99: 708.6352961403983, - p999: 970.1211452484131, + "itl": { + "mean": 271.32323753605687, + "median": 300.9140968322754, + "mode": 0.00014002360994853672, + "variance": 29100.288521557508, + "min": 0.00014002360994853672, + "max": 608.8095307350159, + "count": 1250, + "percentiles": { + "p001": 0.00014002360994853672, + "p01": 0.00015894571940104166, + "p05": 0.00017786782885354663, + "p10": 0.00020814320397755456, + "p25": 184.06911691029867, + "p50": 300.9140968322754, + "p75": 351.3779938220978, + "p90": 434.7304900487264, + "p95": 601.0527610778809, + "p99": 601.5515327453613, + "p999": 608.6329817771912 }, - percentileRows: [ + "stdDev": 170.5880667618855, + "totalSum": 339154.046920071, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 543.5235500335693, + "percentile": "p50", + "value": 300.9140968322754 }, { - percentile: 'p90', - value: 708.0604348863874, + "percentile": "p90", + "value": 434.7304900487264 }, { - percentile: 'p95', - value: 708.2712990897043, + "percentile": "p95", + "value": 601.0527610778809 }, { - percentile: 'p99', - value: 708.6352961403983, - }, - ], + "percentile": "p99", + "value": 601.5515327453613 + } + ] }, - ttft: { - mean: 1941.031264141202, - median: 1882.4608325958252, - mode: 95.6277847290039, - variance: 475070.5414439769, - stdDev: 689.2536118468854, - min: 95.6277847290039, - max: 4049.8838424682617, - count: 256, - totalSum: 496904.0036201477, - percentiles: { - p001: 95.6277847290039, - p01: 381.1471462249756, - p05: 627.6748180389404, - p10: 1059.0367317199707, - p25: 1838.1130695343018, - p50: 1882.4608325958252, - p75: 2040.8010482788086, - p90: 2977.8239727020264, - p95: 2986.7701530456543, - p99: 3983.0429553985596, - p999: 4049.8838424682617, + "ttft": { + "mean": 2.8927558898925785, + "median": 2.753019332885742, + "mode": 1.232147216796875, + "variance": 3.2619126389405575, + "min": 1.232147216796875, + "max": 44.86227035522461, + "count": 1250, + "percentiles": { + "p001": 1.2967586517333984, + "p01": 1.5811920166015625, + "p05": 1.9352436065673828, + "p10": 2.0987987518310547, + "p25": 2.373218536376953, + "p50": 2.753019332885742, + "p75": 3.15093994140625, + "p90": 3.5588741302490234, + "p95": 3.881216049194336, + "p99": 4.817008972167969, + "p999": 34.44409370422363 }, - percentileRows: [ + "stdDev": 1.8060765872300537, + "totalSum": 3615.9448623657227, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 1882.4608325958252, + "percentile": "p50", + "value": 2.753019332885742 }, { - percentile: 'p90', - value: 2977.8239727020264, + "percentile": "p90", + "value": 3.5588741302490234 }, { - percentile: 'p95', - value: 2986.7701530456543, + "percentile": "p95", + "value": 3.881216049194336 }, { - percentile: 'p99', - value: 3983.0429553985596, - }, - ], + "percentile": "p99", + "value": 4.817008972167969 + } + ] }, - throughput: { - mean: 296.0867598383026, - median: 2.8321597670693794, - mode: 1.0269062248433556, - variance: 26077653.461617615, - stdDev: 5106.628384914808, - min: 0.0, - max: 838860.8, - count: 659, - totalSum: 24515718.391140904, - percentiles: { - p001: 0.0, - p01: 0.0, - p05: 1.0269062248433556, - p10: 1.0269062248433556, - p25: 1.155029909085852, - p50: 2.8321597670693794, - p75: 6.789239657033897, - p90: 12.755506761996577, - p95: 21.059231700030626, - p99: 4969.554502369669, - p999: 56679.78378378379, + "throughput": { + "mean": 77.93501693713348, + "median": 3.651601347861961, + "mode": 2.050966490692739, + "variance": 94878.72111076172, + "min": 2.050966490692739, + "max": 3864.549257856927, + "count": 1250, + "percentiles": { + "p001": 2.051034690096646, + "p01": 2.0753734461309907, + "p05": 2.0771840299203754, + "p10": 2.6804765384462286, + "p25": 3.197940508182046, + "p50": 3.651601347861961, + "p75": 5.65432273052556, + "p90": 57.96349904731304, + "p95": 585.8605731246863, + "p99": 1183.8544986262223, + "p999": 3854.7266722191907 }, - percentileRows: [ + "stdDev": 308.02389698002605, + "totalSum": 97418.77117141688, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 2.8321597670693794, + "percentile": "p50", + "value": 3.651601347861961 }, { - percentile: 'p90', - value: 12.755506761996577, + "percentile": "p90", + "value": 57.96349904731304 }, { - percentile: 'p95', - value: 21.059231700030626, + "percentile": "p95", + "value": 585.8605731246863 }, { - percentile: 'p99', - value: 4969.554502369669, - }, - ], + "percentile": "p99", + "value": 1183.8544986262223 + } + ] }, - timePerRequest: { - mean: 6.242897774092853, - median: 6.808126211166382, - mode: 3.6642260551452637, - variance: 0.919577384180231, - stdDev: 0.958945975631699, - min: 3.6642260551452637, - max: 6.912218809127808, - count: 256, - totalSum: 1598.1818301677704, - percentiles: { - p001: 3.6642260551452637, - p01: 3.728823661804199, - p05: 4.065090894699097, - p10: 4.494028091430664, - p25: 5.758455991744995, - p50: 6.808126211166382, - p75: 6.852805137634277, - p90: 6.882004976272583, - p95: 6.897234916687012, - p99: 6.907586097717285, - p999: 6.912218809127808, + "requestsPerSecond": 83.39313185613247, + "timePerRequest": { + "mean": 2.7931500528335573, + "median": 2.8111822605133057, + "mode": 0.016560792922973633, + "variance": 1.5325879588972149, + "min": 0.016560792922973633, + "max": 5.781605958938599, + "count": 1250, + "percentiles": { + "p001": 0.01660299301147461, + "p01": 0.05406069755554199, + "p05": 0.10924100875854492, + "p10": 1.1041431427001953, + "p25": 2.4084370136260986, + "p50": 2.8111822605133057, + "p75": 3.214948892593384, + "p90": 4.425024032592773, + "p95": 5.73300576210022, + "p99": 5.757535934448242, + "p999": 5.7769811153411865 }, - percentileRows: [ + "stdDev": 1.237977366068223, + "totalSum": 3491.4375660419464, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 6.808126211166382, + "percentile": "p50", + "value": 2.8111822605133057 }, { - percentile: 'p90', - value: 6.882004976272583, + "percentile": "p90", + "value": 4.425024032592773 }, { - percentile: 'p95', - value: 6.897234916687012, + "percentile": "p95", + "value": 5.73300576210022 }, { - percentile: 'p99', - value: 6.907586097717285, - }, - ], + "percentile": "p99", + "value": 5.757535934448242 + } + ] }, + "strategyDisplayStr": "constant@105.73" }, { - strategyDisplayStr: "constant@37.29", - requestsPerSecond: 37.29183354201869, - itl: { - mean: 603.3237551205925, - median: 528.1183038439069, - mode: 400.96027510506764, - variance: 12393.495352536762, - stdDev: 111.32607669605878, - min: 400.96027510506764, - max: 963.4451525551932, - count: 256, - totalSum: 154450.8813108717, - percentiles: { - p001: 400.96027510506764, - p01: 409.7368376595633, - p05: 410.0832939147949, - p10: 477.33085496085033, - p25: 527.9027053288052, - p50: 528.1183038439069, - p75: 722.0331260136196, - p90: 722.1321378435407, - p95: 722.210134778704, - p99: 722.3572731018066, - p999: 963.4451525551932, + "itl": { + "mean": 282.2891310655642, + "median": 301.0219097137451, + "mode": 0.00011353265671502977, + "variance": 27396.473253599564, + "min": 0.00011353265671502977, + "max": 630.227267742157, + "count": 1466, + "percentiles": { + "p001": 0.00012488592238653275, + "p01": 0.00014002360994853672, + "p05": 0.00017029898507254465, + "p10": 0.00020814320397755456, + "p25": 184.27258729934692, + "p50": 301.0219097137451, + "p75": 351.54709219932556, + "p90": 434.7763458887736, + "p95": 601.0114550590515, + "p99": 601.5477776527405, + "p999": 610.9266877174377 }, - percentileRows: [ + "stdDev": 165.5188003025625, + "totalSum": 413835.86614211707, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 528.1183038439069, + "percentile": "p50", + "value": 301.0219097137451 }, { - percentile: 'p90', - value: 722.1321378435407, + "percentile": "p90", + "value": 434.7763458887736 }, { - percentile: 'p95', - value: 722.210134778704, + "percentile": "p95", + "value": 601.0114550590515 }, { - percentile: 'p99', - value: 722.3572731018066, - }, - ], + "percentile": "p99", + "value": 601.5477776527405 + } + ] }, - ttft: { - mean: 2091.1083230748773, - median: 1747.6298809051514, - mode: 90.54684638977051, - variance: 479250.36269232794, - stdDev: 692.2791075081841, - min: 90.54684638977051, - max: 3954.521894454956, - count: 256, - totalSum: 535323.7307071686, - percentiles: { - p001: 90.54684638977051, - p01: 905.7919979095459, - p05: 1236.3860607147217, - p10: 1478.6958694458008, - p25: 1703.301191329956, - p50: 1747.6298809051514, - p75: 2842.387914657593, - p90: 3039.8709774017334, - p95: 3047.684907913208, - p99: 3951.2219429016113, - p999: 3954.521894454956, + "ttft": { + "mean": 3.0343631767803783, + "median": 2.6519298553466797, + "mode": 1.2009143829345703, + "variance": 63.473783196292416, + "min": 1.2009143829345703, + "max": 194.2000389099121, + "count": 1466, + "percentiles": { + "p001": 1.2929439544677734, + "p01": 1.50299072265625, + "p05": 1.8007755279541016, + "p10": 1.9598007202148438, + "p25": 2.276897430419922, + "p50": 2.6519298553466797, + "p75": 3.001689910888672, + "p90": 3.3910274505615234, + "p95": 3.634929656982422, + "p99": 4.789113998413086, + "p999": 176.96905136108398 }, - percentileRows: [ + "stdDev": 7.967043566862956, + "totalSum": 4448.376417160034, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 1747.6298809051514, + "percentile": "p50", + "value": 2.6519298553466797 }, { - percentile: 'p90', - value: 3039.8709774017334, + "percentile": "p90", + "value": 3.3910274505615234 }, { - percentile: 'p95', - value: 3047.684907913208, + "percentile": "p95", + "value": 3.634929656982422 }, { - percentile: 'p99', - value: 3951.2219429016113, - }, - ], + "percentile": "p99", + "value": 4.789113998413086 + } + ] }, - throughput: { - mean: 298.188997111376, - median: 3.797001003045347, - mode: 1.0358592736273142, - variance: 19142664.16642712, - stdDev: 4375.2330413850095, - min: 0.0, - max: 1398101.3333333333, - count: 783, - totalSum: 26051541.418045178, - percentiles: { - p001: 0.0, - p01: 0.0, - p05: 1.0358592736273142, - p10: 1.0358592736273142, - p25: 1.3815590063114291, - p50: 3.797001003045347, - p75: 5.743851552603649, - p90: 11.806858966960643, - p95: 24.753772699641765, - p99: 7781.640074211503, - p999: 43240.24742268041, + "throughput": { + "mean": 63.58290145440442, + "median": 3.6503786635347875, + "mode": 1.9808450955393317, + "variance": 86402.92750943375, + "min": 1.9808450955393317, + "max": 7345.34015597209, + "count": 1466, + "percentiles": { + "p001": 2.042611216599956, + "p01": 2.0753576318293443, + "p05": 2.0773041893920348, + "p10": 2.6799367990412146, + "p25": 3.1963461365042147, + "p50": 3.6503786635347875, + "p75": 5.649491714598559, + "p90": 45.07153254032018, + "p95": 437.1856001876197, + "p99": 1092.4133530299885, + "p999": 2672.808029313366 }, - percentileRows: [ + "stdDev": 293.94374888647275, + "totalSum": 93212.53353215689, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 3.797001003045347, + "percentile": "p50", + "value": 3.6503786635347875 }, { - percentile: 'p90', - value: 11.806858966960643, + "percentile": "p90", + "value": 45.07153254032018 }, { - percentile: 'p95', - value: 24.753772699641765, + "percentile": "p95", + "value": 437.1856001876197 }, { - percentile: 'p99', - value: 7781.640074211503, - }, - ], + "percentile": "p99", + "value": 1092.4133530299885 + } + ] }, - timePerRequest: { - mean: 6.360964580439031, - median: 6.761261701583862, - mode: 4.238183259963989, - variance: 0.5511043357306581, - stdDev: 0.7423640183431967, - min: 4.238183259963989, - max: 6.863919734954834, - count: 256, - totalSum: 1628.406932592392, - percentiles: { - p001: 4.238183259963989, - p01: 4.295440912246704, - p05: 4.5983030796051025, - p10: 4.984205961227417, - p25: 6.1305251121521, - p50: 6.761261701583862, - p75: 6.79938006401062, - p90: 6.837599039077759, - p95: 6.842914819717407, - p99: 6.856215000152588, - p999: 6.863919734954834, + "requestsPerSecond": 97.72963165104827, + "timePerRequest": { + "mean": 2.839796203382994, + "median": 2.811281204223633, + "mode": 0.008713006973266602, + "variance": 1.397369946816538, + "min": 0.008713006973266602, + "max": 5.744529724121094, + "count": 1466, + "percentiles": { + "p001": 0.023944854736328125, + "p01": 0.05858588218688965, + "p05": 0.1463909149169922, + "p10": 1.4199650287628174, + "p25": 2.4478471279144287, + "p50": 2.811281204223633, + "p75": 3.2137973308563232, + "p90": 4.424772024154663, + "p95": 5.73198676109314, + "p99": 5.7389256954193115, + "p999": 5.742041826248169 }, - percentileRows: [ + "stdDev": 1.1821040338381974, + "totalSum": 4163.14123415947, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 6.761261701583862, + "percentile": "p50", + "value": 2.811281204223633 }, { - percentile: 'p90', - value: 6.837599039077759, + "percentile": "p90", + "value": 4.424772024154663 }, { - percentile: 'p95', - value: 6.842914819717407, + "percentile": "p95", + "value": 5.73198676109314 }, { - percentile: 'p99', - value: 6.856215000152588, - }, - ], + "percentile": "p99", + "value": 5.7389256954193115 + } + ] }, + "strategyDisplayStr": "constant@123.31" }, { - strategyDisplayStr: "throughput", - requestsPerSecond: 37.45318312972309, - itl: { - mean: 600.7204526769262, - median: 626.2100083487375, - mode: 398.7384523664202, - variance: 19496.451141682686, - stdDev: 139.62969290835917, - min: 398.7384523664202, - max: 876.9458702632359, - count: 256, - totalSum: 153784.43588529312, - percentiles: { - p001: 398.7384523664202, - p01: 398.79986218043734, - p05: 465.77743121555875, - p10: 465.8282824925014, - p25: 465.9903049468994, - p50: 626.2100083487375, - p75: 626.3504368918283, - p90: 876.4010156903948, - p95: 876.5457017081125, - p99: 876.6791820526123, - p999: 876.9458702632359, + "itl": { + "mean": 285.6216027262535, + "median": 322.62312041388617, + "mode": 0.00010974823482452877, + "variance": 28037.60116714278, + "min": 0.00010974823482452877, + "max": 602.0877361297607, + "count": 1675, + "percentiles": { + "p001": 0.00011353265671502977, + "p01": 0.00014002360994853672, + "p05": 0.00015894571940104166, + "p10": 0.0001930055164155506, + "p25": 184.22857920328775, + "p50": 322.62312041388617, + "p75": 386.2370082310268, + "p90": 434.86154079437256, + "p95": 601.0504961013794, + "p99": 601.5154719352722, + "p999": 601.84645652771 }, - percentileRows: [ + "stdDev": 167.4443225885631, + "totalSum": 478416.1845664746, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 626.2100083487375, + "percentile": "p50", + "value": 322.62312041388617 }, { - percentile: 'p90', - value: 876.4010156903948, + "percentile": "p90", + "value": 434.86154079437256 }, { - percentile: 'p95', - value: 876.5457017081125, + "percentile": "p95", + "value": 601.0504961013794 }, { - percentile: 'p99', - value: 876.6791820526123, - }, - ], + "percentile": "p99", + "value": 601.5154719352722 + } + ] }, - ttft: { - mean: 2270.3185863792896, - median: 2333.8708877563477, - mode: 624.4189739227295, - variance: 689884.3929942232, - stdDev: 830.5927961367249, - min: 624.4189739227295, - max: 4022.5632190704346, - count: 256, - totalSum: 581201.5581130981, - percentiles: { - p001: 624.4189739227295, - p01: 627.3941993713379, - p05: 636.2800598144531, - p10: 646.9879150390625, - p25: 2297.8010177612305, - p50: 2333.8708877563477, - p75: 2491.302967071533, - p90: 3417.022943496704, - p95: 3426.0239601135254, - p99: 3947.2179412841797, - p999: 4022.5632190704346, + "ttft": { + "mean": 2.6106074318956973, + "median": 2.5420188903808594, + "mode": 1.241922378540039, + "variance": 0.40211124724544883, + "min": 1.241922378540039, + "max": 13.356924057006836, + "count": 1675, + "percentiles": { + "p001": 1.3239383697509766, + "p01": 1.6131401062011719, + "p05": 1.8486976623535156, + "p10": 1.9710063934326172, + "p25": 2.1877288818359375, + "p50": 2.5420188903808594, + "p75": 2.9158592224121094, + "p90": 3.3121109008789062, + "p95": 3.5669803619384766, + "p99": 4.542112350463867, + "p999": 6.905794143676758 }, - percentileRows: [ + "stdDev": 0.6341224229164656, + "totalSum": 4372.767448425293, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 2333.8708877563477, + "percentile": "p50", + "value": 2.5420188903808594 }, { - percentile: 'p90', - value: 3417.022943496704, + "percentile": "p90", + "value": 3.3121109008789062 }, { - percentile: 'p95', - value: 3426.0239601135254, + "percentile": "p95", + "value": 3.5669803619384766 }, { - percentile: 'p99', - value: 3947.2179412841797, - }, - ], + "percentile": "p99", + "value": 4.542112350463867 + } + ] }, - throughput: { - mean: 299.4791635411842, - median: 3.030949722688924, - mode: 1.1391714581369894, - variance: 22450634.582333777, - stdDev: 4738.210061018167, - min: 0.0, - max: 1258291.2, - count: 644, - totalSum: 24922318.936492577, - percentiles: { - p001: 0.0, - p01: 0.0, - p05: 0.0, - p10: 1.1391714581369894, - p25: 1.1490267949845356, - p50: 3.030949722688924, - p75: 5.887742339400797, - p90: 8.667779853522244, - p95: 16.13454481108487, - p99: 7358.428070175439, - p999: 49932.19047619047, + "throughput": { + "mean": 90.70111081982525, + "median": 3.4405548193888857, + "mode": 2.0725835940758253, + "variance": 242406.39575420236, + "min": 2.0725835940758253, + "max": 7804.944494519234, + "count": 1675, + "percentiles": { + "p001": 2.074304777459154, + "p01": 2.0757205999496398, + "p05": 2.0773039836276332, + "p10": 2.679084326549026, + "p25": 2.9558482785096634, + "p50": 3.4405548193888857, + "p75": 5.6503687750220175, + "p90": 38.00252278505277, + "p95": 552.3999802446373, + "p99": 1661.2235733868024, + "p999": 7491.500781424425 }, - percentileRows: [ + "stdDev": 492.34784020466907, + "totalSum": 151924.36062320735, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 3.030949722688924, + "percentile": "p50", + "value": 3.4405548193888857 }, { - percentile: 'p90', - value: 8.667779853522244, + "percentile": "p90", + "value": 38.00252278505277 }, { - percentile: 'p95', - value: 16.13454481108487, + "percentile": "p95", + "value": 552.3999802446373 }, { - percentile: 'p99', - value: 7358.428070175439, - }, - ], + "percentile": "p99", + "value": 1661.2235733868024 + } + ] }, - timePerRequest: { - mean: 6.510815089568496, - median: 6.725250959396362, - mode: 4.9165239334106445, - variance: 0.2361784686553011, - stdDev: 0.48598196330244714, - min: 4.9165239334106445, - max: 6.835154294967651, - count: 256, - totalSum: 1666.768662929535, - percentiles: { - p001: 4.9165239334106445, - p01: 4.9701738357543945, - p05: 5.246534109115601, - p10: 5.63304591178894, - p25: 6.683944940567017, - p50: 6.725250959396362, - p75: 6.763767957687378, - p90: 6.793000221252441, - p95: 6.804349184036255, - p99: 6.820380926132202, - p999: 6.835154294967651, + "requestsPerSecond": 111.56757892596487, + "timePerRequest": { + "mean": 2.8216885205169224, + "median": 2.810148000717163, + "mode": 0.008199930191040039, + "variance": 1.3854112232523152, + "min": 0.008199930191040039, + "max": 5.744425058364868, + "count": 1675, + "percentiles": { + "p001": 0.008543014526367188, + "p01": 0.03852581977844238, + "p05": 0.11585807800292969, + "p10": 1.684098720550537, + "p25": 2.4088311195373535, + "p50": 2.810148000717163, + "p75": 3.2122278213500977, + "p90": 4.422790050506592, + "p95": 5.730025053024292, + "p99": 5.7384021282196045, + "p999": 5.742670059204102 }, - percentileRows: [ + "stdDev": 1.177034928645839, + "totalSum": 4726.328271865845, + "cumulativeDistributionFunction": null, + "percentileRows": [ { - percentile: 'p50', - value: 6.725250959396362, + "percentile": "p50", + "value": 2.810148000717163 }, { - percentile: 'p90', - value: 6.793000221252441, + "percentile": "p90", + "value": 4.422790050506592 }, { - percentile: 'p95', - value: 6.804349184036255, + "percentile": "p95", + "value": 5.730025053024292 }, { - percentile: 'p99', - value: 6.820380926132202, - }, - ], + "percentile": "p99", + "value": 5.7384021282196045 + } + ] }, - }, + "strategyDisplayStr": "constant@140.88" + } ];`; diff --git a/src/ui/lib/store/runInfoWindowData.ts b/src/ui/lib/store/runInfoWindowData.ts index 43b99909b..7579423d7 100644 --- a/src/ui/lib/store/runInfoWindowData.ts +++ b/src/ui/lib/store/runInfoWindowData.ts @@ -1,11 +1,11 @@ export const runInfoScript = `window.runInfo = { "model": { - "name": "neuralmagic/Qwen2.5-7B-quantized.w8a8", + "name": "Qwen/Qwen2.5-1.5B-Instruct", "size": 0 }, "task": "N/A", + "timestamp": 1760996441.247041, "dataset": { "name": "N/A" - }, - "timestamp": 1744310555.0286171 + } };`; diff --git a/src/ui/lib/store/workloadDetailsWindowData.ts b/src/ui/lib/store/workloadDetailsWindowData.ts index 634e5eef2..402b7e509 100644 --- a/src/ui/lib/store/workloadDetailsWindowData.ts +++ b/src/ui/lib/store/workloadDetailsWindowData.ts @@ -1,167 +1,217 @@ export const workloadDetailsScript = `window.workloadDetails = { "prompts": { "samples": [ - "such a sacrifice to her advantage as years of gratitude cannot enough acknowledge. By this time she is actually with them! If such goodness does not make her miserable now, she will never deserve to be happy! What a meeting for her, when she first sees my aunt! We must endeavour to forget all that has passed on either side, said Jane I hope and trust they will yet be happy. His consenting to marry her is a proof, I will believe, that he is come to a right way of thinking. Their mutual affection will steady them; and I flatter myself they will settle so quietly, and live in so rational a manner", - "a reconciliation; and, after a little further resistance on the part of his aunt, her resentment gave way, either to her affection for him, or her curiosity to see how his wife conducted herself; and she condescended to wait on them at Pemberley, in spite of that pollution which its woods had received, not merely from the presence of such a mistress, but the visits of her uncle and aunt from the city. With the Gardiners they were always on the most intimate terms. Darcy, as well as Elizabeth, really loved them; and they were both ever sensible of the warmest gratitude towards the persons who,", - "struck her, that _she_ was selected from among her sisters as worthy of being the mistress of Hunsford Parsonage, and of assisting to form a quadrille table at Rosings, in the absence of more eligible visitors. The idea soon reached to conviction, as she observed his increasing civilities towards herself, and heard his frequent attempt at a compliment on her wit and vivacity; and though more astonished than gratified herself by this effect of her charms, it was not long before her mother gave her to understand that the probability of their marriage was exceedingly agreeable to _her_. Elizabeth, however, did not choose", - "were comfortable on this subject. Day after day passed away without bringing any other tidings of him than the report which shortly prevailed in Meryton of his coming no more to Netherfield the whole winter; a report which highly incensed Mrs. Bennet, and which she never failed to contradict as a most scandalous falsehood. Even Elizabeth began to fear not that Bingley was indifferent but that his sisters would be successful in keeping him away. Unwilling as she was to admit an idea so destructive to Jane s happiness, and so dishonourable to the stability of her lover, she could not prevent its frequently recurring", - "? cried Elizabeth, brightening up for a moment. Upon my word, said Mrs. Gardiner, I begin to be of your uncle s opinion. It is really too great a violation of decency, honour, and interest, for him to be guilty of it. I cannot think so very ill of Wickham. Can you, yourself, Lizzie, so wholly give him up, as to believe him capable of it? Not perhaps of neglecting his own interest. But of every other neglect I can believe him capable. If, indeed, it should be so! But I dare not hope it. Why should they not go on" + "{'method': None, 'stream': True, 'headers': None, 'params': None, 'body': {'model': 'Qwen/Qwen2.5-1.5B-Instruct', 'stream': True, 'stream_options': {'include_usage': True}, 'max_completion_tokens': 64, 'stop': None, 'ignore_eos': True, 'messages': [{'role': 'user', 'content': [{'type': 'text', 'text': '1200 Season simple huge shake painting real house. Discuss loss of anything perform. Want seven capital floor I skill activity quite.\\nDeal less view far rock involve want up. None your development study can debate.\\nLike sense himself. Lose hour seek reason condition whom cover plant. Sure majority anyone while child risk.\\nCollection'}]}]}, 'files': None}", + "{'method': None, 'stream': True, 'headers': None, 'params': None, 'body': {'model': 'Qwen/Qwen2.5-1.5B-Instruct', 'stream': True, 'stream_options': {'include_usage': True}, 'max_completion_tokens': 64, 'stop': None, 'ignore_eos': True, 'messages': [{'role': 'user', 'content': [{'type': 'text', 'text': '158 Challenge air rest wind. Less crime amount laugh. Approach Republican forward why spend.\\nWide west man current hundred box. Agent north consider mother month.\\nInternational involve effect ahead building accept current. Parent church special voice two. Threat join chance good ask drive.\\nAffect arm entire increase beyond whole phone. Sense somebody'}]}]}, 'files': None}", + "{'method': None, 'stream': True, 'headers': None, 'params': None, 'body': {'model': 'Qwen/Qwen2.5-1.5B-Instruct', 'stream': True, 'stream_options': {'include_usage': True}, 'max_completion_tokens': 64, 'stop': None, 'ignore_eos': True, 'messages': [{'role': 'user', 'content': [{'type': 'text', 'text': '493 Available expert memory station. Eye simply former six eye media.\\nPeace those wife no camera. He expert along tax. Ready use fund who goal majority. Smile information sure wait item.\\nPolicy speak same charge see like while. Single indeed black nation professor baby song. Class three resource.\\nFull guy condition team individual'}]}]}, 'files': None}", + "{'method': None, 'stream': True, 'headers': None, 'params': None, 'body': {'model': 'Qwen/Qwen2.5-1.5B-Instruct', 'stream': True, 'stream_options': {'include_usage': True}, 'max_completion_tokens': 64, 'stop': None, 'ignore_eos': True, 'messages': [{'role': 'user', 'content': [{'type': 'text', 'text': '854 American whole idea nature direction adult. Vote community ok budget summer pass particular.\\nName either amount area. Mention catch task point debate avoid describe.\\nTraditional soldier arrive appear. Campaign generation reality indicate.\\nFrom security fear policy affect. Must this over board particularly doctor.\\nApproach rate chance laugh dark.\\nMovement event shoulder'}]}]}, 'files': None}", + "{'method': None, 'stream': True, 'headers': None, 'params': None, 'body': {'model': 'Qwen/Qwen2.5-1.5B-Instruct', 'stream': True, 'stream_options': {'include_usage': True}, 'max_completion_tokens': 64, 'stop': None, 'ignore_eos': True, 'messages': [{'role': 'user', 'content': [{'type': 'text', 'text': '1571 Benefit book artist more maybe. Share himself learn way day mention.\\nKey quality feel house. Describe challenge business ten with method maintain drug. Sign value fire only simple stage whom.\\nMajority drive authority respond continue. Your president similar national point crime moment. Wind question which story wide everyone.\\nHow move have'}]}]}, 'files': None}" ], "tokenDistributions": { "statistics": { - "mean": 128.07115246019785 + "mean": 53.829164944191824, + "median": 53.0, + "mode": 47.0, + "variance": 16.676582229511062, + "min": 47.0, + "max": 64.0, + "count": 9676, + "percentiles": { + "p001": 49.0, + "p01": 50.0, + "p05": 51.0, + "p10": 51.0, + "p25": 52.0, + "p50": 53.0, + "p75": 53.0, + "p90": 64.0, + "p95": 64.0, + "p99": 64.0, + "p999": 64.0 + }, + "stdDev": 4.083697127543993, + "totalSum": 520851.0, + "cumulativeDistributionFunction": null }, "buckets": [ { - "value": 128, - "count": 14389 - }, - { - "value": 130, - "count": 182 + "value": 47.0, + "count": 4 }, { - "value": 129, - "count": 677 + "value": 48.0, + "count": 3 }, { - "value": 131, - "count": 15 - } - ] - } - }, - "generations": { - "samples": [ - ", that his relations could not choose but be struck with their pleasing and advantageous change. Ten years of reproofs, threats, and chastisements, may not have given them all they ought to know; but surely evidence and conviction will soon do the rest, thanks to the happy truth-so-discovered is Bess", - " for her sake, had generously given up the one interest, and risked the other, the only real friends whom she could ever be able to acknowledge. Miss Gardiner had attended her nephew, the season before, and it was some consolation to Elizabeth to see his sisters again at Pemberley. Henry, of course", - " to attend to any reasoning. He was already so far her friend, and the habit of their acquaintance, attended as it was by a new share of regard, could produce but good offices among them, and we must take our comfort as well as we may. This comfort he soon united with, in possessesing her esteem", - " to her by the conduct of her mother and sisters. Charlotte was ins el amorous, silly, and headstrong; but he is, or seems to be, really in love with her. El , The rury waning of his best songs, and no man over 50", - ", with a certain tolerable income, in the genteel style they had known before? Why should not you, your father, and their cousins, protect and assist them, if you could prevail on your uncle to indemnify them sufficiently? -- But to deal out money recklessly, is indeed disgraceful. Had he" - ], - "tokenDistributions": { - "statistics": { - "mean": 63.951778811504944 - }, - "buckets": [ - { - "value": 64, - "count": 14618 + "value": 49.0, + "count": 74 }, { - "value": 62, - "count": 147 + "value": 50.0, + "count": 386 }, { - "value": 63, - "count": 431 + "value": 51.0, + "count": 1443 }, { - "value": 61, - "count": 19 + "value": 52.0, + "count": 2772 }, { - "value": 65, - "count": 40 + "value": 53.0, + "count": 2605 }, { - "value": 66, - "count": 4 + "value": 54.0, + "count": 989 }, { - "value": 67, - "count": 2 + "value": 55.0, + "count": 135 }, { - "value": 60, - "count": 2 + "value": 64.0, + "count": 1265 } - ] + ], + "bucketWidth": 1.0 } }, - "requestsOverTime": { - "numBenchmarks": 10, - "requestsOverTime": { - "statistic": {}, - "percentiles": [], + "generations": { + "samples": [ + "I am fine, how are you today?", + "I am fine, how are you today?", + "I am your AI assistant, how can I help you today?", + "I am fine, how are you today?", + "I am your AI assistant, how can I help you today?" + ], + "tokenDistributions": { + "statistics": { + "mean": 19.548160396858208, + "median": 10.0, + "mode": 5.0, + "variance": 359.43164089035383, + "min": 5.0, + "max": 64.0, + "count": 9676, + "percentiles": { + "p001": 5.0, + "p01": 5.0, + "p05": 5.0, + "p10": 7.0, + "p25": 8.0, + "p50": 10.0, + "p75": 25.0, + "p90": 64.0, + "p95": 64.0, + "p99": 64.0, + "p999": 64.0 + }, + "stdDev": 18.95868246715351, + "totalSum": 189148.0, + "cumulativeDistributionFunction": null + }, "buckets": [ { - "value": 0.12647485733032227, - "count": 46 + "value": 5.0, + "count": 875 }, { - "value": 68.87534944216411, - "count": 831 + "value": 7.0, + "count": 807 }, { - "value": 137.6242240269979, - "count": 2076 + "value": 8.0, + "count": 763 }, { - "value": 206.37309861183167, - "count": 629 + "value": 9.0, + "count": 1623 }, { - "value": 275.12197319666546, - "count": 282 + "value": 10.0, + "count": 777 }, { - "value": 343.87084778149926, - "count": 397 + "value": 11.0, + "count": 764 }, { - "value": 412.619722366333, - "count": 517 + "value": 13.0, + "count": 777 }, { - "value": 481.3685969511668, - "count": 669 + "value": 16.0, + "count": 759 }, { - "value": 550.1174715360006, - "count": 732 + "value": 25.0, + "count": 698 }, { - "value": 618.8663461208344, - "count": 958 + "value": 38.0, + "count": 568 }, { - "value": 687.6152207056682, - "count": 962 + "value": 64.0, + "count": 1265 + } + ], + "bucketWidth": 1.0 + } + }, + "server": { + "target": "http://localhost:8000" + }, + "requestsOverTime": { + "numBenchmarks": 10, + "requestsOverTime": { + "statistics": null, + "buckets": [ + { + "value": 0.002270936965942383, + "count": 5 }, { - "value": 756.364095290502, - "count": 1224 + "value": 16.853961372375487, + "count": 2114 }, { - "value": 825.1129698753357, - "count": 1197 + "value": 33.70565180778503, + "count": 212 }, { - "value": 893.8618444601696, - "count": 1458 + "value": 50.557342243194576, + "count": 426 }, { - "value": 962.6107190450033, - "count": 1435 + "value": 67.40903267860412, + "count": 630 }, { - "value": 1031.359593629837, - "count": 1695 + "value": 84.26072311401367, + "count": 844 }, { - "value": 1100.108468214671, - "count": 1640 + "value": 101.11241354942321, + "count": 1054 }, { - "value": 1168.8573427995047, - "count": 1931 + "value": 117.96410398483275, + "count": 1250 + }, + { + "value": 134.8157944202423, + "count": 1466 + }, + { + "value": 151.66748485565185, + "count": 1675 } - ] + ], + "bucketWidth": 16.851690435409544 } }, - "rateType": "sweep", - "server": { - "target": "http://192.168.4.13:8000" - } + "rateType": "synchronous" };`; From ffed468ba6b3ec426bfbba7705e319743ea32881 Mon Sep 17 00:00:00 2001 From: dalthecow Date: Wed, 10 Dec 2025 01:43:29 -0500 Subject: [PATCH 3/5] update strategy parsing logic Signed-off-by: dalthecow --- src/guidellm/benchmark/outputs/html.py | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/src/guidellm/benchmark/outputs/html.py b/src/guidellm/benchmark/outputs/html.py index 92ab569a8..27c991f83 100644 --- a/src/guidellm/benchmark/outputs/html.py +++ b/src/guidellm/benchmark/outputs/html.py @@ -203,19 +203,20 @@ def from_distribution_summary( """ return cls(**distribution.model_dump()) -def _get_strategy_display_str(strategy: SchedulingStrategy): - strategy_type = strategy if isinstance(strategy, str) else strategy.type_ - strategy_instance = ( - strategy if isinstance(strategy, SchedulingStrategy) else None - ) +def _get_strategy_display_str(strategy: SchedulingStrategy | str): + if isinstance(strategy, SchedulingStrategy): + return str(strategy) + strategy_type = strategy + if strategy_type == "concurrent": - rate = f"@{strategy.streams}" if strategy_instance else "@##" # type: ignore[attr-defined] + return "concurrent@##" elif strategy_type in ("constant", "poisson"): - rate = f"@{strategy.rate:.2f}" if strategy_instance else "@#.##" # type: ignore[attr-defined] - else: - rate = "" - return f"{strategy_type}{rate}" + return f"{strategy_type}@#.##" + elif strategy_type == "throughput": + return "throughput@##" + + return strategy_type def _create_html_report(js_data: dict[str, str], output_path: Path) -> Path: @@ -414,11 +415,11 @@ def _build_benchmarks(benchmarks: list[GenerativeBenchmark]) -> list[dict[str, A :return: List of dictionaries with formatted benchmark metrics """ result = [] - rps = bm.metrics.requests_per_second.successful.mean for bm in benchmarks: + rps = bm.metrics.requests_per_second.successful.mean result.append( { - "strategy_display_str":_get_strategy_display_str(bm.scheduler.strategy), + "strategy_display_str":_get_strategy_display_str(bm.config.strategy), "requests_per_second": rps, "itl": _TabularDistributionSummary.from_distribution_summary( bm.metrics.inter_token_latency_ms.successful From 72d9d8056275a38e7be54c6eaf74875b31117784 Mon Sep 17 00:00:00 2001 From: dalthecow Date: Wed, 10 Dec 2025 12:18:38 -0500 Subject: [PATCH 4/5] fix quality issues Signed-off-by: dalthecow --- src/guidellm/benchmark/outputs/html.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/guidellm/benchmark/outputs/html.py b/src/guidellm/benchmark/outputs/html.py index 27c991f83..0639c4055 100644 --- a/src/guidellm/benchmark/outputs/html.py +++ b/src/guidellm/benchmark/outputs/html.py @@ -202,7 +202,7 @@ def from_distribution_summary( :return: Tabular distribution summary with formatted percentile rows """ return cls(**distribution.model_dump()) - + def _get_strategy_display_str(strategy: SchedulingStrategy | str): if isinstance(strategy, SchedulingStrategy): return str(strategy) From ba2f7b02a9329a7df18314c1013d42b9dfd18f47 Mon Sep 17 00:00:00 2001 From: dalthecow Date: Wed, 10 Dec 2025 12:21:14 -0500 Subject: [PATCH 5/5] run precommit Signed-off-by: dalthecow --- src/guidellm/benchmark/outputs/html.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/guidellm/benchmark/outputs/html.py b/src/guidellm/benchmark/outputs/html.py index 0639c4055..ecc0bfec4 100644 --- a/src/guidellm/benchmark/outputs/html.py +++ b/src/guidellm/benchmark/outputs/html.py @@ -208,14 +208,14 @@ def _get_strategy_display_str(strategy: SchedulingStrategy | str): return str(strategy) strategy_type = strategy - + if strategy_type == "concurrent": return "concurrent@##" elif strategy_type in ("constant", "poisson"): return f"{strategy_type}@#.##" elif strategy_type == "throughput": - return "throughput@##" - + return "throughput@##" + return strategy_type