{ "schema_version": 1, "measured_at_kst": "2026-07-12T22:38:00+09:00", "hardware": "NVIDIA B200 183359 MiB reported total; 178.35 GiB PyTorch-visible capacity", "smoke_evidence": { "attempted_profile": {"per_device_batch_size": 2, "gradient_accumulation_steps": 8, "gradient_checkpointing": false, "effective_batch_size": 16}, "outcome": "OOM before completing the 20-step smoke across every launched unified baseline; representative process used 176.87 GiB and failed a 1.62 GiB allocation. KTO also OOMed at the optimizer step.", "paper_metric": false }, "selected_full_training_profile": { "per_device_batch_size": 2, "gradient_accumulation_steps": 8, "gradient_checkpointing": false, "attention_implementation": "PyTorch SDPA with cuDNN SDPA disabled", "effective_batch_size": 16, "applies_symmetrically_to_all_unified_pairwise_methods": true, "kto_implementation_constraint": "TRL KTO requires actual batch size > 1. KTO uses batch 2 / accumulation 8 and identical AdamW with foreach=False. PyTorch SDPA is used with cuDNN SDPA disabled. The fixed base reference model is placed on a second B200 and its exact logits are returned to the policy device; the policy/optimizer remain on the first B200. This avoids a measured ~6-hour reference-precompute path while leaving the KTO loss, actual/effective batch, optimizer, and 900-step budget unchanged." }, "retry_semantics": "Resource selection is separated from method-stability attempts. Full attempt 1 uses the smoke-validated SDPA batch-2 profile and retains the preregistered method LR/anchor; attempts 2 and 3 fall back to batch 1 / accumulation 16 / gradient checkpointing and apply the declared LR/anchor stabilization recipe.", "provenance_note": "No reward or sealed-evaluation result was available when this hardware profile was selected." }