From 88b9f0df0567a43a275e6e32117b83ace0f5b463 Mon Sep 17 00:00:00 2001 From: 0z5a Date: Thu, 24 Sep 2026 01:53:12 +0000 Subject: [PATCH 1/9] Support speculative round interleaving and request migration Signed-off-by: 0z5a --- benchmarks/spec_sched_e2e.py | 134 ++++++++++++++++++++++ tests/test_speculative.py | 204 ++++++++++++++++++++++++++++++++- vllm_rlt/config.py | 3 + vllm_rlt/core/scheduler.py | 10 ++ vllm_rlt/engine/llm_engine.py | 83 ++++++++++++-- vllm_rlt/engine/preemption.py | 145 +++++++++++++++++------ vllm_rlt/worker/speculative.py | 50 +++++--- 7 files changed, 569 insertions(+), 60 deletions(-) create mode 100644 benchmarks/spec_sched_e2e.py diff --git a/benchmarks/spec_sched_e2e.py b/benchmarks/spec_sched_e2e.py new file mode 100644 index 00000000..a353a5d6 --- /dev/null +++ b/benchmarks/spec_sched_e2e.py @@ -0,0 +1,134 @@ +"""Paired real-model E2E for a prompt arriving at a speculative round boundary.""" + +import argparse +import json +import statistics +import time +from pathlib import Path + +import torch +from transformers import AutoTokenizer + +from vllm_rlt import CacheConfig, SamplingParams, SchedulerConfig, SpeculativeConfig +from vllm_rlt.engine.llm_engine import LLMEngine +from vllm_rlt.models import OuroForCausalLM +from vllm_rlt.request import Stage + + +def run(model, prompts, params, *, interleave): + engine = LLMEngine( + model, + cache_config=CacheConfig(num_blocks=1024), + scheduler_config=SchedulerConfig(max_num_seqs=2, max_num_batched_tokens=256), + attention_backend="triton", + speculative_config=SpeculativeConfig(4, interleave_round=interleave), + ) + torch.cuda.synchronize() + start = time.perf_counter() + engine.add_request("first", prompts[0], params) + while not engine.scheduler.requests["first"].generated_token_ids: + engine.step() + torch.cuda.synchronize() + arrival = time.perf_counter() + engine.add_request("second", prompts[1], params) + outputs = {} + second_ttft = None + interleaved_prefills = 0 + while engine.has_unfinished_requests(): + for output in engine.step(): + if output.request_id == "second" and second_ttft is None and output.token_ids: + torch.cuda.synchronize() + second_ttft = time.perf_counter() - arrival + if output.finished: + outputs[output.request_id] = dict( + tokens=output.token_ids, depths=output.exit_depths + ) + interleaved_prefills += int( + engine.last_schedule is not None + and engine.last_schedule.stage == Stage.PREFILL + and engine._spec_drafted is not None + ) + torch.cuda.synchronize() + if second_ttft is None: + raise AssertionError("second request produced no output") + if interleave and not interleaved_prefills: + raise AssertionError("intra-round prefill did not execute") + return dict( + seconds=time.perf_counter() - start, + second_ttft=second_ttft, + interleaved_prefills=interleaved_prefills, + outputs=outputs, + ) + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("--model", type=Path, required=True) + parser.add_argument("--output", type=Path, required=True) + parser.add_argument("--max-tokens", type=int, default=32) + parser.add_argument("--repeats", type=int, default=5) + args = parser.parse_args() + if args.max_tokens < 2 or args.repeats < 1: + parser.error("max-tokens must be at least 2 and repeats must be positive") + + tokenizer = AutoTokenizer.from_pretrained(args.model, trust_remote_code=False) + prompts = [ + tokenizer.encode("The quick brown fox jumps over the lazy dog. " * 10), + tokenizer.encode( + "Explain matrix multiplication with concrete input and output shapes. " * 4 + ), + ] + model = OuroForCausalLM.from_pretrained(args.model, device="cuda:0", dtype=torch.bfloat16) + params = SamplingParams(max_tokens=args.max_tokens, min_loops=4, max_loops=4, ignore_eos=True) + rows = [] + for _ in range(3): + pair = {flag: run(model, prompts, params, interleave=flag) for flag in (False, True)} + if pair[False]["outputs"] != pair[True]["outputs"]: + raise AssertionError("warmup output mismatch") + for trial in range(args.repeats): + pair = {} + for flag in (False, True) if trial % 2 == 0 else (True, False): + pair[flag] = run(model, prompts, params, interleave=flag) + rows.append(dict(trial=trial, interleave=flag, **pair[flag])) + if pair[False]["outputs"] != pair[True]["outputs"]: + raise AssertionError(f"trial {trial} output mismatch") + + args.output.mkdir(parents=True, exist_ok=True) + (args.output / "raw.json").write_text( + json.dumps( + dict( + model="ByteDance/Ouro-1.4B", + device=torch.cuda.get_device_name(0), + dtype="bfloat16", + backend="triton", + k=4, + output_budget=args.max_tokens, + prompts=prompts, + rows=rows, + ), + indent=2, + ) + ) + table = [] + for key, label in (("seconds", "Two-request E2E"), ("second_ttft", "Second-request TTFT")): + atomic = statistics.median(row[key] for row in rows if not row["interleave"]) + interleaved = statistics.median(row[key] for row in rows if row["interleave"]) + table.append( + f"| {label} | {atomic:.3f} | {interleaved:.3f} | {atomic / interleaved:.3f}× |" + ) + (args.output / "speedup.md").write_text( + "# Ouro-1.4B speculative intra-round scheduling E2E\n\n" + f"{torch.cuda.get_device_name(0)}; BF16, Triton, d=2/D=4, K=4, " + f"{args.max_tokens} output tokens per request. The second prompt arrives after " + "the first request's initial output. One resident model, three warmups " + f"per arm, {args.repeats} alternating paired trials. Timings include " + "prefill, draft, verification, coda and KV commit. Every paired output " + "token and exit depth matched. Lower latency is better; speedup is " + "atomic / interleaved.\n\n" + "| Metric | Atomic, s | Interleaved, s | Speedup |\n" + "|---|---:|---:|---:|\n" + "\n".join(table) + "\n\n[Raw paired trials](raw.json)\n" + ) + + +if __name__ == "__main__": + main() diff --git a/tests/test_speculative.py b/tests/test_speculative.py index d4a2c05c..53b8590a 100644 --- a/tests/test_speculative.py +++ b/tests/test_speculative.py @@ -1,6 +1,8 @@ """Fixed-depth oracle, rollback, lifecycle and distribution tests for speculation.""" +import pickle from collections import Counter +from contextlib import nullcontext import pytest import torch @@ -302,7 +304,6 @@ def test_probability_filters_match_expected_and_keep_boundary_ties(): [ dict(cache_config=CacheConfig(layout="shared")), dict(execution_config=ExecutionConfig(async_scheduling=True)), - dict(scheduler_config=SchedulerConfig(enable_preemption=True)), dict(scheduler_config=SchedulerConfig(mode="no_refill")), ], ) @@ -342,6 +343,207 @@ def fail(*args, **kwargs): assert e.cache_manager.num_used_blocks == 0 +@pytest.mark.parametrize( + "device,backend", + [("cpu", "torch"), pytest.param("cuda", "triton", marks=pytest.mark.gpu)], +) +def test_priority_preempts_only_between_speculative_rounds_and_resumes(device, backend): + m = ( + model() + if device == "cpu" + else OuroForCausalLM(OuroConfig.tiny(hidden_size=256, head_dim=64)).to( + "cuda", torch.bfloat16 + ) + ) + prompts = {"low": [2, 3, 4], "high": [7, 8, 9]} + params = { + "low": SamplingParams(max_tokens=10, ignore_eos=True, priority=10), + "high": SamplingParams(max_tokens=7, ignore_eos=True, priority=0), + } + expected = { + rid: LLM(m, attention_backend=backend).generate([prompt], params[rid])[0] + for rid, prompt in prompts.items() + } + e = engine( + m, + k=3, + cache_config=CacheConfig(64, 2, incremental_allocation=True), + scheduler_config=SchedulerConfig( + max_num_seqs=1, + max_num_batched_tokens=4, + prefill_chunk_size=2, + policy="priority", + enable_preemption=True, + ), + attention_backend=backend, + ) + e.add_request("low", prompts["low"], params["low"]) + while len(e.scheduler.requests["low"].generated_token_ids) < 2: + e.step() + e.add_request("high", prompts["high"], params["high"]) + actual = drain(e) + assert e.preemption.preemptions > 0 + assert e.preemption.resumptions > 0 + assert {rid: out.token_ids for rid, out in actual.items()} == { + rid: out.token_ids for rid, out in expected.items() + } + assert {rid: out.exit_depths for rid, out in actual.items()} == { + rid: out.exit_depths for rid, out in expected.items() + } + assert e.cache_manager.num_used_blocks == 0 + + +@pytest.mark.parametrize( + "device,backend", + [("cpu", "torch"), pytest.param("cuda", "triton", marks=pytest.mark.gpu)], +) +def test_prefill_interleaves_between_draft_and_verify_without_changing_outputs(device, backend): + m = ( + model() + if device == "cpu" + else OuroForCausalLM(OuroConfig.tiny(hidden_size=256, head_dim=64)).to( + "cuda", torch.bfloat16 + ) + ) + prompts = {"first": [2, 3], "second": [7, 8, 9]} + params = SamplingParams(max_tokens=8, ignore_eos=True) + expected = { + rid: LLM(m, attention_backend=backend).generate([prompt], params)[0].token_ids + for rid, prompt in prompts.items() + } + e = LLMEngine( + m, + speculative_config=SpeculativeConfig(3, interleave_round=True), + cache_config=CacheConfig(128, 2), + scheduler_config=SchedulerConfig( + max_num_seqs=2, max_num_batched_tokens=8, prefill_chunk_size=2 + ), + attention_backend=backend, + ) + e.add_request("first", prompts["first"], params) + while not e.scheduler.requests["first"].generated_token_ids: + e.step() + assert e.step() == [] + assert e.last_schedule.stage == Stage.SPECULATIVE + assert "first" in e.preemption.inflight_ids + e.add_request("second", prompts["second"], params) + assert e.step() == [] + assert e.last_schedule.stage == Stage.PREFILL + assert e.step()[0].request_id == "first" + assert e.last_schedule.stage == Stage.SPECULATIVE + assert not e.preemption.inflight_ids + actual = drain(e) + assert {rid: out.token_ids for rid, out in actual.items()} == expected + assert e.cache_manager.num_used_blocks == 0 + + +def test_priority_waits_for_draft_verification_before_preempting(): + m = model() + params = { + "low": SamplingParams(max_tokens=8, ignore_eos=True, priority=10), + "high": SamplingParams(max_tokens=5, ignore_eos=True, priority=0), + } + e = LLMEngine( + m, + speculative_config=SpeculativeConfig(3, interleave_round=True), + cache_config=CacheConfig(64, 2, incremental_allocation=True), + scheduler_config=SchedulerConfig( + max_num_seqs=1, + max_num_batched_tokens=4, + prefill_chunk_size=2, + policy="priority", + enable_preemption=True, + ), + ) + e.add_request("low", [2, 3, 4], params["low"]) + while not e.scheduler.requests["low"].generated_token_ids: + e.step() + e.step() # Draft is complete; verification still owns provisional KV. + e.add_request("high", [7, 8, 9], params["high"]) + assert e.step()[0].request_id == "low" + assert e.preemption.preemptions == 0 + actual = drain(e) + assert e.preemption.preemptions > 0 + assert e.preemption.resumptions > 0 + for rid, prompt in (("low", [2, 3, 4]), ("high", [7, 8, 9])): + expected = LLM(m).generate([prompt], params[rid])[0] + assert actual[rid].token_ids == expected.token_ids + assert actual[rid].exit_depths == expected.exit_depths + assert e.cache_manager.num_used_blocks == 0 + + +def test_abort_during_draft_does_not_reuse_provisional_kv(): + m = model() + params = SamplingParams(max_tokens=8, ignore_eos=True) + e = LLMEngine( + m, + speculative_config=SpeculativeConfig(3, interleave_round=True), + cache_config=CacheConfig(64, 2), + ) + e.add_request("r", [2, 3], params) + while not e.scheduler.requests["r"].generated_token_ids: + e.step() + assert e.step() == [] + e.abort_request("r") + e.add_request("r", [7, 8, 9], params) + actual = drain(e)["r"] + expected = LLM(m).generate([[7, 8, 9]], params)[0] + assert actual.token_ids == expected.token_ids + assert actual.exit_depths == expected.exit_depths + assert e.cache_manager.num_used_blocks == 0 + + +@pytest.mark.parametrize("temperature", [0, 0.8]) +@pytest.mark.parametrize( + "device,backend", + [("cpu", "torch"), pytest.param("cuda", "triton", marks=pytest.mark.gpu)], +) +def test_committed_round_migrates_kv_and_sampling_state(temperature, device, backend): + if device == "cuda": + if torch.cuda.device_count() < 2: + pytest.skip("migration requires two visible GPUs") + config = OuroConfig.tiny(hidden_size=256, head_dim=64) + torch.manual_seed(123) + m = OuroForCausalLM(config).to("cuda:0", torch.bfloat16) + target_model = OuroForCausalLM(config).to("cuda:1", torch.bfloat16) + target_model.load_state_dict(m.state_dict()) + else: + m = target_model = model() + cache = CacheConfig(128, 16) if device == "cuda" else CacheConfig(64, 2) + spec = SpeculativeConfig(3, interleave_round=True) + params = SamplingParams( + max_tokens=12, + ignore_eos=True, + temperature=temperature, + top_k=7, + seed=42, + ) + expected = LLM(m, speculative_config=spec, attention_backend=backend).generate( + [[2, 3, 4]], params + )[0] + source = LLMEngine(m, speculative_config=spec, cache_config=cache, attention_backend=backend) + target = LLMEngine( + target_model, speculative_config=spec, cache_config=cache, attention_backend=backend + ) + source.add_request("r", [2, 3, 4], params) + while not source.scheduler.requests["r"].generated_token_ids: + source.step() + assert source.step() == [] # Drafted KV is still provisional. + with pytest.raises(RuntimeError, match="committed speculative round boundary"): + source.export_request("r") + source.step() + packet = pickle.loads(pickle.dumps(source.export_request("r"))) + assert packet.state["keys"].device.type == "cpu" + assert not source.has_unfinished_requests() + assert source.cache_manager.num_used_blocks == 0 + with torch.cuda.device(1) if device == "cuda" else nullcontext(): + assert target.import_request(packet) + actual = drain(target)["r"] + assert actual.token_ids == expected.token_ids + assert actual.exit_depths == expected.exit_depths + assert target.cache_manager.num_used_blocks == 0 + + @pytest.mark.parametrize("k", [0, -1, True, 1.5]) def test_invalid_k(k): with pytest.raises(ValueError): diff --git a/vllm_rlt/config.py b/vllm_rlt/config.py index 2491dcf0..99e16308 100644 --- a/vllm_rlt/config.py +++ b/vllm_rlt/config.py @@ -137,9 +137,12 @@ class SpeculativeConfig: num_speculative_tokens: int draft_loops: int = 2 target_loops: int = 4 + interleave_round: bool = False def __post_init__(self): for name in ("num_speculative_tokens", "draft_loops", "target_loops"): _positive(name, getattr(self, name)) if self.draft_loops >= self.target_loops: raise ValueError("draft_loops must be smaller than target_loops") + if type(self.interleave_round) is not bool: + raise ValueError("interleave_round must be a boolean") diff --git a/vllm_rlt/core/scheduler.py b/vllm_rlt/core/scheduler.py index 8b90d39d..e15cd7f3 100644 --- a/vllm_rlt/core/scheduler.py +++ b/vllm_rlt/core/scheduler.py @@ -366,3 +366,13 @@ def schedule(self, *, prefer_recurrent=False) -> SchedulerOutput | None: if not self.requests: return None return self.policy.schedule(self, prefer_recurrent=prefer_recurrent) + + def schedule_intra_round(self) -> SchedulerOutput | None: + """Run one independent boundary batch while a draft awaits verification.""" + self.selected_request_ids.clear() + if self.queues[Stage.CODA]: + return self._take(Stage.CODA) + self._admit() + if self.queues[Stage.PREFILL]: + return self._take(Stage.PREFILL) + return None diff --git a/vllm_rlt/engine/llm_engine.py b/vllm_rlt/engine/llm_engine.py index bc6a549b..7ebee64a 100644 --- a/vllm_rlt/engine/llm_engine.py +++ b/vllm_rlt/engine/llm_engine.py @@ -3,8 +3,8 @@ from vllm_rlt.config import CacheConfig, ExecutionConfig, ExitConfig, SchedulerConfig from vllm_rlt.core.kv_cache_manager import KVCacheManager from vllm_rlt.core.memory import plan_cache -from vllm_rlt.core.scheduler import Scheduler -from vllm_rlt.engine.preemption import PreemptionManager +from vllm_rlt.core.scheduler import Scheduler, SchedulerOutput +from vllm_rlt.engine.preemption import PreemptionManager, RequestMigration from vllm_rlt.kernels.flash_attention import FLASH_BACKENDS from vllm_rlt.request import FinishReason, Request, RequestOutput, Stage from vllm_rlt.sampling_params import SamplingParams @@ -15,6 +15,9 @@ class LLMEngine: """Single-device loop-level engine with synchronous or pipelined scheduling.""" + _spec_drafted = None + _spec_interleaved = False + def __init__( self, model, @@ -43,10 +46,8 @@ def __init__( raise ValueError("speculative decoding requires fixed-depth ouro exit mode") if self.execution_config.async_scheduling: raise ValueError("speculative decoding currently requires synchronous execution") - if scheduler_config.enable_preemption or scheduler_config.mode != "refill": - raise ValueError( - "speculative decoding requires refill scheduling without preemption" - ) + if scheduler_config.mode != "refill": + raise ValueError("speculative decoding requires refill scheduling") # Retained q distributions and sampling scratch coexist with target # logits. Reserve beyond ordinary prefill/core profiling, even when # requests later choose sampling rather than greedy. @@ -117,6 +118,8 @@ def __init__( self._inflight = [] self._overlap_boundary = False self.last_schedule = None + self._spec_drafted = None + self._spec_interleaved = False self.preemption = PreemptionManager(self) if scheduler_config.enable_preemption: self.scheduler.preempt_callback = self.preemption.preempt @@ -184,7 +187,18 @@ def add_request( def has_unfinished_requests(self) -> bool: return self.scheduler.has_unfinished_requests + def export_request(self, request_id: str) -> RequestMigration: + return self.preemption.export_request(request_id) + + def import_request(self, packet: RequestMigration) -> bool: + return self.preemption.import_request(packet) + def abort_request(self, request_id: str) -> RequestOutput: + if self._spec_drafted is not None: + self._spec_drafted = [ + entry for entry in self._spec_drafted if entry.item.request.request_id != request_id + ] + self.preemption.inflight_ids.discard(request_id) self.preemption.discard_snapshot(request_id) self.model_runner.release(request_id) self._pending_exit_signals.pop(request_id, None) @@ -204,18 +218,40 @@ def step(self) -> list[RequestOutput]: self._pending_coda.clear() self._inflight.clear() raise - batch = self.scheduler.schedule() + if self._spec_drafted is not None and self._spec_interleaved: + return self._complete_speculative() + batch = ( + self.scheduler.schedule_intra_round() + if self._spec_drafted is not None + else self.scheduler.schedule() + ) self.last_schedule = batch if batch is None: + if self._spec_drafted is not None: + return self._complete_speculative() # PD imports wait for external KV completion; yield to the IPC loop. if any(r.stage != Stage.RECEIVING for r in self.scheduler.requests.values()): raise RuntimeError("scheduler made no progress") return [] try: if batch.stage == Stage.SPECULATIVE: - return self._update_speculative(batch, self.speculative_runner.execute(batch)) - result = self.model_runner.execute(batch) - return self._update(batch, result) + if self.speculative_config.interleave_round: + self._spec_drafted = self.speculative_runner.draft(batch) + self._spec_interleaved = False + self.preemption.inflight_ids.update( + item.request.request_id for item in batch.items + ) + outputs = [] + else: + outputs = self._update_speculative( + batch, self.speculative_runner.execute(batch) + ) + else: + outputs = self._update(batch, self.model_runner.execute(batch)) + if self._spec_drafted is not None: + self._spec_interleaved = True + self.scheduler.selected_request_ids.clear() + return outputs except Exception: # A failed execution may have partially written KV; invalidate the affected requests. for item in batch.items: @@ -223,6 +259,33 @@ def step(self) -> list[RequestOutput]: self.abort_request(item.request.request_id) raise + def _complete_speculative(self) -> list[RequestOutput]: + drafted = self._spec_drafted + self._spec_drafted = None + self._spec_interleaved = False + live = [ + entry + for entry in drafted + if self.scheduler.requests.get(entry.item.request.request_id) is entry.item.request + ] + batch = SchedulerOutput(Stage.SPECULATIVE, [entry.item for entry in live]) + self.last_schedule = batch + try: + if not live: + return [] + return self._update_speculative(batch, self.speculative_runner.verify(live)) + except Exception: + for entry in live: + rid = entry.item.request.request_id + if self.scheduler.requests.get(rid) is entry.item.request: + self.abort_request(rid) + raise + finally: + self.preemption.inflight_ids.difference_update( + entry.item.request.request_id for entry in drafted + ) + self.scheduler.selected_request_ids.clear() + def _update_speculative(self, batch, results): outputs = [] for item, result in zip(batch.items, results): diff --git a/vllm_rlt/engine/preemption.py b/vllm_rlt/engine/preemption.py index fc61b42d..f21e64dd 100644 --- a/vllm_rlt/engine/preemption.py +++ b/vllm_rlt/engine/preemption.py @@ -6,16 +6,26 @@ """ from copy import deepcopy +from dataclasses import dataclass, replace import torch -from vllm_rlt.request import Stage +from vllm_rlt.request import Request, Stage + + +@dataclass(frozen=True) +class RequestMigration: + request: Request + state: dict + rng_state: torch.Tensor | None + signature: tuple class PreemptionManager: def __init__(self, engine): self.engine = engine self.snapshots = {} + self.inflight_ids = set() self.preemptions = self.resumptions = 0 def discard_snapshot(self, request_id: str) -> None: @@ -35,6 +45,7 @@ def _is_preemption_candidate(self, request, requester, *, priority_only): or request.stage in (Stage.WAITING, Stage.RECEIVING) or request.num_output_placeholders or request.request_id in e.scheduler.selected_request_ids + or request.request_id in self.inflight_ids ): return False if e.cache_manager._get_allocation(request.request_id).transfer_leases: @@ -65,49 +76,114 @@ def _select_preemption_victim(self, requester, *, priority_only): default=None, ) - def preempt(self, requester, *, priority_only=False): - """Suspend one other request, preserving its recurrent execution state. + def _signature(self): + e, cache = self.engine, self.engine.cache_manager + return ( + e.model.config, + cache.layout, + cache.block_size, + cache.dtype, + cache.key_cache.shape[1:], + cache.attention_info, + cache.device.type, + ) - Returns False if no safe victim exists. True means the victim's device - resources have been released and it has been moved to WAITING; the - requester must still retry its own allocation. - """ - victim = self._select_preemption_victim(requester, priority_only=priority_only) - if victim is None: - return False + def _capture(self, request): e = self.engine e.model_runner.synchronize() cache = e.cache_manager - allocation = cache._get_allocation(victim.request_id) + allocation = cache._get_allocation(request.request_id) blocks = [b for table in allocation.block_tables for b in table] - # Copy views one page at a time: a pressure recovery must not allocate - # another request-sized temporary on an already full GPU. keys = torch.empty((len(blocks), *cache.key_cache.shape[1:]), dtype=cache.dtype) values = torch.empty_like(keys) for row, block in enumerate(blocks): keys[row].copy_(cache.key_cache[block]) values[row].copy_(cache.value_cache[block]) - snapshot = dict( - stage=victim.stage, + return dict( + stage=request.stage, maximum=allocation.max_tokens, pages=len(allocation.block_tables[0]), written=deepcopy(allocation.written), keys=keys, values=values, - hidden=None if victim.hidden_state is None else victim.hidden_state.cpu().clone(), + hidden=None if request.hidden_state is None else request.hidden_state.cpu().clone(), token=None - if victim.input_token_tensor is None - else victim.input_token_tensor.cpu().clone(), + if request.input_token_tensor is None + else request.input_token_tensor.cpu().clone(), + ) + + def _release(self, request): + e = self.engine + e.model_runner.release(request.request_id) + e.cache_manager.poll_prefixes() + e.cache_manager.free(request.request_id) + for queue in e.scheduler.queues.values(): + while request.request_id in queue: + queue.remove(request.request_id) + request.hidden_state = request.input_token_tensor = None + + def export_request(self, request_id: str) -> RequestMigration: + """Detach a committed speculative request as a CPU-owned migration packet.""" + e = self.engine + request = e.scheduler.requests[request_id] + if ( + request.stage != Stage.SPECULATIVE + or request_id in self.inflight_ids + or request_id in e.scheduler.selected_request_ids + or request.num_output_placeholders + or e.cache_manager._get_allocation(request_id).transfer_leases + ): + raise RuntimeError("migration requires a committed speculative round boundary") + state = self._capture(request) + saved = replace( + request, + prompt_token_ids=list(request.prompt_token_ids), + generated_token_ids=list(request.generated_token_ids), + exit_depths=list(request.exit_depths), + hidden_state=None, + input_token_tensor=None, + generator=None, + ) + packet = RequestMigration( + saved, + state, + None if request.generator is None else request.generator.get_state().clone(), + self._signature(), ) - e.model_runner.release(victim.request_id) - cache.poll_prefixes() - cache.free(victim.request_id) - for q in e.scheduler.queues.values(): - while victim.request_id in q: - q.remove(victim.request_id) - victim.hidden_state = victim.input_token_tensor = None - self.snapshots[victim.request_id] = snapshot - e.scheduler.enqueue(victim, Stage.WAITING) + self._release(request) + e.scheduler.requests.pop(request_id) + return packet + + def import_request(self, packet: RequestMigration) -> bool: + """Restore a migration packet; False leaves it intact for a later retry.""" + e = self.engine + request = packet.request + if packet.signature != self._signature(): + raise ValueError("migration source and target model/cache differ") + if request.request_id in e.scheduler.requests: + raise ValueError("duplicate migrated request ID") + if not self._restore_state(request, packet.state): + return False + if packet.rng_state is not None: + request.generator = torch.Generator(device=e.cache_manager.device) + request.generator.set_state(packet.rng_state) + e.scheduler.requests[request.request_id] = request + e.scheduler.enqueue(request, packet.state["stage"]) + return True + + def preempt(self, requester, *, priority_only=False): + """Suspend one other request, preserving its recurrent execution state. + + Returns False if no safe victim exists. True means the victim's device + resources have been released and it has been moved to WAITING; the + requester must still retry its own allocation. + """ + victim = self._select_preemption_victim(requester, priority_only=priority_only) + if victim is None: + return False + self.snapshots[victim.request_id] = self._capture(victim) + self._release(victim) + self.engine.scheduler.enqueue(victim, Stage.WAITING) self.preemptions += 1 return True @@ -121,7 +197,15 @@ def resume(self, request): state = self.snapshots.get(request.request_id) if state is None: return None - e, cache = self.engine, self.engine.cache_manager + if not self._restore_state(request, state): + return False + self.engine.scheduler.enqueue(request, state["stage"]) + del self.snapshots[request.request_id] + self.resumptions += 1 + return True + + def _restore_state(self, request, state): + cache = self.engine.cache_manager frontier = min(state["maximum"], state["pages"] * cache.block_size) if not cache.allocate(request.request_id, state["maximum"], initial_tokens=frontier): return False @@ -130,7 +214,7 @@ def resume(self, request): for row, block in enumerate(blocks): cache.key_cache[block].copy_(state["keys"][row]) cache.value_cache[block].copy_(state["values"][row]) - allocation.written = state["written"] + allocation.written = deepcopy(state["written"]) request.hidden_state = None if state["hidden"] is None else state["hidden"].to(cache.device) request.input_token_tensor = ( None if state["token"] is None else state["token"].to(cache.device) @@ -138,7 +222,4 @@ def resume(self, request): # Restored buffers become visible to every runner stream before resumption. if cache.device.type == "cuda": torch.cuda.current_stream(cache.device).synchronize() - e.scheduler.enqueue(request, state["stage"]) - del self.snapshots[request.request_id] - self.resumptions += 1 return True diff --git a/vllm_rlt/worker/speculative.py b/vllm_rlt/worker/speculative.py index 3ef02523..78e4462f 100644 --- a/vllm_rlt/worker/speculative.py +++ b/vllm_rlt/worker/speculative.py @@ -4,10 +4,11 @@ outputs; the engine applies returned tokens and owns KV commit/truncation. """ -from dataclasses import dataclass +from dataclasses import dataclass, field import torch +from vllm_rlt.core.scheduler import ScheduledItem from vllm_rlt.worker.cuda_graph import CodaGraphs, RecurrentGraphs from vllm_rlt.worker.sampling import ( draw, @@ -33,6 +34,14 @@ class SpeculativeStats: verified_rows: int = 0 +@dataclass +class DraftedItem: + item: ScheduledItem + candidates: list[int] = field(default_factory=list) + proposals: list[torch.Tensor] = field(default_factory=list) + states: list[torch.Tensor] = field(default_factory=list) + + class SpeculativeRunner: def __init__(self, model, cache, config, execution): self.model, self.cache, self.config = model, cache, config @@ -64,11 +73,9 @@ def _coda(self, hidden): ) @torch.inference_mode() - def execute(self, batch): + def draft(self, batch) -> list[DraftedItem]: items = batch.items - candidates = [[] for _ in items] - proposals = [[] for _ in items] - states = [[] for _ in items] + drafted = [DraftedItem(item) for item in items] # Each item includes the final shallow input needed for the bonus row. # Drafting batches independent requests at every autoregressive step. for offset in range(max(item.token_count for item in items)): @@ -76,7 +83,7 @@ def execute(self, batch): ids = [items[i].request.request_id for i in active] positions = [items[i].token_start + offset for i in active] tokens = [ - items[i].request.input_token_id if offset == 0 else candidates[i][-1] + items[i].request.input_token_id if offset == 0 else drafted[i].candidates[-1] for i in active ] hidden = self.model.prelude(torch.tensor(tokens, device=self.device, dtype=torch.long)) @@ -84,7 +91,7 @@ def execute(self, batch): hidden = self._core(hidden, ids, positions, depth) drafting = [] for row, i in enumerate(active): - states[i].append(hidden[row]) + drafted[i].states.append(hidden[row]) if offset + 1 < items[i].token_count: drafting.append((row, i)) if not drafting: @@ -96,32 +103,38 @@ def execute(self, batch): candidate = logits[row].argmax() else: q = probabilities(logits[row], request.sampling_params) - proposals[i].append(q) + drafted[i].proposals.append(q) candidate = draw(q, generator_for(request, self.device)) - candidates[i].append(int(candidate.item())) + drafted[i].candidates.append(int(candidate.item())) + return drafted + + @torch.inference_mode() + def verify(self, drafted: list[DraftedItem]) -> list[SpeculativeResult]: # Group contiguous positions per request for causal ragged attention. ids, positions = [], [] - for item in items: + for entry in drafted: + item = entry.item ids.extend([item.request.request_id] * item.token_count) positions.extend(range(item.token_start, item.token_start + item.token_count)) - hidden = torch.stack([h for request_states in states for h in request_states]) + hidden = torch.stack([h for entry in drafted for h in entry.states]) for depth in range(self.config.draft_loops, self.config.target_loops): hidden = self._core(hidden, ids, positions, depth, packed=True) logits = self._coda(hidden) results, start = [], 0 - for i, item in enumerate(items): + for entry in drafted: + item = entry.item rows = logits[start : start + item.token_count] start += item.token_count request = item.request tokens, accepted = [], 0 - for offset, candidate in enumerate(candidates[i]): + for offset, candidate in enumerate(entry.candidates): if request.sampling_params.temperature == 0: token = int(rows[offset].argmax().item()) accept = token == candidate else: p = probabilities(rows[offset], request.sampling_params) token, accept = rejection_sample( - candidate, p, proposals[i][offset], generator_for(request, self.device) + candidate, p, entry.proposals[offset], generator_for(request, self.device) ) tokens.append(token) if not accept: @@ -136,8 +149,11 @@ def execute(self, batch): generator_for(request, self.device), ) tokens.append(int(token.item())) - results.append(SpeculativeResult(tokens, accepted, len(candidates[i]))) - self.stats.rounds += len(items) - self.stats.drafted_tokens += sum(len(c) for c in candidates) + results.append(SpeculativeResult(tokens, accepted, len(entry.candidates))) + self.stats.rounds += len(drafted) + self.stats.drafted_tokens += sum(len(entry.candidates) for entry in drafted) self.stats.verified_rows += len(ids) return results + + def execute(self, batch): + return self.verify(self.draft(batch)) From 9d8fb39b5b59a187564b9f5be7179e5fa29a20bf Mon Sep 17 00:00:00 2001 From: 0z5a Date: Thu, 24 Sep 2026 02:10:07 +0000 Subject: [PATCH 2/9] Record RTX 5090 scheduling and migration E2E results Signed-off-by: 0z5a --- benchmarks/spec_migration_e2e.py | 141 +++ benchmarks/spec_preemption_e2e.py | 125 +++ benchmarks/spec_sched_e2e.py | 25 +- results/migration5090/raw.json | 474 +++++++++ results/migration5090/speedup.md | 12 + results/preemption5090/raw.json | 1283 ++++++++++++++++++++++ results/preemption5090/speedup.md | 12 + results/scheduling5090/raw.json | 1648 +++++++++++++++++++++++++++++ results/scheduling5090/speedup.md | 12 + 9 files changed, 3721 insertions(+), 11 deletions(-) create mode 100644 benchmarks/spec_migration_e2e.py create mode 100644 benchmarks/spec_preemption_e2e.py create mode 100644 results/migration5090/raw.json create mode 100644 results/migration5090/speedup.md create mode 100644 results/preemption5090/raw.json create mode 100644 results/preemption5090/speedup.md create mode 100644 results/scheduling5090/raw.json create mode 100644 results/scheduling5090/speedup.md diff --git a/benchmarks/spec_migration_e2e.py b/benchmarks/spec_migration_e2e.py new file mode 100644 index 00000000..76bb2f66 --- /dev/null +++ b/benchmarks/spec_migration_e2e.py @@ -0,0 +1,141 @@ +"""Paired Ouro E2E for a request migrated across two GPUs after KV commit.""" + +import argparse +import json +import statistics +import time +from pathlib import Path + +import torch +from transformers import AutoTokenizer + +from vllm_rlt import CacheConfig, SamplingParams, SpeculativeConfig +from vllm_rlt.engine.llm_engine import LLMEngine +from vllm_rlt.models import OuroForCausalLM + + +def drain(engine): + result = None + while engine.has_unfinished_requests(): + for output in engine.step(): + if output.finished: + result = dict(tokens=output.token_ids, depths=output.exit_depths) + return result + + +def run_baseline(engine, prompt, params): + torch.cuda.synchronize(0) + start = time.perf_counter() + engine.add_request("r", prompt, params) + output = drain(engine) + torch.cuda.synchronize(0) + return dict(seconds=time.perf_counter() - start, output=output) + + +def run_migrated(source, target, prompt, params): + torch.cuda.synchronize(0) + torch.cuda.synchronize(1) + start = time.perf_counter() + source.add_request("r", prompt, params) + while not source.scheduler.requests["r"].generated_token_ids: + source.step() + source.step() # Provisional draft. + source.step() # Verification commits the round. + packet = source.export_request("r") + with torch.cuda.device(1): + if not target.import_request(packet): + raise AssertionError("target could not reserve migrated KV") + output = drain(target) + torch.cuda.synchronize(0) + torch.cuda.synchronize(1) + return dict(seconds=time.perf_counter() - start, output=output) + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("--model", type=Path, required=True) + parser.add_argument("--output", type=Path, required=True) + parser.add_argument("--repeats", type=int, default=3) + args = parser.parse_args() + if args.repeats < 1: + parser.error("repeats must be positive") + if torch.cuda.device_count() != 2: + raise RuntimeError("benchmark requires exactly two visible GPUs") + + tokenizer = AutoTokenizer.from_pretrained(args.model, trust_remote_code=False) + prompt = tokenizer.encode( + "Explain how matrix multiplication works, with one numerical example." + ) + models = [ + OuroForCausalLM.from_pretrained(args.model, device=f"cuda:{device}", dtype=torch.bfloat16) + for device in (0, 1) + ] + config = SpeculativeConfig(4, interleave_round=True) + baseline = LLMEngine( + models[0], + speculative_config=config, + cache_config=CacheConfig(num_blocks=1024), + attention_backend="triton", + ) + source = LLMEngine( + models[0], + speculative_config=config, + cache_config=CacheConfig(num_blocks=1024), + attention_backend="triton", + ) + with torch.cuda.device(1): + target = LLMEngine( + models[1], + speculative_config=config, + cache_config=CacheConfig(num_blocks=1024), + attention_backend="triton", + ) + params = SamplingParams(max_tokens=32, min_loops=4, max_loops=4, ignore_eos=True) + rows = [] + for trial in range(args.repeats + 1): + pair = {} + for migrated in (False, True) if trial % 2 == 0 else (True, False): + value = ( + run_migrated(source, target, prompt, params) + if migrated + else run_baseline(baseline, prompt, params) + ) + pair[migrated] = value + if trial: + rows.append(dict(trial=trial - 1, migrated=migrated, **value)) + if pair[False]["output"] != pair[True]["output"]: + raise AssertionError(f"trial {trial} migration output mismatch") + + args.output.mkdir(parents=True, exist_ok=True) + (args.output / "raw.json").write_text( + json.dumps( + dict( + model="ByteDance/Ouro-1.4B", + devices=[torch.cuda.get_device_name(i) for i in (0, 1)], + dtype="bfloat16", + backend="triton", + prompt=prompt, + rows=rows, + ), + indent=2, + ) + ) + baseline_s = statistics.median(row["seconds"] for row in rows if not row["migrated"]) + migrated_s = statistics.median(row["seconds"] for row in rows if row["migrated"]) + (args.output / "speedup.md").write_text( + "# Ouro-1.4B cross-GPU KV migration E2E\n\n" + "Two RTX 5090 GPUs, BF16, Triton, d=2/D=4, K=4, 32 output tokens. " + "One warmup and three alternating paired trials; one request migrates " + "after its first committed speculative round. Timings include prefill, " + "draft, verification, CPU KV snapshot and restore, coda and KV commit. " + "Every paired output token and exit depth matched. Lower latency is better.\n\n" + "| Path | Median E2E, s | Relative speed |\n" + "|---|---:|---:|\n" + f"| Single GPU | {baseline_s:.3f} | 1.000× |\n" + f"| GPU 0 → GPU 1 | {migrated_s:.3f} | {baseline_s / migrated_s:.3f}× |\n\n" + "[Raw paired trials](raw.json)\n" + ) + + +if __name__ == "__main__": + main() diff --git a/benchmarks/spec_preemption_e2e.py b/benchmarks/spec_preemption_e2e.py new file mode 100644 index 00000000..c6ec7c3b --- /dev/null +++ b/benchmarks/spec_preemption_e2e.py @@ -0,0 +1,125 @@ +"""Paired Ouro E2E with a high-priority arrival after low-priority decoding begins.""" + +import argparse +import json +import statistics +import time +from pathlib import Path + +import torch +from transformers import AutoTokenizer + +from vllm_rlt import CacheConfig, SamplingParams, SchedulerConfig, SpeculativeConfig +from vllm_rlt.engine.llm_engine import LLMEngine +from vllm_rlt.models import OuroForCausalLM + + +def run(engine, prompts, params): + torch.cuda.synchronize() + start = time.perf_counter() + before = engine.preemption.preemptions, engine.preemption.resumptions + engine.add_request("low", prompts[0], params[0]) + while len(engine.scheduler.requests["low"].generated_token_ids) < 2: + engine.step() + torch.cuda.synchronize() + arrival = time.perf_counter() + engine.add_request("high", prompts[1], params[1]) + outputs = {} + high_ttft = None + while engine.has_unfinished_requests(): + for output in engine.step(): + if output.request_id == "high" and high_ttft is None and output.token_ids: + torch.cuda.synchronize() + high_ttft = time.perf_counter() - arrival + if output.finished: + outputs[output.request_id] = dict( + tokens=output.token_ids, depths=output.exit_depths + ) + torch.cuda.synchronize() + if high_ttft is None: + raise AssertionError("high-priority request produced no output") + return dict( + seconds=time.perf_counter() - start, + high_ttft=high_ttft, + preemptions=engine.preemption.preemptions - before[0], + resumptions=engine.preemption.resumptions - before[1], + outputs=outputs, + ) + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("--model", type=Path, required=True) + parser.add_argument("--output", type=Path, required=True) + parser.add_argument("--repeats", type=int, default=5) + args = parser.parse_args() + if args.repeats < 1: + parser.error("repeats must be positive") + + tokenizer = AutoTokenizer.from_pretrained(args.model, trust_remote_code=False) + prompts = [ + tokenizer.encode("The quick brown fox jumps over the lazy dog. " * 8), + tokenizer.encode("Explain matrix multiplication with one numerical example."), + ] + params = [ + SamplingParams(max_tokens=32, min_loops=4, max_loops=4, ignore_eos=True, priority=10), + SamplingParams(max_tokens=16, min_loops=4, max_loops=4, ignore_eos=True, priority=0), + ] + model = OuroForCausalLM.from_pretrained(args.model, device="cuda:0", dtype=torch.bfloat16) + engines = { + flag: LLMEngine( + model, + speculative_config=SpeculativeConfig(4, interleave_round=True), + cache_config=CacheConfig(num_blocks=1024, incremental_allocation=True), + scheduler_config=SchedulerConfig( + max_num_seqs=1, policy="priority", enable_preemption=flag + ), + attention_backend="triton", + ) + for flag in (False, True) + } + rows = [] + for trial in range(args.repeats + 1): + pair = {} + for flag in (False, True) if trial % 2 == 0 else (True, False): + pair[flag] = run(engines[flag], prompts, params) + if flag and not (pair[flag]["preemptions"] and pair[flag]["resumptions"]): + raise AssertionError("priority request did not preempt and resume") + if trial: + rows.append(dict(trial=trial - 1, preemption=flag, **pair[flag])) + if pair[False]["outputs"] != pair[True]["outputs"]: + raise AssertionError(f"trial {trial} output mismatch") + + args.output.mkdir(parents=True, exist_ok=True) + (args.output / "raw.json").write_text( + json.dumps( + dict( + model="ByteDance/Ouro-1.4B", + device=torch.cuda.get_device_name(0), + dtype="bfloat16", + backend="triton", + prompts=prompts, + rows=rows, + ), + indent=2, + ) + ) + table = [] + for key, label in (("seconds", "Two-request E2E"), ("high_ttft", "High-priority TTFT")): + serial = statistics.median(row[key] for row in rows if not row["preemption"]) + priority = statistics.median(row[key] for row in rows if row["preemption"]) + table.append(f"| {label} | {serial:.3f} | {priority:.3f} | {serial / priority:.3f}× |") + (args.output / "speedup.md").write_text( + "# Ouro-1.4B priority preemption E2E\n\n" + "RTX 5090, BF16, Triton, d=2/D=4, K=4. One low-priority 32-token " + "request runs first; a high-priority 16-token request arrives after " + "two low-priority outputs. One warmup and alternating paired trials. " + "Both arms share one resident model and allow only one active request. " + "Every paired output token and exit depth matched. Lower latency is better.\n\n" + "| Metric | Wait for active request, s | Preempt and resume, s | Speedup |\n" + "|---|---:|---:|---:|\n" + "\n".join(table) + "\n\n[Raw paired trials](raw.json)\n" + ) + + +if __name__ == "__main__": + main() diff --git a/benchmarks/spec_sched_e2e.py b/benchmarks/spec_sched_e2e.py index a353a5d6..9b6f41d6 100644 --- a/benchmarks/spec_sched_e2e.py +++ b/benchmarks/spec_sched_e2e.py @@ -15,14 +15,7 @@ from vllm_rlt.request import Stage -def run(model, prompts, params, *, interleave): - engine = LLMEngine( - model, - cache_config=CacheConfig(num_blocks=1024), - scheduler_config=SchedulerConfig(max_num_seqs=2, max_num_batched_tokens=256), - attention_backend="triton", - speculative_config=SpeculativeConfig(4, interleave_round=interleave), - ) +def run(engine, prompts, params): torch.cuda.synchronize() start = time.perf_counter() engine.add_request("first", prompts[0], params) @@ -51,7 +44,7 @@ def run(model, prompts, params, *, interleave): torch.cuda.synchronize() if second_ttft is None: raise AssertionError("second request produced no output") - if interleave and not interleaved_prefills: + if engine.speculative_config.interleave_round and not interleaved_prefills: raise AssertionError("intra-round prefill did not execute") return dict( seconds=time.perf_counter() - start, @@ -79,16 +72,26 @@ def main(): ), ] model = OuroForCausalLM.from_pretrained(args.model, device="cuda:0", dtype=torch.bfloat16) + engines = { + flag: LLMEngine( + model, + cache_config=CacheConfig(num_blocks=1024), + scheduler_config=SchedulerConfig(max_num_seqs=2, max_num_batched_tokens=256), + attention_backend="triton", + speculative_config=SpeculativeConfig(4, interleave_round=flag), + ) + for flag in (False, True) + } params = SamplingParams(max_tokens=args.max_tokens, min_loops=4, max_loops=4, ignore_eos=True) rows = [] for _ in range(3): - pair = {flag: run(model, prompts, params, interleave=flag) for flag in (False, True)} + pair = {flag: run(engines[flag], prompts, params) for flag in (False, True)} if pair[False]["outputs"] != pair[True]["outputs"]: raise AssertionError("warmup output mismatch") for trial in range(args.repeats): pair = {} for flag in (False, True) if trial % 2 == 0 else (True, False): - pair[flag] = run(model, prompts, params, interleave=flag) + pair[flag] = run(engines[flag], prompts, params) rows.append(dict(trial=trial, interleave=flag, **pair[flag])) if pair[False]["outputs"] != pair[True]["outputs"]: raise AssertionError(f"trial {trial} output mismatch") diff --git a/results/migration5090/raw.json b/results/migration5090/raw.json new file mode 100644 index 00000000..5da3b745 --- /dev/null +++ b/results/migration5090/raw.json @@ -0,0 +1,474 @@ +{ + "model": "ByteDance/Ouro-1.4B", + "devices": [ + "NVIDIA GeForce RTX 5090", + "NVIDIA GeForce RTX 5090" + ], + "dtype": "bfloat16", + "backend": "triton", + "prompt": [ + 36971, + 638, + 6736, + 17385, + 1806, + 28, + 351, + 582, + 12141, + 1183, + 30 + ], + "rows": [ + { + "trial": 0, + "migrated": true, + "seconds": 1.7137329280376434, + "output": { + "tokens": [ + 198, + 198, + 21350, + 42, + 25343, + 17385, + 314, + 253, + 11087, + 4953, + 338, + 2933, + 253, + 6455, + 282, + 18771, + 28, + 284, + 7124, + 1372, + 6736, + 30, + 378, + 1230, + 282, + 8935, + 281, + 260, + 808, + 6736, + 1251, + 325 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + }, + { + "trial": 0, + "migrated": false, + "seconds": 1.673237381502986, + "output": { + "tokens": [ + 198, + 198, + 21350, + 42, + 25343, + 17385, + 314, + 253, + 11087, + 4953, + 338, + 2933, + 253, + 6455, + 282, + 18771, + 28, + 284, + 7124, + 1372, + 6736, + 30, + 378, + 1230, + 282, + 8935, + 281, + 260, + 808, + 6736, + 1251, + 325 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + }, + { + "trial": 1, + "migrated": false, + "seconds": 1.6718002846464515, + "output": { + "tokens": [ + 198, + 198, + 21350, + 42, + 25343, + 17385, + 314, + 253, + 11087, + 4953, + 338, + 2933, + 253, + 6455, + 282, + 18771, + 28, + 284, + 7124, + 1372, + 6736, + 30, + 378, + 1230, + 282, + 8935, + 281, + 260, + 808, + 6736, + 1251, + 325 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + }, + { + "trial": 1, + "migrated": true, + "seconds": 1.7037747008726, + "output": { + "tokens": [ + 198, + 198, + 21350, + 42, + 25343, + 17385, + 314, + 253, + 11087, + 4953, + 338, + 2933, + 253, + 6455, + 282, + 18771, + 28, + 284, + 7124, + 1372, + 6736, + 30, + 378, + 1230, + 282, + 8935, + 281, + 260, + 808, + 6736, + 1251, + 325 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + }, + { + "trial": 2, + "migrated": true, + "seconds": 1.6939884163439274, + "output": { + "tokens": [ + 198, + 198, + 21350, + 42, + 25343, + 17385, + 314, + 253, + 11087, + 4953, + 338, + 2933, + 253, + 6455, + 282, + 18771, + 28, + 284, + 7124, + 1372, + 6736, + 30, + 378, + 1230, + 282, + 8935, + 281, + 260, + 808, + 6736, + 1251, + 325 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + }, + { + "trial": 2, + "migrated": false, + "seconds": 1.6685359729453921, + "output": { + "tokens": [ + 198, + 198, + 21350, + 42, + 25343, + 17385, + 314, + 253, + 11087, + 4953, + 338, + 2933, + 253, + 6455, + 282, + 18771, + 28, + 284, + 7124, + 1372, + 6736, + 30, + 378, + 1230, + 282, + 8935, + 281, + 260, + 808, + 6736, + 1251, + 325 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + ] +} \ No newline at end of file diff --git a/results/migration5090/speedup.md b/results/migration5090/speedup.md new file mode 100644 index 00000000..0d67e435 --- /dev/null +++ b/results/migration5090/speedup.md @@ -0,0 +1,12 @@ +# Ouro-1.4B cross-GPU KV migration E2E + +Two RTX 5090 GPUs, BF16, Triton, d=2/D=4, K=4, 32 output tokens. One warmup and three alternating paired trials; one request migrates after its first committed speculative round. Timings include prefill, draft, verification, CPU KV snapshot and restore, coda and KV commit. Every paired output token and exit depth matched. Lower latency is better. + +| Path | Median E2E, s | Relative speed | +|---|---:|---:| +| Single GPU | 1.672 | 1.000× | +| GPU 0 → GPU 1 | 1.704 | 0.981× | + +[Raw paired trials](raw.json) + +Checkpoint: ByteDance/Ouro-1.4B revision `574fa66cb8bf5abdc979642d01cf2b79b16bfab1`, SHA256 `58872a72616c736595b8b7662079c5b12c5a162ec16eae94f21c348dfa9885af`. Physical GPUs 2 and 3 were mapped to CUDA devices 0 and 1. Runs used `/home/gongji/0z5a` in a Docker container capped at 96 GiB RAM. Migration added about 0.032 seconds to the median E2E time; this is a compatibility result, not a speedup claim. diff --git a/results/preemption5090/raw.json b/results/preemption5090/raw.json new file mode 100644 index 00000000..b64e83e0 --- /dev/null +++ b/results/preemption5090/raw.json @@ -0,0 +1,1283 @@ +{ + "model": "ByteDance/Ouro-1.4B", + "device": "NVIDIA GeForce RTX 5090", + "dtype": "bfloat16", + "backend": "triton", + "prompts": [ + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ], + [ + 36971, + 6736, + 17385, + 351, + 582, + 12141, + 1183, + 30 + ] + ], + "rows": [ + { + "trial": 0, + "preemption": true, + "seconds": 2.311700824648142, + "high_ttft": 0.12260457873344421, + "preemptions": 1, + "resumptions": 1, + "outputs": { + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 0, + "preemption": false, + "seconds": 2.2931694900617003, + "high_ttft": 1.1556363133713603, + "preemptions": 0, + "resumptions": 0, + "outputs": { + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 1, + "preemption": false, + "seconds": 2.2402318567037582, + "high_ttft": 1.1451084902510047, + "preemptions": 0, + "resumptions": 0, + "outputs": { + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 1, + "preemption": true, + "seconds": 2.3677565958350897, + "high_ttft": 0.12082877475768328, + "preemptions": 1, + "resumptions": 1, + "outputs": { + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 2, + "preemption": true, + "seconds": 2.3112461399286985, + "high_ttft": 0.1220988379791379, + "preemptions": 1, + "resumptions": 1, + "outputs": { + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 2, + "preemption": false, + "seconds": 2.2336111310869455, + "high_ttft": 1.1481450339779258, + "preemptions": 0, + "resumptions": 0, + "outputs": { + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 3, + "preemption": false, + "seconds": 2.240696217864752, + "high_ttft": 1.1493575712665915, + "preemptions": 0, + "resumptions": 0, + "outputs": { + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 3, + "preemption": true, + "seconds": 2.3109793523326516, + "high_ttft": 0.12213992606848478, + "preemptions": 1, + "resumptions": 1, + "outputs": { + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 4, + "preemption": true, + "seconds": 2.3054528553038836, + "high_ttft": 0.12200392503291368, + "preemptions": 1, + "resumptions": 1, + "outputs": { + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 4, + "preemption": false, + "seconds": 2.2181832222267985, + "high_ttft": 1.1388507150113583, + "preemptions": 0, + "resumptions": 0, + "outputs": { + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/results/preemption5090/speedup.md b/results/preemption5090/speedup.md new file mode 100644 index 00000000..0444ff4f --- /dev/null +++ b/results/preemption5090/speedup.md @@ -0,0 +1,12 @@ +# Ouro-1.4B priority preemption E2E + +RTX 5090, BF16, Triton, d=2/D=4, K=4. One low-priority 32-token request runs first; a high-priority 16-token request arrives after two low-priority outputs. One warmup and alternating paired trials. Both arms share one resident model and allow only one active request. Every paired output token and exit depth matched. Lower latency is better. + +| Metric | Wait for active request, s | Preempt and resume, s | Speedup | +|---|---:|---:|---:| +| Two-request E2E | 2.240 | 2.311 | 0.969× | +| High-priority TTFT | 1.148 | 0.122 | 9.403× | + +[Raw paired trials](raw.json) + +Checkpoint: ByteDance/Ouro-1.4B revision `574fa66cb8bf5abdc979642d01cf2b79b16bfab1`, SHA256 `58872a72616c736595b8b7662079c5b12c5a162ec16eae94f21c348dfa9885af`. Physical GPU 2 was mapped to CUDA device 0. Runs used `/home/gongji/0z5a` in a Docker container capped at 96 GiB RAM. Each preempted trial recorded one preemption and one resumption. Priority admission reduced the high-priority request's TTFT while increasing total E2E time by about 0.071 seconds. diff --git a/results/scheduling5090/raw.json b/results/scheduling5090/raw.json new file mode 100644 index 00000000..da4509d3 --- /dev/null +++ b/results/scheduling5090/raw.json @@ -0,0 +1,1648 @@ +{ + "model": "ByteDance/Ouro-1.4B", + "device": "NVIDIA GeForce RTX 5090", + "dtype": "bfloat16", + "backend": "triton", + "k": 4, + "output_budget": 32, + "prompts": [ + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ], + [ + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 216 + ] + ], + "rows": [ + { + "trial": 0, + "interleave": false, + "seconds": 1.936117211356759, + "second_ttft": 0.28486917447298765, + "interleaved_prefills": 0, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 0, + "interleave": true, + "seconds": 1.9000734044238925, + "second_ttft": 0.282808855175972, + "interleaved_prefills": 1, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 1, + "interleave": true, + "seconds": 1.9076314810663462, + "second_ttft": 0.2833541566506028, + "interleaved_prefills": 1, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 1, + "interleave": false, + "seconds": 1.910870237275958, + "second_ttft": 0.2840337147936225, + "interleaved_prefills": 0, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 2, + "interleave": false, + "seconds": 1.9027967350557446, + "second_ttft": 0.2854383997619152, + "interleaved_prefills": 0, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 2, + "interleave": true, + "seconds": 1.9073597621172667, + "second_ttft": 0.2817671215161681, + "interleaved_prefills": 1, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 3, + "interleave": true, + "seconds": 1.9111890932545066, + "second_ttft": 0.28683389723300934, + "interleaved_prefills": 1, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 3, + "interleave": false, + "seconds": 1.9136524675413966, + "second_ttft": 0.2847353871911764, + "interleaved_prefills": 0, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 4, + "interleave": false, + "seconds": 1.914881338365376, + "second_ttft": 0.28440029826015234, + "interleaved_prefills": 0, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 4, + "interleave": true, + "seconds": 1.8888430884107947, + "second_ttft": 0.2834275746718049, + "interleaved_prefills": 1, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/results/scheduling5090/speedup.md b/results/scheduling5090/speedup.md new file mode 100644 index 00000000..e0024cd3 --- /dev/null +++ b/results/scheduling5090/speedup.md @@ -0,0 +1,12 @@ +# Ouro-1.4B speculative intra-round scheduling E2E + +NVIDIA GeForce RTX 5090; BF16, Triton, d=2/D=4, K=4, 32 output tokens per request. The second prompt arrives after the first request's initial output. One resident model, three warmups per arm, 5 alternating paired trials. Timings include prefill, draft, verification, coda and KV commit. Every paired output token and exit depth matched. Lower latency is better; speedup is atomic / interleaved. + +| Metric | Atomic, s | Interleaved, s | Speedup | +|---|---:|---:|---:| +| Two-request E2E | 1.914 | 1.907 | 1.003× | +| Second-request TTFT | 0.285 | 0.283 | 1.005× | + +[Raw paired trials](raw.json) + +Checkpoint: ByteDance/Ouro-1.4B revision `574fa66cb8bf5abdc979642d01cf2b79b16bfab1`, SHA256 `58872a72616c736595b8b7662079c5b12c5a162ec16eae94f21c348dfa9885af`. The tested card was physical GPU 2, mapped to CUDA device 0. Runs used `/home/gongji/0z5a` in a Docker container capped at 96 GiB RAM. Every interleaved trial executed exactly one prefill between draft and verification. The 0.3% E2E difference is too small to establish a material speedup in this shared-host run. From 31d46b87520c87c29cf7dbf83bf71b1ae10092f5 Mon Sep 17 00:00:00 2001 From: 0z5a Date: Thu, 24 Sep 2026 02:18:09 +0000 Subject: [PATCH 3/9] Verify graph replay across an interleaved speculative round Signed-off-by: 0z5a --- tests/test_speculative.py | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/tests/test_speculative.py b/tests/test_speculative.py index 53b8590a..c376b314 100644 --- a/tests/test_speculative.py +++ b/tests/test_speculative.py @@ -437,6 +437,42 @@ def test_prefill_interleaves_between_draft_and_verify_without_changing_outputs(d assert e.cache_manager.num_used_blocks == 0 +@pytest.mark.gpu +def test_cuda_graph_replay_with_intra_round_prefill(): + torch.manual_seed(123) + m = OuroForCausalLM(OuroConfig.tiny(hidden_size=256, head_dim=64)).to("cuda", torch.bfloat16) + params = SamplingParams(max_tokens=9, ignore_eos=True) + expected = LLM(m, speculative_config=SpeculativeConfig(3), attention_backend="triton").generate( + [[2, 3], [7, 8, 9]], params + ) + e = LLMEngine( + m, + speculative_config=SpeculativeConfig(3, interleave_round=True), + execution_config=ExecutionConfig(cuda_graphs=True, cuda_graph_max_batch_size=8), + cache_config=CacheConfig(128, 16), + scheduler_config=SchedulerConfig(max_num_seqs=2, max_num_batched_tokens=8), + attention_backend="triton", + ) + e.add_request("first", [2, 3], params) + while not e.scheduler.requests["first"].generated_token_ids: + e.step() + assert e.step() == [] + e.add_request("second", [7, 8, 9], params) + e.step() + assert e.last_schedule.stage == Stage.PREFILL + e.step() + assert e.last_schedule.stage == Stage.SPECULATIVE + actual = drain(e) + assert [actual[rid].token_ids for rid in ("first", "second")] == [ + output.token_ids for output in expected + ] + assert [actual[rid].exit_depths for rid in ("first", "second")] == [ + output.exit_depths for output in expected + ] + assert e.speculative_runner.graphs.replays > 0 + assert e.cache_manager.num_used_blocks == 0 + + def test_priority_waits_for_draft_verification_before_preempting(): m = model() params = { From 464f71151cf07b561d5fc58399f6904048dbeb81 Mon Sep 17 00:00:00 2001 From: 0z5a Date: Thu, 24 Sep 2026 02:20:23 +0000 Subject: [PATCH 4/9] Validate graph replay on combined speculative scheduler Signed-off-by: 0z5a --- results/graph-sched-integration/raw.json | 3330 ++++++++++++++++++++ results/graph-sched-integration/speedup.md | 16 + 2 files changed, 3346 insertions(+) create mode 100644 results/graph-sched-integration/raw.json create mode 100644 results/graph-sched-integration/speedup.md diff --git a/results/graph-sched-integration/raw.json b/results/graph-sched-integration/raw.json new file mode 100644 index 00000000..0b312f97 --- /dev/null +++ b/results/graph-sched-integration/raw.json @@ -0,0 +1,3330 @@ +{ + "model": "ByteDance/Ouro-1.4B", + "device": "NVIDIA GeForce RTX 5090", + "dtype": "bfloat16", + "backend": "triton", + "draft_loops": 2, + "target_loops": 4, + "k": 4, + "output_budget": 32, + "prompts": { + "repeated / 1": [ + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ] + ], + "repeated / 4": [ + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ], + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ], + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ], + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ] + ], + "prose / 1": [ + [ + 36971, + 638, + 253, + 6736, + 17385, + 1806, + 28, + 1285, + 3007, + 284, + 3124, + 6146, + 284, + 582, + 12141, + 1183, + 30 + ] + ] + }, + "rows": [ + { + "workload": "repeated / 1", + "trial": 0, + "graphs": false, + "seconds": 1.4905025288462639, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 0, + "graphs": true, + "seconds": 0.4249249445274472, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 1, + "graphs": true, + "seconds": 0.4241720363497734, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 1, + "graphs": false, + "seconds": 1.4949924740940332, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 2, + "graphs": false, + "seconds": 1.494246861897409, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 2, + "graphs": true, + "seconds": 0.42476159520447254, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 0, + "graphs": false, + "seconds": 1.3679689010605216, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 0, + "graphs": true, + "seconds": 0.7799242129549384, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 1, + "graphs": true, + "seconds": 0.7803086349740624, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 1, + "graphs": false, + "seconds": 1.3672883305698633, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 2, + "graphs": false, + "seconds": 1.365678170695901, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 2, + "graphs": true, + "seconds": 0.780812724493444, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 0, + "graphs": false, + "seconds": 0.9294551722705364, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 0, + "graphs": true, + "seconds": 0.401135359890759, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 1, + "graphs": true, + "seconds": 0.40105776861310005, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 1, + "graphs": false, + "seconds": 0.9314542915672064, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 2, + "graphs": false, + "seconds": 0.9272172292694449, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 2, + "graphs": true, + "seconds": 0.4013275671750307, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + } + ], + "graphs": { + "recurrent": { + "captures": 8, + "replays": 2368, + "fallbacks": 0 + }, + "coda": { + "captures": 8, + "replays": 984, + "fallbacks": 0 + } + } +} \ No newline at end of file diff --git a/results/graph-sched-integration/speedup.md b/results/graph-sched-integration/speedup.md new file mode 100644 index 00000000..4fbd3b43 --- /dev/null +++ b/results/graph-sched-integration/speedup.md @@ -0,0 +1,16 @@ +# Ouro-1.4B speculative CUDA Graph E2E + +NVIDIA GeForce RTX 5090; BF16, Triton, d=2/D=4, K=4, 32 output tokens. One resident model, separate engine state, five warmups per arm, 3 alternating paired trials. Timings include prefill, draft, verification, coda and KV commit. Every paired output token and exit depth matched. + +| Workload / requests | Eager E2E s | Graph E2E s | Speedup | Output | +|---|---:|---:|---:|---| +| repeated / 1 | 1.494 | 0.425 | 3.518× | exact match | +| repeated / 4 | 1.367 | 0.780 | 1.752× | exact match | +| prose / 1 | 0.929 | 0.401 | 2.317× | exact match | + +| Graph stage | Captures | Replays | Eager fallbacks | +|---|---:|---:|---:| +| recurrent | 8 | 2368 | 0 | +| coda | 8 | 984 | 0 | + +[Raw paired trials](raw.json). Checkpoint: ByteDance/Ouro-1.4B revision `574fa66cb8bf5abdc979642d01cf2b79b16bfab1`, SHA256 `58872a72616c736595b8b7662079c5b12c5a162ec16eae94f21c348dfa9885af`. Physical GPU 2 was mapped to CUDA device 0. Runs used `/home/gongji/0z5a` in Docker capped at 96 GiB RAM. This run exercises CUDA Graph replay with the split draft/verify runner and atomic rounds. A separate tiny-model GPU test covers Graph replay with an interleaved prefill; this table does not measure that workload. From d02b4ff0707b41485ef9416ef56ce94444fb1945 Mon Sep 17 00:00:00 2001 From: 0z5a Date: Thu, 24 Sep 2026 02:34:02 +0000 Subject: [PATCH 5/9] Cover graph replay through preemption and migration Signed-off-by: 0z5a --- tests/test_speculative.py | 44 ++++++++++++++++++++++++++++----------- 1 file changed, 32 insertions(+), 12 deletions(-) diff --git a/tests/test_speculative.py b/tests/test_speculative.py index c376b314..19729741 100644 --- a/tests/test_speculative.py +++ b/tests/test_speculative.py @@ -344,10 +344,14 @@ def fail(*args, **kwargs): @pytest.mark.parametrize( - "device,backend", - [("cpu", "torch"), pytest.param("cuda", "triton", marks=pytest.mark.gpu)], + "device,backend,graphs", + [ + ("cpu", "torch", False), + pytest.param("cuda", "triton", False, marks=pytest.mark.gpu), + pytest.param("cuda", "triton", True, marks=pytest.mark.gpu), + ], ) -def test_priority_preempts_only_between_speculative_rounds_and_resumes(device, backend): +def test_priority_preempts_only_between_speculative_rounds_and_resumes(device, backend, graphs): m = ( model() if device == "cpu" @@ -367,7 +371,7 @@ def test_priority_preempts_only_between_speculative_rounds_and_resumes(device, b e = engine( m, k=3, - cache_config=CacheConfig(64, 2, incremental_allocation=True), + cache_config=CacheConfig(64, 16 if graphs else 2, incremental_allocation=True), scheduler_config=SchedulerConfig( max_num_seqs=1, max_num_batched_tokens=4, @@ -376,6 +380,7 @@ def test_priority_preempts_only_between_speculative_rounds_and_resumes(device, b enable_preemption=True, ), attention_backend=backend, + execution_config=ExecutionConfig(cuda_graphs=graphs, cuda_graph_max_batch_size=8), ) e.add_request("low", prompts["low"], params["low"]) while len(e.scheduler.requests["low"].generated_token_ids) < 2: @@ -531,10 +536,14 @@ def test_abort_during_draft_does_not_reuse_provisional_kv(): @pytest.mark.parametrize("temperature", [0, 0.8]) @pytest.mark.parametrize( - "device,backend", - [("cpu", "torch"), pytest.param("cuda", "triton", marks=pytest.mark.gpu)], + "device,backend,graphs", + [ + ("cpu", "torch", False), + pytest.param("cuda", "triton", False, marks=pytest.mark.gpu), + pytest.param("cuda", "triton", True, marks=pytest.mark.gpu), + ], ) -def test_committed_round_migrates_kv_and_sampling_state(temperature, device, backend): +def test_committed_round_migrates_kv_and_sampling_state(temperature, device, backend, graphs): if device == "cuda": if torch.cuda.device_count() < 2: pytest.skip("migration requires two visible GPUs") @@ -547,6 +556,7 @@ def test_committed_round_migrates_kv_and_sampling_state(temperature, device, bac m = target_model = model() cache = CacheConfig(128, 16) if device == "cuda" else CacheConfig(64, 2) spec = SpeculativeConfig(3, interleave_round=True) + execution = ExecutionConfig(cuda_graphs=graphs, cuda_graph_max_batch_size=8) params = SamplingParams( max_tokens=12, ignore_eos=True, @@ -554,12 +564,22 @@ def test_committed_round_migrates_kv_and_sampling_state(temperature, device, bac top_k=7, seed=42, ) - expected = LLM(m, speculative_config=spec, attention_backend=backend).generate( - [[2, 3, 4]], params - )[0] - source = LLMEngine(m, speculative_config=spec, cache_config=cache, attention_backend=backend) + expected = LLM( + m, speculative_config=spec, attention_backend=backend, execution_config=execution + ).generate([[2, 3, 4]], params)[0] + source = LLMEngine( + m, + speculative_config=spec, + cache_config=cache, + attention_backend=backend, + execution_config=execution, + ) target = LLMEngine( - target_model, speculative_config=spec, cache_config=cache, attention_backend=backend + target_model, + speculative_config=spec, + cache_config=cache, + attention_backend=backend, + execution_config=execution, ) source.add_request("r", [2, 3, 4], params) while not source.scheduler.requests["r"].generated_token_ids: From 892d82f8ef55ff22f0f7cf4beed93e65f1aa3a50 Mon Sep 17 00:00:00 2001 From: 0z5a Date: Thu, 24 Sep 2026 04:14:19 +0000 Subject: [PATCH 6/9] Keep speculative drafts on device and record RTX 5090 E2E Signed-off-by: 0z5a --- benchmarks/spec_graph_e2e.py | 13 +- .../base-warm12/repeated1/raw.json | 932 +++ .../base-warm5/graph/raw.json | 5106 +++++++++++++++++ .../spec-optimization-5090/migration/raw.json | 474 ++ .../optimized-warm12/repeated1/raw.json | 932 +++ .../optimized-warm5/graph/raw.json | 5106 +++++++++++++++++ .../preemption/raw.json | 1283 +++++ .../scheduling/raw.json | 1648 ++++++ results/spec-optimization-5090/speedup.md | 34 + vllm_rlt/worker/cuda_graph.py | 3 +- vllm_rlt/worker/speculative.py | 47 +- 11 files changed, 15556 insertions(+), 22 deletions(-) create mode 100644 results/spec-optimization-5090/base-warm12/repeated1/raw.json create mode 100644 results/spec-optimization-5090/base-warm5/graph/raw.json create mode 100644 results/spec-optimization-5090/migration/raw.json create mode 100644 results/spec-optimization-5090/optimized-warm12/repeated1/raw.json create mode 100644 results/spec-optimization-5090/optimized-warm5/graph/raw.json create mode 100644 results/spec-optimization-5090/preemption/raw.json create mode 100644 results/spec-optimization-5090/scheduling/raw.json create mode 100644 results/spec-optimization-5090/speedup.md diff --git a/benchmarks/spec_graph_e2e.py b/benchmarks/spec_graph_e2e.py index ec253516..01362cb2 100644 --- a/benchmarks/spec_graph_e2e.py +++ b/benchmarks/spec_graph_e2e.py @@ -36,9 +36,11 @@ def main(): parser.add_argument("--output", type=Path, required=True) parser.add_argument("--max-tokens", type=int, default=64) parser.add_argument("--repeats", type=int, default=5) + parser.add_argument("--warmups", type=int, default=12) + parser.add_argument("--workload", choices=("repeated / 1", "repeated / 4", "prose / 1")) args = parser.parse_args() - if args.max_tokens < 2 or args.repeats < 1: - parser.error("max-tokens must be at least 2 and repeats must be positive") + if args.max_tokens < 2 or args.repeats < 1 or args.warmups < 1: + parser.error("max-tokens must be at least 2; repeats and warmups must be positive") tokenizer = AutoTokenizer.from_pretrained(args.model, trust_remote_code=False) repeated = tokenizer.encode("The quick brown fox jumps over the lazy dog. " * 12) @@ -51,6 +53,8 @@ def main(): "repeated / 4": [repeated] * 4, "prose / 1": [prose], } + if args.workload: + workloads = {args.workload: workloads[args.workload]} model = OuroForCausalLM.from_pretrained(args.model, device="cuda:0", dtype=torch.bfloat16) engines = { graph: LLM( @@ -68,7 +72,7 @@ def main(): params = SamplingParams(max_tokens=args.max_tokens, min_loops=4, max_loops=4, ignore_eos=True) rows = [] for name, prompts in workloads.items(): - for _ in range(5): + for _ in range(args.warmups): warmup = {graph: timed(engines[graph], prompts, params)[0] for graph in (False, True)} if warmup[False] != warmup[True]: raise AssertionError(f"{name}: graph warmup output mismatch") @@ -108,6 +112,7 @@ def main(): target_loops=4, k=4, output_budget=args.max_tokens, + warmups=args.warmups, prompts=workloads, rows=rows, graphs=counters, @@ -133,7 +138,7 @@ def main(): "# Ouro-1.4B speculative CUDA Graph E2E\n\n" f"{torch.cuda.get_device_name(0)}; BF16, Triton, d=2/D=4, K=4, " f"{args.max_tokens} output tokens. One resident model, separate engine state, " - f"five warmups per arm, {args.repeats} alternating paired trials. " + f"{args.warmups} warmups per arm, {args.repeats} alternating paired trials. " "Timings include prefill, draft, verification, coda and KV commit. " "Every paired output token and exit depth matched.\n\n" + "\n".join(table) diff --git a/results/spec-optimization-5090/base-warm12/repeated1/raw.json b/results/spec-optimization-5090/base-warm12/repeated1/raw.json new file mode 100644 index 00000000..f10fb228 --- /dev/null +++ b/results/spec-optimization-5090/base-warm12/repeated1/raw.json @@ -0,0 +1,932 @@ +{ + "model": "ByteDance/Ouro-1.4B", + "device": "NVIDIA GeForce RTX 5090", + "dtype": "bfloat16", + "backend": "triton", + "draft_loops": 2, + "target_loops": 4, + "k": 4, + "output_budget": 32, + "warmups": 12, + "prompts": { + "repeated / 1": [ + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ] + ] + }, + "rows": [ + { + "workload": "repeated / 1", + "trial": 0, + "graphs": false, + "seconds": 1.5867935939998006, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 0, + "graphs": true, + "seconds": 0.3900509779998629, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 1, + "graphs": true, + "seconds": 0.38900033100003384, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 1, + "graphs": false, + "seconds": 0.8916850539999359, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 2, + "graphs": false, + "seconds": 0.8918063460000667, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 2, + "graphs": true, + "seconds": 0.3896944870000425, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 3, + "graphs": true, + "seconds": 0.3898716890000742, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 3, + "graphs": false, + "seconds": 0.8909964940000918, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 4, + "graphs": false, + "seconds": 0.8892144499998267, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 4, + "graphs": true, + "seconds": 0.38967997400004606, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + } + ], + "graphs": { + "recurrent": { + "captures": 2, + "replays": 1428, + "fallbacks": 0 + }, + "coda": { + "captures": 2, + "replays": 595, + "fallbacks": 0 + } + } +} \ No newline at end of file diff --git a/results/spec-optimization-5090/base-warm5/graph/raw.json b/results/spec-optimization-5090/base-warm5/graph/raw.json new file mode 100644 index 00000000..a9895460 --- /dev/null +++ b/results/spec-optimization-5090/base-warm5/graph/raw.json @@ -0,0 +1,5106 @@ +{ + "model": "ByteDance/Ouro-1.4B", + "device": "NVIDIA GeForce RTX 5090", + "dtype": "bfloat16", + "backend": "triton", + "draft_loops": 2, + "target_loops": 4, + "k": 4, + "output_budget": 32, + "prompts": { + "repeated / 1": [ + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ] + ], + "repeated / 4": [ + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ], + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ], + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ], + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ] + ], + "prose / 1": [ + [ + 36971, + 638, + 253, + 6736, + 17385, + 1806, + 28, + 1285, + 3007, + 284, + 3124, + 6146, + 284, + 582, + 12141, + 1183, + 30 + ] + ] + }, + "rows": [ + { + "workload": "repeated / 1", + "trial": 0, + "graphs": false, + "seconds": 1.8004214289999254, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 0, + "graphs": true, + "seconds": 0.44548438999981954, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 1, + "graphs": true, + "seconds": 0.44453231200009213, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 1, + "graphs": false, + "seconds": 1.7885288059999311, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 2, + "graphs": false, + "seconds": 1.794809573000066, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 2, + "graphs": true, + "seconds": 0.44437068599995655, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 3, + "graphs": true, + "seconds": 0.4444217939999362, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 3, + "graphs": false, + "seconds": 1.7944642820000354, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 4, + "graphs": false, + "seconds": 1.2438293949999206, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 4, + "graphs": true, + "seconds": 0.39000187800002095, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 0, + "graphs": false, + "seconds": 1.5031934490000367, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 0, + "graphs": true, + "seconds": 0.7917307319999054, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 1, + "graphs": true, + "seconds": 0.7914151929999207, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 1, + "graphs": false, + "seconds": 1.4493063779998465, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 2, + "graphs": false, + "seconds": 1.6450226759998259, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 2, + "graphs": true, + "seconds": 0.8008590140000251, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 3, + "graphs": true, + "seconds": 0.7940112560002035, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 3, + "graphs": false, + "seconds": 1.4627676860000065, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 4, + "graphs": false, + "seconds": 1.4624898819999999, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 4, + "graphs": true, + "seconds": 0.7933138759999565, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 0, + "graphs": false, + "seconds": 0.9704374129998996, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 0, + "graphs": true, + "seconds": 0.4033695960001751, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 1, + "graphs": true, + "seconds": 0.40348657900017315, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 1, + "graphs": false, + "seconds": 0.9699733120000928, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 2, + "graphs": false, + "seconds": 0.9713766869999745, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 2, + "graphs": true, + "seconds": 0.4036014969999542, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 3, + "graphs": true, + "seconds": 0.4036853049999536, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 3, + "graphs": false, + "seconds": 0.971400051000046, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 4, + "graphs": false, + "seconds": 0.9742964300000949, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 4, + "graphs": true, + "seconds": 0.40367371499996807, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + } + ], + "graphs": { + "recurrent": { + "captures": 8, + "replays": 2960, + "fallbacks": 0 + }, + "coda": { + "captures": 8, + "replays": 1230, + "fallbacks": 0 + } + } +} \ No newline at end of file diff --git a/results/spec-optimization-5090/migration/raw.json b/results/spec-optimization-5090/migration/raw.json new file mode 100644 index 00000000..d3873b63 --- /dev/null +++ b/results/spec-optimization-5090/migration/raw.json @@ -0,0 +1,474 @@ +{ + "model": "ByteDance/Ouro-1.4B", + "devices": [ + "NVIDIA GeForce RTX 5090", + "NVIDIA GeForce RTX 5090" + ], + "dtype": "bfloat16", + "backend": "triton", + "prompt": [ + 36971, + 638, + 6736, + 17385, + 1806, + 28, + 351, + 582, + 12141, + 1183, + 30 + ], + "rows": [ + { + "trial": 0, + "migrated": true, + "seconds": 1.9970831849996102, + "output": { + "tokens": [ + 198, + 198, + 21350, + 42, + 25343, + 17385, + 314, + 253, + 11087, + 4953, + 338, + 2933, + 253, + 6455, + 282, + 18771, + 28, + 284, + 7124, + 1372, + 6736, + 30, + 378, + 1230, + 282, + 8935, + 281, + 260, + 808, + 6736, + 1251, + 325 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + }, + { + "trial": 0, + "migrated": false, + "seconds": 1.9346243919999324, + "output": { + "tokens": [ + 198, + 198, + 21350, + 42, + 25343, + 17385, + 314, + 253, + 11087, + 4953, + 338, + 2933, + 253, + 6455, + 282, + 18771, + 28, + 284, + 7124, + 1372, + 6736, + 30, + 378, + 1230, + 282, + 8935, + 281, + 260, + 808, + 6736, + 1251, + 325 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + }, + { + "trial": 1, + "migrated": false, + "seconds": 1.9330813819997275, + "output": { + "tokens": [ + 198, + 198, + 21350, + 42, + 25343, + 17385, + 314, + 253, + 11087, + 4953, + 338, + 2933, + 253, + 6455, + 282, + 18771, + 28, + 284, + 7124, + 1372, + 6736, + 30, + 378, + 1230, + 282, + 8935, + 281, + 260, + 808, + 6736, + 1251, + 325 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + }, + { + "trial": 1, + "migrated": true, + "seconds": 1.9772134670001833, + "output": { + "tokens": [ + 198, + 198, + 21350, + 42, + 25343, + 17385, + 314, + 253, + 11087, + 4953, + 338, + 2933, + 253, + 6455, + 282, + 18771, + 28, + 284, + 7124, + 1372, + 6736, + 30, + 378, + 1230, + 282, + 8935, + 281, + 260, + 808, + 6736, + 1251, + 325 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + }, + { + "trial": 2, + "migrated": true, + "seconds": 1.9881994429997576, + "output": { + "tokens": [ + 198, + 198, + 21350, + 42, + 25343, + 17385, + 314, + 253, + 11087, + 4953, + 338, + 2933, + 253, + 6455, + 282, + 18771, + 28, + 284, + 7124, + 1372, + 6736, + 30, + 378, + 1230, + 282, + 8935, + 281, + 260, + 808, + 6736, + 1251, + 325 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + }, + { + "trial": 2, + "migrated": false, + "seconds": 1.9408230190001632, + "output": { + "tokens": [ + 198, + 198, + 21350, + 42, + 25343, + 17385, + 314, + 253, + 11087, + 4953, + 338, + 2933, + 253, + 6455, + 282, + 18771, + 28, + 284, + 7124, + 1372, + 6736, + 30, + 378, + 1230, + 282, + 8935, + 281, + 260, + 808, + 6736, + 1251, + 325 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + ] +} \ No newline at end of file diff --git a/results/spec-optimization-5090/optimized-warm12/repeated1/raw.json b/results/spec-optimization-5090/optimized-warm12/repeated1/raw.json new file mode 100644 index 00000000..61cd703e --- /dev/null +++ b/results/spec-optimization-5090/optimized-warm12/repeated1/raw.json @@ -0,0 +1,932 @@ +{ + "model": "ByteDance/Ouro-1.4B", + "device": "NVIDIA GeForce RTX 5090", + "dtype": "bfloat16", + "backend": "triton", + "draft_loops": 2, + "target_loops": 4, + "k": 4, + "output_budget": 32, + "warmups": 12, + "prompts": { + "repeated / 1": [ + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ] + ] + }, + "rows": [ + { + "workload": "repeated / 1", + "trial": 0, + "graphs": false, + "seconds": 0.8874134029997549, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 0, + "graphs": true, + "seconds": 0.38776970099979735, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 1, + "graphs": true, + "seconds": 0.38866725300022154, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 1, + "graphs": false, + "seconds": 0.8890616660000887, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 2, + "graphs": false, + "seconds": 0.8930981710000196, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 2, + "graphs": true, + "seconds": 0.38848176400006196, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 3, + "graphs": true, + "seconds": 0.3881611150000026, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 3, + "graphs": false, + "seconds": 0.8897815039999841, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 4, + "graphs": false, + "seconds": 0.8950090969997291, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 4, + "graphs": true, + "seconds": 0.3876052199998412, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + } + ], + "graphs": { + "recurrent": { + "captures": 2, + "replays": 1428, + "fallbacks": 0 + }, + "coda": { + "captures": 2, + "replays": 595, + "fallbacks": 0 + } + } +} \ No newline at end of file diff --git a/results/spec-optimization-5090/optimized-warm5/graph/raw.json b/results/spec-optimization-5090/optimized-warm5/graph/raw.json new file mode 100644 index 00000000..393a32e0 --- /dev/null +++ b/results/spec-optimization-5090/optimized-warm5/graph/raw.json @@ -0,0 +1,5106 @@ +{ + "model": "ByteDance/Ouro-1.4B", + "device": "NVIDIA GeForce RTX 5090", + "dtype": "bfloat16", + "backend": "triton", + "draft_loops": 2, + "target_loops": 4, + "k": 4, + "output_budget": 32, + "prompts": { + "repeated / 1": [ + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ] + ], + "repeated / 4": [ + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ], + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ], + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ], + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ] + ], + "prose / 1": [ + [ + 36971, + 638, + 253, + 6736, + 17385, + 1806, + 28, + 1285, + 3007, + 284, + 3124, + 6146, + 284, + 582, + 12141, + 1183, + 30 + ] + ] + }, + "rows": [ + { + "workload": "repeated / 1", + "trial": 0, + "graphs": false, + "seconds": 1.7081732420001572, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 0, + "graphs": true, + "seconds": 0.4384024319999753, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 1, + "graphs": true, + "seconds": 0.43843115300001045, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 1, + "graphs": false, + "seconds": 1.7105924570000752, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 2, + "graphs": false, + "seconds": 0.9837112220000108, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 2, + "graphs": true, + "seconds": 0.3857015430000956, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 3, + "graphs": true, + "seconds": 0.38838701300005596, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 3, + "graphs": false, + "seconds": 0.8540489819999948, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 4, + "graphs": false, + "seconds": 0.8475612969998565, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 1", + "trial": 4, + "graphs": true, + "seconds": 0.3857524290001493, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 0, + "graphs": false, + "seconds": 1.3472407809999822, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 0, + "graphs": true, + "seconds": 0.7753062100000534, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 1, + "graphs": true, + "seconds": 0.7752205399999639, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 1, + "graphs": false, + "seconds": 1.3495568060000096, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 2, + "graphs": false, + "seconds": 1.34789339200006, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 2, + "graphs": true, + "seconds": 0.7752281049999965, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 3, + "graphs": true, + "seconds": 0.7745981999999003, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 3, + "graphs": false, + "seconds": 1.345310255999948, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 4, + "graphs": false, + "seconds": 1.3440590269999575, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "repeated / 4", + "trial": 4, + "graphs": true, + "seconds": 0.7755868179999652, + "outputs": [ + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + { + "tokens": [ + 198, + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 0, + "graphs": false, + "seconds": 0.9307745920000343, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 0, + "graphs": true, + "seconds": 0.4000013540000964, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 1, + "graphs": true, + "seconds": 0.4039096009998957, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 1, + "graphs": false, + "seconds": 0.9350705979998111, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 2, + "graphs": false, + "seconds": 0.9247449730000881, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 2, + "graphs": true, + "seconds": 0.3996995850000076, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 3, + "graphs": true, + "seconds": 0.4028443510001125, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 3, + "graphs": false, + "seconds": 0.9321190139999089, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 4, + "graphs": false, + "seconds": 0.9254827330000808, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + }, + { + "workload": "prose / 1", + "trial": 4, + "graphs": true, + "seconds": 0.39981750900005864, + "outputs": [ + { + "tokens": [ + 198, + 198, + 3757, + 25343, + 17139, + 18622, + 198, + 198, + 26128, + 17385, + 314, + 253, + 4959, + 4953, + 281, + 7974, + 12302, + 30, + 10887, + 827, + 18771, + 3814, + 24, + 330, + 3814, + 25, + 284, + 3814, + 24, + 389, + 3814, + 643 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + ] + } + ], + "graphs": { + "recurrent": { + "captures": 8, + "replays": 2960, + "fallbacks": 0 + }, + "coda": { + "captures": 8, + "replays": 1230, + "fallbacks": 0 + } + } +} \ No newline at end of file diff --git a/results/spec-optimization-5090/preemption/raw.json b/results/spec-optimization-5090/preemption/raw.json new file mode 100644 index 00000000..bb5346d4 --- /dev/null +++ b/results/spec-optimization-5090/preemption/raw.json @@ -0,0 +1,1283 @@ +{ + "model": "ByteDance/Ouro-1.4B", + "device": "NVIDIA GeForce RTX 5090", + "dtype": "bfloat16", + "backend": "triton", + "prompts": [ + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ], + [ + 36971, + 6736, + 17385, + 351, + 582, + 12141, + 1183, + 30 + ] + ], + "rows": [ + { + "trial": 0, + "preemption": true, + "seconds": 3.04776431099981, + "high_ttft": 0.16281157599996732, + "preemptions": 1, + "resumptions": 1, + "outputs": { + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 0, + "preemption": false, + "seconds": 2.9005437129999336, + "high_ttft": 1.4907143350001206, + "preemptions": 0, + "resumptions": 0, + "outputs": { + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 1, + "preemption": false, + "seconds": 2.8920389899999464, + "high_ttft": 1.4855152209997868, + "preemptions": 0, + "resumptions": 0, + "outputs": { + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 1, + "preemption": true, + "seconds": 2.9977479109998058, + "high_ttft": 0.17012135599998146, + "preemptions": 1, + "resumptions": 1, + "outputs": { + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 2, + "preemption": true, + "seconds": 3.0267919600000823, + "high_ttft": 0.16500120299997434, + "preemptions": 1, + "resumptions": 1, + "outputs": { + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 2, + "preemption": false, + "seconds": 2.8874633939999512, + "high_ttft": 1.4831230260001576, + "preemptions": 0, + "resumptions": 0, + "outputs": { + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 3, + "preemption": false, + "seconds": 2.2075735700000223, + "high_ttft": 1.3279683180003303, + "preemptions": 0, + "resumptions": 0, + "outputs": { + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 3, + "preemption": true, + "seconds": 1.479334869000013, + "high_ttft": 0.07798273799971867, + "preemptions": 1, + "resumptions": 1, + "outputs": { + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 4, + "preemption": true, + "seconds": 1.4781834810000873, + "high_ttft": 0.07760423299987451, + "preemptions": 1, + "resumptions": 1, + "outputs": { + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 4, + "preemption": false, + "seconds": 1.431942756999888, + "high_ttft": 0.735176772000159, + "preemptions": 0, + "resumptions": 0, + "outputs": { + "low": { + "tokens": [ + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "high": { + "tokens": [ + 198, + 198, + 828, + 17872, + 216, + 33, + 32, + 828, + 198, + 198, + 828, + 24, + 81, + 14353, + 198, + 198 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/results/spec-optimization-5090/scheduling/raw.json b/results/spec-optimization-5090/scheduling/raw.json new file mode 100644 index 00000000..77bce757 --- /dev/null +++ b/results/spec-optimization-5090/scheduling/raw.json @@ -0,0 +1,1648 @@ +{ + "model": "ByteDance/Ouro-1.4B", + "device": "NVIDIA GeForce RTX 5090", + "dtype": "bfloat16", + "backend": "triton", + "k": 4, + "output_budget": 32, + "prompts": [ + [ + 504, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 378, + 2365, + 6354, + 16438, + 27003, + 690, + 260, + 23790, + 2767, + 30, + 216 + ], + [ + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 216 + ] + ], + "rows": [ + { + "trial": 0, + "interleave": false, + "seconds": 2.154586671999823, + "second_ttft": 0.3224092069999642, + "interleaved_prefills": 0, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 0, + "interleave": true, + "seconds": 2.1502599870000267, + "second_ttft": 0.3194771729999957, + "interleaved_prefills": 1, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 1, + "interleave": true, + "seconds": 2.1484004909998475, + "second_ttft": 0.31989015199997084, + "interleaved_prefills": 1, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 1, + "interleave": false, + "seconds": 1.9632128899997952, + "second_ttft": 0.3217691869999726, + "interleaved_prefills": 0, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 2, + "interleave": false, + "seconds": 1.0646432510002342, + "second_ttft": 0.15843296799994278, + "interleaved_prefills": 0, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 2, + "interleave": true, + "seconds": 1.0604028699999617, + "second_ttft": 0.1574392610000359, + "interleaved_prefills": 1, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 3, + "interleave": true, + "seconds": 1.0619345740001336, + "second_ttft": 0.15772919599976376, + "interleaved_prefills": 1, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 3, + "interleave": false, + "seconds": 1.0646152069998607, + "second_ttft": 0.1580289029998312, + "interleaved_prefills": 0, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 4, + "interleave": false, + "seconds": 1.0642067989997486, + "second_ttft": 0.15780578099975173, + "interleaved_prefills": 0, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + }, + { + "trial": 4, + "interleave": true, + "seconds": 1.0622382419996939, + "second_ttft": 0.1578851540002688, + "interleaved_prefills": 1, + "outputs": { + "second": { + "tokens": [ + 198, + 36971, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374, + 6736, + 17385, + 351, + 7257, + 3007, + 284, + 3124, + 6146, + 30, + 16374 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + }, + "first": { + "tokens": [ + 198, + 3725, + 198, + 198, + 3725, + 5367, + 198, + 2017, + 298, + 198, + 198, + 1604, + 985, + 79, + 6774, + 24, + 2692, + 727, + 198, + 197, + 19, + 29490, + 288, + 37748, + 284, + 1042, + 511, + 1924, + 1015, + 33929, + 198, + 197 + ], + "depths": [ + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/results/spec-optimization-5090/speedup.md b/results/spec-optimization-5090/speedup.md new file mode 100644 index 00000000..cd84aad7 --- /dev/null +++ b/results/spec-optimization-5090/speedup.md @@ -0,0 +1,34 @@ +# Ouro-1.4B speculative execution optimization, RTX 5090 E2E + +ByteDance/Ouro-1.4B revision `574fa66cb8bf5abdc979642d01cf2b79b16bfab1`, weight SHA256 `58872a72616c736595b8b7662079c5b12c5a162ec16eae94f21c348dfa9885af`. BF16, Triton paged attention, shallow depth 2 / target depth 4, draft length 4, 32 output tokens. Physical GPU 2 maps to CUDA 0; migration also uses physical GPU 3 as CUDA 1. Runs used the existing `/home/gongji/0z5a` environment inside Docker capped at 96 GiB RAM. Timings include prefill, draft, verification, coda, and KV commit; migration also includes CPU KV snapshot and restore. All paired output tokens and exit depths matched. + +## Before / after code change + +Median of five real-model trials for the CUDA Graph path. Lower E2E time is better. Each arm ran in its own process with the same checkpoint and GPU. The repeated single-request workload used twelve warmups per arm because five did not reach steady state; the other workloads used five. These small differences are sensitive to shared-host load and should not be treated as a guaranteed speedup. + +| Workload / requests | Before, s | After, s | Before / after | +|---|---:|---:|---:| +| repeated / 1 | 0.390 | 0.388 | 1.004× | +| repeated / 4 | 0.793 | 0.775 | 1.023× | +| prose / 1 | 0.404 | 0.400 | 1.009× | + +Raw trials: [single request before](base-warm12/repeated1/raw.json), [single request after](optimized-warm12/repeated1/raw.json), [other workloads before](base-warm5/graph/raw.json), [other workloads after](optimized-warm5/graph/raw.json). The before/after outputs matched for every trial and workload. + +## Final code path comparisons + +Each row below compares two arms within the same real-model benchmark. `A / B` greater than one means B is faster. Five alternating paired trials were run for Graph, scheduling, and preemption; migration used three. One warmup per arm was used for preemption and migration, three for scheduling, and twelve for the repeated single-request Graph workload. + +| Workload / metric | A | A, s | B | B, s | A / B | +|---|---|---:|---|---:|---:| +| repeated / 1 E2E | eager | 0.890 | Graph | 0.388 | 2.292× | +| repeated / 4 E2E | eager | 1.347 | Graph | 0.775 | 1.738× | +| prose / 1 E2E | eager | 0.931 | Graph | 0.400 | 2.327× | +| two-request scheduling E2E | atomic | 1.065 | interleaved | 1.062 | 1.002× | +| second-request TTFT | atomic | 0.158 | interleaved | 0.158 | 1.003× | +| two-request priority E2E | wait | 2.887 | preempt/resume | 2.998 | 0.963× | +| high-priority TTFT | wait | 1.483 | preempt/resume | 0.163 | 9.109× | +| migration request E2E | GPU 0 | 1.935 | GPU 0 → 1 | 1.988 | 0.973× | + +Raw trials: [Graph](optimized-warm5/graph/raw.json), [scheduling](scheduling/raw.json), [preemption](preemption/raw.json), [migration](migration/raw.json). Every interleaved trial executed one prefill between draft and verification. Every preempted trial recorded one preemption and one resumption. The Graph path recorded 2,960 recurrent replays, 1,230 coda replays, and zero eager fallbacks in the full workload run. + +Priority preemption improves the arriving high-priority request's TTFT while increasing total completion time. Cross-GPU migration preserves outputs but adds CPU copy cost. Intra-round scheduling has no material E2E gain in this workload. diff --git a/vllm_rlt/worker/cuda_graph.py b/vllm_rlt/worker/cuda_graph.py index a5094318..d9d50f4d 100644 --- a/vllm_rlt/worker/cuda_graph.py +++ b/vllm_rlt/worker/cuda_graph.py @@ -192,4 +192,5 @@ def run(self, hidden): self.captures += 1 entry.graph.replay() self.replays += 1 - return entry.output.clone() + # SpeculativeRunner consumes the logits before the next replay. + return entry.output diff --git a/vllm_rlt/worker/speculative.py b/vllm_rlt/worker/speculative.py index 78e4462f..cbae0688 100644 --- a/vllm_rlt/worker/speculative.py +++ b/vllm_rlt/worker/speculative.py @@ -15,6 +15,7 @@ generator_for, probabilities, rejection_sample, + sample_logits, ) @@ -37,7 +38,7 @@ class SpeculativeStats: @dataclass class DraftedItem: item: ScheduledItem - candidates: list[int] = field(default_factory=list) + candidates: list[torch.Tensor] = field(default_factory=list) proposals: list[torch.Tensor] = field(default_factory=list) states: list[torch.Tensor] = field(default_factory=list) @@ -82,11 +83,16 @@ def draft(self, batch) -> list[DraftedItem]: active = [i for i, item in enumerate(items) if offset < item.token_count] ids = [items[i].request.request_id for i in active] positions = [items[i].token_start + offset for i in active] - tokens = [ - items[i].request.input_token_id if offset == 0 else drafted[i].candidates[-1] - for i in active - ] - hidden = self.model.prelude(torch.tensor(tokens, device=self.device, dtype=torch.long)) + tokens = ( + torch.tensor( + [items[i].request.input_token_id for i in active], + device=self.device, + dtype=torch.long, + ) + if offset == 0 + else torch.stack([drafted[i].candidates[-1] for i in active]) + ) + hidden = self.model.prelude(tokens) for depth in range(self.config.draft_loops): hidden = self._core(hidden, ids, positions, depth) drafting = [] @@ -105,7 +111,7 @@ def draft(self, batch) -> list[DraftedItem]: q = probabilities(logits[row], request.sampling_params) drafted[i].proposals.append(q) candidate = draw(q, generator_for(request, self.device)) - drafted[i].candidates.append(int(candidate.item())) + drafted[i].candidates.append(candidate) return drafted @torch.inference_mode() @@ -126,10 +132,21 @@ def verify(self, drafted: list[DraftedItem]) -> list[SpeculativeResult]: rows = logits[start : start + item.token_count] start += item.token_count request = item.request + greedy = request.sampling_params.temperature == 0 + drafts = ( + torch.stack(entry.candidates) + if entry.candidates + else torch.empty(0, device=self.device, dtype=torch.long) + ) + if greedy: + ids = torch.cat((rows.argmax(dim=-1), drafts)).tolist() + targets, candidates = ids[: item.token_count], ids[item.token_count :] + else: + candidates = drafts.tolist() tokens, accepted = [], 0 - for offset, candidate in enumerate(entry.candidates): - if request.sampling_params.temperature == 0: - token = int(rows[offset].argmax().item()) + for offset, candidate in enumerate(candidates): + if greedy: + token = targets[offset] accept = token == candidate else: p = probabilities(rows[offset], request.sampling_params) @@ -141,14 +158,10 @@ def verify(self, drafted: list[DraftedItem]) -> list[SpeculativeResult]: break accepted += 1 else: - if request.sampling_params.temperature == 0: - token = rows[-1].argmax() + if greedy: + tokens.append(targets[-1]) else: - token = draw( - probabilities(rows[-1], request.sampling_params), - generator_for(request, self.device), - ) - tokens.append(int(token.item())) + tokens.append(int(sample_logits(rows[-1], request).item())) results.append(SpeculativeResult(tokens, accepted, len(entry.candidates))) self.stats.rounds += len(drafted) self.stats.drafted_tokens += sum(len(entry.candidates) for entry in drafted) From 704b306e2a7601f033319d7f19c7d413dc742515 Mon Sep 17 00:00:00 2001 From: 0z5a Date: Thu, 24 Sep 2026 17:44:16 +0800 Subject: [PATCH 7/9] Skip saturated speculative admission scans and benchmark queued E2E --- benchmarks/spec_sched_queue_e2e.py | 74 ++++++++++++++++++++++++++++++ vllm_rlt/core/scheduler.py | 6 +++ 2 files changed, 80 insertions(+) create mode 100644 benchmarks/spec_sched_queue_e2e.py diff --git a/benchmarks/spec_sched_queue_e2e.py b/benchmarks/spec_sched_queue_e2e.py new file mode 100644 index 00000000..cb703860 --- /dev/null +++ b/benchmarks/spec_sched_queue_e2e.py @@ -0,0 +1,74 @@ +"""Real-model speculative E2E with and without a saturated admission queue.""" + +import argparse +import json +import statistics +import time +from pathlib import Path + +import torch + +from vllm_rlt import ( + CacheConfig, + ExecutionConfig, + SamplingParams, + SchedulerConfig, + SpeculativeConfig, +) +from vllm_rlt.engine.llm_engine import LLMEngine +from vllm_rlt.models import OuroForCausalLM + + +def run(engine, prompts, params): + torch.cuda.synchronize() + start = time.perf_counter() + for index, prompt in enumerate(prompts): + engine.add_request(str(index), prompt, params) + first, finished = {}, {} + while engine.has_unfinished_requests(): + for output in engine.step(): + if output.token_ids and output.request_id not in first: + first[output.request_id] = time.perf_counter() - start + if output.finished: + finished[output.request_id] = (output.token_ids, output.exit_depths) + torch.cuda.synchronize() + seconds = time.perf_counter() - start + return dict( + seconds=seconds, + median_ttft=statistics.median(first.values()), + max_ttft=max(first.values()), + tokens_per_second=sum(len(tokens) for tokens, _ in finished.values()) / seconds, + outputs=finished, + ) + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("--model", type=Path, required=True) + parser.add_argument("--output", type=Path, required=True) + parser.add_argument("--requests", type=int, choices=(1, 8), required=True) + parser.add_argument("--repeats", type=int, default=5) + args = parser.parse_args() + + model = OuroForCausalLM.from_pretrained(args.model, device="cuda:0", dtype=torch.bfloat16) + engine = LLMEngine( + model, + cache_config=CacheConfig(num_blocks=1024), + scheduler_config=SchedulerConfig(max_num_seqs=2, max_num_batched_tokens=128), + execution_config=ExecutionConfig(cuda_graphs=True), + speculative_config=SpeculativeConfig(4, interleave_round=True), + attention_backend="triton", + ) + prompts = [([2 + index, 43, 314, 2718, 9] * 12)[:60] for index in range(args.requests)] + params = SamplingParams(max_tokens=32, min_loops=4, max_loops=4, ignore_eos=True) + for _ in range(3): + run(engine, prompts, params) + rows = [run(engine, prompts, params) for _ in range(args.repeats)] + if any(row["outputs"] != rows[0]["outputs"] for row in rows[1:]): + raise AssertionError("repeated output mismatch") + args.output.parent.mkdir(parents=True, exist_ok=True) + args.output.write_text(json.dumps(dict(requests=args.requests, rows=rows), indent=2)) + + +if __name__ == "__main__": + main() diff --git a/vllm_rlt/core/scheduler.py b/vllm_rlt/core/scheduler.py index e15cd7f3..6f6a6366 100644 --- a/vllm_rlt/core/scheduler.py +++ b/vllm_rlt/core/scheduler.py @@ -240,9 +240,15 @@ def _admit(self): admission increments earlier blocked requests' bypass counts; reaching the limit stops further bypasses so active work can drain. """ + if not self.queues[Stage.WAITING]: + return active_count = sum( r.stage not in (Stage.WAITING, Stage.RECEIVING) for r in self.requests.values() ) + if active_count >= self.config.max_num_seqs and ( + self.config.policy != "priority" or self.preempt_callback is None + ): + return waiting = self._order_waiting_requests() deferred = [] scan_count = min(len(waiting), self.config.admission_scan_limit) From 6b9ef19b6356be354edc9fb128b96da0f945ee93 Mon Sep 17 00:00:00 2001 From: 0z5a Date: Thu, 24 Sep 2026 18:42:43 +0800 Subject: [PATCH 8/9] Measure saturated speculative admission cost Signed-off-by: 0z5a --- benchmarks/spec_admission_micro.py | 47 ++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 benchmarks/spec_admission_micro.py diff --git a/benchmarks/spec_admission_micro.py b/benchmarks/spec_admission_micro.py new file mode 100644 index 00000000..27b25bf1 --- /dev/null +++ b/benchmarks/spec_admission_micro.py @@ -0,0 +1,47 @@ +"""Measure saturated speculative admission with a large waiting queue.""" + +import argparse +import json +import statistics +import time +from pathlib import Path + +from vllm_rlt import CacheConfig, SamplingParams, SchedulerConfig, SpeculativeConfig +from vllm_rlt.engine.llm_engine import LLMEngine +from vllm_rlt.models import OuroConfig, OuroForCausalLM +from vllm_rlt.request import Stage + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("--output", type=Path, required=True) + args = parser.parse_args() + engine = LLMEngine( + OuroForCausalLM(OuroConfig.tiny()), + cache_config=CacheConfig(num_blocks=1024), + scheduler_config=SchedulerConfig(max_num_seqs=2, policy="priority"), + speculative_config=SpeculativeConfig(4), + attention_backend="torch", + ) + for index in range(256): + engine.add_request( + str(index), [2, 3], SamplingParams(max_tokens=32, priority=0, ignore_eos=True) + ) + engine.scheduler._admit() + waiting = tuple(engine.scheduler.queues[Stage.WAITING]) + timings = [] + for _ in range(5): + start = time.perf_counter() + for _ in range(1000): + engine.scheduler._admit() + timings.append((time.perf_counter() - start) / 1000) + assert tuple(engine.scheduler.queues[Stage.WAITING]) == waiting + assert len(waiting) == 254 + args.output.parent.mkdir(parents=True, exist_ok=True) + args.output.write_text( + json.dumps(dict(seconds_per_call=timings, median=statistics.median(timings))) + ) + + +if __name__ == "__main__": + main() From b5b0b78bfd50b6d4e07bc320b42ae8db589aee0e Mon Sep 17 00:00:00 2001 From: 0z5a Date: Thu, 24 Sep 2026 19:14:10 +0800 Subject: [PATCH 9/9] Record RTX 5090 scheduler and Graph E2E comparisons Signed-off-by: 0z5a --- .../scheduler-20260924/raw/base-micro-2.json | 1 + .../scheduler-20260924/raw/base-micro.json | 1 + .../raw/candidate-micro-2.json | 1 + .../raw/candidate-micro.json | 1 + .../raw/graph-final/raw.json | 1 + .../raw/migration-final/raw.json | 1 + results/scheduler-20260924/raw/paired-q1.json | 1 + results/scheduler-20260924/raw/paired-q8.json | 1 + .../raw/preemption-final/raw.json | 1 + .../raw/q1-final-1-base.json | 1 + .../raw/q1-final-2-candidate.json | 1 + .../raw/q1-final-3-candidate.json | 1 + .../raw/q1-final-4-base.json | 1 + .../raw/q8-final-1-base.json | 1 + .../raw/q8-final-2-candidate.json | 1 + .../raw/q8-final-3-candidate.json | 1 + .../raw/q8-final-4-base.json | 1 + .../raw/sched-final/raw.json | 1 + results/scheduler-20260924/speedup.md | 91 +++++++++++++++++++ 19 files changed, 109 insertions(+) create mode 100644 results/scheduler-20260924/raw/base-micro-2.json create mode 100644 results/scheduler-20260924/raw/base-micro.json create mode 100644 results/scheduler-20260924/raw/candidate-micro-2.json create mode 100644 results/scheduler-20260924/raw/candidate-micro.json create mode 100644 results/scheduler-20260924/raw/graph-final/raw.json create mode 100644 results/scheduler-20260924/raw/migration-final/raw.json create mode 100644 results/scheduler-20260924/raw/paired-q1.json create mode 100644 results/scheduler-20260924/raw/paired-q8.json create mode 100644 results/scheduler-20260924/raw/preemption-final/raw.json create mode 100644 results/scheduler-20260924/raw/q1-final-1-base.json create mode 100644 results/scheduler-20260924/raw/q1-final-2-candidate.json create mode 100644 results/scheduler-20260924/raw/q1-final-3-candidate.json create mode 100644 results/scheduler-20260924/raw/q1-final-4-base.json create mode 100644 results/scheduler-20260924/raw/q8-final-1-base.json create mode 100644 results/scheduler-20260924/raw/q8-final-2-candidate.json create mode 100644 results/scheduler-20260924/raw/q8-final-3-candidate.json create mode 100644 results/scheduler-20260924/raw/q8-final-4-base.json create mode 100644 results/scheduler-20260924/raw/sched-final/raw.json create mode 100644 results/scheduler-20260924/speedup.md diff --git a/results/scheduler-20260924/raw/base-micro-2.json b/results/scheduler-20260924/raw/base-micro-2.json new file mode 100644 index 00000000..d9cc91a6 --- /dev/null +++ b/results/scheduler-20260924/raw/base-micro-2.json @@ -0,0 +1 @@ +{"seconds_per_call":[9.82843870006036e-05,6.119902700083913e-05,5.5438524002966005e-05,5.535167000198271e-05,5.544746099985787e-05],"median":5.544746099985787e-05} diff --git a/results/scheduler-20260924/raw/base-micro.json b/results/scheduler-20260924/raw/base-micro.json new file mode 100644 index 00000000..71855ca4 --- /dev/null +++ b/results/scheduler-20260924/raw/base-micro.json @@ -0,0 +1 @@ +{"seconds_per_call":[9.277894900151295e-05,5.9930823001195674e-05,5.732534900016617e-05,5.5611279000004286e-05,5.5330859999230596e-05],"median":5.732534900016617e-05} diff --git a/results/scheduler-20260924/raw/candidate-micro-2.json b/results/scheduler-20260924/raw/candidate-micro-2.json new file mode 100644 index 00000000..c8b51fa5 --- /dev/null +++ b/results/scheduler-20260924/raw/candidate-micro-2.json @@ -0,0 +1 @@ +{"seconds_per_call":[5.2205302999936975e-05,3.8210358001379066e-05,3.103872900101123e-05,2.7162952999788105e-05,2.618305999931181e-05],"median":3.103872900101123e-05} diff --git a/results/scheduler-20260924/raw/candidate-micro.json b/results/scheduler-20260924/raw/candidate-micro.json new file mode 100644 index 00000000..44dde34d --- /dev/null +++ b/results/scheduler-20260924/raw/candidate-micro.json @@ -0,0 +1 @@ +{"seconds_per_call":[5.493873100203928e-05,3.8727938001102305e-05,3.1693968001491155e-05,2.7348610001354245e-05,2.5927626000338932e-05],"median":3.1693968001491155e-05} diff --git a/results/scheduler-20260924/raw/graph-final/raw.json b/results/scheduler-20260924/raw/graph-final/raw.json new file mode 100644 index 00000000..b5c65feb --- /dev/null +++ b/results/scheduler-20260924/raw/graph-final/raw.json @@ -0,0 +1 @@ +{"model":"ByteDance/Ouro-1.4B","device":"NVIDIA GeForce RTX 5090","dtype":"bfloat16","backend":"triton","draft_loops":2,"target_loops":4,"k":4,"output_budget":32,"warmups":5,"prompts":{"repeated / 1":[[504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,216]],"repeated / 4":[[504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,216],[504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,216],[504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,216],[504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,216]],"prose / 1":[[36971,638,253,6736,17385,1806,28,1285,3007,284,3124,6146,284,582,12141,1183,30]]},"rows":[{"workload":"repeated / 1","trial":0,"graphs":false,"seconds":1.7252406350016827,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 1","trial":0,"graphs":true,"seconds":0.4392247979994863,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 1","trial":1,"graphs":true,"seconds":0.44008603900147136,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 1","trial":1,"graphs":false,"seconds":1.7285442770007649,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 1","trial":2,"graphs":false,"seconds":1.7220441049976216,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 1","trial":2,"graphs":true,"seconds":0.4389304329997685,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 1","trial":3,"graphs":true,"seconds":0.43943193000086467,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 1","trial":3,"graphs":false,"seconds":1.7122123980007018,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 1","trial":4,"graphs":false,"seconds":1.7270729750016471,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 1","trial":4,"graphs":true,"seconds":0.4401242050007568,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 4","trial":0,"graphs":false,"seconds":1.341278403000615,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 4","trial":0,"graphs":true,"seconds":0.7759670470004494,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 4","trial":1,"graphs":true,"seconds":0.7764892589984811,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 4","trial":1,"graphs":false,"seconds":1.3469078399975842,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 4","trial":2,"graphs":false,"seconds":1.3471599190015695,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 4","trial":2,"graphs":true,"seconds":0.7767028089983796,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 4","trial":3,"graphs":true,"seconds":0.776789055998961,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 4","trial":3,"graphs":false,"seconds":1.3972350879994337,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 4","trial":4,"graphs":false,"seconds":1.3374332519997552,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"repeated / 4","trial":4,"graphs":true,"seconds":0.7768860959986341,"outputs":[{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},{"tokens":[198,504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"prose / 1","trial":0,"graphs":false,"seconds":1.9658419269981096,"outputs":[{"tokens":[198,198,3757,25343,17139,18622,198,198,26128,17385,314,253,4959,4953,281,7974,12302,30,10887,827,18771,3814,24,330,3814,25,284,3814,24,389,3814,643],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"prose / 1","trial":0,"graphs":true,"seconds":0.45563297500120825,"outputs":[{"tokens":[198,198,3757,25343,17139,18622,198,198,26128,17385,314,253,4959,4953,281,7974,12302,30,10887,827,18771,3814,24,330,3814,25,284,3814,24,389,3814,643],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"prose / 1","trial":1,"graphs":true,"seconds":0.4557845850031299,"outputs":[{"tokens":[198,198,3757,25343,17139,18622,198,198,26128,17385,314,253,4959,4953,281,7974,12302,30,10887,827,18771,3814,24,330,3814,25,284,3814,24,389,3814,643],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"prose / 1","trial":1,"graphs":false,"seconds":1.9782265060021018,"outputs":[{"tokens":[198,198,3757,25343,17139,18622,198,198,26128,17385,314,253,4959,4953,281,7974,12302,30,10887,827,18771,3814,24,330,3814,25,284,3814,24,389,3814,643],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"prose / 1","trial":2,"graphs":false,"seconds":1.8984336850007821,"outputs":[{"tokens":[198,198,3757,25343,17139,18622,198,198,26128,17385,314,253,4959,4953,281,7974,12302,30,10887,827,18771,3814,24,330,3814,25,284,3814,24,389,3814,643],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"prose / 1","trial":2,"graphs":true,"seconds":0.45118523099881713,"outputs":[{"tokens":[198,198,3757,25343,17139,18622,198,198,26128,17385,314,253,4959,4953,281,7974,12302,30,10887,827,18771,3814,24,330,3814,25,284,3814,24,389,3814,643],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"prose / 1","trial":3,"graphs":true,"seconds":0.4518518330005463,"outputs":[{"tokens":[198,198,3757,25343,17139,18622,198,198,26128,17385,314,253,4959,4953,281,7974,12302,30,10887,827,18771,3814,24,330,3814,25,284,3814,24,389,3814,643],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"prose / 1","trial":3,"graphs":false,"seconds":1.8975246439986222,"outputs":[{"tokens":[198,198,3757,25343,17139,18622,198,198,26128,17385,314,253,4959,4953,281,7974,12302,30,10887,827,18771,3814,24,330,3814,25,284,3814,24,389,3814,643],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"prose / 1","trial":4,"graphs":false,"seconds":1.2257268149987794,"outputs":[{"tokens":[198,198,3757,25343,17139,18622,198,198,26128,17385,314,253,4959,4953,281,7974,12302,30,10887,827,18771,3814,24,330,3814,25,284,3814,24,389,3814,643],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]},{"workload":"prose / 1","trial":4,"graphs":true,"seconds":0.40069432300151675,"outputs":[{"tokens":[198,198,3757,25343,17139,18622,198,198,26128,17385,314,253,4959,4953,281,7974,12302,30,10887,827,18771,3814,24,330,3814,25,284,3814,24,389,3814,643],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}]}],"graphs":{"recurrent":{"captures":8,"replays":2960,"fallbacks":0},"coda":{"captures":8,"replays":1230,"fallbacks":0}}} diff --git a/results/scheduler-20260924/raw/migration-final/raw.json b/results/scheduler-20260924/raw/migration-final/raw.json new file mode 100644 index 00000000..640cab44 --- /dev/null +++ b/results/scheduler-20260924/raw/migration-final/raw.json @@ -0,0 +1 @@ +{"model":"ByteDance/Ouro-1.4B","devices":["NVIDIA GeForce RTX 5090","NVIDIA GeForce RTX 5090"],"dtype":"bfloat16","backend":"triton","prompt":[36971,638,6736,17385,1806,28,351,582,12141,1183,30],"rows":[{"trial":0,"migrated":true,"seconds":2.0204786459980824,"output":{"tokens":[198,198,21350,42,25343,17385,314,253,11087,4953,338,2933,253,6455,282,18771,28,284,7124,1372,6736,30,378,1230,282,8935,281,260,808,6736,1251,325],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}},{"trial":0,"migrated":false,"seconds":1.9698653730010847,"output":{"tokens":[198,198,21350,42,25343,17385,314,253,11087,4953,338,2933,253,6455,282,18771,28,284,7124,1372,6736,30,378,1230,282,8935,281,260,808,6736,1251,325],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}},{"trial":1,"migrated":false,"seconds":1.9526196289989457,"output":{"tokens":[198,198,21350,42,25343,17385,314,253,11087,4953,338,2933,253,6455,282,18771,28,284,7124,1372,6736,30,378,1230,282,8935,281,260,808,6736,1251,325],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}},{"trial":1,"migrated":true,"seconds":1.9815250389983703,"output":{"tokens":[198,198,21350,42,25343,17385,314,253,11087,4953,338,2933,253,6455,282,18771,28,284,7124,1372,6736,30,378,1230,282,8935,281,260,808,6736,1251,325],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}},{"trial":2,"migrated":true,"seconds":1.9905006509980012,"output":{"tokens":[198,198,21350,42,25343,17385,314,253,11087,4953,338,2933,253,6455,282,18771,28,284,7124,1372,6736,30,378,1230,282,8935,281,260,808,6736,1251,325],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}},{"trial":2,"migrated":false,"seconds":1.1560181690001627,"output":{"tokens":[198,198,21350,42,25343,17385,314,253,11087,4953,338,2933,253,6455,282,18771,28,284,7124,1372,6736,30,378,1230,282,8935,281,260,808,6736,1251,325],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}]} diff --git a/results/scheduler-20260924/raw/paired-q1.json b/results/scheduler-20260924/raw/paired-q1.json new file mode 100644 index 00000000..0e62299d --- /dev/null +++ b/results/scheduler-20260924/raw/paired-q1.json @@ -0,0 +1 @@ +{"requests":1,"rows":[{"trial":0,"arm":"clone","seconds":0.3925786790023267,"median_ttft":0.08552881600189721,"max_ttft":0.08552881600189721,"tokens_per_second":81.51232278156998,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":0,"arm":"direct","seconds":0.3956529610004509,"median_ttft":0.08618871199723799,"max_ttft":0.08618871199723799,"tokens_per_second":80.87895998322513,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":1,"arm":"direct","seconds":0.3938368159979291,"median_ttft":0.08605779399658786,"max_ttft":0.08605779399658786,"tokens_per_second":81.25192643282051,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":1,"arm":"clone","seconds":0.3930589309966308,"median_ttft":0.08590694999656989,"max_ttft":0.08590694999656989,"tokens_per_second":81.41272841418859,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":2,"arm":"clone","seconds":0.3926942699981737,"median_ttft":0.0855643639988557,"max_ttft":0.0855643639988557,"tokens_per_second":81.48832933098011,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":2,"arm":"direct","seconds":0.39330253600201104,"median_ttft":0.0855310120023205,"max_ttft":0.0855310120023205,"tokens_per_second":81.36230273337566,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":3,"arm":"direct","seconds":0.39304681700014044,"median_ttft":0.08529338500011363,"max_ttft":0.08529338500011363,"tokens_per_second":81.41523761529041,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":3,"arm":"clone","seconds":0.39244559799772105,"median_ttft":0.0853246990009211,"max_ttft":0.0853246990009211,"tokens_per_second":81.53996417150748,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":4,"arm":"clone","seconds":0.39246488500066334,"median_ttft":0.08520556000075885,"max_ttft":0.08520556000075885,"tokens_per_second":81.53595703204356,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":4,"arm":"direct","seconds":0.39407419499912066,"median_ttft":0.08542815100008738,"max_ttft":0.08542815100008738,"tokens_per_second":81.20298260095768,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":5,"arm":"direct","seconds":0.39493224900070345,"median_ttft":0.08688394800265087,"max_ttft":0.08688394800265087,"tokens_per_second":81.02655602567164,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":5,"arm":"clone","seconds":0.39334845100165694,"median_ttft":0.0857605160017556,"max_ttft":0.0857605160017556,"tokens_per_second":81.3528054286534,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":6,"arm":"clone","seconds":0.3929737329999625,"median_ttft":0.0856005899986485,"max_ttft":0.0856005899986485,"tokens_per_second":81.43037896123977,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":6,"arm":"direct","seconds":0.3936352380005701,"median_ttft":0.0856045449982048,"max_ttft":0.0856045449982048,"tokens_per_second":81.29353500601401,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":7,"arm":"direct","seconds":0.3937955210021755,"median_ttft":0.0859739180014003,"max_ttft":0.0859739180014003,"tokens_per_second":81.26044683942257,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":7,"arm":"clone","seconds":0.39257392800209345,"median_ttft":0.08528581200152985,"max_ttft":0.08528581200152985,"tokens_per_second":81.51330925835033,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":8,"arm":"clone","seconds":0.3927622080009314,"median_ttft":0.0854028739995556,"max_ttft":0.0854028739995556,"tokens_per_second":81.47423389554861,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":8,"arm":"direct","seconds":0.39288556600149604,"median_ttft":0.08535861500058672,"max_ttft":0.08535861500058672,"tokens_per_second":81.44865265902425,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":9,"arm":"direct","seconds":0.3950943140007439,"median_ttft":0.08571602799929678,"max_ttft":0.08571602799929678,"tokens_per_second":80.99331948355943,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":9,"arm":"clone","seconds":0.3941613110000617,"median_ttft":0.08638921699821367,"max_ttft":0.08638921699821367,"tokens_per_second":81.18503543336092,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}}]} diff --git a/results/scheduler-20260924/raw/paired-q8.json b/results/scheduler-20260924/raw/paired-q8.json new file mode 100644 index 00000000..f23bafa5 --- /dev/null +++ b/results/scheduler-20260924/raw/paired-q8.json @@ -0,0 +1 @@ +{"requests":8,"rows":[{"trial":0,"arm":"clone","seconds":2.407961531996989,"median_ttft":0.9761657469989586,"max_ttft":2.0094330749998335,"tokens_per_second":106.31399073376896,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":0,"arm":"direct","seconds":2.400957734000258,"median_ttft":0.9720006080005987,"max_ttft":2.002699314001802,"tokens_per_second":106.62411769051678,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":1,"arm":"direct","seconds":2.39376050500141,"median_ttft":0.9722869585002627,"max_ttft":1.9953776949987514,"tokens_per_second":106.94470038465657,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":1,"arm":"clone","seconds":2.4055638060017372,"median_ttft":0.9808869839998806,"max_ttft":2.0074490810002317,"tokens_per_second":106.41995833213626,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":2,"arm":"clone","seconds":2.359494268999697,"median_ttft":0.9575837869997486,"max_ttft":1.9632600780023495,"tokens_per_second":108.49782657388302,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":2,"arm":"direct","seconds":2.3336216469979263,"median_ttft":0.9330507629983913,"max_ttft":1.9366425879998133,"tokens_per_second":109.70073076298794,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":3,"arm":"direct","seconds":2.2675319600020885,"median_ttft":0.969771103000312,"max_ttft":1.8778570570029842,"tokens_per_second":112.89807796127566,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":3,"arm":"clone","seconds":2.048440226000821,"median_ttft":0.7979943664995517,"max_ttft":1.65774332699948,"tokens_per_second":124.97313651167158,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":4,"arm":"clone","seconds":2.052503066999634,"median_ttft":0.8005365264998545,"max_ttft":1.6624511590016482,"tokens_per_second":124.72575759617398,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":4,"arm":"direct","seconds":2.046476008999889,"median_ttft":0.7978191274996789,"max_ttft":1.6570026100016548,"tokens_per_second":125.09308629770206,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":5,"arm":"direct","seconds":2.043015479997848,"median_ttft":0.7961218024993286,"max_ttft":1.653745389998221,"tokens_per_second":125.3049732155087,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":5,"arm":"clone","seconds":2.0478589670019574,"median_ttft":0.7976800215019466,"max_ttft":1.6576452730005258,"tokens_per_second":125.00860856389009,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":6,"arm":"clone","seconds":2.049740432001272,"median_ttft":0.7979797550015064,"max_ttft":1.6580488520012295,"tokens_per_second":124.89386265852863,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":6,"arm":"direct","seconds":2.044022597001458,"median_ttft":0.796877429000233,"max_ttft":1.6545593539995025,"tokens_per_second":125.24323379572569,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":7,"arm":"direct","seconds":2.0552367609998328,"median_ttft":0.7968540390011185,"max_ttft":1.6660450599993055,"tokens_per_second":124.5598584347338,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":7,"arm":"clone","seconds":2.070303921998857,"median_ttft":0.7976051125006052,"max_ttft":1.6797190079996653,"tokens_per_second":123.65334252607447,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":8,"arm":"clone","seconds":2.0653199139997014,"median_ttft":0.8006085999986681,"max_ttft":1.6640970379994542,"tokens_per_second":123.95174145405399,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":8,"arm":"direct","seconds":2.333294282998395,"median_ttft":0.9157954634993075,"max_ttft":1.9379160770004091,"tokens_per_second":109.71612190770371,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":9,"arm":"direct","seconds":2.3038037350015657,"median_ttft":0.9160016515015741,"max_ttft":1.9075155919999816,"tokens_per_second":111.12057685757074,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"trial":9,"arm":"clone","seconds":2.3850752289981756,"median_ttft":0.9625425074973464,"max_ttft":1.9873716619986226,"tokens_per_second":107.33414061221455,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}}]} diff --git a/results/scheduler-20260924/raw/preemption-final/raw.json b/results/scheduler-20260924/raw/preemption-final/raw.json new file mode 100644 index 00000000..fcd601c1 --- /dev/null +++ b/results/scheduler-20260924/raw/preemption-final/raw.json @@ -0,0 +1 @@ +{"model":"ByteDance/Ouro-1.4B","device":"NVIDIA GeForce RTX 5090","dtype":"bfloat16","backend":"triton","prompts":[[504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,216],[36971,6736,17385,351,582,12141,1183,30]],"rows":[{"trial":0,"preemption":true,"seconds":2.7335447010009375,"high_ttft":0.17239638200044283,"preemptions":1,"resumptions":1,"outputs":{"high":{"tokens":[198,198,828,17872,216,33,32,828,198,198,828,24,81,14353,198,198],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"low":{"tokens":[378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":0,"preemption":false,"seconds":2.5485750190018734,"high_ttft":1.3063132679999399,"preemptions":0,"resumptions":0,"outputs":{"low":{"tokens":[378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"high":{"tokens":[198,198,828,17872,216,33,32,828,198,198,828,24,81,14353,198,198],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":1,"preemption":false,"seconds":2.5201620679981716,"high_ttft":1.2935558690005564,"preemptions":0,"resumptions":0,"outputs":{"low":{"tokens":[378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"high":{"tokens":[198,198,828,17872,216,33,32,828,198,198,828,24,81,14353,198,198],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":1,"preemption":true,"seconds":2.6201552450002055,"high_ttft":0.15450309099833248,"preemptions":1,"resumptions":1,"outputs":{"high":{"tokens":[198,198,828,17872,216,33,32,828,198,198,828,24,81,14353,198,198],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"low":{"tokens":[378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":2,"preemption":true,"seconds":2.649745572001848,"high_ttft":0.15379816699714866,"preemptions":1,"resumptions":1,"outputs":{"high":{"tokens":[198,198,828,17872,216,33,32,828,198,198,828,24,81,14353,198,198],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"low":{"tokens":[378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":2,"preemption":false,"seconds":2.5295058940027957,"high_ttft":1.2942486100000679,"preemptions":0,"resumptions":0,"outputs":{"low":{"tokens":[378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"high":{"tokens":[198,198,828,17872,216,33,32,828,198,198,828,24,81,14353,198,198],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":3,"preemption":false,"seconds":2.534864724999352,"high_ttft":1.3019444499987003,"preemptions":0,"resumptions":0,"outputs":{"low":{"tokens":[378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"high":{"tokens":[198,198,828,17872,216,33,32,828,198,198,828,24,81,14353,198,198],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":3,"preemption":true,"seconds":1.6947699440024735,"high_ttft":0.16186340299827862,"preemptions":1,"resumptions":1,"outputs":{"high":{"tokens":[198,198,828,17872,216,33,32,828,198,198,828,24,81,14353,198,198],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"low":{"tokens":[378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":4,"preemption":true,"seconds":1.3139600979993702,"high_ttft":0.07514761199854547,"preemptions":1,"resumptions":1,"outputs":{"high":{"tokens":[198,198,828,17872,216,33,32,828,198,198,828,24,81,14353,198,198],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"low":{"tokens":[378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":4,"preemption":false,"seconds":1.2578309460004675,"high_ttft":0.6474595869985933,"preemptions":0,"resumptions":0,"outputs":{"low":{"tokens":[378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"high":{"tokens":[198,198,828,17872,216,33,32,828,198,198,828,24,81,14353,198,198],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}}]} diff --git a/results/scheduler-20260924/raw/q1-final-1-base.json b/results/scheduler-20260924/raw/q1-final-1-base.json new file mode 100644 index 00000000..c2cc3481 --- /dev/null +++ b/results/scheduler-20260924/raw/q1-final-1-base.json @@ -0,0 +1 @@ +{"requests":1,"rows":[{"seconds":0.39604786500058253,"median_ttft":0.08884798100189073,"max_ttft":0.08884798100189073,"tokens_per_second":80.79831461773675,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.39643950299796415,"median_ttft":0.08853877900037332,"max_ttft":0.08853877900037332,"tokens_per_second":80.71849489773054,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.39642234700295376,"median_ttft":0.08903579300022102,"max_ttft":0.08903579300022102,"tokens_per_second":80.72198815714485,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.3971354559980682,"median_ttft":0.08850484499998856,"max_ttft":0.08850484499998856,"tokens_per_second":80.5770412001583,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.3960469820012804,"median_ttft":0.08864428500237409,"max_ttft":0.08864428500237409,"tokens_per_second":80.79849476014071,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}}]} diff --git a/results/scheduler-20260924/raw/q1-final-2-candidate.json b/results/scheduler-20260924/raw/q1-final-2-candidate.json new file mode 100644 index 00000000..b935099f --- /dev/null +++ b/results/scheduler-20260924/raw/q1-final-2-candidate.json @@ -0,0 +1 @@ +{"requests":1,"rows":[{"seconds":0.3945415359994513,"median_ttft":0.08778140699723735,"max_ttft":0.08778140699723735,"tokens_per_second":81.10679631977837,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.39428086200132384,"median_ttft":0.08759098700102186,"max_ttft":0.08759098700102186,"tokens_per_second":81.16041909204448,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.39430997599993134,"median_ttft":0.08756344799985527,"max_ttft":0.08756344799985527,"tokens_per_second":81.15442658748653,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.3945768989979115,"median_ttft":0.08778084299774491,"max_ttft":0.08778084299774491,"tokens_per_second":81.09952731969081,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.3946593299988308,"median_ttft":0.08798182700047619,"max_ttft":0.08798182700047619,"tokens_per_second":81.08258836828918,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}}]} diff --git a/results/scheduler-20260924/raw/q1-final-3-candidate.json b/results/scheduler-20260924/raw/q1-final-3-candidate.json new file mode 100644 index 00000000..ccd494b5 --- /dev/null +++ b/results/scheduler-20260924/raw/q1-final-3-candidate.json @@ -0,0 +1 @@ +{"requests":1,"rows":[{"seconds":0.39923635900049703,"median_ttft":0.09083328900305787,"max_ttft":0.09083328900305787,"tokens_per_second":80.15302033139763,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.3986672249993717,"median_ttft":0.09014895699874614,"max_ttft":0.09014895699874614,"tokens_per_second":80.26744611386209,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.39879258400105755,"median_ttft":0.09067093300109264,"max_ttft":0.09067093300109264,"tokens_per_second":80.24221433344192,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.39894219699999667,"median_ttft":0.09054464099972392,"max_ttft":0.09054464099972392,"tokens_per_second":80.2121215570492,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.39940518900039024,"median_ttft":0.09101604199895519,"max_ttft":0.09101604199895519,"tokens_per_second":80.11913936343159,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}}]} diff --git a/results/scheduler-20260924/raw/q1-final-4-base.json b/results/scheduler-20260924/raw/q1-final-4-base.json new file mode 100644 index 00000000..c2e3ebee --- /dev/null +++ b/results/scheduler-20260924/raw/q1-final-4-base.json @@ -0,0 +1 @@ +{"requests":1,"rows":[{"seconds":0.3948533770017093,"median_ttft":0.08663132500078063,"max_ttft":0.08663132500078063,"tokens_per_second":81.0427410878177,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.3944184249994578,"median_ttft":0.08696055299878935,"max_ttft":0.08696055299878935,"tokens_per_second":81.13211242614742,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.3953218030001153,"median_ttft":0.08710257700295188,"max_ttft":0.08710257700295188,"tokens_per_second":80.94671165908515,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.3951010570017388,"median_ttft":0.08636502700028359,"max_ttft":0.08636502700028359,"tokens_per_second":80.99193720926738,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":0.39459537899892894,"median_ttft":0.0864243029973295,"max_ttft":0.0864243029973295,"tokens_per_second":81.09572920286747,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}}]} diff --git a/results/scheduler-20260924/raw/q8-final-1-base.json b/results/scheduler-20260924/raw/q8-final-1-base.json new file mode 100644 index 00000000..05474f6d --- /dev/null +++ b/results/scheduler-20260924/raw/q8-final-1-base.json @@ -0,0 +1 @@ +{"requests":8,"rows":[{"seconds":2.387620795001567,"median_ttft":0.9630732340010582,"max_ttft":1.9869517280021682,"tokens_per_second":107.21970613421132,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.3770889200022793,"median_ttft":0.9606201700007659,"max_ttft":1.9799541770007636,"tokens_per_second":107.6947512757556,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.278155959000287,"median_ttft":0.9594042090011499,"max_ttft":1.8881800090020988,"tokens_per_second":112.37158676017042,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.0428125409998756,"median_ttft":0.7962258204988757,"max_ttft":1.653590465997695,"tokens_per_second":125.31742137959372,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.0434736799979873,"median_ttft":0.7975954259982245,"max_ttft":1.6541577780008083,"tokens_per_second":125.27687657824501,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}}]} diff --git a/results/scheduler-20260924/raw/q8-final-2-candidate.json b/results/scheduler-20260924/raw/q8-final-2-candidate.json new file mode 100644 index 00000000..ae811213 --- /dev/null +++ b/results/scheduler-20260924/raw/q8-final-2-candidate.json @@ -0,0 +1 @@ +{"requests":8,"rows":[{"seconds":2.4522482539978228,"median_ttft":1.0155599969984905,"max_ttft":2.053415390997543,"tokens_per_second":104.39399827592956,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.4181678449967876,"median_ttft":0.9795705669985182,"max_ttft":2.0197778599977028,"tokens_per_second":105.86527338442055,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.420530710998719,"median_ttft":0.9807413230009843,"max_ttft":2.021906605001277,"tokens_per_second":105.76193015719828,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.420361796997895,"median_ttft":0.9806801934992109,"max_ttft":2.0218940880004084,"tokens_per_second":105.76931114907308,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.4222131259994057,"median_ttft":0.9825438235002366,"max_ttft":2.0237766249993,"tokens_per_second":105.68847028866394,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}}]} diff --git a/results/scheduler-20260924/raw/q8-final-3-candidate.json b/results/scheduler-20260924/raw/q8-final-3-candidate.json new file mode 100644 index 00000000..10dd4d0e --- /dev/null +++ b/results/scheduler-20260924/raw/q8-final-3-candidate.json @@ -0,0 +1 @@ +{"requests":8,"rows":[{"seconds":2.3842121419984323,"median_ttft":0.9625337629986461,"max_ttft":1.9869641919976857,"tokens_per_second":107.3729956703527,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.41674738599977,"median_ttft":0.9729560949981533,"max_ttft":2.0192032539998763,"tokens_per_second":105.92749638750385,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.3856951359994127,"median_ttft":0.9640623875002348,"max_ttft":1.9885092719996464,"tokens_per_second":107.30625055022244,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.379458624000108,"median_ttft":0.9598335435002809,"max_ttft":1.9813108990019828,"tokens_per_second":107.58749802072136,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.3879968490000465,"median_ttft":0.9605756505006866,"max_ttft":1.9915629370007082,"tokens_per_second":107.20282152264893,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}}]} diff --git a/results/scheduler-20260924/raw/q8-final-4-base.json b/results/scheduler-20260924/raw/q8-final-4-base.json new file mode 100644 index 00000000..7d4a6b24 --- /dev/null +++ b/results/scheduler-20260924/raw/q8-final-4-base.json @@ -0,0 +1 @@ +{"requests":8,"rows":[{"seconds":2.4034115100002964,"median_ttft":0.9702032380009769,"max_ttft":2.005640298000799,"tokens_per_second":106.5152592199945,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.418380117000197,"median_ttft":0.9654522874989198,"max_ttft":2.0200463910005055,"tokens_per_second":105.85598111745439,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.389856454999972,"median_ttft":0.9652882059999683,"max_ttft":1.9920502950008085,"tokens_per_second":107.1194043744368,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.3898123199978727,"median_ttft":0.9636178655000549,"max_ttft":1.9913917789999687,"tokens_per_second":107.12138265327374,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}},{"seconds":2.3915395629992418,"median_ttft":0.9662557060000836,"max_ttft":1.993328331001976,"tokens_per_second":107.04401631514267,"outputs":{"0":[[43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314,2718,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"1":[[3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43,314,2718,2643,3,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"2":[[4,43,314,2718,37999,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718,2718],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"3":[[0,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"4":[[6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43,314,2718,5084,6,43],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"5":[[190,198,198,271,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314,2718,2643,43,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"6":[[26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85,43,314,2718,26355,85],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]],"7":[[43,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314,2718,8544,314],[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]]}}]} diff --git a/results/scheduler-20260924/raw/sched-final/raw.json b/results/scheduler-20260924/raw/sched-final/raw.json new file mode 100644 index 00000000..c1d7f6d7 --- /dev/null +++ b/results/scheduler-20260924/raw/sched-final/raw.json @@ -0,0 +1 @@ +{"model":"ByteDance/Ouro-1.4B","device":"NVIDIA GeForce RTX 5090","dtype":"bfloat16","backend":"triton","k":4,"output_budget":32,"prompts":[[504,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,378,2365,6354,16438,27003,690,260,23790,2767,30,216],[36971,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,216]],"rows":[{"trial":0,"interleave":false,"seconds":2.1223049750005885,"second_ttft":0.3137869739985035,"interleaved_prefills":0,"outputs":{"second":{"tokens":[198,36971,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"first":{"tokens":[198,3725,198,198,3725,5367,198,2017,298,198,198,1604,985,79,6774,24,2692,727,198,197,19,29490,288,37748,284,1042,511,1924,1015,33929,198,197],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":0,"interleave":true,"seconds":2.1161025050023454,"second_ttft":0.31338490399866714,"interleaved_prefills":1,"outputs":{"second":{"tokens":[198,36971,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"first":{"tokens":[198,3725,198,198,3725,5367,198,2017,298,198,198,1604,985,79,6774,24,2692,727,198,197,19,29490,288,37748,284,1042,511,1924,1015,33929,198,197],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":1,"interleave":true,"seconds":2.111451761000353,"second_ttft":0.31380354999782867,"interleaved_prefills":1,"outputs":{"second":{"tokens":[198,36971,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"first":{"tokens":[198,3725,198,198,3725,5367,198,2017,298,198,198,1604,985,79,6774,24,2692,727,198,197,19,29490,288,37748,284,1042,511,1924,1015,33929,198,197],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":1,"interleave":false,"seconds":2.09477760700247,"second_ttft":0.3111389740006416,"interleaved_prefills":0,"outputs":{"second":{"tokens":[198,36971,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"first":{"tokens":[198,3725,198,198,3725,5367,198,2017,298,198,198,1604,985,79,6774,24,2692,727,198,197,19,29490,288,37748,284,1042,511,1924,1015,33929,198,197],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":2,"interleave":false,"seconds":1.1733630640010233,"second_ttft":0.2384476449988142,"interleaved_prefills":0,"outputs":{"second":{"tokens":[198,36971,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"first":{"tokens":[198,3725,198,198,3725,5367,198,2017,298,198,198,1604,985,79,6774,24,2692,727,198,197,19,29490,288,37748,284,1042,511,1924,1015,33929,198,197],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":2,"interleave":true,"seconds":1.037765583001601,"second_ttft":0.15760123200016096,"interleaved_prefills":1,"outputs":{"second":{"tokens":[198,36971,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"first":{"tokens":[198,3725,198,198,3725,5367,198,2017,298,198,198,1604,985,79,6774,24,2692,727,198,197,19,29490,288,37748,284,1042,511,1924,1015,33929,198,197],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":3,"interleave":true,"seconds":1.0330829300000914,"second_ttft":0.15296771100111073,"interleaved_prefills":1,"outputs":{"second":{"tokens":[198,36971,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"first":{"tokens":[198,3725,198,198,3725,5367,198,2017,298,198,198,1604,985,79,6774,24,2692,727,198,197,19,29490,288,37748,284,1042,511,1924,1015,33929,198,197],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":3,"interleave":false,"seconds":1.0344447630013747,"second_ttft":0.15305751499909093,"interleaved_prefills":0,"outputs":{"second":{"tokens":[198,36971,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"first":{"tokens":[198,3725,198,198,3725,5367,198,2017,298,198,198,1604,985,79,6774,24,2692,727,198,197,19,29490,288,37748,284,1042,511,1924,1015,33929,198,197],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":4,"interleave":false,"seconds":1.0345557680011552,"second_ttft":0.1533621039998252,"interleaved_prefills":0,"outputs":{"second":{"tokens":[198,36971,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"first":{"tokens":[198,3725,198,198,3725,5367,198,2017,298,198,198,1604,985,79,6774,24,2692,727,198,197,19,29490,288,37748,284,1042,511,1924,1015,33929,198,197],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}},{"trial":4,"interleave":true,"seconds":1.031224607002514,"second_ttft":0.15253248700173572,"interleaved_prefills":1,"outputs":{"second":{"tokens":[198,36971,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374,6736,17385,351,7257,3007,284,3124,6146,30,16374],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]},"first":{"tokens":[198,3725,198,198,3725,5367,198,2017,298,198,198,1604,985,79,6774,24,2692,727,198,197,19,29490,288,37748,284,1042,511,1924,1015,33929,198,197],"depths":[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4]}}}]} diff --git a/results/scheduler-20260924/speedup.md b/results/scheduler-20260924/speedup.md new file mode 100644 index 00000000..8b44354c --- /dev/null +++ b/results/scheduler-20260924/speedup.md @@ -0,0 +1,91 @@ +# Speculative scheduler and CUDA Graph verification on RTX 5090 + +ByteDance/Ouro-1.4B revision `574fa66cb8bf5abdc979642d01cf2b79b16bfab1`, +weight SHA256 `58872a72616c736595b8b7662079c5b12c5a162ec16eae94f21c348dfa9885af`. +BF16, Triton paged attention, speculative depths 2/4, and four draft tokens. +The code is based on upstream `3314c1b` and current #48 Graph parent `b574eb3`. +All runs used the existing `/home/gongji/0z5a` Python and Docker environments; +no package or driver changed. Physical GPU 4 was CUDA 0, with GPU 5 added for +migration. Task checkpoint files and transfer parts were removed after E2E. + +## Incremental change relative to prior #52 + +Baseline implementation `892d82f` versus candidate `6b9ef19`. The admission +guard skips queue scans when all active slots are full and priority preemption +cannot admit waiting work. Both arms used the same Graph code and benchmark +inputs. Queue processes alternated baseline/candidate/candidate/baseline on +one GPU, with three warmups and five trials per process. Lower is better. + +| Workload | Metric | Baseline median | Candidate median | Baseline / candidate | +|---|---|---:|---:|---:| +| 256 waiting, 2 active slots | `_admit`, μs/call | 56.39 | 31.37 | **1.797×** | +| 1 request | Complete E2E, s | 0.39568 | 0.39666 | 0.998× | +| 1 request | Median TTFT, s | 0.08780 | 0.08907 | 0.986× | +| 8 queued requests | Complete E2E, s | 2.38872 | 2.41746 | 0.988× | +| 8 queued requests | Median TTFT, s | 0.96335 | 0.97626 | 0.987× | + +The CPU result is the median of two sessions, each with five 1,000-call batches +per arm. [Microbenchmark](../../benchmarks/spec_admission_micro.py) and its +[baseline](raw/base-micro.json), [baseline repeat](raw/base-micro-2.json), +[candidate](raw/candidate-micro.json), and +[candidate repeat](raw/candidate-micro-2.json) trials retain the inputs. +Queue E2E sessions: [one request baseline](raw/q1-final-1-base.json), +[candidate](raw/q1-final-2-candidate.json), +[candidate repeat](raw/q1-final-3-candidate.json), +[baseline repeat](raw/q1-final-4-base.json); +[eight requests baseline](raw/q8-final-1-base.json), +[candidate](raw/q8-final-2-candidate.json), +[candidate repeat](raw/q8-final-3-candidate.json), +[baseline repeat](raw/q8-final-4-base.json). +All output token IDs and exit depths matched. The eight-request baseline +process medians varied from 2.278 to 2.392 s, more than the candidate +difference. These E2E rows establish no material gain or regression. + +## Complete model paths after the change + +Each comparison kept one model resident and alternated arms within one process. +Speedup is the **median of per-trial A/B ratios**; arm columns are their +separate medians. All paired token IDs and exit depths matched. Time includes +prefill, drafting, verification, coda, and KV commit; migration also includes +CPU KV snapshot and restore. + +| Workload / metric | A | A median, s | B | B median, s | Paired A / B | +|---|---|---:|---|---:|---:| +| Repeated prompt / 1, E2E | eager | 1.725 | Graph | 0.439 | **3.924×** | +| Repeated prompt / 4, E2E | eager | 1.347 | Graph | 0.777 | **1.734×** | +| Prose prompt / 1, E2E | eager | 1.898 | Graph | 0.452 | **4.208×** | +| Two-request scheduling, E2E | atomic | 1.173 | interleaved | 1.038 | 1.003× | +| Second-request TTFT | atomic | 0.238 | interleaved | 0.158 | 1.001× | +| Priority workload, E2E | wait | 2.530 | preempt/resume | 2.620 | 0.957× | +| High-priority TTFT | wait | 1.294 | preempt/resume | 0.155 | **8.372×** | +| Migration, E2E | one GPU | 1.953 | GPU 0 → 1 | 1.991 | 0.975× | + +Graph used five warmups and five paired trials per workload, recording 2,960 +recurrent and 1,230 coda replays with zero eager fallbacks. Scheduling used +three warmups and five trials; preemption used one warmup and five trials; +migration used one warmup and three trials. The scheduling E2E pair ratios +were 1.003, 0.992, 1.131, 1.001, 1.003. Its TTFT pair ratios were 1.001, +0.992, 1.513, 1.001, 1.005. The isolated large ratios came from a GPU +performance-mode change rather than a repeatable scheduling gain. + +Raw paired trials: [Graph](raw/graph-final/raw.json), +[scheduling](raw/sched-final/raw.json), +[preemption](raw/preemption-final/raw.json), and +[migration](raw/migration-final/raw.json). +Direct reuse of a Graph-owned verification output was tried and removed: +the paired ratios were 0.998× for one request and 1.003× for eight requests. +The [single](raw/paired-q1.json) and [eight-request](raw/paired-q8.json) +diagnostic trials remain for review. + +The supported incremental gain is lower saturated-admission CPU cost. Graph +replay and priority preemption retain their workload-specific benefits. This +shared-host run did not establish an all-metric E2E improvement. + +## Validation + +- CPU suite: 291 passed, 11 skipped, 119 GPU cases deselected. +- RTX 5090 Triton Graph/speculative suite: 22 passed, 4 skipped, 61 deselected. + Paged FlashAttention is unsupported on SM120 in the pinned backend. An + earlier run included those parameters and had two unseeded speculative + test mismatches; both passed when isolated and in the corrected combined run. +- Ruff check/format and `git diff --check` passed.