Merge mhpow-b3 5fbac7a4 into master (gate: green on 8d5d392f, recorded by tools/ci/pre-push.sh; landed on the build mirror)

This commit is contained in:
igneum-labs 2026-10-09 10:15:09 +00:00
commit 8dbdf28bbc
73 changed files with 9099 additions and 34 deletions

View file

@ -0,0 +1,254 @@
# B3: GPU adaptation of the MTP/DRSample proof of work, without changing the theorem
Track B item B3 (package R15-06, the GPU feasibility lane), 9 October 2026. Status: every row below is NOT RUN until the panel reads it. Nothing activates. No row compares this work unit with the v6 work unit; that comparison needs a contract that does not exist yet (row X-1). No PASS is claimed here.
## The finding in one paragraph (for the panel; NOT RUN)
The exact function runs on the GPU byte for byte (B1's fixtures reproduced; every GPU proof accepted; the known-failed graph refused). At the B3 sizes the GPU is caught in the trap the plan warned of: each instance is one hash chain (one BLAKE2b block per label, about 1.5 to 1.7 microseconds on one GPU thread), memory caps the instances in flight, and so a whole RTX 5090 / RTX 4090 labels like 87 / 52 one-thread CPU instances at 32 MiB, 23 / 13 at 128 MiB and 5.8 / 3.5 at 512 MiB, drawing about 80 to 110 W of a 450 to 480 W board. At 128 and 512 MiB the function is principally CPU-friendly, the plan's rejection case; at 32 MiB the card is a mid-size server CPU. The card fills itself only with instances of 2 MiB or less (5 to 12 G labels per second, 38 to 64 nJ per label), which a specialist holds whole in on-die SRAM. Layout (SOA against AOS, block shape) moves the rate by 0 to 5 percent: the lever is the dependency chain, not the memory system. These rows are the control for the Track B pivot.
## Sources (by sha)
| source | identity |
|---|---|
| The founder's research plan, "IGNEUM - The 1.5x Research Programme" (sections 4.6, 6 B3, 8, 10) | sha256 269ceaa5824d09140a1bcc124dba59438db5a5e68fddc18960db7141fefc0305 |
| The 1.5x experiment brief | sha256 74ee073286d4a6e2... (as cited by the common brief) |
| [BS25] Blocki and Smearsoll, Provably Memory-Hard Proofs of Work With Memory-Easy Verification, TCC 2025, eprint 2025/1456, the FULL paper (46 pages, TeX build 11 Aug 2025) | sha256 13c3646e7d85c1aa58a92914582caab5798d90cf2a3cad33e58d81d49c1d31db (eprint.iacr.org answers curl with a Cloudflare challenge; this copy is the Wayback Machine's capture of the eprint PDF) |
| [ABH17] Alwen, Blocki and Harsha, Practical Graphs for Optimal Side-Channel Resistant Memory-Hard Functions, CCS 2017, eprint 2017/443, Algorithm 1 (DRSample) | sha256 f8e08d361118120c905550d3ac63efffe2a806d68276b070c24e7aa15d8fa8eb (17 pages, Wayback capture) |
| The B1 lane's CPU reference (R15-05), working copy on build-6 at 09:26Z; landed on master since, byte-identical (row X-5) | params.py d47b8ff5..., drsample.py 4169a5fc..., mtp.py c0feed31..., gen_fixtures.py b7a2a89f...; fixtures kat-n04..n20 (SHA256SUMS: kat-n20.json fd0d75b6..., kat-n20.proof.bin a49367d9...) |
| This lane's code | tools/mhpow/b3/ on branch mhpow-b3; B1-encoding build id d672d3839ebb45e5, B3P1 control build id 2079d0d8ce7eef96 (sha256 of the four source files, build.sh) |
Sections of [BS25] used: 2.2 (the labelling game, `l_v = H(chi, v, parents' labels)`), 3.2 (the MTP framework: honest prover, commitment, challenges, verifier), 4.1 (the Merkle layout), 5 and 6.1 (the soundness bound and the DRSample instantiation, which cites [ABH17] for the graph).
## What the function is, and what B3 may change
The honest prover of [BS25] section 3.2, in B1's encoding (BLAKE2b-256, lambda = 256, one-byte tags L/M/C/G, u64 little-endian integers, the graph sampled once from a public seed by [ABH17] Algorithm 1 with rejection sampling):
1. label every node in topological order: `l_1 = H('L' | chi | 1)`, `l_2 = H('L' | chi | 2 | l_1)`, `l_v = H('L' | chi | v | l_{v-r} | l_{v-1})` with `v-r <= v-2` drawn by DRSample;
2. commit: a Merkle tree over the N labels in the paper's bit order, inner nodes `H('M' | chi | left | right)`;
3. challenge: `c_i = H('C' | chi | i | root) mod N`, i = 1..k;
4. open each challenged node and its parents with their Merkle paths (B1's container `B1MTPDR1`).
B3 changes representation and scheduling only. The DAG edge rule, the hash, every byte hashed, the domain tags, the challenge rule and the proof container are B1's, and the oracle checks that byte for byte. What changes:
| change | what it is | why it is allowed |
|---|---|---|
| batching across instances | many instances (different chi) in flight; the graph table is shared because the graph is data-independent and fixed a priori | each instance is computed exactly as specified; nothing crosses instances |
| coalesced label storage (SOA) | labels as 4 little-endian u64 words, instance-interleaved in 16-byte halves, `(row*2+h)*B + inst`; because every instance reads the same node numbers at the same step, a warp's loads of `l_{v-r}` are one contiguous run | same bytes, different addresses |
| AOS (ablation) | instance-major rows | same bytes |
| the far parent fetched ahead | `l_{far(v+1)}` (always `<= v-1`) is loaded while node v hashes; `l_{v-1}` never leaves registers | the parents' labels are those of the graph; only the load time moves |
| cooperative lanes (B3P1 control only) | in a SHA-256 reading the 104-byte label message is two blocks and the first (`chi | v | l_{v-r}[0..23]`) does not depend on `l_{v-1}`, so lane A computes node v+1's first block while lane B finishes node v | the same two compressions per label; the order of independent work changes |
In B1's encoding there is no cooperative split of one label: the 105-byte label message is ONE BLAKE2b block, so the per-label critical path is one compression however many lanes share it. That is a property of the encoding, not of the GPU, and it is recorded here because it decides how much a GPU can shorten one instance's chain (row X-6).
## The under-utilisation trap (stated before the first row)
Each instance is one sequential dependency chain of N labels: `l_v` needs `l_{v-1}`, so one instance can occupy one GPU thread (or, where the encoding permits, two cooperating lanes) and no more. A GPU fills its memory bandwidth and its arithmetic only with tens of thousands of threads in flight. The only lever the theorem permits for more threads is more instances, and each honest instance must hold its N labels (the memory-hard part: [BS25] proves that a prover who keeps less pays in cumulative memory) plus its Merkle tree. So the card's memory caps the instances in flight: at 32 MiB of labels per instance (64 MiB with the tree) a 32 GB card holds about 476 instances, at 128 MiB about 119, at 512 MiB about 29. Shrinking the instance to fill the card (tens of thousands of instances) makes each instance a few hundred KiB, small enough for a specialist to keep whole instances in on-die SRAM. Deleting edges or splitting the chain to create parallelism inside an instance changes the graph and voids the proof (the known-failed test below is exactly that change, and the oracle refuses it).
So the GPU's throughput at the B3 sizes is (instances that fit) divided by (one thread's time per label). One thread's time per label on these cards is about 1.7 microseconds (B1 encoding); one CPU thread's is 0.25 microseconds with the scalar BLAKE2b port (0.10 to 0.14 with sha_ni SHA-256 in the control). The rows measure how far that leaves the card below a CPU.
## Method
- Pods: a rented RTX 5090 (Vast 54994203, driver 580.126.09, host EPYC 7K62, the container's CPU quota 26 CPUs) and a rented RTX 4090 (Vast 54994221, driver 570.153.02, host EPYC 7513, quota 15 CPUs), from the fleet lane, CUDA 12.8. Stock clocks: no clock lock on a rented pod (said in every row). The 5090's host had set its board power limit to 480 W (default 600 W, meta.txt); no row drew more than about 415 W, so the limit did not bind. The 5090 host's load average was 81 at the start of the control run (other tenants on a shared EPYC), so its CPU rows are noisier than the 4090 host's. The host CPUs are shared with other tenants; the CPU rows carry the load average in meta.txt.
- Power boundary: GPU board power (`nvidia-smi power.draw`) at 1 Hz for the whole run, integrated sample-and-hold over each row's labelling window; idle (5.8 W on the 5090, 14.6 W on the 4090, 30 s windows) is NOT subtracted; host and wall power are not measured (row X-3).
- Each row: the B1 graph table on the host (the spec function, host threads), allocation, the label passes (repeated until at least 20 s of labelling so the 1 Hz meter has at least 20 samples; the first pass is dropped as warm-up when there are several), the commitment, the proof creation (device challenges and openings, copy home, B1's container), then every GPU proof through the C-port verifier with the TRUE graph, then the oracle.
- The correctness oracle, in three links: (1) `cpu_ref_b1 kat` reproduces B1's five known-answer fixtures (n = 4, 8, 12, 16, 20: chi, graph parents, labels sha256, tau, proof sha256 and the .proof.bin bytes); (2) in every row the GPU's labels, every Merkle node, root and proof container equal the C port's for the checked instances (2 per main row, spread across the batch; every GPU proof is verified); (3) instance 0 of every batch is B1's own KAT input, and at n = 20 its labels sha256 and tau are compared with B1's kat-n20.json directly. A timing row counts only when all three say identical.
- The known-failed test (`test_known_failed_b1.sh`): the GPU runs with DRSample's long edges deleted (`far(v) = v-2`, "a faster graph with the old proof"); the oracle must report MISMATCH, 0 proofs accepted and exit 1, and the unmodified run must report IDENTICAL with instance 0 equal to B1's fixture. Result on both cards: PASS (the oracle fired on the known-failed case and passed the known-finished one).
- The CPU baseline: `cpu_ref_b1 time` on the pod's own CPU, the C port (portable BLAKE2b, the spec's bytes) with one thread (THE sequential row) and with the container's whole quota (a diagnostic). B1's own CPython reference took 1.016 s for the n = 20 labels on build-6 (its row-n20-k64.json), about 1 microsecond per label, which is CPython's call overhead; the C port is the fair CPU.
- No raw hashes per second anywhere: rows are per instance, per label and per accepted proof.
- Figures: every table below is the verbatim output of `python3 tools/mhpow/b3/parse_rows.py <dirs>` run in docs/analysis/mhpow/b3/rows/ on the raw files there (rows.jsonl, power.csv, idle.json, cpu.jsonl, meta.txt).
## Oracle verdicts
| card | encoding | rows | rows IDENTICAL | instances byte-checked | GPU proofs accepted by the verifier | instance 0 = B1 fixture at n = 20 | C port = B1 KATs (n = 4..20) | known-failed test |
|---|---|---|---|---|---|---|---|---|
| RTX 5090 | B1 | 12 | 12 | 21 | 132899 of 132899 | yes (6 rows) | 5 of 5 | PASS |
| RTX 4090 | B1 | 12 | 12 | 21 | 98590 of 98590 | yes (6 rows) | 5 of 5 | PASS |
## Rows, B1 encoding (the counted rows)
Stock clocks, rented pods, board power, idle not subtracted, against B1's fixtures (the working copy the rows used equals the landed tools/mhpow/b1/fixtures byte for byte; row X-5). k = 64 challenges in every row (a timing placeholder; row X-2).
#### NVIDIA GeForce RTX 5090 (rented pod, stock clocks; host CPU AMD EPYC 7K62 48-Core Processor, nproc=192 cgroup_cpus=26); idle board power 6.0 W over 30 samples (not subtracted)
| row | MiB per instance | instances in flight | kernel, layout | label pass per batch (s) | labels/s, card | ns per label, per instance | board W (mean) | nJ per label | J per instance (labels) | commit per batch (s) | proof per batch (s) | GPU instance latency (s) | CPU sequential instance (s) | card = N one-thread CPU instances | oracle | accepted proofs |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| main-n20 | 32.0 | 476 of 476 | k1, soa | 1.543 | 323.5 M | 1,471 | 111 | 343.4 | 0.36 | 0.0398 | 0.0527 | 1.64 | 0.54 | 87.1 | IDENTICAL (2 checked) | 476 of 476 |
| main-n22 | 128.0 | 119 of 119 | k1, soa | 6.175 | 80.8 M | 1,472 | 105 | 1,309.5 | 5.49 | 0.0400 | 0.0190 | 6.23 | 2.27 | 23.2 | IDENTICAL (2 checked) | 119 of 119 |
| main-n24 | 512.0 | 29 of 29 | k1, soa | 24.639 | 19.7 M | 1,469 | 104 | 5,273.2 | 88.47 | 0.0391 | 0.0071 | 24.69 | 9.20 | 5.8 | IDENTICAL (2 checked) | 29 of 29 |
| abl-n20-aos | 32.0 | 476 of 476 | k1, aos | 1.559 | 320.1 M | 1,487 | 123 | 385.4 | 0.40 | 0.0655 | 0.0621 | 1.69 | 0.54 | 86.2 | IDENTICAL (2 checked) | 476 of 476 |
| abl-n20-tpb32 | 32.0 | 476 of 476 | k1, soa | 1.548 | 322.4 M | 1,477 | 125 | 383.6 | 0.40 | 0.0400 | 0.0581 | 1.65 | 0.54 | 86.8 | IDENTICAL (2 checked) | 476 of 476 |
| ladder-n20-B1 | 32.0 | 1 of 476 | k1, soa | 1.443 | 0.7 M | 1,377 | 100 | 138,375.6 | 145.10 | 0.0004 | 0.0011 | 1.44 | 0.54 | 0.2 | IDENTICAL (1 checked) | 1 of 1 |
| ladder-n20-B32 | 32.0 | 32 of 476 | k1, soa | 1.505 | 22.3 M | 1,436 | 104 | 4,679.8 | 4.91 | 0.0030 | 0.0066 | 1.51 | 0.54 | 6.0 | IDENTICAL (1 checked) | 32 of 32 |
| ladder-n20-B128 | 32.0 | 128 of 476 | k1, soa | 1.528 | 87.8 M | 1,457 | 104 | 1,187.9 | 1.25 | 0.0114 | 0.0177 | 1.56 | 0.54 | 23.6 | IDENTICAL (1 checked) | 128 of 128 |
| diag-n12 | 0.1 | 93706 of 93706 | k1, soa | 0.032 | 11,912.2 M | 7,866 | 453 | 38.0 | 0.00 | 0.0344 | 6.4473 | 6.51 | - | - | IDENTICAL (2 checked) | 93706 of 93706 |
| diag-n14 | 0.5 | 28102 of 28102 | k1, soa | 0.049 | 9,426.0 M | 2,981 | 431 | 45.7 | 0.00 | 0.0386 | 2.0398 | 2.13 | - | - | IDENTICAL (2 checked) | 28102 of 28102 |
| diag-n16 | 2.0 | 7457 of 7457 | k1, soa | 0.098 | 4,996.2 M | 1,493 | 318 | 63.8 | 0.00 | 0.0403 | 0.6610 | 0.80 | - | - | IDENTICAL (2 checked) | 7457 of 7457 |
| diag-n18 | 8.0 | 1897 of 1897 | k1, soa | 0.388 | 1,282.4 M | 1,479 | 163 | 127.4 | 0.03 | 0.0403 | 0.1935 | 0.62 | - | - | IDENTICAL (2 checked) | 1897 of 1897 |
CPU reference on the same pod (cpu_ref_b1: the C port of B1, portable scalar BLAKE2b, byte-identical to B1's fixtures; a SIMD BLAKE2b would be faster, so this CPU figure is a floor for the CPU):
| n | MiB | threads | label s per instance | Merkle s | proof s | verify s | labels/s per instance | instance labels per wall second, whole prover, all threads | accepted |
|---|---|---|---|---|---|---|---|---|---|
| 20 | 32 | 1 | 0.282 | 0.262 | 0.00017 | 0.00090 | 3.71 M | 1.9 M | 1 of 1 |
| 22 | 128 | 1 | 1.205 | 1.062 | 0.00021 | 0.00102 | 3.48 M | 1.8 M | 1 of 1 |
| 24 | 512 | 1 | 4.911 | 4.293 | 0.00025 | 0.00108 | 3.42 M | 1.8 M | 1 of 1 |
| 20 | 32 | 26 | 0.285 | 0.265 | 0.00017 | 0.00093 | 3.68 M | 34.7 M | 26 of 26 |
| 22 | 128 | 26 | 1.202 | 1.063 | 0.00023 | 0.00100 | 3.49 M | 34.1 M | 26 of 26 |
#### NVIDIA GeForce RTX 4090 (rented pod, stock clocks; host CPU AMD EPYC 7513 32-Core Processor, nproc=64 cgroup_cpus=15); idle board power 15.2 W over 30 samples (not subtracted)
| row | MiB per instance | instances in flight | kernel, layout | label pass per batch (s) | labels/s, card | ns per label, per instance | board W (mean) | nJ per label | J per instance (labels) | commit per batch (s) | proof per batch (s) | GPU instance latency (s) | CPU sequential instance (s) | card = N one-thread CPU instances | oracle | accepted proofs |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| main-n20 | 32.0 | 353 of 353 | k1, soa | 1.743 | 212.3 M | 1,663 | 79 | 372.0 | 0.39 | 0.0383 | 0.0307 | 1.81 | 0.49 | 51.7 | IDENTICAL (2 checked) | 353 of 353 |
| main-n22 | 128.0 | 88 of 88 | k1, soa | 7.030 | 52.5 M | 1,676 | 79 | 1,500.6 | 6.29 | 0.0383 | 0.0088 | 7.08 | 1.97 | 13.2 | IDENTICAL (2 checked) | 88 of 88 |
| main-n24 | 512.0 | 22 of 22 | k1, soa | 27.903 | 13.2 M | 1,663 | 78 | 5,929.8 | 99.49 | 0.0382 | 0.0033 | 27.94 | 8.07 | 3.5 | IDENTICAL (2 checked) | 22 of 22 |
| abl-n20-aos | 32.0 | 353 of 353 | k1, aos | 1.838 | 201.4 M | 1,753 | 81 | 404.1 | 0.42 | 0.0758 | 0.0321 | 1.95 | 0.49 | 49.0 | IDENTICAL (2 checked) | 353 of 353 |
| abl-n20-tpb32 | 32.0 | 353 of 353 | k1, soa | 1.747 | 211.9 M | 1,666 | 83 | 390.8 | 0.41 | 0.0383 | 0.0294 | 1.81 | 0.49 | 51.6 | IDENTICAL (2 checked) | 353 of 353 |
| ladder-n20-B1 | 32.0 | 1 of 353 | k1, soa | 1.692 | 0.6 M | 1,613 | 76 | 122,514.4 | 128.47 | 0.0003 | 0.0003 | 1.69 | 0.49 | 0.2 | IDENTICAL (1 checked) | 1 of 1 |
| ladder-n20-B32 | 32.0 | 32 of 353 | k1, soa | 1.722 | 19.5 M | 1,642 | 77 | 3,969.0 | 4.16 | 0.0036 | 0.0038 | 1.73 | 0.49 | 4.7 | IDENTICAL (1 checked) | 32 of 32 |
| ladder-n20-B128 | 32.0 | 128 of 353 | k1, soa | 1.752 | 76.6 M | 1,671 | 78 | 1,015.0 | 1.06 | 0.0140 | 0.0113 | 1.78 | 0.49 | 18.7 | IDENTICAL (1 checked) | 128 of 128 |
| diag-n12 | 0.1 | 69485 of 69485 | k1, soa | 0.031 | 9,082.9 M | 7,650 | 406 | 44.7 | 0.00 | 0.0294 | 3.2327 | 3.29 | - | - | IDENTICAL (2 checked) | 69485 of 69485 |
| diag-n14 | 0.5 | 20838 of 20838 | k1, soa | 0.051 | 6,671.5 M | 3,123 | 339 | 50.8 | 0.00 | 0.0355 | 1.1405 | 1.23 | - | - | IDENTICAL (2 checked) | 20838 of 20838 |
| diag-n16 | 2.0 | 5530 of 5530 | k1, soa | 0.112 | 3,242.9 M | 1,705 | 206 | 63.5 | 0.00 | 0.0376 | 0.3536 | 0.50 | - | - | IDENTICAL (2 checked) | 5530 of 5530 |
| diag-n18 | 8.0 | 1407 of 1407 | k1, soa | 0.440 | 837.7 M | 1,680 | 114 | 135.8 | 0.04 | 0.0381 | 0.1036 | 0.58 | - | - | IDENTICAL (2 checked) | 1407 of 1407 |
CPU reference on the same pod (cpu_ref_b1: the C port of B1, portable scalar BLAKE2b, byte-identical to B1's fixtures; a SIMD BLAKE2b would be faster, so this CPU figure is a floor for the CPU):
| n | MiB | threads | label s per instance | Merkle s | proof s | verify s | labels/s per instance | instance labels per wall second, whole prover, all threads | accepted |
|---|---|---|---|---|---|---|---|---|---|
| 20 | 32 | 1 | 0.255 | 0.230 | 0.00014 | 0.00081 | 4.11 M | 2.1 M | 1 of 1 |
| 22 | 128 | 1 | 1.056 | 0.912 | 0.00015 | 0.00090 | 3.97 M | 2.1 M | 1 of 1 |
| 24 | 512 | 1 | 4.408 | 3.658 | 0.00018 | 0.00097 | 3.81 M | 2.1 M | 1 of 1 |
| 20 | 32 | 15 | 0.261 | 0.232 | 0.00014 | 0.00083 | 4.02 M | 27.8 M | 15 of 15 |
| 22 | 128 | 15 | 1.099 | 0.940 | 0.00015 | 0.00092 | 3.82 M | 27.4 M | 15 of 15 |
### What each row means for GPU competitiveness
- RTX 5090, main-n20: 476 instances of 32 MiB label 323.5 M per second at 111 W board (343 nJ per label); one instance takes 1.64 s on the GPU against 0.54 s on one CPU thread; the card equals 87 CPU threads.
- RTX 5090, main-n22: 119 instances of 128 MiB label 80.8 M per second at 105 W board (1,309 nJ per label); one instance takes 6.23 s on the GPU against 2.27 s on one CPU thread; the card equals 23 CPU threads, so a 64-core server CPU out-labels it: no GPU advantage, principally CPU-friendly.
- RTX 5090, main-n24: 29 instances of 512 MiB label 19.7 M per second at 104 W board (5,273 nJ per label); one instance takes 24.69 s on the GPU against 9.20 s on one CPU thread; a 16-core desktop CPU out-labels the whole card (the card equals 5.8 CPU threads): principally CPU-friendly, the plan's rejection case.
- RTX 5090, abl-n20-aos: the instance-major (AOS) layout changes the card's labels per second by -1.0 percent against the SOA main row; layout is not the lever, the dependency chain is.
- RTX 5090, abl-n20-tpb32: the 32-thread blocks (one warp per block, spread over more SMs) changes the card's labels per second by -0.4 percent against the SOA main row; layout is not the lever, the dependency chain is.
- RTX 5090, ladder-n20-B1: 1 instance(s) in flight label 0.73 M per second at 100 W, about 1 times one thread's 0.73 M; throughput is linear in instances and the board draws nearly the same power at 1 as at 476, so the joules per label fall only by filling memory with instances (the trap, measured).
- RTX 5090, ladder-n20-B32: 32 instance(s) in flight label 22.29 M per second at 104 W, about 32 times one thread's 0.70 M; throughput is linear in instances and the board draws nearly the same power at 1 as at 476, so the joules per label fall only by filling memory with instances (the trap, measured).
- RTX 5090, ladder-n20-B128: 128 instance(s) in flight label 87.83 M per second at 104 W, about 128 times one thread's 0.69 M; throughput is linear in instances and the board draws nearly the same power at 1 as at 476, so the joules per label fall only by filling memory with instances (the trap, measured).
- RTX 5090, diag-n12 (not a B3 size): 0.10 MiB per instance lets 93706 instances fill the card (453 W, 11.91 G labels per second, 38 nJ per label); an instance this small (0.20 MiB with its tree) fits in a specialist's on-die SRAM, which is the other side of the trap.
- RTX 5090, diag-n14 (not a B3 size): 0.50 MiB per instance lets 28102 instances fill the card (431 W, 9.43 G labels per second, 46 nJ per label); an instance this small (1.00 MiB with its tree) fits in a specialist's on-die SRAM, which is the other side of the trap.
- RTX 5090, diag-n16 (not a B3 size): 2.00 MiB per instance lets 7457 instances fill the card (318 W, 5.00 G labels per second, 64 nJ per label); an instance this small (4.00 MiB with its tree) fits in a specialist's on-die SRAM, which is the other side of the trap.
- RTX 5090, diag-n18 (not a B3 size): 8.00 MiB per instance lets 1897 instances fill the card (163 W, 1.28 G labels per second, 127 nJ per label); an instance this small (16.00 MiB with its tree) fits in a specialist's on-die SRAM, which is the other side of the trap.
- RTX 4090, main-n20: 353 instances of 32 MiB label 212.3 M per second at 79 W board (372 nJ per label); one instance takes 1.81 s on the GPU against 0.49 s on one CPU thread; the card equals 52 CPU threads, so a 64-core server CPU out-labels it: no GPU advantage, principally CPU-friendly.
- RTX 4090, main-n22: 88 instances of 128 MiB label 52.5 M per second at 79 W board (1,501 nJ per label); one instance takes 7.08 s on the GPU against 1.97 s on one CPU thread; a 16-core desktop CPU out-labels the whole card (the card equals 13.2 CPU threads): principally CPU-friendly, the plan's rejection case.
- RTX 4090, main-n24: 22 instances of 512 MiB label 13.2 M per second at 78 W board (5,930 nJ per label); one instance takes 27.94 s on the GPU against 8.07 s on one CPU thread; a 16-core desktop CPU out-labels the whole card (the card equals 3.5 CPU threads): principally CPU-friendly, the plan's rejection case.
- RTX 4090, abl-n20-aos: the instance-major (AOS) layout changes the card's labels per second by -5.1 percent against the SOA main row; layout is not the lever, the dependency chain is.
- RTX 4090, abl-n20-tpb32: the 32-thread blocks (one warp per block, spread over more SMs) changes the card's labels per second by -0.2 percent against the SOA main row; layout is not the lever, the dependency chain is.
- RTX 4090, ladder-n20-B1: 1 instance(s) in flight label 0.62 M per second at 76 W, about 1 times one thread's 0.62 M; throughput is linear in instances and the board draws nearly the same power at 1 as at 353, so the joules per label fall only by filling memory with instances (the trap, measured).
- RTX 4090, ladder-n20-B32: 32 instance(s) in flight label 19.48 M per second at 77 W, about 32 times one thread's 0.61 M; throughput is linear in instances and the board draws nearly the same power at 1 as at 353, so the joules per label fall only by filling memory with instances (the trap, measured).
- RTX 4090, ladder-n20-B128: 128 instance(s) in flight label 76.61 M per second at 78 W, about 128 times one thread's 0.60 M; throughput is linear in instances and the board draws nearly the same power at 1 as at 353, so the joules per label fall only by filling memory with instances (the trap, measured).
- RTX 4090, diag-n12 (not a B3 size): 0.10 MiB per instance lets 69485 instances fill the card (406 W, 9.08 G labels per second, 45 nJ per label); an instance this small (0.20 MiB with its tree) fits in a specialist's on-die SRAM, which is the other side of the trap.
- RTX 4090, diag-n14 (not a B3 size): 0.50 MiB per instance lets 20838 instances fill the card (339 W, 6.67 G labels per second, 51 nJ per label); an instance this small (1.00 MiB with its tree) fits in a specialist's on-die SRAM, which is the other side of the trap.
- RTX 4090, diag-n16 (not a B3 size): 2.00 MiB per instance lets 5530 instances fill the card (206 W, 3.24 G labels per second, 63 nJ per label); an instance this small (4.00 MiB with its tree) fits in a specialist's on-die SRAM, which is the other side of the trap.
- RTX 4090, diag-n18 (not a B3 size): 8.00 MiB per instance lets 1407 instances fill the card (114 W, 0.84 G labels per second, 136 nJ per label); an instance this small (16.00 MiB with its tree) fits in a specialist's on-die SRAM, which is the other side of the trap.
## Control rows, the B3 lane's SHA-256 reading (B3P1)
Before B1's reference existed this lane ran its own literal reading of the paper (SHA-256, no tags, the same graph rule with SHA-256 coins). These rows are a control, not the function: their oracle is the lane's own reference (`cpu_ref selftest`, the GPU byte-identical on every checked instance, the known-failed test PASS). They show the one thing the B1 rows cannot: what a two-block label (first block independent of `l_{v-1}`) buys with two cooperating lanes (k2), about 1.6x per instance on both cards. The CPU column here is a sha_ni core.
#### NVIDIA GeForce RTX 5090 (rented pod, stock clocks; host CPU AMD EPYC 7K62 48-Core Processor, nproc=26 cgroup_cpus=26); idle board power 5.8 W over 30 samples (not subtracted)
| row | MiB per instance | instances in flight | kernel, layout | label pass per batch (s) | labels/s, card | ns per label, per instance | board W (mean) | nJ per label | J per instance (labels) | commit per batch (s) | proof per batch (s) | GPU instance latency (s) | CPU sequential instance (s) | card = N one-thread CPU instances | oracle | accepted proofs |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| main-n20-k1 | 32.0 | 476 of 476 | k1, soa | 2.375 | 210.2 M | 2,265 | 105 | 498.3 | 0.52 | 0.0496 | 0.0502 | 2.47 | 0.22 | 25.9 | IDENTICAL (2 checked) | 476 of 476 |
| main-n20-k2 | 32.0 | 476 of 476 | k2, soa | 1.450 | 344.2 M | 1,383 | 123 | 355.9 | 0.37 | 0.0499 | 0.0489 | 1.55 | 0.22 | 42.4 | IDENTICAL (2 checked) | 476 of 476 |
| main-n22-k1 | 128.0 | 119 of 119 | k1, soa | 9.526 | 52.4 M | 2,271 | 105 | 2,001.3 | 8.39 | 0.0499 | 0.0182 | 9.59 | 0.92 | 6.8 | IDENTICAL (2 checked) | 119 of 119 |
| main-n22-k2 | 128.0 | 119 of 119 | k2, soa | 5.811 | 85.9 M | 1,385 | 107 | 1,244.1 | 5.22 | 0.0497 | 0.0195 | 5.88 | 0.92 | 11.1 | IDENTICAL (2 checked) | 119 of 119 |
| main-n24-k1 | 512.0 | 29 of 29 | k1, soa | 37.719 | 12.9 M | 2,248 | 102 | 7,916.2 | 132.81 | 0.0485 | 0.0074 | 37.78 | 3.88 | 1.8 | IDENTICAL (2 checked) | 29 of 29 |
| main-n24-k2 | 512.0 | 29 of 29 | k2, soa | 22.628 | 21.5 M | 1,349 | 97 | 4,507.1 | 75.62 | 0.0484 | 0.0074 | 22.68 | 3.88 | 3.0 | IDENTICAL (2 checked) | 29 of 29 |
| abl-n20-k1-aos | 32.0 | 476 of 476 | k1, aos | 2.294 | 217.5 M | 2,188 | 115 | 530.0 | 0.56 | 0.0654 | 0.0604 | 2.42 | 0.22 | 26.8 | IDENTICAL (2 checked) | 476 of 476 |
| ladder-n20-B1-k2 | 32.0 | 1 of 476 | k2, soa | 1.336 | 0.8 M | 1,274 | 100 | 127,264.1 | 133.45 | 0.0004 | 0.0008 | 1.34 | 0.22 | 0.1 | IDENTICAL (1 checked) | 1 of 1 |
| ladder-n20-B1-k1 | 32.0 | 1 of 476 | k1, soa | 2.218 | 0.5 M | 2,115 | 102 | 214,807.2 | 225.24 | 0.0005 | 0.0008 | 2.22 | 0.22 | 0.1 | IDENTICAL (1 checked) | 1 of 1 |
| ladder-n20-B32-k2 | 32.0 | 32 of 476 | k2, soa | 1.385 | 24.2 M | 1,321 | 107 | 4,431.8 | 4.65 | 0.0037 | 0.0062 | 1.39 | 0.22 | 3.0 | IDENTICAL (1 checked) | 32 of 32 |
| ladder-n20-B32-k1 | 32.0 | 32 of 476 | k1, soa | 2.322 | 14.5 M | 2,214 | 103 | 7,112.4 | 7.46 | 0.0037 | 0.0074 | 2.33 | 0.22 | 1.8 | IDENTICAL (1 checked) | 32 of 32 |
| ladder-n20-B128-k2 | 32.0 | 128 of 476 | k2, soa | 1.445 | 92.9 M | 1,378 | 105 | 1,135.1 | 1.19 | 0.0136 | 0.0184 | 1.48 | 0.22 | 11.5 | IDENTICAL (1 checked) | 128 of 128 |
| ladder-n20-B128-k1 | 32.0 | 128 of 476 | k1, soa | 2.361 | 56.9 M | 2,251 | 104 | 1,834.0 | 1.92 | 0.0135 | 0.0172 | 2.39 | 0.22 | 7.0 | IDENTICAL (1 checked) | 128 of 128 |
| diag-n14-k1 | 0.5 | 28102 of 28102 | k1, soa | 0.068 | 6,755.6 M | 4,160 | 413 | 61.2 | 0.00 | 0.0471 | 1.9260 | 2.04 | - | - | IDENTICAL (2 checked) | 28102 of 28102 |
| diag-n16-k1 | 2.0 | 7457 of 7457 | k1, soa | 0.149 | 3,269.4 M | 2,281 | 266 | 81.5 | 0.01 | 0.0498 | 0.6482 | 0.85 | - | - | IDENTICAL (2 checked) | 7457 of 7457 |
| diag-n18-k1 | 8.0 | 1897 of 1897 | k1, soa | 0.597 | 833.5 M | 2,276 | 146 | 174.6 | 0.05 | 0.0502 | 0.1750 | 0.82 | - | - | IDENTICAL (2 checked) | 1897 of 1897 |
CPU reference on the same pod (cpu_ref: sha_ni SHA-256, byte-identical to the B3P1 spec by selftest):
| n | MiB | threads | label s per instance | Merkle s | proof s | verify s | labels/s per instance | instance labels per wall second, whole prover, all threads | accepted |
|---|---|---|---|---|---|---|---|---|---|
| 20 | 32 | 1 | 0.129 | 0.094 | 0.00028 | 0.00224 | 8.11 M | 4.5 M | 1 of 1 |
| 22 | 128 | 1 | 0.544 | 0.373 | 0.00045 | 0.00246 | 7.71 M | 4.4 M | 1 of 1 |
| 24 | 512 | 1 | 2.327 | 1.550 | 0.00070 | 0.00269 | 7.21 M | 4.2 M | 1 of 1 |
| 20 | 32 | 26 | 0.136 | 0.097 | 0.00034 | 0.00225 | 7.72 M | 59.7 M | 26 of 26 |
| 22 | 128 | 26 | 0.561 | 0.390 | 0.15758 | 0.00288 | 7.48 M | 53.2 M | 26 of 26 |
#### NVIDIA GeForce RTX 4090 (rented pod, stock clocks; host CPU AMD EPYC 7513 32-Core Processor, nproc=15 cgroup_cpus=15); idle board power 14.6 W over 30 samples (not subtracted)
| row | MiB per instance | instances in flight | kernel, layout | label pass per batch (s) | labels/s, card | ns per label, per instance | board W (mean) | nJ per label | J per instance (labels) | commit per batch (s) | proof per batch (s) | GPU instance latency (s) | CPU sequential instance (s) | card = N one-thread CPU instances | oracle | accepted proofs |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| main-n20-k1 | 32.0 | 353 of 353 | k1, soa | 2.399 | 154.3 M | 2,288 | 79 | 512.0 | 0.54 | 0.0481 | 0.0289 | 2.48 | 0.19 | 16.0 | IDENTICAL (2 checked) | 353 of 353 |
| main-n20-k2 | 32.0 | 353 of 353 | k2, soa | 1.435 | 258.0 M | 1,368 | 94 | 362.6 | 0.38 | 0.0478 | 0.0295 | 1.51 | 0.19 | 26.7 | IDENTICAL (2 checked) | 353 of 353 |
| main-n22-k1 | 128.0 | 88 of 88 | k1, soa | 9.619 | 38.4 M | 2,293 | 79 | 2,065.3 | 8.66 | 0.0477 | 0.0095 | 9.68 | 0.82 | 4.4 | IDENTICAL (2 checked) | 88 of 88 |
| main-n22-k2 | 128.0 | 88 of 88 | k2, soa | 5.801 | 63.6 M | 1,383 | 81 | 1,274.6 | 5.35 | 0.0482 | 0.0094 | 5.86 | 0.82 | 7.3 | IDENTICAL (2 checked) | 88 of 88 |
| main-n24-k1 | 512.0 | 22 of 22 | k1, soa | 38.474 | 9.6 M | 2,293 | 79 | 8,278.1 | 138.88 | 0.0478 | 0.0032 | 38.52 | 3.44 | 1.2 | IDENTICAL (2 checked) | 22 of 22 |
| main-n24-k2 | 512.0 | 22 of 22 | k2, soa | 22.738 | 16.2 M | 1,355 | 78 | 4,826.6 | 80.98 | 0.0480 | 0.0030 | 22.79 | 3.44 | 2.0 | IDENTICAL (2 checked) | 22 of 22 |
| abl-n20-k1-aos | 32.0 | 353 of 353 | k1, aos | 2.424 | 152.7 M | 2,311 | 83 | 542.7 | 0.57 | 0.0835 | 0.0314 | 2.54 | 0.19 | 15.8 | IDENTICAL (2 checked) | 353 of 353 |
| ladder-n20-B1-k2 | 32.0 | 1 of 353 | k2, soa | 1.375 | 0.8 M | 1,312 | 78 | 102,447.5 | 107.42 | 0.0003 | 0.0003 | 1.38 | 0.19 | 0.1 | IDENTICAL (1 checked) | 1 of 1 |
| ladder-n20-B1-k1 | 32.0 | 1 of 353 | k1, soa | 2.337 | 0.4 M | 2,229 | 78 | 173,376.7 | 181.80 | 0.0003 | 0.0003 | 2.34 | 0.19 | 0.0 | IDENTICAL (1 checked) | 1 of 1 |
| ladder-n20-B32-k2 | 32.0 | 32 of 353 | k2, soa | 1.400 | 24.0 M | 1,335 | 78 | 3,271.3 | 3.43 | 0.0045 | 0.0034 | 1.41 | 0.19 | 2.5 | IDENTICAL (1 checked) | 32 of 32 |
| ladder-n20-B32-k1 | 32.0 | 32 of 353 | k1, soa | 2.371 | 14.2 M | 2,261 | 77 | 5,451.3 | 5.72 | 0.0045 | 0.0038 | 2.38 | 0.19 | 1.5 | IDENTICAL (1 checked) | 32 of 32 |
| ladder-n20-B128-k2 | 32.0 | 128 of 353 | k2, soa | 1.443 | 93.0 M | 1,376 | 78 | 839.9 | 0.88 | 0.0174 | 0.0110 | 1.47 | 0.19 | 9.6 | IDENTICAL (1 checked) | 128 of 128 |
| ladder-n20-B128-k1 | 32.0 | 128 of 353 | k1, soa | 2.399 | 55.9 M | 2,288 | 78 | 1,402.7 | 1.47 | 0.0175 | 0.0119 | 2.43 | 0.19 | 5.8 | IDENTICAL (1 checked) | 128 of 128 |
| diag-n14-k1 | 0.5 | 20838 of 20838 | k1, soa | 0.070 | 4,897.5 M | 4,255 | 305 | 62.4 | 0.00 | 0.0447 | 1.0917 | 1.21 | - | - | IDENTICAL (2 checked) | 20838 of 20838 |
| diag-n16-k1 | 2.0 | 5530 of 5530 | k1, soa | 0.152 | 2,382.2 M | 2,321 | 189 | 79.5 | 0.01 | 0.0468 | 0.3434 | 0.54 | - | - | IDENTICAL (2 checked) | 5530 of 5530 |
| diag-n18-k1 | 8.0 | 1407 of 1407 | k1, soa | 0.602 | 613.0 M | 2,295 | 108 | 176.8 | 0.05 | 0.0473 | 0.0980 | 0.75 | - | - | IDENTICAL (2 checked) | 1407 of 1407 |
CPU reference on the same pod (cpu_ref: sha_ni SHA-256, byte-identical to the B3P1 spec by selftest):
| n | MiB | threads | label s per instance | Merkle s | proof s | verify s | labels/s per instance | instance labels per wall second, whole prover, all threads | accepted |
|---|---|---|---|---|---|---|---|---|---|
| 20 | 32 | 1 | 0.108 | 0.084 | 0.00022 | 0.00193 | 9.66 M | 5.3 M | 1 of 1 |
| 22 | 128 | 1 | 0.484 | 0.331 | 0.00028 | 0.00213 | 8.67 M | 5.0 M | 1 of 1 |
| 24 | 512 | 1 | 2.101 | 1.335 | 0.00034 | 0.00231 | 7.98 M | 4.8 M | 1 of 1 |
| 20 | 32 | 15 | 0.115 | 0.084 | 0.00024 | 0.00196 | 9.09 M | 58.0 M | 15 of 15 |
| 22 | 128 | 15 | 0.516 | 0.342 | 0.02408 | 0.00226 | 8.13 M | 56.3 M | 15 of 15 |
## BLOCKED and open rows
| row | what | why it is open | who closes it |
|---|---|---|---|
| X-1 | any comparison of this work unit with the v6 work unit (per accepted proof against per accepted v6 share) | the Track B rule: an equivalent lottery-contribution and security-budget comparison must be written and approved by the coordinator before any such number; none exists | the coordinator, then this lane re-reads the rows under it |
| X-2 | the number of challenges k | [BS25] Corollary 3 sets k = 2 lambda log N / c1 with DRSample's depth-robustness constant; with [ABH17]'s proved constants (e about 2.43e-4 N / log N) k exceeds N, so no concrete k follows from the proved bound; the rows use k = 64 for timing only (proof creation is under 0.04 s per batch at k = 64 and scales linearly; proof size 129 to 154 KB at k = 64) | B1 and B4 (the concrete constants) |
| X-3 | joules per label for the CPU baseline, and any wall-power figure | rented containers expose no wall meter and no RAPL counters; the GPU rows are board power only | a box with a wall meter (the house rigs are blocked for every lane today) |
| X-4 | the specialist's energy per label for this function | the adversary lane's chip model; an approximate reading from memory follows, labelled approximate and neither a WITNESS nor a BOUND: a BLAKE2b compression costs a hashing ASIC on the order of picojoules, and one 32-byte SRAM read plus one write per label is of the same order, so a specialist's energy per label at 32 MiB is plausibly one to two orders of magnitude under the GPU's 0.4 to 0.5 microjoules | the adversary lane (WITNESS rows) |
| X-5 | B1's reference was a working copy (build-6, 09:26Z) when the rows ran | CLOSED at 11:1x UK: B1 has landed on master (tools/mhpow/b1) and its landed sources and fixtures are byte-identical to the copy the oracle used (params.py d47b8ff5, drsample.py 4169a5fc, mtp.py c0feed31; kat-n04..n20 json 9f85b22a, 2c741be9, 51ccacd3, 240f50bc, fd0d75b6; proof.bin 481a39fa, d45a9756, 3c7de053, 793fd4d5, a49367d9), so every row stands against the landed B1 | none |
| X-6 | an encoding that halves the per-label critical path for every prover (two-block label, first block independent of `l_{v-1}`) | B3P1 shows 1.6x per GPU instance; it helps a CPU and a specialist the same way, so it is not a GPU lever, and changing the encoding is B1's and B2's call with its own proof review | B1, B2 |
| X-7 | 8, 12 and 16 GB cards | not rented; instance counts scale with memory; the tier table below derives them from the measured per-instance rate (derived, not measured) | the fleet lane can rent a 4060/3060-class pod on request |
| X-8 | a cheating prover on a GPU (partial labelling, the ex-post-facto graph of [BS25] section 4) | B4's theorem work defines the adversary first; B3 measured the honest prover only | B4, then this lane |
| X-9 | the trimmed-tree honest prover (keep only the upper Merkle levels, rebuild sibling subtrees at proof time) | not built; it raises instances in flight by at most about 2x (the tree is half of the state), which moves no row out of the trap | this lane if the panel asks |
## Consequences for each user tier
Derived, not measured, except the 24 and 32 GB rows above: instances = (card memory - 1.5 GB reserve) / (labels + tree + proof slot), labels per second = instances / one thread's measured time per label (1,667 ns, the 4090 B1 main rows); "CPU threads" divides by the 4090 pod's one-thread C-port rate at the same size.
| card memory | 32 MiB: instances, M labels/s, = CPU threads | 128 MiB | 512 MiB |
|---|---|---|---|
| 8 GB | 103, 61.8 M, 15.0 | 25, 15.0 M, 3.8 | 6, 3.6 M, 0.9 |
| 12 GB | 167, 100.2 M, 24.4 | 41, 24.6 M, 6.2 | 10, 6.0 M, 1.6 |
| 16 GB | 231, 138.5 M, 33.7 | 57, 34.2 M, 8.6 | 14, 8.4 M, 2.2 |
| 24 GB | 359, 215.3 M, 52.4 | 89, 53.4 M, 13.4 | 22, 13.2 M, 3.5 |
| 32 GB | 487, 292.1 M, 71.1 | 121, 72.6 M, 18.3 | 30, 18.0 M, 4.7 |
What it means per tier: a home miner with one 8 GB card at 32 MiB per instance labels about as fast as 15 CPU threads, at 512 MiB as fast as 0.9 of one CPU thread; one 24 or 32 GB card equals 52 to 71 CPU threads at 32 MiB and 3.5 to 4.7 at 512 MiB (one-thread kernel; the measured rows above add the board's own figures); a rig scales linearly with cards and so does a server CPU with cores. A pool user sees the same per-card rate. Windows and Linux run the same CUDA kernel (measured on Linux only); AMD, Intel and Apple GPUs have no kernel here (the per-thread chain argument applies to them unchanged: one instance per lane, instances capped by memory). What this lane does about it: the B3 sizes are reported as failing the plan's GPU-competitiveness gate; the only GPU-favourable regime measured is instances under 2 MiB, which hands the specialist an SRAM-resident design (rows diag-n12 to n16), so B3 asks B1, B2 and B4 for a construction whose per-label work is memory-bound rather than hash-bound before any further GPU tuning.
## Commands
```
tools/mhpow/b3/build.sh # on the pod: cpu_ref, b3_gpu (B3P1), cpu_ref_b1, b3_gpu_b1 (B1)
tools/mhpow/b3/test_known_failed_b1.sh <b1-kat-dir> # the oracle chain and its known-failed case
tools/mhpow/b3/run_rows_b1.sh <card-label> <b1-kat-dir> # the B1 rows, writes /root/b3/out/<label>/
tools/mhpow/b3/test_known_failed.sh; tools/mhpow/b3/run_rows.sh <card-label> # the B3P1 control
cd docs/analysis/mhpow/b3/rows && python3 ../../../../../tools/mhpow/b3/parse_rows.py rtx5090-b1 rtx4090-b1
```

View file

@ -0,0 +1,106 @@
# B3: GPU adaptation of the MTP/DRSample proof of work, without changing the theorem
Track B item B3 (package R15-06, the GPU feasibility lane), 9 October 2026. Status: every row below is NOT RUN until the panel reads it. Nothing activates. No row compares this work unit with the v6 work unit; that comparison needs a contract that does not exist yet (row X-1). No PASS is claimed here.
## The finding in one paragraph (for the panel; NOT RUN)
The exact function runs on the GPU byte for byte (B1's fixtures reproduced; every GPU proof accepted; the known-failed graph refused). At the B3 sizes the GPU is caught in the trap the plan warned of: each instance is one hash chain (one BLAKE2b block per label, about 1.5 to 1.7 microseconds on one GPU thread), memory caps the instances in flight, and so a whole RTX 5090 / RTX 4090 labels like 87 / 52 one-thread CPU instances at 32 MiB, 23 / 13 at 128 MiB and 5.8 / 3.5 at 512 MiB, drawing about 80 to 110 W of a 450 to 480 W board. At 128 and 512 MiB the function is principally CPU-friendly, the plan's rejection case; at 32 MiB the card is a mid-size server CPU. The card fills itself only with instances of 2 MiB or less (5 to 12 G labels per second, 38 to 64 nJ per label), which a specialist holds whole in on-die SRAM. Layout (SOA against AOS, block shape) moves the rate by 0 to 5 percent: the lever is the dependency chain, not the memory system. These rows are the control for the Track B pivot.
## Sources (by sha)
| source | identity |
|---|---|
| The founder's research plan, "IGNEUM - The 1.5x Research Programme" (sections 4.6, 6 B3, 8, 10) | sha256 269ceaa5824d09140a1bcc124dba59438db5a5e68fddc18960db7141fefc0305 |
| The 1.5x experiment brief | sha256 74ee073286d4a6e2... (as cited by the common brief) |
| [BS25] Blocki and Smearsoll, Provably Memory-Hard Proofs of Work With Memory-Easy Verification, TCC 2025, eprint 2025/1456, the FULL paper (46 pages, TeX build 11 Aug 2025) | sha256 13c3646e7d85c1aa58a92914582caab5798d90cf2a3cad33e58d81d49c1d31db (eprint.iacr.org answers curl with a Cloudflare challenge; this copy is the Wayback Machine's capture of the eprint PDF) |
| [ABH17] Alwen, Blocki and Harsha, Practical Graphs for Optimal Side-Channel Resistant Memory-Hard Functions, CCS 2017, eprint 2017/443, Algorithm 1 (DRSample) | sha256 f8e08d361118120c905550d3ac63efffe2a806d68276b070c24e7aa15d8fa8eb (17 pages, Wayback capture) |
| The B1 lane's CPU reference (R15-05), working copy on build-6 at 09:26Z; landed on master since, byte-identical (row X-5) | params.py d47b8ff5..., drsample.py 4169a5fc..., mtp.py c0feed31..., gen_fixtures.py b7a2a89f...; fixtures kat-n04..n20 (SHA256SUMS: kat-n20.json fd0d75b6..., kat-n20.proof.bin a49367d9...) |
| This lane's code | tools/mhpow/b3/ on branch mhpow-b3; B1-encoding build id d672d3839ebb45e5, B3P1 control build id 2079d0d8ce7eef96 (sha256 of the four source files, build.sh) |
Sections of [BS25] used: 2.2 (the labelling game, `l_v = H(chi, v, parents' labels)`), 3.2 (the MTP framework: honest prover, commitment, challenges, verifier), 4.1 (the Merkle layout), 5 and 6.1 (the soundness bound and the DRSample instantiation, which cites [ABH17] for the graph).
## What the function is, and what B3 may change
The honest prover of [BS25] section 3.2, in B1's encoding (BLAKE2b-256, lambda = 256, one-byte tags L/M/C/G, u64 little-endian integers, the graph sampled once from a public seed by [ABH17] Algorithm 1 with rejection sampling):
1. label every node in topological order: `l_1 = H('L' | chi | 1)`, `l_2 = H('L' | chi | 2 | l_1)`, `l_v = H('L' | chi | v | l_{v-r} | l_{v-1})` with `v-r <= v-2` drawn by DRSample;
2. commit: a Merkle tree over the N labels in the paper's bit order, inner nodes `H('M' | chi | left | right)`;
3. challenge: `c_i = H('C' | chi | i | root) mod N`, i = 1..k;
4. open each challenged node and its parents with their Merkle paths (B1's container `B1MTPDR1`).
B3 changes representation and scheduling only. The DAG edge rule, the hash, every byte hashed, the domain tags, the challenge rule and the proof container are B1's, and the oracle checks that byte for byte. What changes:
| change | what it is | why it is allowed |
|---|---|---|
| batching across instances | many instances (different chi) in flight; the graph table is shared because the graph is data-independent and fixed a priori | each instance is computed exactly as specified; nothing crosses instances |
| coalesced label storage (SOA) | labels as 4 little-endian u64 words, instance-interleaved in 16-byte halves, `(row*2+h)*B + inst`; because every instance reads the same node numbers at the same step, a warp's loads of `l_{v-r}` are one contiguous run | same bytes, different addresses |
| AOS (ablation) | instance-major rows | same bytes |
| the far parent fetched ahead | `l_{far(v+1)}` (always `<= v-1`) is loaded while node v hashes; `l_{v-1}` never leaves registers | the parents' labels are those of the graph; only the load time moves |
| cooperative lanes (B3P1 control only) | in a SHA-256 reading the 104-byte label message is two blocks and the first (`chi | v | l_{v-r}[0..23]`) does not depend on `l_{v-1}`, so lane A computes node v+1's first block while lane B finishes node v | the same two compressions per label; the order of independent work changes |
In B1's encoding there is no cooperative split of one label: the 105-byte label message is ONE BLAKE2b block, so the per-label critical path is one compression however many lanes share it. That is a property of the encoding, not of the GPU, and it is recorded here because it decides how much a GPU can shorten one instance's chain (row X-6).
## The under-utilisation trap (stated before the first row)
Each instance is one sequential dependency chain of N labels: `l_v` needs `l_{v-1}`, so one instance can occupy one GPU thread (or, where the encoding permits, two cooperating lanes) and no more. A GPU fills its memory bandwidth and its arithmetic only with tens of thousands of threads in flight. The only lever the theorem permits for more threads is more instances, and each honest instance must hold its N labels (the memory-hard part: [BS25] proves that a prover who keeps less pays in cumulative memory) plus its Merkle tree. So the card's memory caps the instances in flight: at 32 MiB of labels per instance (64 MiB with the tree) a 32 GB card holds about 476 instances, at 128 MiB about 119, at 512 MiB about 29. Shrinking the instance to fill the card (tens of thousands of instances) makes each instance a few hundred KiB, small enough for a specialist to keep whole instances in on-die SRAM. Deleting edges or splitting the chain to create parallelism inside an instance changes the graph and voids the proof (the known-failed test below is exactly that change, and the oracle refuses it).
So the GPU's throughput at the B3 sizes is (instances that fit) divided by (one thread's time per label). One thread's time per label on these cards is about 1.7 microseconds (B1 encoding); one CPU thread's is 0.25 microseconds with the scalar BLAKE2b port (0.10 to 0.14 with sha_ni SHA-256 in the control). The rows measure how far that leaves the card below a CPU.
## Method
- Pods: a rented RTX 5090 (Vast 54994203, driver 580.126.09, host EPYC 7K62, the container's CPU quota 26 CPUs) and a rented RTX 4090 (Vast 54994221, driver 570.153.02, host EPYC 7513, quota 15 CPUs), from the fleet lane, CUDA 12.8. Stock clocks: no clock lock on a rented pod (said in every row). The 5090's host had set its board power limit to 480 W (default 600 W, meta.txt); no row drew more than about 415 W, so the limit did not bind. The 5090 host's load average was 81 at the start of the control run (other tenants on a shared EPYC), so its CPU rows are noisier than the 4090 host's. The host CPUs are shared with other tenants; the CPU rows carry the load average in meta.txt.
- Power boundary: GPU board power (`nvidia-smi power.draw`) at 1 Hz for the whole run, integrated sample-and-hold over each row's labelling window; idle (5.8 W on the 5090, 14.6 W on the 4090, 30 s windows) is NOT subtracted; host and wall power are not measured (row X-3).
- Each row: the B1 graph table on the host (the spec function, host threads), allocation, the label passes (repeated until at least 20 s of labelling so the 1 Hz meter has at least 20 samples; the first pass is dropped as warm-up when there are several), the commitment, the proof creation (device challenges and openings, copy home, B1's container), then every GPU proof through the C-port verifier with the TRUE graph, then the oracle.
- The correctness oracle, in three links: (1) `cpu_ref_b1 kat` reproduces B1's five known-answer fixtures (n = 4, 8, 12, 16, 20: chi, graph parents, labels sha256, tau, proof sha256 and the .proof.bin bytes); (2) in every row the GPU's labels, every Merkle node, root and proof container equal the C port's for the checked instances (2 per main row, spread across the batch; every GPU proof is verified); (3) instance 0 of every batch is B1's own KAT input, and at n = 20 its labels sha256 and tau are compared with B1's kat-n20.json directly. A timing row counts only when all three say identical.
- The known-failed test (`test_known_failed_b1.sh`): the GPU runs with DRSample's long edges deleted (`far(v) = v-2`, "a faster graph with the old proof"); the oracle must report MISMATCH, 0 proofs accepted and exit 1, and the unmodified run must report IDENTICAL with instance 0 equal to B1's fixture. Result on both cards: PASS (the oracle fired on the known-failed case and passed the known-finished one).
- The CPU baseline: `cpu_ref_b1 time` on the pod's own CPU, the C port (portable BLAKE2b, the spec's bytes) with one thread (THE sequential row) and with the container's whole quota (a diagnostic). B1's own CPython reference took 1.016 s for the n = 20 labels on build-6 (its row-n20-k64.json), about 1 microsecond per label, which is CPython's call overhead; the C port is the fair CPU.
- No raw hashes per second anywhere: rows are per instance, per label and per accepted proof.
- Figures: every table below is the verbatim output of `python3 tools/mhpow/b3/parse_rows.py <dirs>` run in docs/analysis/mhpow/b3/rows/ on the raw files there (rows.jsonl, power.csv, idle.json, cpu.jsonl, meta.txt).
## Oracle verdicts
<<ORACLE>>
## Rows, B1 encoding (the counted rows)
Stock clocks, rented pods, board power, idle not subtracted, against B1's fixtures (the working copy the rows used equals the landed tools/mhpow/b1/fixtures byte for byte; row X-5). k = 64 challenges in every row (a timing placeholder; row X-2).
<<B1_TABLES>>
### What each row means for GPU competitiveness
<<MEANING>>
## Control rows, the B3 lane's SHA-256 reading (B3P1)
Before B1's reference existed this lane ran its own literal reading of the paper (SHA-256, no tags, the same graph rule with SHA-256 coins). These rows are a control, not the function: their oracle is the lane's own reference (`cpu_ref selftest`, the GPU byte-identical on every checked instance, the known-failed test PASS). They show the one thing the B1 rows cannot: what a two-block label (first block independent of `l_{v-1}`) buys with two cooperating lanes (k2), about 1.6x per instance on both cards. The CPU column here is a sha_ni core.
<<B3P1_TABLES>>
## BLOCKED and open rows
| row | what | why it is open | who closes it |
|---|---|---|---|
| X-1 | any comparison of this work unit with the v6 work unit (per accepted proof against per accepted v6 share) | the Track B rule: an equivalent lottery-contribution and security-budget comparison must be written and approved by the coordinator before any such number; none exists | the coordinator, then this lane re-reads the rows under it |
| X-2 | the number of challenges k | [BS25] Corollary 3 sets k = 2 lambda log N / c1 with DRSample's depth-robustness constant; with [ABH17]'s proved constants (e about 2.43e-4 N / log N) k exceeds N, so no concrete k follows from the proved bound; the rows use k = 64 for timing only (proof creation is under 0.04 s per batch at k = 64 and scales linearly; proof size 129 to 154 KB at k = 64) | B1 and B4 (the concrete constants) |
| X-3 | joules per label for the CPU baseline, and any wall-power figure | rented containers expose no wall meter and no RAPL counters; the GPU rows are board power only | a box with a wall meter (the house rigs are blocked for every lane today) |
| X-4 | the specialist's energy per label for this function | the adversary lane's chip model; an approximate reading from memory follows, labelled approximate and neither a WITNESS nor a BOUND: a BLAKE2b compression costs a hashing ASIC on the order of picojoules, and one 32-byte SRAM read plus one write per label is of the same order, so a specialist's energy per label at 32 MiB is plausibly one to two orders of magnitude under the GPU's 0.4 to 0.5 microjoules | the adversary lane (WITNESS rows) |
| X-5 | B1's reference was a working copy (build-6, 09:26Z) when the rows ran | CLOSED at 11:1x UK: B1 has landed on master (tools/mhpow/b1) and its landed sources and fixtures are byte-identical to the copy the oracle used (params.py d47b8ff5, drsample.py 4169a5fc, mtp.py c0feed31; kat-n04..n20 json 9f85b22a, 2c741be9, 51ccacd3, 240f50bc, fd0d75b6; proof.bin 481a39fa, d45a9756, 3c7de053, 793fd4d5, a49367d9), so every row stands against the landed B1 | none |
| X-6 | an encoding that halves the per-label critical path for every prover (two-block label, first block independent of `l_{v-1}`) | B3P1 shows 1.6x per GPU instance; it helps a CPU and a specialist the same way, so it is not a GPU lever, and changing the encoding is B1's and B2's call with its own proof review | B1, B2 |
| X-7 | 8, 12 and 16 GB cards | not rented; instance counts scale with memory; the tier table below derives them from the measured per-instance rate (derived, not measured) | the fleet lane can rent a 4060/3060-class pod on request |
| X-8 | a cheating prover on a GPU (partial labelling, the ex-post-facto graph of [BS25] section 4) | B4's theorem work defines the adversary first; B3 measured the honest prover only | B4, then this lane |
| X-9 | the trimmed-tree honest prover (keep only the upper Merkle levels, rebuild sibling subtrees at proof time) | not built; it raises instances in flight by at most about 2x (the tree is half of the state), which moves no row out of the trap | this lane if the panel asks |
## Consequences for each user tier
<<TIERS>>
## Commands
```
tools/mhpow/b3/build.sh # on the pod: cpu_ref, b3_gpu (B3P1), cpu_ref_b1, b3_gpu_b1 (B1)
tools/mhpow/b3/test_known_failed_b1.sh <b1-kat-dir> # the oracle chain and its known-failed case
tools/mhpow/b3/run_rows_b1.sh <card-label> <b1-kat-dir> # the B1 rows, writes /root/b3/out/<label>/
tools/mhpow/b3/test_known_failed.sh; tools/mhpow/b3/run_rows.sh <card-label> # the B3P1 control
cd docs/analysis/mhpow/b3/rows && python3 ../../../../../tools/mhpow/b3/parse_rows.py rtx5090-b1 rtx4090-b1
```

View file

@ -0,0 +1,5 @@
{"mode":"cpu_time","encoding":"B1","impl":"C port, portable BLAKE2b","n":20,"N":1048576,"k":64,"threads":1,"graph_s_single_thread":0.441,"label_s_mean":0.2553,"merkle_s_mean":0.2298,"prove_s_mean":0.000137,"verify_s_mean":0.000814,"wall_s":0.492,"labels_per_s_per_instance":4107296.4,"labels_per_s_all":2130498.7,"accepted":1}
{"mode":"cpu_time","encoding":"B1","impl":"C port, portable BLAKE2b","n":22,"N":4194304,"k":64,"threads":1,"graph_s_single_thread":1.767,"label_s_mean":1.0556,"merkle_s_mean":0.9120,"prove_s_mean":0.000147,"verify_s_mean":0.000896,"wall_s":1.987,"labels_per_s_per_instance":3973250.0,"labels_per_s_all":2110365.2,"accepted":1}
{"mode":"cpu_time","encoding":"B1","impl":"C port, portable BLAKE2b","n":24,"N":16777216,"k":64,"threads":1,"graph_s_single_thread":7.097,"label_s_mean":4.4080,"merkle_s_mean":3.6580,"prove_s_mean":0.000182,"verify_s_mean":0.000971,"wall_s":8.144,"labels_per_s_per_instance":3806095.3,"labels_per_s_all":2060189.3,"accepted":1}
{"mode":"cpu_time","encoding":"B1","impl":"C port, portable BLAKE2b","n":20,"N":1048576,"k":64,"threads":15,"graph_s_single_thread":0.440,"label_s_mean":0.2609,"merkle_s_mean":0.2324,"prove_s_mean":0.000138,"verify_s_mean":0.000833,"wall_s":0.567,"labels_per_s_per_instance":4018471.6,"labels_per_s_all":27757163.7,"accepted":15}
{"mode":"cpu_time","encoding":"B1","impl":"C port, portable BLAKE2b","n":22,"N":4194304,"k":64,"threads":15,"graph_s_single_thread":1.770,"label_s_mean":1.0989,"merkle_s_mean":0.9401,"prove_s_mean":0.000152,"verify_s_mean":0.000921,"wall_s":2.297,"labels_per_s_per_instance":3816752.7,"labels_per_s_all":27388023.6,"accepted":15}

View file

@ -0,0 +1 @@
{"idle_window_unix_ms":[1791538382000,1791538412000]}

View file

@ -0,0 +1,15 @@
{"kat":4,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":8,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":12,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":16,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":20,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
CASE b1_kat_port PASS
{"tag":"known-failed-b1","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":12,"N":4096,"inst_MiB":0.1,"B":96,"Bmax":69485,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":1,"passes":1,"graph_s":0.0024,"state_alloc_s":0.0004,"label_s_per_pass":0.006761,"labels_per_s":58155382.0,"labels_per_s_per_inst":605785.2,"ns_per_label_per_inst":1650.75,"merkle_s":0.000143,"prove_s":0.005608,"verify_all_s":0.0001,"accepted":0,"checked":4,"lab_bad_inst":4,"tree_bad_inst":4,"root_bad":4,"proof_bad":4,"b1_kat_instance0":0,"check_s":0.02,"oracle":"MISMATCH","label_window_unix_ms":[1791538838416,1791538838423],"free_gib":23.14,"per_inst_MiB":0.3,"proof_bytes_inst0":79981}
CASE known_failed_wrong_edge_b1 PASS (oracle fired)
{"tag":"known-finished-b1-n8","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":8,"N":256,"inst_MiB":0.0,"B":96,"Bmax":331078,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":1,"graph_s":0.0008,"state_alloc_s":0.0002,"label_s_per_pass":0.000553,"labels_per_s":44444446.2,"labels_per_s_per_inst":462963.0,"ns_per_label_per_inst":2160.00,"merkle_s":0.000084,"prove_s":0.004329,"verify_all_s":0.0021,"accepted":96,"checked":4,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":0.00,"oracle":"IDENTICAL","label_window_unix_ms":[1791538838737,1791538838738],"free_gib":23.14,"per_inst_MiB":0.1,"proof_bytes_inst0":55405}
CASE known_finished_b1_n8 PASS
{"tag":"known-finished-b1-n12","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":12,"N":4096,"inst_MiB":0.1,"B":96,"Bmax":69485,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":1,"graph_s":0.0024,"state_alloc_s":0.0004,"label_s_per_pass":0.007036,"labels_per_s":55887062.1,"labels_per_s_per_inst":582156.9,"ns_per_label_per_inst":1717.75,"merkle_s":0.000139,"prove_s":0.005734,"verify_all_s":0.0033,"accepted":96,"checked":4,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":0.03,"oracle":"IDENTICAL","label_window_unix_ms":[1791538839032,1791538839039],"free_gib":23.14,"per_inst_MiB":0.3,"proof_bytes_inst0":79981}
CASE known_finished_b1_n12 PASS
{"tag":"known-finished-b1-n16","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":16,"N":65536,"inst_MiB":2.0,"B":96,"Bmax":5530,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":1,"graph_s":0.0031,"state_alloc_s":0.0005,"label_s_per_pass":0.112919,"labels_per_s":55716740.3,"labels_per_s_per_inst":580382.7,"ns_per_label_per_inst":1723.00,"merkle_s":0.000802,"prove_s":0.007617,"verify_all_s":0.0048,"accepted":96,"checked":4,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":0.39,"oracle":"IDENTICAL","label_window_unix_ms":[1791538839361,1791538839474],"free_gib":23.14,"per_inst_MiB":4.1,"proof_bytes_inst0":104557}
CASE known_finished_b1_n16 PASS
RESULT test_known_failed_b1 PASS

View file

@ -0,0 +1,16 @@
label=rtx4090-b1
encoding=B1 (tools/mhpow/b1 at build-6 09:26Z: params.py d47b8ff5, drsample.py 4169a5fc, mtp.py c0feed31)
src_id_b1=d672d3839ebb45e5
2026-10-09T09:33:01Z
model name : AMD EPYC 7513 32-Core Processor
nproc=64 cgroup_cpus=15
16.10 16.82 23.72 16/1143 1605
name, driver_version, vbios_version, power.limit [W], power.default_limit [W], clocks.max.sm [MHz], clocks.max.memory [MHz], memory.total [MiB], pcie.link.gen.current, pcie.link.width.current
NVIDIA GeForce RTX 4090, 570.153.02, 95.02.47.00.01, 450.00 W, 450.00 W, 3105 MHz, 10501 MHz, 24564 MiB, 1, 16
Build cuda_12.8.r12.8/compiler.35583870_0
{"kat":4,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":8,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":12,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":16,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":20,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
16.16 16.36 20.89 16/1194 2187

View file

@ -0,0 +1,436 @@
2026/10/09 09:33:02.617, 15.49, 0, 0, 210, 405, 1, 35
2026/10/09 09:33:03.619, 15.50, 0, 0, 210, 405, 1, 35
2026/10/09 09:33:04.619, 15.55, 0, 0, 210, 405, 1, 35
2026/10/09 09:33:05.619, 15.59, 0, 0, 210, 405, 1, 35
2026/10/09 09:33:06.620, 15.61, 0, 0, 210, 405, 1, 35
2026/10/09 09:33:07.620, 15.47, 0, 0, 210, 405, 1, 35
2026/10/09 09:33:08.620, 15.48, 0, 0, 210, 405, 1, 35
2026/10/09 09:33:09.621, 15.51, 0, 0, 210, 405, 1, 35
2026/10/09 09:33:10.621, 15.50, 0, 0, 210, 405, 1, 35
2026/10/09 09:33:11.621, 15.47, 0, 0, 210, 405, 1, 35
2026/10/09 09:33:12.621, 15.46, 0, 0, 210, 405, 1, 35
2026/10/09 09:33:13.622, 15.52, 0, 0, 210, 405, 1, 35
2026/10/09 09:33:14.622, 15.57, 0, 0, 210, 405, 1, 35
2026/10/09 09:33:15.622, 15.66, 0, 0, 210, 405, 1, 35
2026/10/09 09:33:16.622, 15.73, 0, 0, 210, 405, 1, 35
2026/10/09 09:33:17.623, 15.68, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:18.623, 15.65, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:19.623, 15.68, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:20.624, 15.63, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:21.624, 15.58, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:22.624, 15.53, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:23.624, 15.48, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:24.625, 15.48, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:25.625, 15.51, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:26.625, 15.56, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:27.626, 15.60, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:28.626, 15.65, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:29.626, 15.65, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:30.626, 15.65, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:31.627, 15.53, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:32.627, 15.41, 0, 0, 210, 405, 1, 34
2026/10/09 09:33:33.631, 37.19, 3, 0, 2685, 10251, 23042, 37
2026/10/09 09:33:34.632, 83.16, 100, 1, 2685, 10251, 23042, 37
2026/10/09 09:33:35.632, 83.30, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:36.632, 83.58, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:37.632, 83.50, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:38.633, 83.81, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:39.633, 83.79, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:40.633, 83.76, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:41.633, 84.10, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:42.634, 84.00, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:43.634, 84.14, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:44.634, 84.02, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:45.635, 83.47, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:46.635, 83.28, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:47.635, 83.66, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:48.635, 83.61, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:49.636, 83.88, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:50.636, 84.24, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:51.636, 83.88, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:52.637, 84.41, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:33:53.637, 84.53, 100, 1, 2685, 10251, 23042, 39
2026/10/09 09:33:54.637, 92.60, 100, 13, 2670, 10251, 23042, 37
2026/10/09 09:33:55.637, 80.95, 0, 0, 2670, 10251, 23042, 37
2026/10/09 09:33:56.638, 62.18, 0, 0, 2520, 10251, 23042, 37
2026/10/09 09:33:57.638, 60.73, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:33:58.638, 59.44, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:33:59.639, 59.52, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:34:00.639, 59.48, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:34:01.639, 59.50, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:34:02.639, 59.61, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:34:03.640, 59.63, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:34:04.640, 59.60, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:34:05.640, 63.36, 62, 2, 2670, 10251, 23042, 37
2026/10/09 09:34:06.641, 68.08, 56, 2, 2670, 10251, 23042, 37
2026/10/09 09:34:07.641, 63.63, 0, 0, 2670, 10251, 23042, 37
2026/10/09 09:34:08.641, 62.12, 0, 0, 2670, 10251, 23042, 36
2026/10/09 09:34:09.642, 61.72, 0, 0, 2520, 10251, 22958, 37
2026/10/09 09:34:10.642, 78.89, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:11.642, 79.66, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:12.642, 79.58, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:13.643, 79.55, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:14.643, 79.65, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:15.643, 79.66, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:16.643, 79.67, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:17.644, 79.56, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:18.644, 79.62, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:19.644, 79.61, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:20.645, 79.69, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:21.645, 79.76, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:22.645, 79.82, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:23.645, 79.81, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:24.646, 79.80, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:25.646, 79.85, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:26.646, 79.82, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:27.646, 79.92, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:28.647, 79.84, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:29.647, 79.93, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:30.647, 79.94, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:31.647, 81.98, 100, 0, 2670, 10251, 22958, 38
2026/10/09 09:34:32.648, 80.50, 0, 0, 2670, 10251, 22958, 37
2026/10/09 09:34:33.648, 62.44, 0, 0, 2520, 10251, 22958, 37
2026/10/09 09:34:34.648, 60.96, 0, 0, 2520, 10251, 22958, 37
2026/10/09 09:34:35.649, 59.58, 0, 0, 2520, 10251, 22958, 36
2026/10/09 09:34:36.649, 59.60, 0, 0, 2520, 10251, 22958, 36
2026/10/09 09:34:37.649, 59.67, 0, 0, 2520, 10251, 22958, 36
2026/10/09 09:34:38.649, 59.67, 0, 0, 2520, 10251, 22958, 36
2026/10/09 09:34:39.650, 59.64, 0, 0, 2520, 10251, 22958, 36
2026/10/09 09:34:40.650, 59.60, 0, 0, 2520, 10251, 22958, 36
2026/10/09 09:34:41.650, 60.05, 0, 0, 2670, 10251, 22958, 36
2026/10/09 09:34:42.651, 68.85, 40, 1, 2670, 10251, 22958, 37
2026/10/09 09:34:43.651, 66.58, 60, 2, 2670, 10251, 22958, 37
2026/10/09 09:34:44.651, 64.24, 0, 0, 2670, 10251, 22958, 37
2026/10/09 09:34:45.651, 62.18, 0, 0, 2520, 10251, 22958, 36
2026/10/09 09:34:46.652, 60.74, 0, 0, 2520, 10251, 22958, 36
2026/10/09 09:34:47.652, 59.39, 0, 0, 2520, 10251, 22958, 36
2026/10/09 09:34:48.652, 59.55, 0, 0, 2520, 10251, 22958, 36
2026/10/09 09:34:49.653, 62.47, 0, 0, 2670, 10501, 396, 36
2026/10/09 09:34:50.653, 73.11, 100, 8, 2670, 10251, 22998, 37
2026/10/09 09:34:51.653, 78.77, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:34:52.653, 78.94, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:34:53.654, 79.01, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:34:54.654, 79.10, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:34:55.654, 79.11, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:34:56.654, 79.21, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:34:57.655, 79.02, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:34:58.655, 79.01, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:34:59.655, 78.91, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:00.655, 78.92, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:01.656, 78.79, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:02.656, 78.69, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:03.656, 78.83, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:04.657, 78.79, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:05.657, 78.93, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:06.657, 79.00, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:07.657, 78.88, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:08.658, 79.03, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:09.658, 79.09, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:10.658, 79.08, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:11.658, 79.00, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:12.659, 78.95, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:13.659, 79.00, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:14.659, 78.76, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:15.660, 78.92, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:16.660, 78.90, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:17.660, 78.85, 100, 0, 2670, 10251, 22998, 38
2026/10/09 09:35:18.660, 87.45, 100, 0, 2670, 10251, 22998, 39
2026/10/09 09:35:19.661, 80.44, 0, 0, 2670, 10251, 22998, 37
2026/10/09 09:35:20.661, 62.46, 0, 0, 2520, 10251, 22998, 37
2026/10/09 09:35:21.661, 60.95, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:22.662, 59.55, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:23.662, 59.69, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:24.662, 59.83, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:25.662, 59.73, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:26.663, 59.70, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:27.663, 59.75, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:28.663, 59.72, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:29.664, 62.96, 0, 0, 2670, 10251, 22998, 37
2026/10/09 09:35:30.664, 68.93, 62, 2, 2670, 10251, 22998, 37
2026/10/09 09:35:31.664, 64.30, 0, 0, 2670, 10251, 22998, 37
2026/10/09 09:35:32.664, 62.09, 0, 0, 2670, 10251, 22998, 37
2026/10/09 09:35:33.665, 60.82, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:34.665, 59.76, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:35.665, 59.80, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:36.666, 59.80, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:37.666, 59.81, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:38.666, 59.85, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:39.666, 59.84, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:40.667, 59.79, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:41.667, 59.71, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:42.667, 59.73, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:43.667, 59.77, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:44.668, 59.76, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:45.668, 59.73, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:46.668, 59.69, 0, 0, 2520, 10251, 22998, 36
2026/10/09 09:35:47.669, 59.69, 0, 0, 2520, 10251, 22998, 35
2026/10/09 09:35:48.669, 50.97, 0, 0, 405, 810, 22998, 34
2026/10/09 09:35:49.669, 30.95, 0, 0, 255, 405, 22998, 34
2026/10/09 09:35:50.670, 15.72, 100, 93, 2685, 10251, 22990, 35
2026/10/09 09:35:51.807, 68.38, 100, 1, 2685, 10251, 23042, 37
2026/10/09 09:35:52.807, 86.11, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:35:53.807, 85.17, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:35:54.808, 85.08, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:35:55.808, 85.80, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:35:56.808, 85.60, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:35:57.808, 86.32, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:35:58.809, 86.20, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:35:59.809, 85.78, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:36:00.809, 85.34, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:36:01.809, 85.44, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:36:02.810, 85.39, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:36:03.810, 85.52, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:36:04.810, 85.78, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:36:05.811, 86.13, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:36:06.811, 85.59, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:36:07.811, 85.72, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:36:08.811, 85.36, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:36:09.812, 86.00, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:36:10.812, 86.49, 100, 1, 2685, 10251, 23042, 38
2026/10/09 09:36:11.812, 102.11, 0, 0, 2670, 10251, 23042, 38
2026/10/09 09:36:12.812, 63.59, 0, 0, 2670, 10251, 11694, 38
2026/10/09 09:36:13.862, 78.72, 100, 1, 2670, 10251, 23042, 38
2026/10/09 09:36:14.862, 84.04, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:15.862, 83.85, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:16.863, 84.33, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:17.863, 84.18, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:18.863, 84.46, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:19.863, 84.51, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:20.864, 84.39, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:21.864, 84.30, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:22.864, 83.77, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:23.865, 83.79, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:24.865, 83.90, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:25.865, 83.96, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:26.865, 84.01, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:27.866, 83.60, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:28.866, 83.96, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:29.866, 83.98, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:30.867, 84.18, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:31.867, 83.92, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:32.867, 83.70, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:33.867, 84.18, 100, 1, 2670, 10251, 23042, 39
2026/10/09 09:36:34.868, 90.31, 0, 0, 2670, 10251, 23042, 38
2026/10/09 09:36:35.868, 80.69, 0, 0, 2670, 10251, 23042, 37
2026/10/09 09:36:36.868, 61.64, 0, 0, 2520, 10251, 23042, 37
2026/10/09 09:36:37.869, 60.53, 0, 0, 2520, 10251, 23042, 37
2026/10/09 09:36:38.869, 59.39, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:36:39.869, 59.29, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:36:40.869, 59.28, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:36:41.870, 59.16, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:36:42.870, 59.10, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:36:43.870, 59.07, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:36:44.870, 58.99, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:36:45.871, 62.34, 62, 2, 2670, 10251, 23042, 37
2026/10/09 09:36:46.871, 68.22, 0, 0, 2670, 10251, 23042, 37
2026/10/09 09:36:47.871, 63.63, 0, 0, 2670, 10251, 23042, 37
2026/10/09 09:36:48.872, 61.97, 0, 0, 2520, 10251, 23042, 36
2026/10/09 09:36:49.872, 61.51, 100, 7, 2670, 10251, 470, 37
2026/10/09 09:36:50.872, 77.79, 100, 0, 2670, 10251, 470, 38
2026/10/09 09:36:51.872, 77.81, 100, 0, 2670, 10251, 470, 38
2026/10/09 09:36:52.873, 78.14, 100, 0, 2670, 10251, 470, 38
2026/10/09 09:36:53.873, 78.41, 100, 0, 2670, 10251, 470, 38
2026/10/09 09:36:54.873, 78.34, 100, 0, 2670, 10251, 470, 38
2026/10/09 09:36:55.874, 78.04, 100, 0, 2670, 10251, 470, 38
2026/10/09 09:36:56.874, 78.09, 100, 0, 2670, 10251, 470, 38
2026/10/09 09:36:57.874, 78.23, 100, 0, 2670, 10251, 470, 38
2026/10/09 09:36:58.874, 78.21, 100, 0, 2670, 10251, 470, 38
2026/10/09 09:36:59.875, 78.22, 100, 0, 2670, 10251, 470, 38
2026/10/09 09:37:00.875, 66.56, 0, 0, 2670, 10501, 2458, 37
2026/10/09 09:37:01.875, 77.75, 100, 0, 2670, 10251, 2458, 38
2026/10/09 09:37:02.876, 78.77, 100, 0, 2670, 10251, 2458, 38
2026/10/09 09:37:03.876, 78.61, 100, 0, 2670, 10251, 2458, 38
2026/10/09 09:37:04.876, 78.39, 100, 0, 2670, 10251, 2458, 38
2026/10/09 09:37:05.876, 78.49, 100, 0, 2670, 10251, 2458, 38
2026/10/09 09:37:06.877, 78.56, 100, 0, 2670, 10251, 2458, 38
2026/10/09 09:37:07.877, 78.58, 100, 0, 2670, 10251, 2458, 38
2026/10/09 09:37:08.877, 78.61, 100, 0, 2670, 10251, 2458, 38
2026/10/09 09:37:09.878, 78.75, 100, 0, 2670, 10251, 2458, 38
2026/10/09 09:37:10.878, 78.58, 100, 0, 2670, 10251, 2458, 38
2026/10/09 09:37:11.878, 70.90, 0, 0, 2670, 10251, 2458, 37
2026/10/09 09:37:12.878, 63.85, 2, 0, 2670, 10251, 2458, 37
2026/10/09 09:37:13.879, 67.10, 3, 0, 2670, 10251, 8614, 37
2026/10/09 09:37:14.879, 79.87, 100, 1, 2670, 10251, 8614, 38
2026/10/09 09:37:15.879, 79.90, 100, 1, 2670, 10251, 8614, 38
2026/10/09 09:37:16.880, 79.87, 100, 1, 2670, 10251, 8614, 38
2026/10/09 09:37:17.880, 79.88, 100, 1, 2670, 10251, 8614, 38
2026/10/09 09:37:18.880, 79.94, 100, 1, 2670, 10251, 8614, 38
2026/10/09 09:37:19.880, 79.87, 100, 1, 2670, 10251, 8614, 38
2026/10/09 09:37:20.881, 79.89, 100, 1, 2670, 10251, 8614, 38
2026/10/09 09:37:21.881, 79.82, 100, 1, 2670, 10251, 8614, 38
2026/10/09 09:37:22.881, 79.80, 100, 1, 2670, 10251, 8614, 38
2026/10/09 09:37:23.881, 79.72, 100, 1, 2670, 10251, 8614, 38
2026/10/09 09:37:24.882, 72.69, 0, 0, 2670, 10251, 8614, 37
2026/10/09 09:37:25.882, 71.18, 0, 0, 2670, 10251, 8614, 37
2026/10/09 09:37:26.882, 62.23, 0, 0, 2520, 10251, 8614, 37
2026/10/09 09:37:27.883, 59.61, 0, 0, 2520, 10251, 8614, 36
2026/10/09 09:37:28.883, 62.49, 53, 2, 2670, 10251, 8614, 37
2026/10/09 09:37:29.883, 62.67, 0, 0, 2670, 10251, 23076, 37
2026/10/09 09:37:30.883, 317.79, 100, 53, 2580, 10251, 23076, 57
2026/10/09 09:37:31.884, 429.04, 100, 53, 2580, 10251, 23076, 62
2026/10/09 09:37:32.884, 428.51, 100, 53, 2550, 10251, 23076, 63
2026/10/09 09:37:33.884, 428.88, 100, 54, 2535, 10251, 23076, 63
2026/10/09 09:37:34.885, 429.42, 100, 54, 2520, 10251, 23076, 63
2026/10/09 09:37:35.885, 429.34, 100, 55, 2520, 10251, 23076, 63
2026/10/09 09:37:36.885, 429.24, 100, 56, 2505, 10251, 23076, 64
2026/10/09 09:37:37.885, 429.59, 100, 56, 2595, 10251, 23076, 62
2026/10/09 09:37:38.886, 428.81, 100, 56, 2595, 10251, 23076, 64
2026/10/09 09:37:39.886, 428.92, 100, 56, 2595, 10251, 23076, 67
2026/10/09 09:37:40.886, 429.18, 100, 56, 2640, 10251, 23076, 67
2026/10/09 09:37:41.886, 428.50, 100, 56, 2640, 10251, 23076, 66
2026/10/09 09:37:42.887, 429.47, 100, 54, 2595, 10251, 23076, 66
2026/10/09 09:37:43.887, 429.65, 100, 53, 2520, 10251, 23076, 66
2026/10/09 09:37:44.887, 430.74, 100, 56, 2505, 10251, 23076, 64
2026/10/09 09:37:45.887, 428.90, 100, 56, 2595, 10251, 23076, 66
2026/10/09 09:37:46.888, 430.20, 100, 55, 2595, 10251, 23076, 69
2026/10/09 09:37:47.888, 428.86, 100, 55, 2640, 10251, 23076, 68
2026/10/09 09:37:48.888, 430.01, 100, 56, 2640, 10251, 23076, 68
2026/10/09 09:37:49.889, 429.54, 100, 55, 2520, 10251, 23076, 68
2026/10/09 09:37:50.889, 191.16, 0, 0, 2655, 10251, 23076, 48
2026/10/09 09:37:51.889, 126.04, 0, 0, 2655, 10251, 23076, 46
2026/10/09 09:37:52.889, 64.80, 0, 0, 2520, 10251, 23076, 44
2026/10/09 09:37:53.890, 67.86, 0, 0, 2670, 10251, 23076, 44
2026/10/09 09:37:54.890, 67.35, 0, 0, 2670, 10251, 23076, 44
2026/10/09 09:37:55.890, 64.56, 0, 0, 2520, 10251, 23076, 43
2026/10/09 09:37:56.891, 62.27, 0, 0, 2520, 10251, 23076, 42
2026/10/09 09:37:57.891, 60.08, 0, 0, 2520, 10251, 23076, 42
2026/10/09 09:37:58.891, 60.03, 0, 0, 2520, 10251, 23076, 42
2026/10/09 09:37:59.891, 59.97, 0, 0, 2520, 10251, 23076, 42
2026/10/09 09:38:00.892, 59.90, 0, 0, 2520, 10251, 23076, 42
2026/10/09 09:38:01.892, 59.85, 0, 0, 2520, 10251, 23076, 41
2026/10/09 09:38:02.892, 59.83, 0, 0, 2520, 10251, 23076, 41
2026/10/09 09:38:03.893, 59.88, 0, 0, 2520, 10251, 23076, 41
2026/10/09 09:38:04.893, 63.89, 61, 2, 2670, 10251, 23076, 41
2026/10/09 09:38:05.893, 67.56, 0, 0, 2670, 10251, 23076, 41
2026/10/09 09:38:06.894, 65.65, 0, 0, 2670, 10251, 23076, 41
2026/10/09 09:38:07.894, 73.98, 59, 4, 2670, 10251, 23070, 41
2026/10/09 09:38:08.894, 335.76, 100, 41, 2640, 10251, 23070, 57
2026/10/09 09:38:09.894, 357.17, 100, 42, 2640, 10251, 23070, 64
2026/10/09 09:38:10.895, 355.14, 100, 40, 2640, 10251, 23070, 61
2026/10/09 09:38:11.895, 355.15, 100, 41, 2640, 10251, 23070, 66
2026/10/09 09:38:12.895, 358.79, 100, 42, 2640, 10251, 23070, 60
2026/10/09 09:38:13.895, 355.33, 100, 41, 2640, 10251, 23070, 66
2026/10/09 09:38:14.896, 360.33, 100, 42, 2640, 10251, 23070, 64
2026/10/09 09:38:15.896, 355.92, 100, 41, 2640, 10251, 23070, 64
2026/10/09 09:38:16.896, 360.98, 100, 42, 2595, 10251, 23070, 65
2026/10/09 09:38:17.897, 356.60, 100, 40, 2640, 10251, 23070, 62
2026/10/09 09:38:18.897, 358.17, 100, 42, 2640, 10251, 23070, 66
2026/10/09 09:38:19.897, 355.51, 100, 40, 2655, 10251, 23070, 63
2026/10/09 09:38:20.897, 359.92, 100, 42, 2595, 10251, 23070, 66
2026/10/09 09:38:21.898, 356.18, 100, 41, 2640, 10251, 23070, 63
2026/10/09 09:38:22.898, 358.86, 100, 42, 2610, 10251, 23070, 67
2026/10/09 09:38:23.898, 358.18, 100, 41, 2640, 10251, 23070, 63
2026/10/09 09:38:24.899, 359.50, 100, 42, 2640, 10251, 23070, 67
2026/10/09 09:38:25.899, 360.27, 100, 41, 2640, 10251, 23070, 63
2026/10/09 09:38:26.899, 357.67, 100, 42, 2640, 10251, 23070, 68
2026/10/09 09:38:27.899, 359.83, 100, 41, 2640, 10251, 23070, 63
2026/10/09 09:38:28.900, 159.80, 0, 0, 2655, 10251, 23070, 48
2026/10/09 09:38:29.900, 68.79, 0, 0, 2655, 10251, 23070, 46
2026/10/09 09:38:30.900, 68.02, 0, 0, 2520, 10251, 23070, 46
2026/10/09 09:38:31.900, 60.80, 0, 0, 2520, 10251, 23070, 45
2026/10/09 09:38:32.901, 60.70, 0, 0, 2520, 10251, 23070, 45
2026/10/09 09:38:33.901, 60.59, 0, 0, 2520, 10251, 23070, 45
2026/10/09 09:38:34.901, 60.47, 0, 0, 2520, 10251, 23070, 44
2026/10/09 09:38:35.902, 60.35, 0, 0, 2520, 10251, 23070, 44
2026/10/09 09:38:36.902, 60.24, 0, 0, 2520, 10251, 23070, 44
2026/10/09 09:38:37.902, 60.04, 0, 0, 2520, 10251, 23070, 44
2026/10/09 09:38:38.902, 59.89, 0, 0, 2520, 10251, 23070, 43
2026/10/09 09:38:39.903, 59.87, 0, 0, 2520, 10251, 23070, 43
2026/10/09 09:38:40.903, 63.86, 42, 1, 2670, 10251, 23070, 44
2026/10/09 09:38:41.903, 69.32, 53, 2, 2670, 10251, 23070, 43
2026/10/09 09:38:42.903, 65.95, 0, 0, 2670, 10251, 23070, 43
2026/10/09 09:38:43.904, 68.73, 0, 0, 2670, 10251, 23072, 47
2026/10/09 09:38:44.904, 191.23, 100, 20, 2655, 10251, 23072, 52
2026/10/09 09:38:45.904, 216.68, 100, 20, 2655, 10251, 23072, 53
2026/10/09 09:38:46.905, 216.62, 100, 20, 2655, 10251, 23072, 53
2026/10/09 09:38:47.905, 216.74, 100, 20, 2655, 10251, 23072, 53
2026/10/09 09:38:48.905, 216.67, 100, 20, 2655, 10251, 23072, 54
2026/10/09 09:38:49.905, 216.90, 100, 20, 2655, 10251, 23072, 54
2026/10/09 09:38:50.906, 216.88, 100, 20, 2655, 10251, 23072, 54
2026/10/09 09:38:51.906, 217.08, 100, 20, 2655, 10251, 23072, 54
2026/10/09 09:38:52.906, 216.88, 100, 20, 2655, 10251, 23072, 54
2026/10/09 09:38:53.906, 216.93, 100, 20, 2655, 10251, 23072, 54
2026/10/09 09:38:54.907, 216.97, 100, 20, 2655, 10251, 23072, 54
2026/10/09 09:38:55.907, 216.85, 100, 20, 2655, 10251, 23072, 54
2026/10/09 09:38:56.907, 216.95, 100, 20, 2655, 10251, 23072, 54
2026/10/09 09:38:57.908, 217.20, 100, 20, 2655, 10251, 23072, 54
2026/10/09 09:38:58.908, 217.17, 100, 20, 2655, 10251, 23072, 54
2026/10/09 09:38:59.908, 217.41, 100, 20, 2655, 10251, 23072, 54
2026/10/09 09:39:00.908, 217.46, 100, 20, 2655, 10251, 23072, 55
2026/10/09 09:39:01.909, 217.33, 100, 20, 2655, 10251, 23072, 55
2026/10/09 09:39:02.909, 217.41, 100, 20, 2655, 10251, 23072, 55
2026/10/09 09:39:03.909, 217.36, 100, 20, 2655, 10251, 23072, 51
2026/10/09 09:39:04.910, 111.20, 0, 0, 2655, 10251, 23072, 46
2026/10/09 09:39:05.910, 66.92, 0, 0, 2670, 10251, 23072, 45
2026/10/09 09:39:06.910, 63.31, 0, 0, 2520, 10251, 23072, 44
2026/10/09 09:39:07.910, 61.49, 0, 0, 2520, 10251, 23072, 44
2026/10/09 09:39:08.911, 59.99, 0, 0, 2520, 10251, 23072, 44
2026/10/09 09:39:09.911, 59.96, 0, 0, 2520, 10251, 23072, 44
2026/10/09 09:39:10.911, 59.94, 0, 0, 2520, 10251, 23072, 43
2026/10/09 09:39:11.912, 59.98, 0, 0, 2520, 10251, 23072, 43
2026/10/09 09:39:12.912, 60.03, 0, 0, 2520, 10251, 23072, 43
2026/10/09 09:39:13.912, 60.06, 0, 0, 2520, 10251, 23072, 43
2026/10/09 09:39:14.912, 60.01, 0, 0, 2520, 10251, 23072, 43
2026/10/09 09:39:15.913, 64.53, 62, 2, 2670, 10251, 23072, 43
2026/10/09 09:39:16.913, 69.60, 62, 2, 2670, 10251, 23072, 43
2026/10/09 09:39:17.913, 66.39, 0, 0, 2670, 10251, 23072, 43
2026/10/09 09:39:18.914, 68.84, 0, 0, 2670, 10251, 23070, 45
2026/10/09 09:39:19.914, 110.65, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:20.914, 117.71, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:21.914, 117.72, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:22.915, 118.11, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:23.915, 117.73, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:24.915, 117.53, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:25.915, 117.31, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:26.916, 117.38, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:27.916, 117.41, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:28.916, 117.23, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:29.917, 117.48, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:30.917, 117.53, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:31.917, 117.24, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:32.917, 117.21, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:33.918, 117.30, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:34.918, 116.64, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:35.918, 117.09, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:36.919, 116.96, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:37.919, 116.68, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:38.919, 117.21, 100, 5, 2670, 10251, 23070, 46
2026/10/09 09:39:39.919, 88.35, 80, 48, 2670, 10251, 23070, 43
2026/10/09 09:39:40.920, 83.63, 0, 0, 2670, 10251, 23070, 43
2026/10/09 09:39:41.920, 64.47, 0, 0, 2520, 10251, 23070, 42
2026/10/09 09:39:42.920, 62.11, 0, 0, 2520, 10251, 23070, 42
2026/10/09 09:39:43.920, 59.90, 0, 0, 2520, 10251, 23070, 42
2026/10/09 09:39:44.921, 59.92, 0, 0, 2520, 10251, 23070, 42
2026/10/09 09:39:45.921, 59.90, 0, 0, 2520, 10251, 23070, 41
2026/10/09 09:39:46.921, 59.89, 0, 0, 2520, 10251, 23070, 41
2026/10/09 09:39:47.922, 59.88, 0, 0, 2520, 10251, 23070, 41
2026/10/09 09:39:48.922, 59.89, 0, 0, 2520, 10251, 23070, 41
2026/10/09 09:39:49.922, 59.90, 0, 0, 2520, 10251, 23070, 41
2026/10/09 09:39:50.922, 67.59, 61, 2, 2670, 10251, 23070, 42
2026/10/09 09:39:51.923, 68.33, 0, 0, 2670, 10251, 23070, 42
2026/10/09 09:39:52.923, 65.26, 0, 0, 2670, 10251, 23070, 41
2026/10/09 09:39:53.923, 66.17, 32, 2, 2670, 10501, 1, 41
2026/10/09 09:39:54.924, 66.28, 0, 0, 2670, 10501, 1, 41
2026/10/09 09:39:55.924, 58.40, 0, 0, 2670, 10501, 1, 41
2026/10/09 09:39:56.924, 42.85, 0, 0, 585, 5001, 1, 40
2026/10/09 09:39:57.924, 25.26, 0, 0, 360, 810, 1, 39
2026/10/09 09:39:58.925, 20.43, 0, 0, 240, 810, 1, 39
2026/10/09 09:39:59.925, 17.04, 0, 0, 210, 405, 1, 39
2026/10/09 09:40:00.925, 15.77, 0, 0, 210, 405, 1, 39
2026/10/09 09:40:01.925, 15.63, 0, 0, 210, 405, 1, 38
2026/10/09 09:40:02.926, 15.58, 0, 0, 210, 405, 1, 38
2026/10/09 09:40:03.926, 15.58, 0, 0, 210, 405, 1, 38
2026/10/09 09:40:04.926, 15.50, 0, 0, 210, 405, 1, 38
2026/10/09 09:40:05.927, 15.49, 0, 0, 210, 405, 1, 38
2026/10/09 09:40:06.927, 15.58, 0, 0, 210, 405, 1, 38
2026/10/09 09:40:07.927, 15.61, 0, 0, 210, 405, 1, 38
2026/10/09 09:40:08.927, 15.59, 0, 0, 210, 405, 1, 38
2026/10/09 09:40:09.928, 15.47, 0, 0, 210, 405, 1, 38
2026/10/09 09:40:10.928, 15.43, 0, 0, 210, 405, 1, 37
2026/10/09 09:40:11.928, 15.53, 0, 0, 210, 405, 1, 37
2026/10/09 09:40:12.928, 15.46, 0, 0, 210, 405, 1, 37
2026/10/09 09:40:13.929, 15.35, 0, 0, 210, 405, 1, 37
2026/10/09 09:40:14.929, 15.42, 0, 0, 210, 405, 1, 37
2026/10/09 09:40:15.929, 15.48, 0, 0, 210, 405, 1, 37
2026/10/09 09:40:16.930, 15.55, 0, 0, 210, 405, 1, 37
2026/10/09 09:40:17.930, 15.56, 0, 0, 210, 405, 1, 37
1 2026/10/09 09:33:02.617 15.49 0 0 210 405 1 35
2 2026/10/09 09:33:03.619 15.50 0 0 210 405 1 35
3 2026/10/09 09:33:04.619 15.55 0 0 210 405 1 35
4 2026/10/09 09:33:05.619 15.59 0 0 210 405 1 35
5 2026/10/09 09:33:06.620 15.61 0 0 210 405 1 35
6 2026/10/09 09:33:07.620 15.47 0 0 210 405 1 35
7 2026/10/09 09:33:08.620 15.48 0 0 210 405 1 35
8 2026/10/09 09:33:09.621 15.51 0 0 210 405 1 35
9 2026/10/09 09:33:10.621 15.50 0 0 210 405 1 35
10 2026/10/09 09:33:11.621 15.47 0 0 210 405 1 35
11 2026/10/09 09:33:12.621 15.46 0 0 210 405 1 35
12 2026/10/09 09:33:13.622 15.52 0 0 210 405 1 35
13 2026/10/09 09:33:14.622 15.57 0 0 210 405 1 35
14 2026/10/09 09:33:15.622 15.66 0 0 210 405 1 35
15 2026/10/09 09:33:16.622 15.73 0 0 210 405 1 35
16 2026/10/09 09:33:17.623 15.68 0 0 210 405 1 34
17 2026/10/09 09:33:18.623 15.65 0 0 210 405 1 34
18 2026/10/09 09:33:19.623 15.68 0 0 210 405 1 34
19 2026/10/09 09:33:20.624 15.63 0 0 210 405 1 34
20 2026/10/09 09:33:21.624 15.58 0 0 210 405 1 34
21 2026/10/09 09:33:22.624 15.53 0 0 210 405 1 34
22 2026/10/09 09:33:23.624 15.48 0 0 210 405 1 34
23 2026/10/09 09:33:24.625 15.48 0 0 210 405 1 34
24 2026/10/09 09:33:25.625 15.51 0 0 210 405 1 34
25 2026/10/09 09:33:26.625 15.56 0 0 210 405 1 34
26 2026/10/09 09:33:27.626 15.60 0 0 210 405 1 34
27 2026/10/09 09:33:28.626 15.65 0 0 210 405 1 34
28 2026/10/09 09:33:29.626 15.65 0 0 210 405 1 34
29 2026/10/09 09:33:30.626 15.65 0 0 210 405 1 34
30 2026/10/09 09:33:31.627 15.53 0 0 210 405 1 34
31 2026/10/09 09:33:32.627 15.41 0 0 210 405 1 34
32 2026/10/09 09:33:33.631 37.19 3 0 2685 10251 23042 37
33 2026/10/09 09:33:34.632 83.16 100 1 2685 10251 23042 37
34 2026/10/09 09:33:35.632 83.30 100 1 2685 10251 23042 38
35 2026/10/09 09:33:36.632 83.58 100 1 2685 10251 23042 38
36 2026/10/09 09:33:37.632 83.50 100 1 2685 10251 23042 38
37 2026/10/09 09:33:38.633 83.81 100 1 2685 10251 23042 38
38 2026/10/09 09:33:39.633 83.79 100 1 2685 10251 23042 38
39 2026/10/09 09:33:40.633 83.76 100 1 2685 10251 23042 38
40 2026/10/09 09:33:41.633 84.10 100 1 2685 10251 23042 38
41 2026/10/09 09:33:42.634 84.00 100 1 2685 10251 23042 38
42 2026/10/09 09:33:43.634 84.14 100 1 2685 10251 23042 38
43 2026/10/09 09:33:44.634 84.02 100 1 2685 10251 23042 38
44 2026/10/09 09:33:45.635 83.47 100 1 2685 10251 23042 38
45 2026/10/09 09:33:46.635 83.28 100 1 2685 10251 23042 38
46 2026/10/09 09:33:47.635 83.66 100 1 2685 10251 23042 38
47 2026/10/09 09:33:48.635 83.61 100 1 2685 10251 23042 38
48 2026/10/09 09:33:49.636 83.88 100 1 2685 10251 23042 38
49 2026/10/09 09:33:50.636 84.24 100 1 2685 10251 23042 38
50 2026/10/09 09:33:51.636 83.88 100 1 2685 10251 23042 38
51 2026/10/09 09:33:52.637 84.41 100 1 2685 10251 23042 38
52 2026/10/09 09:33:53.637 84.53 100 1 2685 10251 23042 39
53 2026/10/09 09:33:54.637 92.60 100 13 2670 10251 23042 37
54 2026/10/09 09:33:55.637 80.95 0 0 2670 10251 23042 37
55 2026/10/09 09:33:56.638 62.18 0 0 2520 10251 23042 37
56 2026/10/09 09:33:57.638 60.73 0 0 2520 10251 23042 36
57 2026/10/09 09:33:58.638 59.44 0 0 2520 10251 23042 36
58 2026/10/09 09:33:59.639 59.52 0 0 2520 10251 23042 36
59 2026/10/09 09:34:00.639 59.48 0 0 2520 10251 23042 36
60 2026/10/09 09:34:01.639 59.50 0 0 2520 10251 23042 36
61 2026/10/09 09:34:02.639 59.61 0 0 2520 10251 23042 36
62 2026/10/09 09:34:03.640 59.63 0 0 2520 10251 23042 36
63 2026/10/09 09:34:04.640 59.60 0 0 2520 10251 23042 36
64 2026/10/09 09:34:05.640 63.36 62 2 2670 10251 23042 37
65 2026/10/09 09:34:06.641 68.08 56 2 2670 10251 23042 37
66 2026/10/09 09:34:07.641 63.63 0 0 2670 10251 23042 37
67 2026/10/09 09:34:08.641 62.12 0 0 2670 10251 23042 36
68 2026/10/09 09:34:09.642 61.72 0 0 2520 10251 22958 37
69 2026/10/09 09:34:10.642 78.89 100 0 2670 10251 22958 38
70 2026/10/09 09:34:11.642 79.66 100 0 2670 10251 22958 38
71 2026/10/09 09:34:12.642 79.58 100 0 2670 10251 22958 38
72 2026/10/09 09:34:13.643 79.55 100 0 2670 10251 22958 38
73 2026/10/09 09:34:14.643 79.65 100 0 2670 10251 22958 38
74 2026/10/09 09:34:15.643 79.66 100 0 2670 10251 22958 38
75 2026/10/09 09:34:16.643 79.67 100 0 2670 10251 22958 38
76 2026/10/09 09:34:17.644 79.56 100 0 2670 10251 22958 38
77 2026/10/09 09:34:18.644 79.62 100 0 2670 10251 22958 38
78 2026/10/09 09:34:19.644 79.61 100 0 2670 10251 22958 38
79 2026/10/09 09:34:20.645 79.69 100 0 2670 10251 22958 38
80 2026/10/09 09:34:21.645 79.76 100 0 2670 10251 22958 38
81 2026/10/09 09:34:22.645 79.82 100 0 2670 10251 22958 38
82 2026/10/09 09:34:23.645 79.81 100 0 2670 10251 22958 38
83 2026/10/09 09:34:24.646 79.80 100 0 2670 10251 22958 38
84 2026/10/09 09:34:25.646 79.85 100 0 2670 10251 22958 38
85 2026/10/09 09:34:26.646 79.82 100 0 2670 10251 22958 38
86 2026/10/09 09:34:27.646 79.92 100 0 2670 10251 22958 38
87 2026/10/09 09:34:28.647 79.84 100 0 2670 10251 22958 38
88 2026/10/09 09:34:29.647 79.93 100 0 2670 10251 22958 38
89 2026/10/09 09:34:30.647 79.94 100 0 2670 10251 22958 38
90 2026/10/09 09:34:31.647 81.98 100 0 2670 10251 22958 38
91 2026/10/09 09:34:32.648 80.50 0 0 2670 10251 22958 37
92 2026/10/09 09:34:33.648 62.44 0 0 2520 10251 22958 37
93 2026/10/09 09:34:34.648 60.96 0 0 2520 10251 22958 37
94 2026/10/09 09:34:35.649 59.58 0 0 2520 10251 22958 36
95 2026/10/09 09:34:36.649 59.60 0 0 2520 10251 22958 36
96 2026/10/09 09:34:37.649 59.67 0 0 2520 10251 22958 36
97 2026/10/09 09:34:38.649 59.67 0 0 2520 10251 22958 36
98 2026/10/09 09:34:39.650 59.64 0 0 2520 10251 22958 36
99 2026/10/09 09:34:40.650 59.60 0 0 2520 10251 22958 36
100 2026/10/09 09:34:41.650 60.05 0 0 2670 10251 22958 36
101 2026/10/09 09:34:42.651 68.85 40 1 2670 10251 22958 37
102 2026/10/09 09:34:43.651 66.58 60 2 2670 10251 22958 37
103 2026/10/09 09:34:44.651 64.24 0 0 2670 10251 22958 37
104 2026/10/09 09:34:45.651 62.18 0 0 2520 10251 22958 36
105 2026/10/09 09:34:46.652 60.74 0 0 2520 10251 22958 36
106 2026/10/09 09:34:47.652 59.39 0 0 2520 10251 22958 36
107 2026/10/09 09:34:48.652 59.55 0 0 2520 10251 22958 36
108 2026/10/09 09:34:49.653 62.47 0 0 2670 10501 396 36
109 2026/10/09 09:34:50.653 73.11 100 8 2670 10251 22998 37
110 2026/10/09 09:34:51.653 78.77 100 0 2670 10251 22998 38
111 2026/10/09 09:34:52.653 78.94 100 0 2670 10251 22998 38
112 2026/10/09 09:34:53.654 79.01 100 0 2670 10251 22998 38
113 2026/10/09 09:34:54.654 79.10 100 0 2670 10251 22998 38
114 2026/10/09 09:34:55.654 79.11 100 0 2670 10251 22998 38
115 2026/10/09 09:34:56.654 79.21 100 0 2670 10251 22998 38
116 2026/10/09 09:34:57.655 79.02 100 0 2670 10251 22998 38
117 2026/10/09 09:34:58.655 79.01 100 0 2670 10251 22998 38
118 2026/10/09 09:34:59.655 78.91 100 0 2670 10251 22998 38
119 2026/10/09 09:35:00.655 78.92 100 0 2670 10251 22998 38
120 2026/10/09 09:35:01.656 78.79 100 0 2670 10251 22998 38
121 2026/10/09 09:35:02.656 78.69 100 0 2670 10251 22998 38
122 2026/10/09 09:35:03.656 78.83 100 0 2670 10251 22998 38
123 2026/10/09 09:35:04.657 78.79 100 0 2670 10251 22998 38
124 2026/10/09 09:35:05.657 78.93 100 0 2670 10251 22998 38
125 2026/10/09 09:35:06.657 79.00 100 0 2670 10251 22998 38
126 2026/10/09 09:35:07.657 78.88 100 0 2670 10251 22998 38
127 2026/10/09 09:35:08.658 79.03 100 0 2670 10251 22998 38
128 2026/10/09 09:35:09.658 79.09 100 0 2670 10251 22998 38
129 2026/10/09 09:35:10.658 79.08 100 0 2670 10251 22998 38
130 2026/10/09 09:35:11.658 79.00 100 0 2670 10251 22998 38
131 2026/10/09 09:35:12.659 78.95 100 0 2670 10251 22998 38
132 2026/10/09 09:35:13.659 79.00 100 0 2670 10251 22998 38
133 2026/10/09 09:35:14.659 78.76 100 0 2670 10251 22998 38
134 2026/10/09 09:35:15.660 78.92 100 0 2670 10251 22998 38
135 2026/10/09 09:35:16.660 78.90 100 0 2670 10251 22998 38
136 2026/10/09 09:35:17.660 78.85 100 0 2670 10251 22998 38
137 2026/10/09 09:35:18.660 87.45 100 0 2670 10251 22998 39
138 2026/10/09 09:35:19.661 80.44 0 0 2670 10251 22998 37
139 2026/10/09 09:35:20.661 62.46 0 0 2520 10251 22998 37
140 2026/10/09 09:35:21.661 60.95 0 0 2520 10251 22998 36
141 2026/10/09 09:35:22.662 59.55 0 0 2520 10251 22998 36
142 2026/10/09 09:35:23.662 59.69 0 0 2520 10251 22998 36
143 2026/10/09 09:35:24.662 59.83 0 0 2520 10251 22998 36
144 2026/10/09 09:35:25.662 59.73 0 0 2520 10251 22998 36
145 2026/10/09 09:35:26.663 59.70 0 0 2520 10251 22998 36
146 2026/10/09 09:35:27.663 59.75 0 0 2520 10251 22998 36
147 2026/10/09 09:35:28.663 59.72 0 0 2520 10251 22998 36
148 2026/10/09 09:35:29.664 62.96 0 0 2670 10251 22998 37
149 2026/10/09 09:35:30.664 68.93 62 2 2670 10251 22998 37
150 2026/10/09 09:35:31.664 64.30 0 0 2670 10251 22998 37
151 2026/10/09 09:35:32.664 62.09 0 0 2670 10251 22998 37
152 2026/10/09 09:35:33.665 60.82 0 0 2520 10251 22998 36
153 2026/10/09 09:35:34.665 59.76 0 0 2520 10251 22998 36
154 2026/10/09 09:35:35.665 59.80 0 0 2520 10251 22998 36
155 2026/10/09 09:35:36.666 59.80 0 0 2520 10251 22998 36
156 2026/10/09 09:35:37.666 59.81 0 0 2520 10251 22998 36
157 2026/10/09 09:35:38.666 59.85 0 0 2520 10251 22998 36
158 2026/10/09 09:35:39.666 59.84 0 0 2520 10251 22998 36
159 2026/10/09 09:35:40.667 59.79 0 0 2520 10251 22998 36
160 2026/10/09 09:35:41.667 59.71 0 0 2520 10251 22998 36
161 2026/10/09 09:35:42.667 59.73 0 0 2520 10251 22998 36
162 2026/10/09 09:35:43.667 59.77 0 0 2520 10251 22998 36
163 2026/10/09 09:35:44.668 59.76 0 0 2520 10251 22998 36
164 2026/10/09 09:35:45.668 59.73 0 0 2520 10251 22998 36
165 2026/10/09 09:35:46.668 59.69 0 0 2520 10251 22998 36
166 2026/10/09 09:35:47.669 59.69 0 0 2520 10251 22998 35
167 2026/10/09 09:35:48.669 50.97 0 0 405 810 22998 34
168 2026/10/09 09:35:49.669 30.95 0 0 255 405 22998 34
169 2026/10/09 09:35:50.670 15.72 100 93 2685 10251 22990 35
170 2026/10/09 09:35:51.807 68.38 100 1 2685 10251 23042 37
171 2026/10/09 09:35:52.807 86.11 100 1 2685 10251 23042 38
172 2026/10/09 09:35:53.807 85.17 100 1 2685 10251 23042 38
173 2026/10/09 09:35:54.808 85.08 100 1 2685 10251 23042 38
174 2026/10/09 09:35:55.808 85.80 100 1 2685 10251 23042 38
175 2026/10/09 09:35:56.808 85.60 100 1 2685 10251 23042 38
176 2026/10/09 09:35:57.808 86.32 100 1 2685 10251 23042 38
177 2026/10/09 09:35:58.809 86.20 100 1 2685 10251 23042 38
178 2026/10/09 09:35:59.809 85.78 100 1 2685 10251 23042 38
179 2026/10/09 09:36:00.809 85.34 100 1 2685 10251 23042 38
180 2026/10/09 09:36:01.809 85.44 100 1 2685 10251 23042 38
181 2026/10/09 09:36:02.810 85.39 100 1 2685 10251 23042 38
182 2026/10/09 09:36:03.810 85.52 100 1 2685 10251 23042 38
183 2026/10/09 09:36:04.810 85.78 100 1 2685 10251 23042 38
184 2026/10/09 09:36:05.811 86.13 100 1 2685 10251 23042 38
185 2026/10/09 09:36:06.811 85.59 100 1 2685 10251 23042 38
186 2026/10/09 09:36:07.811 85.72 100 1 2685 10251 23042 38
187 2026/10/09 09:36:08.811 85.36 100 1 2685 10251 23042 38
188 2026/10/09 09:36:09.812 86.00 100 1 2685 10251 23042 38
189 2026/10/09 09:36:10.812 86.49 100 1 2685 10251 23042 38
190 2026/10/09 09:36:11.812 102.11 0 0 2670 10251 23042 38
191 2026/10/09 09:36:12.812 63.59 0 0 2670 10251 11694 38
192 2026/10/09 09:36:13.862 78.72 100 1 2670 10251 23042 38
193 2026/10/09 09:36:14.862 84.04 100 1 2670 10251 23042 39
194 2026/10/09 09:36:15.862 83.85 100 1 2670 10251 23042 39
195 2026/10/09 09:36:16.863 84.33 100 1 2670 10251 23042 39
196 2026/10/09 09:36:17.863 84.18 100 1 2670 10251 23042 39
197 2026/10/09 09:36:18.863 84.46 100 1 2670 10251 23042 39
198 2026/10/09 09:36:19.863 84.51 100 1 2670 10251 23042 39
199 2026/10/09 09:36:20.864 84.39 100 1 2670 10251 23042 39
200 2026/10/09 09:36:21.864 84.30 100 1 2670 10251 23042 39
201 2026/10/09 09:36:22.864 83.77 100 1 2670 10251 23042 39
202 2026/10/09 09:36:23.865 83.79 100 1 2670 10251 23042 39
203 2026/10/09 09:36:24.865 83.90 100 1 2670 10251 23042 39
204 2026/10/09 09:36:25.865 83.96 100 1 2670 10251 23042 39
205 2026/10/09 09:36:26.865 84.01 100 1 2670 10251 23042 39
206 2026/10/09 09:36:27.866 83.60 100 1 2670 10251 23042 39
207 2026/10/09 09:36:28.866 83.96 100 1 2670 10251 23042 39
208 2026/10/09 09:36:29.866 83.98 100 1 2670 10251 23042 39
209 2026/10/09 09:36:30.867 84.18 100 1 2670 10251 23042 39
210 2026/10/09 09:36:31.867 83.92 100 1 2670 10251 23042 39
211 2026/10/09 09:36:32.867 83.70 100 1 2670 10251 23042 39
212 2026/10/09 09:36:33.867 84.18 100 1 2670 10251 23042 39
213 2026/10/09 09:36:34.868 90.31 0 0 2670 10251 23042 38
214 2026/10/09 09:36:35.868 80.69 0 0 2670 10251 23042 37
215 2026/10/09 09:36:36.868 61.64 0 0 2520 10251 23042 37
216 2026/10/09 09:36:37.869 60.53 0 0 2520 10251 23042 37
217 2026/10/09 09:36:38.869 59.39 0 0 2520 10251 23042 36
218 2026/10/09 09:36:39.869 59.29 0 0 2520 10251 23042 36
219 2026/10/09 09:36:40.869 59.28 0 0 2520 10251 23042 36
220 2026/10/09 09:36:41.870 59.16 0 0 2520 10251 23042 36
221 2026/10/09 09:36:42.870 59.10 0 0 2520 10251 23042 36
222 2026/10/09 09:36:43.870 59.07 0 0 2520 10251 23042 36
223 2026/10/09 09:36:44.870 58.99 0 0 2520 10251 23042 36
224 2026/10/09 09:36:45.871 62.34 62 2 2670 10251 23042 37
225 2026/10/09 09:36:46.871 68.22 0 0 2670 10251 23042 37
226 2026/10/09 09:36:47.871 63.63 0 0 2670 10251 23042 37
227 2026/10/09 09:36:48.872 61.97 0 0 2520 10251 23042 36
228 2026/10/09 09:36:49.872 61.51 100 7 2670 10251 470 37
229 2026/10/09 09:36:50.872 77.79 100 0 2670 10251 470 38
230 2026/10/09 09:36:51.872 77.81 100 0 2670 10251 470 38
231 2026/10/09 09:36:52.873 78.14 100 0 2670 10251 470 38
232 2026/10/09 09:36:53.873 78.41 100 0 2670 10251 470 38
233 2026/10/09 09:36:54.873 78.34 100 0 2670 10251 470 38
234 2026/10/09 09:36:55.874 78.04 100 0 2670 10251 470 38
235 2026/10/09 09:36:56.874 78.09 100 0 2670 10251 470 38
236 2026/10/09 09:36:57.874 78.23 100 0 2670 10251 470 38
237 2026/10/09 09:36:58.874 78.21 100 0 2670 10251 470 38
238 2026/10/09 09:36:59.875 78.22 100 0 2670 10251 470 38
239 2026/10/09 09:37:00.875 66.56 0 0 2670 10501 2458 37
240 2026/10/09 09:37:01.875 77.75 100 0 2670 10251 2458 38
241 2026/10/09 09:37:02.876 78.77 100 0 2670 10251 2458 38
242 2026/10/09 09:37:03.876 78.61 100 0 2670 10251 2458 38
243 2026/10/09 09:37:04.876 78.39 100 0 2670 10251 2458 38
244 2026/10/09 09:37:05.876 78.49 100 0 2670 10251 2458 38
245 2026/10/09 09:37:06.877 78.56 100 0 2670 10251 2458 38
246 2026/10/09 09:37:07.877 78.58 100 0 2670 10251 2458 38
247 2026/10/09 09:37:08.877 78.61 100 0 2670 10251 2458 38
248 2026/10/09 09:37:09.878 78.75 100 0 2670 10251 2458 38
249 2026/10/09 09:37:10.878 78.58 100 0 2670 10251 2458 38
250 2026/10/09 09:37:11.878 70.90 0 0 2670 10251 2458 37
251 2026/10/09 09:37:12.878 63.85 2 0 2670 10251 2458 37
252 2026/10/09 09:37:13.879 67.10 3 0 2670 10251 8614 37
253 2026/10/09 09:37:14.879 79.87 100 1 2670 10251 8614 38
254 2026/10/09 09:37:15.879 79.90 100 1 2670 10251 8614 38
255 2026/10/09 09:37:16.880 79.87 100 1 2670 10251 8614 38
256 2026/10/09 09:37:17.880 79.88 100 1 2670 10251 8614 38
257 2026/10/09 09:37:18.880 79.94 100 1 2670 10251 8614 38
258 2026/10/09 09:37:19.880 79.87 100 1 2670 10251 8614 38
259 2026/10/09 09:37:20.881 79.89 100 1 2670 10251 8614 38
260 2026/10/09 09:37:21.881 79.82 100 1 2670 10251 8614 38
261 2026/10/09 09:37:22.881 79.80 100 1 2670 10251 8614 38
262 2026/10/09 09:37:23.881 79.72 100 1 2670 10251 8614 38
263 2026/10/09 09:37:24.882 72.69 0 0 2670 10251 8614 37
264 2026/10/09 09:37:25.882 71.18 0 0 2670 10251 8614 37
265 2026/10/09 09:37:26.882 62.23 0 0 2520 10251 8614 37
266 2026/10/09 09:37:27.883 59.61 0 0 2520 10251 8614 36
267 2026/10/09 09:37:28.883 62.49 53 2 2670 10251 8614 37
268 2026/10/09 09:37:29.883 62.67 0 0 2670 10251 23076 37
269 2026/10/09 09:37:30.883 317.79 100 53 2580 10251 23076 57
270 2026/10/09 09:37:31.884 429.04 100 53 2580 10251 23076 62
271 2026/10/09 09:37:32.884 428.51 100 53 2550 10251 23076 63
272 2026/10/09 09:37:33.884 428.88 100 54 2535 10251 23076 63
273 2026/10/09 09:37:34.885 429.42 100 54 2520 10251 23076 63
274 2026/10/09 09:37:35.885 429.34 100 55 2520 10251 23076 63
275 2026/10/09 09:37:36.885 429.24 100 56 2505 10251 23076 64
276 2026/10/09 09:37:37.885 429.59 100 56 2595 10251 23076 62
277 2026/10/09 09:37:38.886 428.81 100 56 2595 10251 23076 64
278 2026/10/09 09:37:39.886 428.92 100 56 2595 10251 23076 67
279 2026/10/09 09:37:40.886 429.18 100 56 2640 10251 23076 67
280 2026/10/09 09:37:41.886 428.50 100 56 2640 10251 23076 66
281 2026/10/09 09:37:42.887 429.47 100 54 2595 10251 23076 66
282 2026/10/09 09:37:43.887 429.65 100 53 2520 10251 23076 66
283 2026/10/09 09:37:44.887 430.74 100 56 2505 10251 23076 64
284 2026/10/09 09:37:45.887 428.90 100 56 2595 10251 23076 66
285 2026/10/09 09:37:46.888 430.20 100 55 2595 10251 23076 69
286 2026/10/09 09:37:47.888 428.86 100 55 2640 10251 23076 68
287 2026/10/09 09:37:48.888 430.01 100 56 2640 10251 23076 68
288 2026/10/09 09:37:49.889 429.54 100 55 2520 10251 23076 68
289 2026/10/09 09:37:50.889 191.16 0 0 2655 10251 23076 48
290 2026/10/09 09:37:51.889 126.04 0 0 2655 10251 23076 46
291 2026/10/09 09:37:52.889 64.80 0 0 2520 10251 23076 44
292 2026/10/09 09:37:53.890 67.86 0 0 2670 10251 23076 44
293 2026/10/09 09:37:54.890 67.35 0 0 2670 10251 23076 44
294 2026/10/09 09:37:55.890 64.56 0 0 2520 10251 23076 43
295 2026/10/09 09:37:56.891 62.27 0 0 2520 10251 23076 42
296 2026/10/09 09:37:57.891 60.08 0 0 2520 10251 23076 42
297 2026/10/09 09:37:58.891 60.03 0 0 2520 10251 23076 42
298 2026/10/09 09:37:59.891 59.97 0 0 2520 10251 23076 42
299 2026/10/09 09:38:00.892 59.90 0 0 2520 10251 23076 42
300 2026/10/09 09:38:01.892 59.85 0 0 2520 10251 23076 41
301 2026/10/09 09:38:02.892 59.83 0 0 2520 10251 23076 41
302 2026/10/09 09:38:03.893 59.88 0 0 2520 10251 23076 41
303 2026/10/09 09:38:04.893 63.89 61 2 2670 10251 23076 41
304 2026/10/09 09:38:05.893 67.56 0 0 2670 10251 23076 41
305 2026/10/09 09:38:06.894 65.65 0 0 2670 10251 23076 41
306 2026/10/09 09:38:07.894 73.98 59 4 2670 10251 23070 41
307 2026/10/09 09:38:08.894 335.76 100 41 2640 10251 23070 57
308 2026/10/09 09:38:09.894 357.17 100 42 2640 10251 23070 64
309 2026/10/09 09:38:10.895 355.14 100 40 2640 10251 23070 61
310 2026/10/09 09:38:11.895 355.15 100 41 2640 10251 23070 66
311 2026/10/09 09:38:12.895 358.79 100 42 2640 10251 23070 60
312 2026/10/09 09:38:13.895 355.33 100 41 2640 10251 23070 66
313 2026/10/09 09:38:14.896 360.33 100 42 2640 10251 23070 64
314 2026/10/09 09:38:15.896 355.92 100 41 2640 10251 23070 64
315 2026/10/09 09:38:16.896 360.98 100 42 2595 10251 23070 65
316 2026/10/09 09:38:17.897 356.60 100 40 2640 10251 23070 62
317 2026/10/09 09:38:18.897 358.17 100 42 2640 10251 23070 66
318 2026/10/09 09:38:19.897 355.51 100 40 2655 10251 23070 63
319 2026/10/09 09:38:20.897 359.92 100 42 2595 10251 23070 66
320 2026/10/09 09:38:21.898 356.18 100 41 2640 10251 23070 63
321 2026/10/09 09:38:22.898 358.86 100 42 2610 10251 23070 67
322 2026/10/09 09:38:23.898 358.18 100 41 2640 10251 23070 63
323 2026/10/09 09:38:24.899 359.50 100 42 2640 10251 23070 67
324 2026/10/09 09:38:25.899 360.27 100 41 2640 10251 23070 63
325 2026/10/09 09:38:26.899 357.67 100 42 2640 10251 23070 68
326 2026/10/09 09:38:27.899 359.83 100 41 2640 10251 23070 63
327 2026/10/09 09:38:28.900 159.80 0 0 2655 10251 23070 48
328 2026/10/09 09:38:29.900 68.79 0 0 2655 10251 23070 46
329 2026/10/09 09:38:30.900 68.02 0 0 2520 10251 23070 46
330 2026/10/09 09:38:31.900 60.80 0 0 2520 10251 23070 45
331 2026/10/09 09:38:32.901 60.70 0 0 2520 10251 23070 45
332 2026/10/09 09:38:33.901 60.59 0 0 2520 10251 23070 45
333 2026/10/09 09:38:34.901 60.47 0 0 2520 10251 23070 44
334 2026/10/09 09:38:35.902 60.35 0 0 2520 10251 23070 44
335 2026/10/09 09:38:36.902 60.24 0 0 2520 10251 23070 44
336 2026/10/09 09:38:37.902 60.04 0 0 2520 10251 23070 44
337 2026/10/09 09:38:38.902 59.89 0 0 2520 10251 23070 43
338 2026/10/09 09:38:39.903 59.87 0 0 2520 10251 23070 43
339 2026/10/09 09:38:40.903 63.86 42 1 2670 10251 23070 44
340 2026/10/09 09:38:41.903 69.32 53 2 2670 10251 23070 43
341 2026/10/09 09:38:42.903 65.95 0 0 2670 10251 23070 43
342 2026/10/09 09:38:43.904 68.73 0 0 2670 10251 23072 47
343 2026/10/09 09:38:44.904 191.23 100 20 2655 10251 23072 52
344 2026/10/09 09:38:45.904 216.68 100 20 2655 10251 23072 53
345 2026/10/09 09:38:46.905 216.62 100 20 2655 10251 23072 53
346 2026/10/09 09:38:47.905 216.74 100 20 2655 10251 23072 53
347 2026/10/09 09:38:48.905 216.67 100 20 2655 10251 23072 54
348 2026/10/09 09:38:49.905 216.90 100 20 2655 10251 23072 54
349 2026/10/09 09:38:50.906 216.88 100 20 2655 10251 23072 54
350 2026/10/09 09:38:51.906 217.08 100 20 2655 10251 23072 54
351 2026/10/09 09:38:52.906 216.88 100 20 2655 10251 23072 54
352 2026/10/09 09:38:53.906 216.93 100 20 2655 10251 23072 54
353 2026/10/09 09:38:54.907 216.97 100 20 2655 10251 23072 54
354 2026/10/09 09:38:55.907 216.85 100 20 2655 10251 23072 54
355 2026/10/09 09:38:56.907 216.95 100 20 2655 10251 23072 54
356 2026/10/09 09:38:57.908 217.20 100 20 2655 10251 23072 54
357 2026/10/09 09:38:58.908 217.17 100 20 2655 10251 23072 54
358 2026/10/09 09:38:59.908 217.41 100 20 2655 10251 23072 54
359 2026/10/09 09:39:00.908 217.46 100 20 2655 10251 23072 55
360 2026/10/09 09:39:01.909 217.33 100 20 2655 10251 23072 55
361 2026/10/09 09:39:02.909 217.41 100 20 2655 10251 23072 55
362 2026/10/09 09:39:03.909 217.36 100 20 2655 10251 23072 51
363 2026/10/09 09:39:04.910 111.20 0 0 2655 10251 23072 46
364 2026/10/09 09:39:05.910 66.92 0 0 2670 10251 23072 45
365 2026/10/09 09:39:06.910 63.31 0 0 2520 10251 23072 44
366 2026/10/09 09:39:07.910 61.49 0 0 2520 10251 23072 44
367 2026/10/09 09:39:08.911 59.99 0 0 2520 10251 23072 44
368 2026/10/09 09:39:09.911 59.96 0 0 2520 10251 23072 44
369 2026/10/09 09:39:10.911 59.94 0 0 2520 10251 23072 43
370 2026/10/09 09:39:11.912 59.98 0 0 2520 10251 23072 43
371 2026/10/09 09:39:12.912 60.03 0 0 2520 10251 23072 43
372 2026/10/09 09:39:13.912 60.06 0 0 2520 10251 23072 43
373 2026/10/09 09:39:14.912 60.01 0 0 2520 10251 23072 43
374 2026/10/09 09:39:15.913 64.53 62 2 2670 10251 23072 43
375 2026/10/09 09:39:16.913 69.60 62 2 2670 10251 23072 43
376 2026/10/09 09:39:17.913 66.39 0 0 2670 10251 23072 43
377 2026/10/09 09:39:18.914 68.84 0 0 2670 10251 23070 45
378 2026/10/09 09:39:19.914 110.65 100 5 2670 10251 23070 46
379 2026/10/09 09:39:20.914 117.71 100 5 2670 10251 23070 46
380 2026/10/09 09:39:21.914 117.72 100 5 2670 10251 23070 46
381 2026/10/09 09:39:22.915 118.11 100 5 2670 10251 23070 46
382 2026/10/09 09:39:23.915 117.73 100 5 2670 10251 23070 46
383 2026/10/09 09:39:24.915 117.53 100 5 2670 10251 23070 46
384 2026/10/09 09:39:25.915 117.31 100 5 2670 10251 23070 46
385 2026/10/09 09:39:26.916 117.38 100 5 2670 10251 23070 46
386 2026/10/09 09:39:27.916 117.41 100 5 2670 10251 23070 46
387 2026/10/09 09:39:28.916 117.23 100 5 2670 10251 23070 46
388 2026/10/09 09:39:29.917 117.48 100 5 2670 10251 23070 46
389 2026/10/09 09:39:30.917 117.53 100 5 2670 10251 23070 46
390 2026/10/09 09:39:31.917 117.24 100 5 2670 10251 23070 46
391 2026/10/09 09:39:32.917 117.21 100 5 2670 10251 23070 46
392 2026/10/09 09:39:33.918 117.30 100 5 2670 10251 23070 46
393 2026/10/09 09:39:34.918 116.64 100 5 2670 10251 23070 46
394 2026/10/09 09:39:35.918 117.09 100 5 2670 10251 23070 46
395 2026/10/09 09:39:36.919 116.96 100 5 2670 10251 23070 46
396 2026/10/09 09:39:37.919 116.68 100 5 2670 10251 23070 46
397 2026/10/09 09:39:38.919 117.21 100 5 2670 10251 23070 46
398 2026/10/09 09:39:39.919 88.35 80 48 2670 10251 23070 43
399 2026/10/09 09:39:40.920 83.63 0 0 2670 10251 23070 43
400 2026/10/09 09:39:41.920 64.47 0 0 2520 10251 23070 42
401 2026/10/09 09:39:42.920 62.11 0 0 2520 10251 23070 42
402 2026/10/09 09:39:43.920 59.90 0 0 2520 10251 23070 42
403 2026/10/09 09:39:44.921 59.92 0 0 2520 10251 23070 42
404 2026/10/09 09:39:45.921 59.90 0 0 2520 10251 23070 41
405 2026/10/09 09:39:46.921 59.89 0 0 2520 10251 23070 41
406 2026/10/09 09:39:47.922 59.88 0 0 2520 10251 23070 41
407 2026/10/09 09:39:48.922 59.89 0 0 2520 10251 23070 41
408 2026/10/09 09:39:49.922 59.90 0 0 2520 10251 23070 41
409 2026/10/09 09:39:50.922 67.59 61 2 2670 10251 23070 42
410 2026/10/09 09:39:51.923 68.33 0 0 2670 10251 23070 42
411 2026/10/09 09:39:52.923 65.26 0 0 2670 10251 23070 41
412 2026/10/09 09:39:53.923 66.17 32 2 2670 10501 1 41
413 2026/10/09 09:39:54.924 66.28 0 0 2670 10501 1 41
414 2026/10/09 09:39:55.924 58.40 0 0 2670 10501 1 41
415 2026/10/09 09:39:56.924 42.85 0 0 585 5001 1 40
416 2026/10/09 09:39:57.924 25.26 0 0 360 810 1 39
417 2026/10/09 09:39:58.925 20.43 0 0 240 810 1 39
418 2026/10/09 09:39:59.925 17.04 0 0 210 405 1 39
419 2026/10/09 09:40:00.925 15.77 0 0 210 405 1 39
420 2026/10/09 09:40:01.925 15.63 0 0 210 405 1 38
421 2026/10/09 09:40:02.926 15.58 0 0 210 405 1 38
422 2026/10/09 09:40:03.926 15.58 0 0 210 405 1 38
423 2026/10/09 09:40:04.926 15.50 0 0 210 405 1 38
424 2026/10/09 09:40:05.927 15.49 0 0 210 405 1 38
425 2026/10/09 09:40:06.927 15.58 0 0 210 405 1 38
426 2026/10/09 09:40:07.927 15.61 0 0 210 405 1 38
427 2026/10/09 09:40:08.927 15.59 0 0 210 405 1 38
428 2026/10/09 09:40:09.928 15.47 0 0 210 405 1 38
429 2026/10/09 09:40:10.928 15.43 0 0 210 405 1 37
430 2026/10/09 09:40:11.928 15.53 0 0 210 405 1 37
431 2026/10/09 09:40:12.928 15.46 0 0 210 405 1 37
432 2026/10/09 09:40:13.929 15.35 0 0 210 405 1 37
433 2026/10/09 09:40:14.929 15.42 0 0 210 405 1 37
434 2026/10/09 09:40:15.929 15.48 0 0 210 405 1 37
435 2026/10/09 09:40:16.930 15.55 0 0 210 405 1 37
436 2026/10/09 09:40:17.930 15.56 0 0 210 405 1 37

View file

@ -0,0 +1,13 @@
row rc=0 --n 20 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n20
row rc=0 --n 22 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n22
row rc=0 --n 24 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n24
row rc=0 --n 20 --layout aos --min-label-s 20 --check 2 --k 64 --tag abl-n20-aos
row rc=0 --n 20 --layout soa --min-label-s 20 --check 2 --k 64 --tpb 32 --tag abl-n20-tpb32
row rc=0 --n 20 --B 1 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B1
row rc=0 --n 20 --B 32 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B32
row rc=0 --n 20 --B 128 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B128
row rc=0 --n 12 --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n12
row rc=0 --n 14 --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n14
row rc=0 --n 16 --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n16
row rc=0 --n 18 --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n18
DONE 2026-10-09T09:40:18Z

View file

@ -0,0 +1,12 @@
{"tag":"main-n20","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":20,"N":1048576,"inst_MiB":32.0,"B":353,"Bmax":353,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":12,"graph_s":0.0359,"state_alloc_s":0.0021,"label_s_per_pass":1.743434,"labels_per_s":212309322.7,"labels_per_s_per_inst":601442.8,"ns_per_label_per_inst":1662.67,"merkle_s":0.038270,"prove_s":0.030658,"verify_all_s":0.0208,"accepted":353,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":15.18,"oracle":"IDENTICAL","label_window_unix_ms":[1791538412826,1791538433763],"free_gib":23.14,"per_inst_MiB":64.1,"proof_bytes_inst0":129133}
{"tag":"main-n22","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":22,"N":4194304,"inst_MiB":128.0,"B":88,"Bmax":88,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":3,"graph_s":0.1390,"state_alloc_s":0.0462,"label_s_per_pass":7.029880,"labels_per_s":52504273.9,"labels_per_s_per_inst":596639.5,"ns_per_label_per_inst":1676.05,"merkle_s":0.038311,"prove_s":0.008842,"verify_all_s":0.0055,"accepted":88,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":-1,"check_s":18.51,"oracle":"IDENTICAL","label_window_unix_ms":[1791538449577,1791538470669],"free_gib":23.14,"per_inst_MiB":256.1,"proof_bytes_inst0":141421}
{"tag":"main-n24","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":24,"N":16777216,"inst_MiB":512.0,"B":22,"Bmax":22,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":1,"graph_s":0.5543,"state_alloc_s":0.0107,"label_s_per_pass":27.902730,"labels_per_s":13228051.4,"labels_per_s_per_inst":601275.1,"ns_per_label_per_inst":1663.13,"merkle_s":0.038241,"prove_s":0.003278,"verify_all_s":0.0020,"accepted":22,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":-1,"check_s":32.05,"oracle":"IDENTICAL","label_window_unix_ms":[1791538490148,1791538518051],"free_gib":23.14,"per_inst_MiB":1024.1,"proof_bytes_inst0":153709}
{"tag":"abl-n20-aos","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":20,"N":1048576,"inst_MiB":32.0,"B":353,"Bmax":353,"layout":"aos","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":11,"graph_s":0.0364,"state_alloc_s":0.1428,"label_s_per_pass":1.837660,"labels_per_s":201423169.4,"labels_per_s_per_inst":570603.9,"ns_per_label_per_inst":1752.53,"merkle_s":0.075806,"prove_s":0.032064,"verify_all_s":0.0220,"accepted":353,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":1.18,"oracle":"IDENTICAL","label_window_unix_ms":[1791538550809,1791538571026],"free_gib":23.14,"per_inst_MiB":64.1,"proof_bytes_inst0":129133}
{"tag":"abl-n20-tpb32","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":20,"N":1048576,"inst_MiB":32.0,"B":353,"Bmax":353,"layout":"soa","kernel":"k1","tpb":32,"k":64,"wrong_edge":0,"passes":12,"graph_s":0.0392,"state_alloc_s":0.1327,"label_s_per_pass":1.746520,"labels_per_s":211934179.9,"labels_per_s_per_inst":600380.1,"ns_per_label_per_inst":1665.61,"merkle_s":0.038295,"prove_s":0.029375,"verify_all_s":0.0200,"accepted":353,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":15.13,"oracle":"IDENTICAL","label_window_unix_ms":[1791538572870,1791538593829],"free_gib":23.14,"per_inst_MiB":64.1,"proof_bytes_inst0":129133}
{"tag":"ladder-n20-B1","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":20,"N":1048576,"inst_MiB":32.0,"B":1,"Bmax":353,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":6,"graph_s":0.0364,"state_alloc_s":0.0077,"label_s_per_pass":1.691684,"labels_per_s":619841.5,"labels_per_s_per_inst":619841.5,"ns_per_label_per_inst":1613.32,"merkle_s":0.000278,"prove_s":0.000323,"verify_all_s":0.0010,"accepted":1,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":0.69,"oracle":"IDENTICAL","label_window_unix_ms":[1791538609451,1791538619618],"free_gib":23.14,"per_inst_MiB":64.1,"proof_bytes_inst0":129133}
{"tag":"ladder-n20-B32","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":20,"N":1048576,"inst_MiB":32.0,"B":32,"Bmax":353,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":6,"graph_s":0.0365,"state_alloc_s":0.0011,"label_s_per_pass":1.722175,"labels_per_s":19483749.8,"labels_per_s_per_inst":608867.2,"ns_per_label_per_inst":1642.39,"merkle_s":0.003623,"prove_s":0.003784,"verify_all_s":0.0025,"accepted":32,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":1.94,"oracle":"IDENTICAL","label_window_unix_ms":[1791538620633,1791538630965],"free_gib":23.14,"per_inst_MiB":64.1,"proof_bytes_inst0":129133}
{"tag":"ladder-n20-B128","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":20,"N":1048576,"inst_MiB":32.0,"B":128,"Bmax":353,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":6,"graph_s":0.0365,"state_alloc_s":0.0014,"label_s_per_pass":1.752064,"labels_per_s":76605486.9,"labels_per_s_per_inst":598480.4,"ns_per_label_per_inst":1670.90,"merkle_s":0.013956,"prove_s":0.011287,"verify_all_s":0.0075,"accepted":128,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":5.78,"oracle":"IDENTICAL","label_window_unix_ms":[1791538633235,1791538643758],"free_gib":23.14,"per_inst_MiB":64.1,"proof_bytes_inst0":129133}
{"tag":"diag-n12","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":12,"N":4096,"inst_MiB":0.1,"B":69485,"Bmax":69485,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":639,"graph_s":0.0024,"state_alloc_s":0.0191,"label_s_per_pass":0.031335,"labels_per_s":9082894292.8,"labels_per_s_per_inst":130717.3,"ns_per_label_per_inst":7650.09,"merkle_s":0.029395,"prove_s":3.232706,"verify_all_s":2.3899,"accepted":69485,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":10.77,"oracle":"IDENTICAL","label_window_unix_ms":[1791538649895,1791538669923],"free_gib":23.14,"per_inst_MiB":0.3,"proof_bytes_inst0":79981}
{"tag":"diag-n14","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":14,"N":16384,"inst_MiB":0.5,"B":20838,"Bmax":20838,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":391,"graph_s":0.0028,"state_alloc_s":0.1831,"label_s_per_pass":0.051174,"labels_per_s":6671484617.4,"labels_per_s_per_inst":320159.5,"ns_per_label_per_inst":3123.44,"merkle_s":0.035525,"prove_s":1.140544,"verify_all_s":0.8231,"accepted":20838,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":-1,"check_s":13.09,"oracle":"IDENTICAL","label_window_unix_ms":[1791538687665,1791538707679],"free_gib":23.14,"per_inst_MiB":1.1,"proof_bytes_inst0":92269}
{"tag":"diag-n16","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":16,"N":65536,"inst_MiB":2.0,"B":5530,"Bmax":5530,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":179,"graph_s":0.0043,"state_alloc_s":0.1744,"label_s_per_pass":0.111756,"labels_per_s":3242908841.3,"labels_per_s_per_inst":586421.1,"ns_per_label_per_inst":1705.26,"merkle_s":0.037597,"prove_s":0.353603,"verify_all_s":0.2521,"accepted":5530,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":13.69,"oracle":"IDENTICAL","label_window_unix_ms":[1791538723581,1791538743587],"free_gib":23.14,"per_inst_MiB":4.1,"proof_bytes_inst0":104557}
{"tag":"diag-n18","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B1","n":18,"N":262144,"inst_MiB":8.0,"B":1407,"Bmax":1407,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":46,"graph_s":0.0106,"state_alloc_s":0.1784,"label_s_per_pass":0.440274,"labels_per_s":837743769.3,"labels_per_s_per_inst":595411.3,"ns_per_label_per_inst":1679.51,"merkle_s":0.038097,"prove_s":0.103623,"verify_all_s":0.0729,"accepted":1407,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":-1,"check_s":14.22,"oracle":"IDENTICAL","label_window_unix_ms":[1791538758553,1791538778807],"free_gib":23.14,"per_inst_MiB":16.1,"proof_bytes_inst0":116845}

View file

@ -0,0 +1,5 @@
{"mode":"cpu_time","sha":"sha_ni","n":20,"N":1048576,"k":64,"threads":1,"graph_s_single_thread":0.2933,"label_s_mean":0.1085,"merkle_s_mean":0.0835,"prove_s_mean":0.000218,"verify_s_mean":0.001932,"wall_s":0.1996,"labels_per_s_per_instance":9661847.4,"labels_per_s_all":5253938.8,"accepted":1}
{"mode":"cpu_time","sha":"sha_ni","n":22,"N":4194304,"k":64,"threads":1,"graph_s_single_thread":1.1713,"label_s_mean":0.4839,"merkle_s_mean":0.3312,"prove_s_mean":0.000283,"verify_s_mean":0.002132,"wall_s":0.8358,"labels_per_s_per_instance":8668221.4,"labels_per_s_all":5018378.8,"accepted":1}
{"mode":"cpu_time","sha":"sha_ni","n":24,"N":16777216,"k":64,"threads":1,"graph_s_single_thread":4.6982,"label_s_mean":2.1011,"merkle_s_mean":1.3347,"prove_s_mean":0.000337,"verify_s_mean":0.002312,"wall_s":3.5133,"labels_per_s_per_instance":7984944.5,"labels_per_s_all":4775373.5,"accepted":1}
{"mode":"cpu_time","sha":"sha_ni","n":20,"N":1048576,"k":64,"threads":15,"graph_s_single_thread":0.2924,"label_s_mean":0.1153,"merkle_s_mean":0.0844,"prove_s_mean":0.000242,"verify_s_mean":0.001960,"wall_s":0.2713,"labels_per_s_per_instance":9091404.1,"labels_per_s_all":57971435.4,"accepted":15}
{"mode":"cpu_time","sha":"sha_ni","n":22,"N":4194304,"k":64,"threads":15,"graph_s_single_thread":1.1749,"label_s_mean":0.5159,"merkle_s_mean":0.3421,"prove_s_mean":0.024082,"verify_s_mean":0.002260,"wall_s":1.1179,"labels_per_s_per_instance":8129893.6,"labels_per_s_all":56279151.1,"accepted":15}

View file

@ -0,0 +1 @@
{"idle_window_unix_ms":[1791537739000,1791537769000]}

View file

@ -0,0 +1,9 @@
{"mode":"selftest","sha":"sha_ni","sha256_abc_kat_fail":0,"portable_words_mismatch":0,"fast_mismatch":0}
CASE cpu_selftest PASS
{"tag":"known-failed","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":12,"N":4096,"inst_MiB":0.1,"B":96,"Bmax":78676,"layout":"soa","kernel":"k1","k":32,"wrong_edge":1,"passes":1,"graph_s":0.0008,"state_alloc_s":0.0006,"label_s_per_pass":0.008921,"labels_per_s":44077609.8,"labels_per_s_per_inst":459141.8,"ns_per_label_per_inst":2177.98,"merkle_s":0.000166,"prove_s":0.003143,"verify_all_s":0.0001,"accepted":0,"checked":4,"lab_bad_inst":4,"tree_bad_inst":4,"root_bad":4,"proof_bad":4,"check_s":0.03,"oracle":"MISMATCH","label_window_unix_ms":[1791538840191,1791538840200],"free_gib":23.14,"per_inst_MiB":0.3}
CASE known_failed_wrong_edge PASS (oracle fired: MISMATCH, 0 proofs accepted, exit 1)
{"tag":"known-finished-k1","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":12,"N":4096,"inst_MiB":0.1,"B":96,"Bmax":78676,"layout":"soa","kernel":"k1","k":32,"wrong_edge":0,"passes":1,"graph_s":0.0008,"state_alloc_s":0.0005,"label_s_per_pass":0.009197,"labels_per_s":42756932.7,"labels_per_s_per_inst":445384.7,"ns_per_label_per_inst":2245.25,"merkle_s":0.000169,"prove_s":0.003388,"verify_all_s":0.0037,"accepted":96,"checked":4,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":0.03,"oracle":"IDENTICAL","label_window_unix_ms":[1791538840515,1791538840525],"free_gib":23.14,"per_inst_MiB":0.3}
CASE known_finished_k1 PASS
{"tag":"known-finished-k2","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":12,"N":4096,"inst_MiB":0.1,"B":96,"Bmax":78676,"layout":"soa","kernel":"k2","k":32,"wrong_edge":0,"passes":1,"graph_s":0.0008,"state_alloc_s":0.0004,"label_s_per_pass":0.005592,"labels_per_s":70316793.0,"labels_per_s_per_inst":732466.6,"ns_per_label_per_inst":1365.25,"merkle_s":0.000164,"prove_s":0.003324,"verify_all_s":0.0036,"accepted":96,"checked":4,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":0.03,"oracle":"IDENTICAL","label_window_unix_ms":[1791538840850,1791538840856],"free_gib":23.14,"per_inst_MiB":0.3}
CASE known_finished_k2 PASS
RESULT test_known_failed PASS

View file

@ -0,0 +1,10 @@
label=rtx4090-r1
src_id=2079d0d8ce7eef96
2026-10-09T09:22:19Z
model name : AMD EPYC 7513 32-Core Processor
nproc=15 cgroup_cpus=15
15.14 20.21 31.20 16/1136 842
name, driver_version, vbios_version, power.limit [W], power.default_limit [W], clocks.max.sm [MHz], clocks.max.memory [MHz], memory.total [MiB], pcie.link.gen.current, pcie.link.width.current
NVIDIA GeForce RTX 4090, 570.153.02, 95.02.47.00.01, 450.00 W, 450.00 W, 3105 MHz, 10501 MHz, 24564 MiB, 1, 16
Build cuda_12.8.r12.8/compiler.35583870_0
17.02 17.06 24.10 16/1138 1433

View file

@ -0,0 +1,604 @@
2026/10/09 09:22:19.852, 15.00, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:20.854, 14.93, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:21.854, 15.03, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:22.854, 15.06, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:23.854, 15.02, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:24.855, 15.02, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:25.855, 15.04, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:26.855, 15.03, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:27.856, 15.01, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:28.856, 15.05, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:29.856, 15.08, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:30.856, 15.09, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:31.857, 14.99, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:32.857, 14.89, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:33.857, 14.95, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:34.858, 14.96, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:35.858, 14.90, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:36.858, 14.94, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:37.858, 15.05, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:38.859, 15.10, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:39.859, 15.07, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:40.859, 14.95, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:41.860, 14.92, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:42.860, 15.02, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:43.860, 14.99, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:44.860, 14.94, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:45.861, 14.96, 0, 0, 210, 405, 1, 39
2026/10/09 09:22:46.861, 14.98, 0, 0, 210, 405, 1, 39
2026/10/09 09:22:47.861, 14.95, 0, 0, 210, 405, 1, 39
2026/10/09 09:22:48.862, 14.90, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:49.862, 14.90, 0, 0, 210, 405, 1, 38
2026/10/09 09:22:50.867, 33.81, 0, 0, 2670, 10251, 23042, 41
2026/10/09 09:22:51.867, 82.88, 100, 1, 2670, 10251, 23042, 42
2026/10/09 09:22:52.867, 83.21, 100, 1, 2670, 10251, 23042, 42
2026/10/09 09:22:53.867, 83.29, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:22:54.868, 83.69, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:22:55.868, 83.84, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:22:56.868, 84.14, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:22:57.868, 83.86, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:22:58.869, 83.94, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:22:59.869, 83.95, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:23:00.869, 83.63, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:23:01.870, 83.69, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:23:02.870, 84.34, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:23:03.870, 84.49, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:23:04.870, 84.44, 100, 1, 2670, 10251, 23042, 44
2026/10/09 09:23:05.871, 84.09, 100, 1, 2670, 10251, 23042, 44
2026/10/09 09:23:06.871, 84.06, 100, 1, 2670, 10251, 23042, 44
2026/10/09 09:23:07.871, 83.91, 100, 1, 2670, 10251, 23042, 44
2026/10/09 09:23:08.871, 83.76, 100, 1, 2670, 10251, 23042, 44
2026/10/09 09:23:09.872, 83.99, 100, 1, 2670, 10251, 23042, 44
2026/10/09 09:23:10.872, 84.04, 100, 1, 2670, 10251, 23042, 44
2026/10/09 09:23:11.872, 84.10, 100, 1, 2655, 10251, 23042, 44
2026/10/09 09:23:12.872, 90.46, 0, 0, 2670, 10251, 23042, 43
2026/10/09 09:23:13.873, 85.14, 0, 0, 2520, 10251, 23042, 43
2026/10/09 09:23:14.873, 62.94, 0, 0, 2520, 10251, 23042, 42
2026/10/09 09:23:15.873, 60.88, 0, 0, 2520, 10251, 23042, 42
2026/10/09 09:23:16.873, 59.05, 0, 0, 2520, 10251, 23042, 42
2026/10/09 09:23:17.874, 59.02, 0, 0, 2520, 10251, 23042, 42
2026/10/09 09:23:18.874, 59.05, 0, 0, 2520, 10251, 23042, 42
2026/10/09 09:23:19.874, 59.13, 0, 0, 2520, 10251, 23042, 42
2026/10/09 09:23:20.875, 59.13, 0, 0, 2520, 10251, 23042, 42
2026/10/09 09:23:21.875, 59.11, 0, 0, 2520, 10251, 23042, 42
2026/10/09 09:23:22.875, 59.16, 0, 0, 2610, 10251, 23042, 42
2026/10/09 09:23:23.876, 62.93, 59, 2, 2670, 10251, 23042, 43
2026/10/09 09:23:24.876, 69.61, 62, 2, 2670, 10251, 23042, 43
2026/10/09 09:23:25.876, 65.25, 0, 0, 2670, 10251, 23042, 43
2026/10/09 09:23:26.876, 63.22, 0, 0, 2520, 10251, 23042, 43
2026/10/09 09:23:27.877, 61.24, 0, 0, 2520, 10251, 23042, 43
2026/10/09 09:23:28.877, 60.17, 0, 0, 2670, 10251, 23042, 43
2026/10/09 09:23:29.877, 86.63, 100, 2, 2670, 10251, 23042, 45
2026/10/09 09:23:30.878, 95.49, 100, 2, 2670, 10251, 23042, 45
2026/10/09 09:23:31.878, 95.70, 100, 2, 2670, 10251, 23042, 45
2026/10/09 09:23:32.878, 95.66, 100, 2, 2670, 10251, 23042, 45
2026/10/09 09:23:33.878, 95.69, 100, 2, 2670, 10251, 23042, 45
2026/10/09 09:23:34.878, 95.85, 100, 2, 2670, 10251, 23042, 45
2026/10/09 09:23:35.879, 95.72, 100, 2, 2670, 10251, 23042, 46
2026/10/09 09:23:36.879, 96.13, 100, 2, 2670, 10251, 23042, 46
2026/10/09 09:23:37.879, 96.04, 100, 2, 2670, 10251, 23042, 46
2026/10/09 09:23:38.879, 95.97, 100, 2, 2670, 10251, 23042, 46
2026/10/09 09:23:39.880, 96.37, 100, 2, 2670, 10251, 23042, 46
2026/10/09 09:23:40.880, 96.32, 100, 2, 2670, 10251, 23042, 46
2026/10/09 09:23:41.880, 96.36, 100, 2, 2670, 10251, 23042, 46
2026/10/09 09:23:42.880, 96.00, 100, 2, 2670, 10251, 23042, 46
2026/10/09 09:23:43.881, 95.66, 100, 2, 2670, 10251, 23042, 46
2026/10/09 09:23:44.881, 96.16, 100, 2, 2670, 10251, 23042, 46
2026/10/09 09:23:45.881, 96.35, 100, 2, 2670, 10251, 23042, 46
2026/10/09 09:23:46.881, 96.52, 100, 2, 2670, 10251, 23042, 46
2026/10/09 09:23:47.882, 95.91, 100, 2, 2670, 10251, 23042, 46
2026/10/09 09:23:48.882, 95.83, 100, 2, 2670, 10251, 23042, 46
2026/10/09 09:23:49.882, 101.32, 41, 37, 2655, 10251, 23042, 45
2026/10/09 09:23:50.882, 87.47, 0, 0, 2655, 10251, 23042, 45
2026/10/09 09:23:51.883, 63.80, 0, 0, 2520, 10251, 23042, 45
2026/10/09 09:23:52.883, 61.48, 0, 0, 2520, 10251, 23042, 44
2026/10/09 09:23:53.883, 59.29, 0, 0, 2520, 10251, 23042, 44
2026/10/09 09:23:54.883, 59.27, 0, 0, 2520, 10251, 23042, 44
2026/10/09 09:23:55.884, 59.32, 0, 0, 2520, 10251, 23042, 44
2026/10/09 09:23:56.884, 59.33, 0, 0, 2520, 10251, 23042, 44
2026/10/09 09:23:57.884, 59.31, 0, 0, 2520, 10251, 23042, 44
2026/10/09 09:23:58.885, 59.37, 0, 0, 2520, 10251, 23042, 44
2026/10/09 09:23:59.885, 59.47, 0, 0, 2520, 10251, 23042, 44
2026/10/09 09:24:00.885, 68.01, 60, 2, 2670, 10251, 23042, 45
2026/10/09 09:24:01.885, 68.94, 54, 2, 2670, 10251, 23042, 45
2026/10/09 09:24:02.886, 66.36, 0, 0, 2670, 10251, 23042, 45
2026/10/09 09:24:03.886, 64.14, 0, 0, 2520, 10251, 23042, 45
2026/10/09 09:24:04.886, 61.65, 0, 0, 2520, 10251, 23042, 45
2026/10/09 09:24:05.887, 65.22, 73, 5, 2670, 10251, 22958, 45
2026/10/09 09:24:06.887, 79.81, 100, 0, 2670, 10251, 22958, 46
2026/10/09 09:24:07.887, 79.85, 100, 0, 2670, 10251, 22958, 46
2026/10/09 09:24:08.887, 79.90, 100, 0, 2670, 10251, 22958, 46
2026/10/09 09:24:09.888, 79.82, 100, 0, 2670, 10251, 22958, 46
2026/10/09 09:24:10.888, 79.90, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:11.888, 79.98, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:12.888, 79.95, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:13.889, 79.76, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:14.889, 79.91, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:15.889, 79.98, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:16.890, 79.89, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:17.890, 79.94, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:18.890, 79.88, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:19.890, 79.89, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:20.891, 80.02, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:21.891, 79.99, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:22.891, 79.98, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:23.891, 79.86, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:24.892, 79.82, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:25.892, 79.85, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:26.892, 80.00, 100, 0, 2670, 10251, 22958, 47
2026/10/09 09:24:27.893, 79.93, 100, 0, 2670, 10251, 22958, 48
2026/10/09 09:24:28.893, 79.95, 100, 0, 2670, 10251, 22958, 48
2026/10/09 09:24:29.893, 80.02, 100, 0, 2670, 10251, 22958, 48
2026/10/09 09:24:30.893, 80.03, 100, 0, 2670, 10251, 22958, 48
2026/10/09 09:24:31.894, 80.03, 100, 0, 2670, 10251, 22958, 48
2026/10/09 09:24:32.894, 80.04, 100, 0, 2670, 10251, 22958, 48
2026/10/09 09:24:33.894, 80.17, 100, 0, 2670, 10251, 22958, 48
2026/10/09 09:24:34.894, 97.04, 100, 0, 2655, 10251, 22958, 48
2026/10/09 09:24:35.895, 87.18, 0, 0, 2655, 10251, 22958, 47
2026/10/09 09:24:36.895, 64.89, 0, 0, 2520, 10251, 22958, 47
2026/10/09 09:24:37.895, 62.17, 0, 0, 2520, 10251, 22958, 47
2026/10/09 09:24:38.896, 59.64, 0, 0, 2520, 10251, 22958, 46
2026/10/09 09:24:39.896, 59.60, 0, 0, 2520, 10251, 22958, 46
2026/10/09 09:24:40.896, 59.58, 0, 0, 2520, 10251, 22958, 46
2026/10/09 09:24:41.896, 59.62, 0, 0, 2520, 10251, 22958, 46
2026/10/09 09:24:42.897, 59.64, 0, 0, 2520, 10251, 22958, 46
2026/10/09 09:24:43.897, 59.61, 0, 0, 2520, 10251, 22958, 46
2026/10/09 09:24:44.897, 59.64, 0, 0, 2520, 10251, 22958, 46
2026/10/09 09:24:45.897, 64.03, 62, 2, 2655, 10251, 22958, 47
2026/10/09 09:24:46.898, 70.64, 34, 1, 2655, 10251, 22958, 47
2026/10/09 09:24:47.898, 68.45, 0, 0, 2655, 10251, 22958, 47
2026/10/09 09:24:48.898, 67.11, 0, 0, 2655, 10251, 22958, 47
2026/10/09 09:24:49.899, 64.89, 0, 0, 2520, 10251, 22958, 47
2026/10/09 09:24:50.899, 62.14, 0, 0, 2520, 10251, 22958, 47
2026/10/09 09:24:51.899, 59.56, 0, 0, 2520, 10251, 22958, 47
2026/10/09 09:24:52.899, 59.48, 0, 0, 2520, 10251, 22958, 47
2026/10/09 09:24:53.900, 59.47, 0, 0, 2520, 10251, 22958, 47
2026/10/09 09:24:54.900, 59.57, 0, 0, 2520, 10251, 22958, 47
2026/10/09 09:24:55.900, 59.62, 0, 0, 2520, 10251, 22958, 47
2026/10/09 09:24:56.901, 59.63, 0, 0, 2520, 10251, 22958, 47
2026/10/09 09:24:57.901, 59.59, 0, 0, 2520, 10251, 2, 47
2026/10/09 09:24:58.901, 69.60, 100, 8, 2655, 10251, 22958, 48
2026/10/09 09:24:59.902, 81.82, 100, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:00.902, 81.93, 100, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:01.902, 82.14, 100, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:02.902, 81.91, 100, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:03.903, 82.03, 100, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:04.903, 82.11, 100, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:05.903, 82.43, 100, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:06.904, 82.52, 100, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:07.904, 82.22, 100, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:08.904, 82.35, 100, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:09.904, 82.25, 100, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:10.905, 82.28, 100, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:11.905, 82.47, 100, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:12.905, 82.42, 100, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:13.905, 82.52, 100, 0, 2655, 10251, 22958, 50
2026/10/09 09:25:14.906, 82.40, 100, 0, 2655, 10251, 22958, 50
2026/10/09 09:25:15.906, 82.16, 100, 0, 2655, 10251, 22958, 50
2026/10/09 09:25:16.906, 82.24, 100, 0, 2655, 10251, 22958, 50
2026/10/09 09:25:17.907, 82.42, 100, 0, 2655, 10251, 22958, 50
2026/10/09 09:25:18.907, 82.55, 100, 0, 2655, 10251, 22958, 50
2026/10/09 09:25:19.907, 82.58, 100, 0, 2655, 10251, 22958, 50
2026/10/09 09:25:20.907, 82.53, 100, 0, 2655, 10251, 22958, 50
2026/10/09 09:25:21.908, 82.39, 76, 46, 2655, 10251, 22958, 50
2026/10/09 09:25:22.908, 86.80, 0, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:23.908, 65.18, 0, 0, 2520, 10251, 22958, 48
2026/10/09 09:25:24.909, 62.38, 0, 0, 2520, 10251, 22958, 48
2026/10/09 09:25:25.909, 59.65, 0, 0, 2520, 10251, 22958, 48
2026/10/09 09:25:26.909, 59.63, 0, 0, 2520, 10251, 22958, 48
2026/10/09 09:25:27.909, 59.65, 0, 0, 2520, 10251, 22958, 48
2026/10/09 09:25:28.910, 59.58, 0, 0, 2520, 10251, 22958, 48
2026/10/09 09:25:29.910, 59.58, 0, 0, 2520, 10251, 22958, 48
2026/10/09 09:25:30.910, 59.61, 0, 0, 2520, 10251, 22958, 48
2026/10/09 09:25:31.911, 59.58, 0, 0, 2520, 10251, 22958, 48
2026/10/09 09:25:32.911, 59.92, 59, 2, 2655, 10251, 22958, 49
2026/10/09 09:25:33.911, 70.60, 61, 2, 2655, 10251, 22958, 49
2026/10/09 09:25:34.912, 69.48, 0, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:35.912, 67.54, 0, 0, 2655, 10251, 22958, 49
2026/10/09 09:25:36.912, 66.02, 0, 0, 2520, 10251, 22958, 49
2026/10/09 09:25:37.912, 62.83, 0, 0, 2520, 10251, 22958, 48
2026/10/09 09:25:38.913, 59.78, 0, 0, 2520, 10251, 22958, 48
2026/10/09 09:25:39.913, 59.75, 0, 0, 2520, 10251, 22958, 48
2026/10/09 09:25:40.913, 59.68, 0, 0, 2520, 10251, 22958, 48
2026/10/09 09:25:41.914, 59.69, 0, 0, 2520, 10251, 22958, 48
2026/10/09 09:25:42.914, 59.72, 0, 0, 2520, 10251, 22958, 49
2026/10/09 09:25:43.914, 59.78, 0, 0, 2520, 10251, 22958, 49
2026/10/09 09:25:44.914, 59.78, 0, 0, 2520, 10501, 21, 49
2026/10/09 09:25:45.915, 66.33, 100, 0, 2655, 10251, 22998, 50
2026/10/09 09:25:46.916, 79.04, 100, 0, 2655, 10251, 22998, 50
2026/10/09 09:25:47.916, 79.75, 100, 0, 2655, 10251, 22998, 50
2026/10/09 09:25:48.916, 79.90, 100, 0, 2655, 10251, 22998, 50
2026/10/09 09:25:49.916, 79.69, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:25:50.917, 79.82, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:25:51.917, 79.90, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:25:52.917, 79.90, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:25:53.918, 79.87, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:25:54.918, 79.74, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:25:55.918, 80.00, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:25:56.918, 79.98, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:25:57.919, 80.21, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:25:58.919, 79.90, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:25:59.919, 79.92, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:26:00.919, 79.95, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:26:01.920, 80.15, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:26:02.920, 80.14, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:26:03.920, 80.22, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:26:04.921, 80.06, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:26:05.921, 80.02, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:26:06.921, 80.10, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:26:07.921, 80.24, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:26:08.922, 80.16, 100, 0, 2655, 10251, 22998, 51
2026/10/09 09:26:09.922, 80.16, 100, 0, 2655, 10251, 22998, 52
2026/10/09 09:26:10.922, 80.27, 100, 0, 2655, 10251, 22998, 52
2026/10/09 09:26:11.922, 80.16, 100, 0, 2655, 10251, 22998, 52
2026/10/09 09:26:12.923, 80.15, 100, 0, 2655, 10251, 22998, 52
2026/10/09 09:26:13.923, 80.15, 100, 0, 2655, 10251, 22998, 52
2026/10/09 09:26:14.923, 80.27, 100, 0, 2655, 10251, 22998, 52
2026/10/09 09:26:15.924, 80.24, 100, 0, 2655, 10251, 22998, 52
2026/10/09 09:26:16.924, 80.24, 100, 0, 2655, 10251, 22998, 52
2026/10/09 09:26:17.924, 80.31, 100, 0, 2655, 10251, 22998, 52
2026/10/09 09:26:18.924, 80.28, 100, 0, 2655, 10251, 22998, 52
2026/10/09 09:26:19.925, 80.31, 100, 0, 2655, 10251, 22998, 52
2026/10/09 09:26:20.925, 80.22, 100, 0, 2655, 10251, 22998, 52
2026/10/09 09:26:21.925, 80.35, 100, 0, 2655, 10251, 22998, 52
2026/10/09 09:26:22.925, 80.25, 100, 0, 2655, 10251, 22998, 52
2026/10/09 09:26:23.926, 80.42, 100, 0, 2655, 10251, 22998, 52
2026/10/09 09:26:24.926, 92.58, 0, 0, 2655, 10251, 22998, 51
2026/10/09 09:26:25.926, 89.34, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:26.926, 68.21, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:27.927, 64.21, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:28.927, 60.18, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:29.927, 60.12, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:30.928, 60.10, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:31.928, 60.12, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:32.928, 60.18, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:33.928, 60.13, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:34.929, 63.21, 62, 2, 2655, 10251, 22998, 51
2026/10/09 09:26:35.929, 72.71, 62, 2, 2655, 10251, 22998, 51
2026/10/09 09:26:36.929, 69.82, 0, 0, 2655, 10251, 22998, 51
2026/10/09 09:26:37.930, 69.07, 0, 0, 2655, 10251, 22998, 51
2026/10/09 09:26:38.930, 66.96, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:39.930, 63.49, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:40.930, 60.19, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:41.931, 60.20, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:42.931, 60.26, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:43.931, 60.31, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:44.932, 60.32, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:45.932, 60.25, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:46.932, 60.17, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:47.932, 60.14, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:48.933, 60.14, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:49.933, 60.17, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:50.933, 60.33, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:51.934, 61.28, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:52.934, 61.44, 0, 0, 2520, 10251, 22998, 51
2026/10/09 09:26:53.934, 59.93, 0, 0, 510, 810, 22998, 51
2026/10/09 09:26:54.935, 25.35, 0, 0, 345, 810, 22998, 49
2026/10/09 09:26:55.935, 21.58, 0, 0, 225, 405, 22998, 49
2026/10/09 09:26:56.935, 16.91, 0, 0, 210, 405, 22998, 49
2026/10/09 09:26:57.936, 16.04, 0, 0, 210, 405, 22998, 49
2026/10/09 09:26:58.936, 16.10, 0, 0, 210, 405, 22998, 49
2026/10/09 09:26:59.936, 16.12, 0, 0, 210, 405, 22998, 49
2026/10/09 09:27:00.937, 16.09, 0, 0, 210, 405, 22998, 48
2026/10/09 09:27:01.937, 16.04, 0, 0, 210, 405, 22998, 48
2026/10/09 09:27:02.937, 15.98, 0, 0, 210, 405, 22998, 48
2026/10/09 09:27:03.937, 15.92, 0, 0, 210, 405, 22998, 48
2026/10/09 09:27:04.938, 15.87, 0, 0, 210, 405, 22998, 48
2026/10/09 09:27:05.938, 15.84, 0, 0, 210, 405, 22998, 47
2026/10/09 09:27:06.938, 15.81, 0, 0, 210, 405, 22998, 47
2026/10/09 09:27:07.939, 15.77, 0, 0, 210, 405, 22998, 47
2026/10/09 09:27:08.939, 15.79, 0, 0, 210, 405, 22998, 47
2026/10/09 09:27:09.939, 15.77, 0, 0, 210, 405, 22998, 47
2026/10/09 09:27:10.939, 15.77, 0, 0, 210, 405, 22998, 46
2026/10/09 09:27:11.940, 15.81, 0, 0, 210, 405, 22998, 46
2026/10/09 09:27:12.940, 15.77, 0, 0, 210, 405, 22998, 46
2026/10/09 09:27:13.940, 15.68, 0, 0, 210, 405, 22998, 46
2026/10/09 09:27:14.940, 22.26, 100, 8, 2520, 10501, 396, 46
2026/10/09 09:27:15.941, 77.00, 100, 0, 2655, 10251, 22998, 48
2026/10/09 09:27:16.941, 80.62, 100, 0, 2655, 10251, 22998, 49
2026/10/09 09:27:17.941, 80.60, 100, 0, 2655, 10251, 22998, 49
2026/10/09 09:27:18.942, 80.53, 100, 0, 2655, 10251, 22998, 49
2026/10/09 09:27:19.942, 80.60, 100, 0, 2655, 10251, 22998, 49
2026/10/09 09:27:20.942, 80.48, 100, 0, 2655, 10251, 22998, 48
2026/10/09 09:27:21.942, 80.53, 100, 0, 2655, 10251, 22998, 48
2026/10/09 09:27:22.943, 80.41, 100, 0, 2655, 10251, 22998, 48
2026/10/09 09:27:23.943, 80.50, 100, 0, 2655, 10251, 22998, 48
2026/10/09 09:27:24.943, 80.45, 100, 0, 2655, 10251, 22998, 48
2026/10/09 09:27:25.943, 80.53, 100, 0, 2655, 10251, 22998, 48
2026/10/09 09:27:26.944, 80.49, 100, 0, 2655, 10251, 22998, 48
2026/10/09 09:27:27.944, 80.55, 100, 0, 2655, 10251, 22998, 48
2026/10/09 09:27:28.944, 80.38, 100, 0, 2655, 10251, 22998, 48
2026/10/09 09:27:29.944, 80.45, 100, 0, 2655, 10251, 22998, 48
2026/10/09 09:27:30.945, 80.60, 100, 0, 2655, 10251, 22998, 48
2026/10/09 09:27:31.945, 80.38, 100, 0, 2655, 10251, 22998, 48
2026/10/09 09:27:32.945, 80.32, 100, 0, 2655, 10251, 22998, 48
2026/10/09 09:27:33.946, 80.42, 100, 0, 2655, 10251, 22998, 47
2026/10/09 09:27:34.946, 80.33, 100, 0, 2655, 10251, 22998, 47
2026/10/09 09:27:35.946, 80.35, 100, 0, 2655, 10251, 22998, 47
2026/10/09 09:27:36.946, 80.45, 100, 0, 2655, 10251, 22998, 47
2026/10/09 09:27:37.947, 80.25, 100, 0, 2655, 10251, 22998, 47
2026/10/09 09:27:38.947, 88.14, 0, 0, 2655, 10251, 22998, 46
2026/10/09 09:27:39.947, 86.87, 0, 0, 2655, 10251, 22998, 46
2026/10/09 09:27:40.948, 65.27, 0, 0, 2520, 10251, 22998, 46
2026/10/09 09:27:41.948, 62.61, 0, 0, 2520, 10251, 22998, 45
2026/10/09 09:27:42.948, 60.06, 0, 0, 2520, 10251, 22998, 45
2026/10/09 09:27:43.948, 60.08, 0, 0, 2520, 10251, 22998, 45
2026/10/09 09:27:44.949, 60.10, 0, 0, 2520, 10251, 22998, 45
2026/10/09 09:27:45.949, 60.05, 0, 0, 2520, 10251, 22998, 45
2026/10/09 09:27:46.949, 59.96, 0, 0, 2520, 10251, 22998, 45
2026/10/09 09:27:47.949, 59.92, 0, 0, 2520, 10251, 22998, 44
2026/10/09 09:27:48.950, 61.24, 62, 2, 2670, 10251, 22998, 44
2026/10/09 09:27:49.950, 70.68, 57, 2, 2670, 10251, 22998, 45
2026/10/09 09:27:50.950, 67.56, 0, 0, 2670, 10251, 22998, 45
2026/10/09 09:27:51.951, 66.73, 0, 0, 2670, 10251, 22998, 45
2026/10/09 09:27:52.951, 64.56, 0, 0, 2520, 10251, 22998, 44
2026/10/09 09:27:53.951, 62.16, 0, 0, 2520, 10251, 22998, 44
2026/10/09 09:27:54.952, 59.84, 0, 0, 2520, 10251, 22998, 44
2026/10/09 09:27:55.952, 59.76, 0, 0, 2520, 10251, 22998, 44
2026/10/09 09:27:56.952, 59.72, 0, 0, 2520, 10251, 22998, 44
2026/10/09 09:27:57.952, 59.76, 0, 0, 2520, 10251, 22998, 44
2026/10/09 09:27:58.953, 59.76, 0, 0, 2520, 10251, 22998, 44
2026/10/09 09:27:59.953, 59.78, 0, 0, 2520, 10251, 22998, 43
2026/10/09 09:28:00.953, 59.81, 0, 0, 2520, 10251, 22998, 43
2026/10/09 09:28:01.954, 59.78, 0, 0, 2520, 10251, 22998, 43
2026/10/09 09:28:02.954, 59.73, 0, 0, 2520, 10251, 22998, 43
2026/10/09 09:28:03.954, 59.73, 0, 0, 2520, 10251, 22998, 43
2026/10/09 09:28:04.954, 59.73, 0, 0, 2520, 10251, 22998, 43
2026/10/09 09:28:05.955, 59.68, 0, 0, 2520, 10251, 22998, 43
2026/10/09 09:28:06.955, 59.70, 0, 0, 2520, 10251, 22998, 43
2026/10/09 09:28:07.955, 59.32, 0, 0, 510, 810, 22998, 42
2026/10/09 09:28:08.956, 41.08, 0, 0, 315, 405, 22998, 41
2026/10/09 09:28:09.956, 19.52, 0, 0, 210, 405, 22998, 41
2026/10/09 09:28:10.957, 15.66, 0, 0, 210, 405, 22998, 41
2026/10/09 09:28:11.957, 15.53, 0, 0, 210, 405, 22998, 41
2026/10/09 09:28:12.957, 15.52, 0, 0, 210, 405, 22998, 41
2026/10/09 09:28:13.957, 15.53, 0, 0, 210, 405, 22998, 40
2026/10/09 09:28:14.958, 15.52, 0, 0, 210, 405, 22998, 40
2026/10/09 09:28:15.958, 15.44, 0, 0, 210, 405, 22998, 40
2026/10/09 09:28:16.958, 15.39, 0, 0, 210, 405, 22998, 40
2026/10/09 09:28:17.959, 15.45, 0, 0, 210, 405, 22998, 40
2026/10/09 09:28:18.959, 15.48, 0, 0, 210, 405, 22998, 40
2026/10/09 09:28:19.959, 15.49, 0, 0, 210, 405, 22998, 40
2026/10/09 09:28:20.959, 15.57, 0, 0, 210, 405, 22998, 40
2026/10/09 09:28:21.960, 15.60, 0, 0, 210, 405, 22998, 40
2026/10/09 09:28:22.960, 15.58, 0, 0, 210, 405, 22998, 39
2026/10/09 09:28:23.960, 15.57, 0, 0, 210, 405, 22998, 39
2026/10/09 09:28:24.960, 15.61, 0, 0, 210, 405, 22998, 39
2026/10/09 09:28:25.961, 15.68, 0, 0, 210, 405, 22998, 39
2026/10/09 09:28:26.961, 15.71, 0, 0, 210, 405, 22998, 39
2026/10/09 09:28:27.961, 15.69, 0, 0, 210, 405, 22998, 39
2026/10/09 09:28:28.962, 15.75, 0, 0, 210, 405, 11694, 40
2026/10/09 09:28:29.987, 72.43, 100, 1, 2670, 10251, 23042, 42
2026/10/09 09:28:30.987, 87.19, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:31.987, 87.34, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:32.987, 86.72, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:33.988, 87.05, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:34.988, 86.92, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:35.988, 86.67, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:36.989, 86.73, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:37.989, 86.80, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:38.989, 86.40, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:39.989, 86.70, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:40.990, 87.21, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:41.990, 86.72, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:42.990, 86.79, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:43.990, 86.68, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:44.991, 87.05, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:45.991, 86.97, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:46.991, 86.47, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:47.992, 86.59, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:48.992, 86.12, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:49.992, 86.32, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:50.992, 86.41, 100, 1, 2670, 10251, 23042, 43
2026/10/09 09:28:51.993, 96.41, 0, 0, 2670, 10251, 23042, 41
2026/10/09 09:28:52.993, 64.56, 6, 0, 2670, 10251, 23042, 41
2026/10/09 09:28:53.993, 64.31, 0, 0, 2520, 10501, 470, 42
2026/10/09 09:28:54.993, 81.02, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:28:55.994, 79.83, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:28:56.994, 79.89, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:28:57.994, 79.93, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:28:58.995, 79.84, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:28:59.995, 79.88, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:00.995, 79.89, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:01.995, 79.77, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:02.996, 79.77, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:03.996, 79.79, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:04.996, 79.73, 100, 0, 2670, 10251, 470, 41
2026/10/09 09:29:05.996, 67.24, 0, 0, 2670, 10251, 21, 41
2026/10/09 09:29:07.015, 72.50, 45, 0, 2670, 10251, 470, 42
2026/10/09 09:29:08.015, 79.44, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:09.016, 79.41, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:10.016, 79.28, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:11.016, 79.28, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:12.017, 79.30, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:13.017, 79.25, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:14.017, 79.20, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:15.017, 79.14, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:16.018, 79.18, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:17.018, 79.25, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:18.018, 78.49, 100, 0, 2670, 10251, 470, 42
2026/10/09 09:29:19.019, 66.43, 0, 0, 2670, 10251, 470, 41
2026/10/09 09:29:20.019, 74.06, 0, 0, 2670, 10251, 2458, 42
2026/10/09 09:29:21.019, 79.75, 100, 0, 2670, 10251, 2458, 42
2026/10/09 09:29:22.019, 79.78, 100, 0, 2670, 10251, 2458, 42
2026/10/09 09:29:23.020, 79.79, 100, 0, 2670, 10251, 2458, 42
2026/10/09 09:29:24.020, 79.89, 100, 0, 2670, 10251, 2458, 42
2026/10/09 09:29:25.020, 79.80, 100, 0, 2670, 10251, 2458, 42
2026/10/09 09:29:26.021, 79.83, 100, 0, 2670, 10251, 2458, 42
2026/10/09 09:29:27.021, 79.84, 100, 0, 2670, 10251, 2458, 42
2026/10/09 09:29:28.021, 79.86, 100, 0, 2670, 10251, 2458, 42
2026/10/09 09:29:29.021, 79.78, 100, 0, 2670, 10251, 2458, 42
2026/10/09 09:29:30.022, 79.85, 100, 0, 2670, 10251, 2458, 42
2026/10/09 09:29:31.022, 76.33, 100, 0, 2670, 10251, 2458, 41
2026/10/09 09:29:32.022, 65.11, 0, 0, 2670, 10251, 2458, 41
2026/10/09 09:29:33.023, 61.91, 0, 0, 2520, 10251, 1, 40
2026/10/09 09:29:34.032, 69.31, 0, 0, 2670, 10251, 2458, 41
2026/10/09 09:29:35.032, 79.17, 100, 0, 2670, 10251, 2458, 41
2026/10/09 09:29:36.033, 79.22, 100, 0, 2670, 10251, 2458, 41
2026/10/09 09:29:37.033, 79.21, 100, 0, 2670, 10251, 2458, 41
2026/10/09 09:29:38.033, 79.18, 100, 0, 2670, 10251, 2458, 41
2026/10/09 09:29:39.033, 79.19, 100, 0, 2670, 10251, 2458, 41
2026/10/09 09:29:40.034, 79.08, 100, 0, 2670, 10251, 2458, 41
2026/10/09 09:29:41.034, 78.97, 100, 0, 2670, 10251, 2458, 41
2026/10/09 09:29:42.034, 78.99, 100, 0, 2670, 10251, 2458, 41
2026/10/09 09:29:43.035, 79.09, 100, 0, 2670, 10251, 2458, 41
2026/10/09 09:29:44.035, 79.06, 100, 0, 2670, 10251, 2458, 41
2026/10/09 09:29:45.035, 79.14, 100, 0, 2670, 10251, 2458, 41
2026/10/09 09:29:46.035, 69.98, 100, 0, 2670, 10251, 2458, 40
2026/10/09 09:29:47.036, 64.40, 0, 0, 2670, 10251, 2458, 40
2026/10/09 09:29:48.036, 62.18, 0, 0, 2520, 10251, 8614, 40
2026/10/09 09:29:49.036, 78.19, 100, 1, 2670, 10251, 8614, 41
2026/10/09 09:29:50.037, 80.54, 100, 1, 2670, 10251, 8614, 41
2026/10/09 09:29:51.037, 80.46, 100, 1, 2670, 10251, 8614, 41
2026/10/09 09:29:52.037, 80.36, 100, 1, 2670, 10251, 8614, 41
2026/10/09 09:29:53.037, 80.42, 100, 1, 2670, 10251, 8614, 41
2026/10/09 09:29:54.038, 80.43, 100, 1, 2670, 10251, 8614, 41
2026/10/09 09:29:55.038, 80.42, 100, 1, 2670, 10251, 8614, 41
2026/10/09 09:29:56.038, 80.45, 100, 1, 2670, 10251, 8614, 41
2026/10/09 09:29:57.039, 80.53, 100, 1, 2670, 10251, 8614, 41
2026/10/09 09:29:58.039, 80.44, 100, 1, 2670, 10251, 8614, 41
2026/10/09 09:29:59.039, 73.73, 96, 17, 2670, 10251, 8614, 40
2026/10/09 09:30:00.039, 72.28, 0, 0, 2670, 10251, 8614, 40
2026/10/09 09:30:01.040, 63.18, 0, 0, 2520, 10251, 8614, 40
2026/10/09 09:30:02.040, 59.87, 0, 0, 2520, 10251, 8614, 39
2026/10/09 09:30:03.040, 66.09, 62, 2, 2670, 10251, 8614, 40
2026/10/09 09:30:04.041, 64.70, 0, 0, 2670, 10251, 8614, 40
2026/10/09 09:30:05.041, 69.43, 0, 0, 2670, 10251, 8614, 40
2026/10/09 09:30:06.041, 79.90, 100, 0, 2670, 10251, 8614, 41
2026/10/09 09:30:07.041, 79.99, 100, 0, 2670, 10251, 8614, 41
2026/10/09 09:30:08.042, 79.95, 100, 0, 2670, 10251, 8614, 41
2026/10/09 09:30:09.042, 79.90, 100, 0, 2670, 10251, 8614, 41
2026/10/09 09:30:10.042, 79.90, 100, 0, 2670, 10251, 8614, 41
2026/10/09 09:30:11.042, 79.96, 100, 0, 2670, 10251, 8614, 41
2026/10/09 09:30:12.043, 80.01, 100, 0, 2670, 10251, 8614, 41
2026/10/09 09:30:13.043, 80.09, 100, 0, 2670, 10251, 8614, 41
2026/10/09 09:30:14.043, 80.04, 100, 0, 2670, 10251, 8614, 41
2026/10/09 09:30:15.044, 80.05, 100, 0, 2670, 10251, 8614, 41
2026/10/09 09:30:16.044, 79.96, 100, 0, 2670, 10251, 8614, 41
2026/10/09 09:30:17.044, 81.41, 100, 0, 2670, 10251, 8614, 45
2026/10/09 09:30:18.044, 72.72, 0, 0, 2670, 10251, 8614, 40
2026/10/09 09:30:19.045, 62.71, 0, 0, 2520, 10251, 8614, 39
2026/10/09 09:30:20.045, 61.21, 0, 0, 2520, 10251, 8614, 39
2026/10/09 09:30:21.045, 61.49, 0, 0, 2670, 10251, 8614, 39
2026/10/09 09:30:22.046, 65.43, 0, 0, 2670, 10251, 8614, 39
2026/10/09 09:30:23.046, 64.35, 99, 7, 2520, 10251, 22, 39
2026/10/09 09:30:24.046, 253.29, 100, 35, 2655, 10251, 23070, 53
2026/10/09 09:30:25.047, 317.02, 100, 28, 2655, 10251, 23070, 58
2026/10/09 09:30:26.047, 320.76, 100, 29, 2655, 10251, 23070, 61
2026/10/09 09:30:27.047, 319.67, 100, 33, 2655, 10251, 23070, 59
2026/10/09 09:30:28.047, 321.51, 100, 25, 2655, 10251, 23070, 62
2026/10/09 09:30:29.048, 320.74, 100, 33, 2655, 10251, 23070, 57
2026/10/09 09:30:30.048, 318.79, 100, 32, 2655, 10251, 23070, 61
2026/10/09 09:30:31.048, 322.72, 100, 26, 2655, 10251, 23070, 63
2026/10/09 09:30:32.049, 320.73, 100, 34, 2655, 10251, 23070, 57
2026/10/09 09:30:33.049, 322.26, 100, 31, 2655, 10251, 23070, 62
2026/10/09 09:30:34.049, 323.12, 100, 26, 2655, 10251, 23070, 63
2026/10/09 09:30:35.049, 321.20, 100, 35, 2655, 10251, 23070, 58
2026/10/09 09:30:36.050, 320.36, 100, 30, 2655, 10251, 23070, 63
2026/10/09 09:30:37.050, 324.21, 100, 27, 2655, 10251, 23070, 65
2026/10/09 09:30:38.050, 320.98, 100, 35, 2655, 10251, 23070, 58
2026/10/09 09:30:39.051, 320.73, 100, 29, 2655, 10251, 23070, 64
2026/10/09 09:30:40.051, 324.10, 100, 28, 2655, 10251, 23070, 62
2026/10/09 09:30:41.051, 319.81, 100, 35, 2640, 10251, 23070, 59
2026/10/09 09:30:42.051, 319.73, 100, 30, 2640, 10251, 23070, 64
2026/10/09 09:30:43.052, 324.18, 100, 26, 2640, 10251, 23070, 66
2026/10/09 09:30:44.052, 198.06, 0, 0, 2655, 10251, 23070, 46
2026/10/09 09:30:45.052, 67.92, 0, 0, 2655, 10251, 23070, 45
2026/10/09 09:30:46.053, 66.94, 0, 0, 2655, 10251, 23070, 45
2026/10/09 09:30:47.053, 64.34, 0, 0, 2520, 10251, 23070, 44
2026/10/09 09:30:48.053, 62.08, 0, 0, 2520, 10251, 23070, 43
2026/10/09 09:30:49.053, 59.98, 0, 0, 2520, 10251, 23070, 43
2026/10/09 09:30:50.054, 59.95, 0, 0, 2520, 10251, 23070, 43
2026/10/09 09:30:51.054, 59.88, 0, 0, 2520, 10251, 23070, 43
2026/10/09 09:30:52.054, 59.80, 0, 0, 2520, 10251, 23070, 42
2026/10/09 09:30:53.055, 59.76, 0, 0, 2520, 10251, 23070, 42
2026/10/09 09:30:54.055, 59.68, 0, 0, 2520, 10251, 23070, 42
2026/10/09 09:30:55.055, 59.64, 0, 0, 2520, 10251, 23070, 42
2026/10/09 09:30:56.055, 59.63, 0, 0, 2520, 10251, 23070, 42
2026/10/09 09:30:57.056, 64.30, 62, 2, 2670, 10251, 23070, 42
2026/10/09 09:30:58.056, 69.06, 0, 0, 2670, 10251, 23070, 42
2026/10/09 09:30:59.056, 65.91, 0, 0, 2670, 10251, 23070, 42
2026/10/09 09:31:00.057, 68.25, 86, 9, 2670, 10251, 23072, 47
2026/10/09 09:31:01.057, 179.33, 100, 15, 2655, 10251, 23072, 50
2026/10/09 09:31:02.057, 197.90, 100, 15, 2655, 10251, 23072, 51
2026/10/09 09:31:03.057, 198.35, 100, 15, 2655, 10251, 23072, 51
2026/10/09 09:31:04.058, 198.71, 100, 15, 2655, 10251, 23072, 51
2026/10/09 09:31:05.058, 198.50, 100, 15, 2655, 10251, 23072, 52
2026/10/09 09:31:06.058, 198.66, 100, 15, 2655, 10251, 23072, 52
2026/10/09 09:31:07.059, 198.52, 100, 15, 2655, 10251, 23072, 52
2026/10/09 09:31:08.059, 198.71, 100, 15, 2655, 10251, 23072, 52
2026/10/09 09:31:09.059, 198.60, 100, 15, 2655, 10251, 23072, 52
2026/10/09 09:31:10.059, 198.79, 100, 15, 2655, 10251, 23072, 52
2026/10/09 09:31:11.060, 198.85, 100, 15, 2655, 10251, 23072, 52
2026/10/09 09:31:12.060, 198.80, 100, 15, 2655, 10251, 23072, 52
2026/10/09 09:31:13.060, 198.66, 100, 15, 2655, 10251, 23072, 52
2026/10/09 09:31:14.061, 198.77, 100, 15, 2655, 10251, 23072, 52
2026/10/09 09:31:15.061, 198.40, 100, 15, 2655, 10251, 23072, 52
2026/10/09 09:31:16.061, 198.27, 100, 15, 2655, 10251, 23072, 52
2026/10/09 09:31:17.061, 198.50, 100, 15, 2655, 10251, 23072, 52
2026/10/09 09:31:18.062, 199.08, 100, 15, 2655, 10251, 23072, 53
2026/10/09 09:31:19.062, 199.29, 100, 15, 2655, 10251, 23072, 53
2026/10/09 09:31:20.062, 198.94, 100, 15, 2655, 10251, 23072, 53
2026/10/09 09:31:21.062, 117.09, 0, 0, 2670, 10251, 23072, 45
2026/10/09 09:31:22.063, 66.38, 0, 0, 2670, 10251, 23072, 44
2026/10/09 09:31:23.063, 62.98, 0, 0, 2520, 10251, 23072, 43
2026/10/09 09:31:24.063, 61.35, 0, 0, 2520, 10251, 23072, 43
2026/10/09 09:31:25.064, 60.01, 0, 0, 2520, 10251, 23072, 43
2026/10/09 09:31:26.064, 60.01, 0, 0, 2520, 10251, 23072, 43
2026/10/09 09:31:27.064, 59.97, 0, 0, 2520, 10251, 23072, 42
2026/10/09 09:31:28.065, 59.93, 0, 0, 2520, 10251, 23072, 42
2026/10/09 09:31:29.065, 59.93, 0, 0, 2520, 10251, 23072, 42
2026/10/09 09:31:30.065, 59.94, 0, 0, 2520, 10251, 23072, 42
2026/10/09 09:31:31.066, 59.99, 0, 0, 2520, 10251, 23072, 42
2026/10/09 09:31:32.066, 62.99, 61, 2, 2670, 10251, 23072, 42
2026/10/09 09:31:33.066, 70.17, 61, 2, 2670, 10251, 23072, 42
2026/10/09 09:31:34.066, 66.30, 0, 0, 2670, 10251, 23072, 42
2026/10/09 09:31:35.067, 64.64, 100, 7, 2520, 10251, 11654, 42
2026/10/09 09:31:36.102, 94.93, 100, 3, 2670, 10251, 23070, 45
2026/10/09 09:31:37.102, 111.44, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:38.102, 111.81, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:39.103, 111.75, 100, 3, 2670, 10251, 23070, 45
2026/10/09 09:31:40.103, 111.68, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:41.103, 112.03, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:42.103, 111.63, 100, 3, 2670, 10251, 23070, 45
2026/10/09 09:31:43.104, 111.67, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:44.104, 111.63, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:45.104, 111.82, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:46.105, 111.56, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:47.105, 111.63, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:48.105, 111.07, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:49.106, 111.18, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:50.106, 111.23, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:51.106, 111.25, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:52.106, 111.24, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:53.107, 110.97, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:54.107, 110.42, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:55.107, 110.77, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:56.108, 112.36, 100, 4, 2670, 10251, 23070, 45
2026/10/09 09:31:57.108, 67.65, 0, 0, 2670, 10251, 23070, 42
2026/10/09 09:31:58.108, 63.90, 0, 0, 2520, 10251, 23070, 42
2026/10/09 09:31:59.108, 61.85, 0, 0, 2520, 10251, 23070, 42
2026/10/09 09:32:00.109, 59.94, 0, 0, 2520, 10251, 23070, 41
2026/10/09 09:32:01.109, 59.94, 0, 0, 2520, 10251, 23070, 41
2026/10/09 09:32:02.109, 59.90, 0, 0, 2520, 10251, 23070, 41
2026/10/09 09:32:03.109, 59.87, 0, 0, 2520, 10251, 23070, 41
2026/10/09 09:32:04.110, 59.88, 0, 0, 2520, 10251, 23070, 41
2026/10/09 09:32:05.110, 59.86, 0, 0, 2520, 10251, 23070, 41
2026/10/09 09:32:06.110, 59.83, 0, 0, 2520, 10251, 23070, 41
2026/10/09 09:32:07.111, 64.11, 0, 0, 2670, 10251, 23070, 41
2026/10/09 09:32:08.111, 69.77, 55, 2, 2670, 10251, 23070, 41
2026/10/09 09:32:09.111, 65.86, 59, 2, 2670, 10251, 23070, 41
2026/10/09 09:32:10.111, 65.37, 0, 0, 2670, 10251, 23070, 41
2026/10/09 09:32:11.112, 65.17, 0, 0, 2670, 10501, 1, 41
2026/10/09 09:32:12.112, 67.37, 0, 0, 2670, 10501, 1, 41
2026/10/09 09:32:13.112, 61.96, 0, 0, 540, 5001, 1, 41
2026/10/09 09:32:14.112, 44.49, 0, 0, 345, 810, 1, 40
2026/10/09 09:32:15.113, 24.88, 0, 0, 225, 810, 1, 39
2026/10/09 09:32:16.113, 19.96, 0, 0, 210, 405, 1, 39
2026/10/09 09:32:17.113, 16.51, 0, 0, 210, 405, 1, 39
2026/10/09 09:32:18.114, 15.51, 0, 0, 210, 405, 1, 38
2026/10/09 09:32:19.114, 15.47, 0, 0, 210, 405, 1, 38
2026/10/09 09:32:20.114, 15.51, 0, 0, 210, 405, 1, 38
2026/10/09 09:32:21.115, 15.56, 0, 0, 210, 405, 1, 38
2026/10/09 09:32:22.115, 15.48, 0, 0, 210, 405, 1, 38
2026/10/09 09:32:23.115, 15.49, 0, 0, 210, 405, 1, 38
1 2026/10/09 09:22:19.852 15.00 0 0 210 405 1 38
2 2026/10/09 09:22:20.854 14.93 0 0 210 405 1 38
3 2026/10/09 09:22:21.854 15.03 0 0 210 405 1 38
4 2026/10/09 09:22:22.854 15.06 0 0 210 405 1 38
5 2026/10/09 09:22:23.854 15.02 0 0 210 405 1 38
6 2026/10/09 09:22:24.855 15.02 0 0 210 405 1 38
7 2026/10/09 09:22:25.855 15.04 0 0 210 405 1 38
8 2026/10/09 09:22:26.855 15.03 0 0 210 405 1 38
9 2026/10/09 09:22:27.856 15.01 0 0 210 405 1 38
10 2026/10/09 09:22:28.856 15.05 0 0 210 405 1 38
11 2026/10/09 09:22:29.856 15.08 0 0 210 405 1 38
12 2026/10/09 09:22:30.856 15.09 0 0 210 405 1 38
13 2026/10/09 09:22:31.857 14.99 0 0 210 405 1 38
14 2026/10/09 09:22:32.857 14.89 0 0 210 405 1 38
15 2026/10/09 09:22:33.857 14.95 0 0 210 405 1 38
16 2026/10/09 09:22:34.858 14.96 0 0 210 405 1 38
17 2026/10/09 09:22:35.858 14.90 0 0 210 405 1 38
18 2026/10/09 09:22:36.858 14.94 0 0 210 405 1 38
19 2026/10/09 09:22:37.858 15.05 0 0 210 405 1 38
20 2026/10/09 09:22:38.859 15.10 0 0 210 405 1 38
21 2026/10/09 09:22:39.859 15.07 0 0 210 405 1 38
22 2026/10/09 09:22:40.859 14.95 0 0 210 405 1 38
23 2026/10/09 09:22:41.860 14.92 0 0 210 405 1 38
24 2026/10/09 09:22:42.860 15.02 0 0 210 405 1 38
25 2026/10/09 09:22:43.860 14.99 0 0 210 405 1 38
26 2026/10/09 09:22:44.860 14.94 0 0 210 405 1 38
27 2026/10/09 09:22:45.861 14.96 0 0 210 405 1 39
28 2026/10/09 09:22:46.861 14.98 0 0 210 405 1 39
29 2026/10/09 09:22:47.861 14.95 0 0 210 405 1 39
30 2026/10/09 09:22:48.862 14.90 0 0 210 405 1 38
31 2026/10/09 09:22:49.862 14.90 0 0 210 405 1 38
32 2026/10/09 09:22:50.867 33.81 0 0 2670 10251 23042 41
33 2026/10/09 09:22:51.867 82.88 100 1 2670 10251 23042 42
34 2026/10/09 09:22:52.867 83.21 100 1 2670 10251 23042 42
35 2026/10/09 09:22:53.867 83.29 100 1 2670 10251 23042 43
36 2026/10/09 09:22:54.868 83.69 100 1 2670 10251 23042 43
37 2026/10/09 09:22:55.868 83.84 100 1 2670 10251 23042 43
38 2026/10/09 09:22:56.868 84.14 100 1 2670 10251 23042 43
39 2026/10/09 09:22:57.868 83.86 100 1 2670 10251 23042 43
40 2026/10/09 09:22:58.869 83.94 100 1 2670 10251 23042 43
41 2026/10/09 09:22:59.869 83.95 100 1 2670 10251 23042 43
42 2026/10/09 09:23:00.869 83.63 100 1 2670 10251 23042 43
43 2026/10/09 09:23:01.870 83.69 100 1 2670 10251 23042 43
44 2026/10/09 09:23:02.870 84.34 100 1 2670 10251 23042 43
45 2026/10/09 09:23:03.870 84.49 100 1 2670 10251 23042 43
46 2026/10/09 09:23:04.870 84.44 100 1 2670 10251 23042 44
47 2026/10/09 09:23:05.871 84.09 100 1 2670 10251 23042 44
48 2026/10/09 09:23:06.871 84.06 100 1 2670 10251 23042 44
49 2026/10/09 09:23:07.871 83.91 100 1 2670 10251 23042 44
50 2026/10/09 09:23:08.871 83.76 100 1 2670 10251 23042 44
51 2026/10/09 09:23:09.872 83.99 100 1 2670 10251 23042 44
52 2026/10/09 09:23:10.872 84.04 100 1 2670 10251 23042 44
53 2026/10/09 09:23:11.872 84.10 100 1 2655 10251 23042 44
54 2026/10/09 09:23:12.872 90.46 0 0 2670 10251 23042 43
55 2026/10/09 09:23:13.873 85.14 0 0 2520 10251 23042 43
56 2026/10/09 09:23:14.873 62.94 0 0 2520 10251 23042 42
57 2026/10/09 09:23:15.873 60.88 0 0 2520 10251 23042 42
58 2026/10/09 09:23:16.873 59.05 0 0 2520 10251 23042 42
59 2026/10/09 09:23:17.874 59.02 0 0 2520 10251 23042 42
60 2026/10/09 09:23:18.874 59.05 0 0 2520 10251 23042 42
61 2026/10/09 09:23:19.874 59.13 0 0 2520 10251 23042 42
62 2026/10/09 09:23:20.875 59.13 0 0 2520 10251 23042 42
63 2026/10/09 09:23:21.875 59.11 0 0 2520 10251 23042 42
64 2026/10/09 09:23:22.875 59.16 0 0 2610 10251 23042 42
65 2026/10/09 09:23:23.876 62.93 59 2 2670 10251 23042 43
66 2026/10/09 09:23:24.876 69.61 62 2 2670 10251 23042 43
67 2026/10/09 09:23:25.876 65.25 0 0 2670 10251 23042 43
68 2026/10/09 09:23:26.876 63.22 0 0 2520 10251 23042 43
69 2026/10/09 09:23:27.877 61.24 0 0 2520 10251 23042 43
70 2026/10/09 09:23:28.877 60.17 0 0 2670 10251 23042 43
71 2026/10/09 09:23:29.877 86.63 100 2 2670 10251 23042 45
72 2026/10/09 09:23:30.878 95.49 100 2 2670 10251 23042 45
73 2026/10/09 09:23:31.878 95.70 100 2 2670 10251 23042 45
74 2026/10/09 09:23:32.878 95.66 100 2 2670 10251 23042 45
75 2026/10/09 09:23:33.878 95.69 100 2 2670 10251 23042 45
76 2026/10/09 09:23:34.878 95.85 100 2 2670 10251 23042 45
77 2026/10/09 09:23:35.879 95.72 100 2 2670 10251 23042 46
78 2026/10/09 09:23:36.879 96.13 100 2 2670 10251 23042 46
79 2026/10/09 09:23:37.879 96.04 100 2 2670 10251 23042 46
80 2026/10/09 09:23:38.879 95.97 100 2 2670 10251 23042 46
81 2026/10/09 09:23:39.880 96.37 100 2 2670 10251 23042 46
82 2026/10/09 09:23:40.880 96.32 100 2 2670 10251 23042 46
83 2026/10/09 09:23:41.880 96.36 100 2 2670 10251 23042 46
84 2026/10/09 09:23:42.880 96.00 100 2 2670 10251 23042 46
85 2026/10/09 09:23:43.881 95.66 100 2 2670 10251 23042 46
86 2026/10/09 09:23:44.881 96.16 100 2 2670 10251 23042 46
87 2026/10/09 09:23:45.881 96.35 100 2 2670 10251 23042 46
88 2026/10/09 09:23:46.881 96.52 100 2 2670 10251 23042 46
89 2026/10/09 09:23:47.882 95.91 100 2 2670 10251 23042 46
90 2026/10/09 09:23:48.882 95.83 100 2 2670 10251 23042 46
91 2026/10/09 09:23:49.882 101.32 41 37 2655 10251 23042 45
92 2026/10/09 09:23:50.882 87.47 0 0 2655 10251 23042 45
93 2026/10/09 09:23:51.883 63.80 0 0 2520 10251 23042 45
94 2026/10/09 09:23:52.883 61.48 0 0 2520 10251 23042 44
95 2026/10/09 09:23:53.883 59.29 0 0 2520 10251 23042 44
96 2026/10/09 09:23:54.883 59.27 0 0 2520 10251 23042 44
97 2026/10/09 09:23:55.884 59.32 0 0 2520 10251 23042 44
98 2026/10/09 09:23:56.884 59.33 0 0 2520 10251 23042 44
99 2026/10/09 09:23:57.884 59.31 0 0 2520 10251 23042 44
100 2026/10/09 09:23:58.885 59.37 0 0 2520 10251 23042 44
101 2026/10/09 09:23:59.885 59.47 0 0 2520 10251 23042 44
102 2026/10/09 09:24:00.885 68.01 60 2 2670 10251 23042 45
103 2026/10/09 09:24:01.885 68.94 54 2 2670 10251 23042 45
104 2026/10/09 09:24:02.886 66.36 0 0 2670 10251 23042 45
105 2026/10/09 09:24:03.886 64.14 0 0 2520 10251 23042 45
106 2026/10/09 09:24:04.886 61.65 0 0 2520 10251 23042 45
107 2026/10/09 09:24:05.887 65.22 73 5 2670 10251 22958 45
108 2026/10/09 09:24:06.887 79.81 100 0 2670 10251 22958 46
109 2026/10/09 09:24:07.887 79.85 100 0 2670 10251 22958 46
110 2026/10/09 09:24:08.887 79.90 100 0 2670 10251 22958 46
111 2026/10/09 09:24:09.888 79.82 100 0 2670 10251 22958 46
112 2026/10/09 09:24:10.888 79.90 100 0 2670 10251 22958 47
113 2026/10/09 09:24:11.888 79.98 100 0 2670 10251 22958 47
114 2026/10/09 09:24:12.888 79.95 100 0 2670 10251 22958 47
115 2026/10/09 09:24:13.889 79.76 100 0 2670 10251 22958 47
116 2026/10/09 09:24:14.889 79.91 100 0 2670 10251 22958 47
117 2026/10/09 09:24:15.889 79.98 100 0 2670 10251 22958 47
118 2026/10/09 09:24:16.890 79.89 100 0 2670 10251 22958 47
119 2026/10/09 09:24:17.890 79.94 100 0 2670 10251 22958 47
120 2026/10/09 09:24:18.890 79.88 100 0 2670 10251 22958 47
121 2026/10/09 09:24:19.890 79.89 100 0 2670 10251 22958 47
122 2026/10/09 09:24:20.891 80.02 100 0 2670 10251 22958 47
123 2026/10/09 09:24:21.891 79.99 100 0 2670 10251 22958 47
124 2026/10/09 09:24:22.891 79.98 100 0 2670 10251 22958 47
125 2026/10/09 09:24:23.891 79.86 100 0 2670 10251 22958 47
126 2026/10/09 09:24:24.892 79.82 100 0 2670 10251 22958 47
127 2026/10/09 09:24:25.892 79.85 100 0 2670 10251 22958 47
128 2026/10/09 09:24:26.892 80.00 100 0 2670 10251 22958 47
129 2026/10/09 09:24:27.893 79.93 100 0 2670 10251 22958 48
130 2026/10/09 09:24:28.893 79.95 100 0 2670 10251 22958 48
131 2026/10/09 09:24:29.893 80.02 100 0 2670 10251 22958 48
132 2026/10/09 09:24:30.893 80.03 100 0 2670 10251 22958 48
133 2026/10/09 09:24:31.894 80.03 100 0 2670 10251 22958 48
134 2026/10/09 09:24:32.894 80.04 100 0 2670 10251 22958 48
135 2026/10/09 09:24:33.894 80.17 100 0 2670 10251 22958 48
136 2026/10/09 09:24:34.894 97.04 100 0 2655 10251 22958 48
137 2026/10/09 09:24:35.895 87.18 0 0 2655 10251 22958 47
138 2026/10/09 09:24:36.895 64.89 0 0 2520 10251 22958 47
139 2026/10/09 09:24:37.895 62.17 0 0 2520 10251 22958 47
140 2026/10/09 09:24:38.896 59.64 0 0 2520 10251 22958 46
141 2026/10/09 09:24:39.896 59.60 0 0 2520 10251 22958 46
142 2026/10/09 09:24:40.896 59.58 0 0 2520 10251 22958 46
143 2026/10/09 09:24:41.896 59.62 0 0 2520 10251 22958 46
144 2026/10/09 09:24:42.897 59.64 0 0 2520 10251 22958 46
145 2026/10/09 09:24:43.897 59.61 0 0 2520 10251 22958 46
146 2026/10/09 09:24:44.897 59.64 0 0 2520 10251 22958 46
147 2026/10/09 09:24:45.897 64.03 62 2 2655 10251 22958 47
148 2026/10/09 09:24:46.898 70.64 34 1 2655 10251 22958 47
149 2026/10/09 09:24:47.898 68.45 0 0 2655 10251 22958 47
150 2026/10/09 09:24:48.898 67.11 0 0 2655 10251 22958 47
151 2026/10/09 09:24:49.899 64.89 0 0 2520 10251 22958 47
152 2026/10/09 09:24:50.899 62.14 0 0 2520 10251 22958 47
153 2026/10/09 09:24:51.899 59.56 0 0 2520 10251 22958 47
154 2026/10/09 09:24:52.899 59.48 0 0 2520 10251 22958 47
155 2026/10/09 09:24:53.900 59.47 0 0 2520 10251 22958 47
156 2026/10/09 09:24:54.900 59.57 0 0 2520 10251 22958 47
157 2026/10/09 09:24:55.900 59.62 0 0 2520 10251 22958 47
158 2026/10/09 09:24:56.901 59.63 0 0 2520 10251 22958 47
159 2026/10/09 09:24:57.901 59.59 0 0 2520 10251 2 47
160 2026/10/09 09:24:58.901 69.60 100 8 2655 10251 22958 48
161 2026/10/09 09:24:59.902 81.82 100 0 2655 10251 22958 49
162 2026/10/09 09:25:00.902 81.93 100 0 2655 10251 22958 49
163 2026/10/09 09:25:01.902 82.14 100 0 2655 10251 22958 49
164 2026/10/09 09:25:02.902 81.91 100 0 2655 10251 22958 49
165 2026/10/09 09:25:03.903 82.03 100 0 2655 10251 22958 49
166 2026/10/09 09:25:04.903 82.11 100 0 2655 10251 22958 49
167 2026/10/09 09:25:05.903 82.43 100 0 2655 10251 22958 49
168 2026/10/09 09:25:06.904 82.52 100 0 2655 10251 22958 49
169 2026/10/09 09:25:07.904 82.22 100 0 2655 10251 22958 49
170 2026/10/09 09:25:08.904 82.35 100 0 2655 10251 22958 49
171 2026/10/09 09:25:09.904 82.25 100 0 2655 10251 22958 49
172 2026/10/09 09:25:10.905 82.28 100 0 2655 10251 22958 49
173 2026/10/09 09:25:11.905 82.47 100 0 2655 10251 22958 49
174 2026/10/09 09:25:12.905 82.42 100 0 2655 10251 22958 49
175 2026/10/09 09:25:13.905 82.52 100 0 2655 10251 22958 50
176 2026/10/09 09:25:14.906 82.40 100 0 2655 10251 22958 50
177 2026/10/09 09:25:15.906 82.16 100 0 2655 10251 22958 50
178 2026/10/09 09:25:16.906 82.24 100 0 2655 10251 22958 50
179 2026/10/09 09:25:17.907 82.42 100 0 2655 10251 22958 50
180 2026/10/09 09:25:18.907 82.55 100 0 2655 10251 22958 50
181 2026/10/09 09:25:19.907 82.58 100 0 2655 10251 22958 50
182 2026/10/09 09:25:20.907 82.53 100 0 2655 10251 22958 50
183 2026/10/09 09:25:21.908 82.39 76 46 2655 10251 22958 50
184 2026/10/09 09:25:22.908 86.80 0 0 2655 10251 22958 49
185 2026/10/09 09:25:23.908 65.18 0 0 2520 10251 22958 48
186 2026/10/09 09:25:24.909 62.38 0 0 2520 10251 22958 48
187 2026/10/09 09:25:25.909 59.65 0 0 2520 10251 22958 48
188 2026/10/09 09:25:26.909 59.63 0 0 2520 10251 22958 48
189 2026/10/09 09:25:27.909 59.65 0 0 2520 10251 22958 48
190 2026/10/09 09:25:28.910 59.58 0 0 2520 10251 22958 48
191 2026/10/09 09:25:29.910 59.58 0 0 2520 10251 22958 48
192 2026/10/09 09:25:30.910 59.61 0 0 2520 10251 22958 48
193 2026/10/09 09:25:31.911 59.58 0 0 2520 10251 22958 48
194 2026/10/09 09:25:32.911 59.92 59 2 2655 10251 22958 49
195 2026/10/09 09:25:33.911 70.60 61 2 2655 10251 22958 49
196 2026/10/09 09:25:34.912 69.48 0 0 2655 10251 22958 49
197 2026/10/09 09:25:35.912 67.54 0 0 2655 10251 22958 49
198 2026/10/09 09:25:36.912 66.02 0 0 2520 10251 22958 49
199 2026/10/09 09:25:37.912 62.83 0 0 2520 10251 22958 48
200 2026/10/09 09:25:38.913 59.78 0 0 2520 10251 22958 48
201 2026/10/09 09:25:39.913 59.75 0 0 2520 10251 22958 48
202 2026/10/09 09:25:40.913 59.68 0 0 2520 10251 22958 48
203 2026/10/09 09:25:41.914 59.69 0 0 2520 10251 22958 48
204 2026/10/09 09:25:42.914 59.72 0 0 2520 10251 22958 49
205 2026/10/09 09:25:43.914 59.78 0 0 2520 10251 22958 49
206 2026/10/09 09:25:44.914 59.78 0 0 2520 10501 21 49
207 2026/10/09 09:25:45.915 66.33 100 0 2655 10251 22998 50
208 2026/10/09 09:25:46.916 79.04 100 0 2655 10251 22998 50
209 2026/10/09 09:25:47.916 79.75 100 0 2655 10251 22998 50
210 2026/10/09 09:25:48.916 79.90 100 0 2655 10251 22998 50
211 2026/10/09 09:25:49.916 79.69 100 0 2655 10251 22998 51
212 2026/10/09 09:25:50.917 79.82 100 0 2655 10251 22998 51
213 2026/10/09 09:25:51.917 79.90 100 0 2655 10251 22998 51
214 2026/10/09 09:25:52.917 79.90 100 0 2655 10251 22998 51
215 2026/10/09 09:25:53.918 79.87 100 0 2655 10251 22998 51
216 2026/10/09 09:25:54.918 79.74 100 0 2655 10251 22998 51
217 2026/10/09 09:25:55.918 80.00 100 0 2655 10251 22998 51
218 2026/10/09 09:25:56.918 79.98 100 0 2655 10251 22998 51
219 2026/10/09 09:25:57.919 80.21 100 0 2655 10251 22998 51
220 2026/10/09 09:25:58.919 79.90 100 0 2655 10251 22998 51
221 2026/10/09 09:25:59.919 79.92 100 0 2655 10251 22998 51
222 2026/10/09 09:26:00.919 79.95 100 0 2655 10251 22998 51
223 2026/10/09 09:26:01.920 80.15 100 0 2655 10251 22998 51
224 2026/10/09 09:26:02.920 80.14 100 0 2655 10251 22998 51
225 2026/10/09 09:26:03.920 80.22 100 0 2655 10251 22998 51
226 2026/10/09 09:26:04.921 80.06 100 0 2655 10251 22998 51
227 2026/10/09 09:26:05.921 80.02 100 0 2655 10251 22998 51
228 2026/10/09 09:26:06.921 80.10 100 0 2655 10251 22998 51
229 2026/10/09 09:26:07.921 80.24 100 0 2655 10251 22998 51
230 2026/10/09 09:26:08.922 80.16 100 0 2655 10251 22998 51
231 2026/10/09 09:26:09.922 80.16 100 0 2655 10251 22998 52
232 2026/10/09 09:26:10.922 80.27 100 0 2655 10251 22998 52
233 2026/10/09 09:26:11.922 80.16 100 0 2655 10251 22998 52
234 2026/10/09 09:26:12.923 80.15 100 0 2655 10251 22998 52
235 2026/10/09 09:26:13.923 80.15 100 0 2655 10251 22998 52
236 2026/10/09 09:26:14.923 80.27 100 0 2655 10251 22998 52
237 2026/10/09 09:26:15.924 80.24 100 0 2655 10251 22998 52
238 2026/10/09 09:26:16.924 80.24 100 0 2655 10251 22998 52
239 2026/10/09 09:26:17.924 80.31 100 0 2655 10251 22998 52
240 2026/10/09 09:26:18.924 80.28 100 0 2655 10251 22998 52
241 2026/10/09 09:26:19.925 80.31 100 0 2655 10251 22998 52
242 2026/10/09 09:26:20.925 80.22 100 0 2655 10251 22998 52
243 2026/10/09 09:26:21.925 80.35 100 0 2655 10251 22998 52
244 2026/10/09 09:26:22.925 80.25 100 0 2655 10251 22998 52
245 2026/10/09 09:26:23.926 80.42 100 0 2655 10251 22998 52
246 2026/10/09 09:26:24.926 92.58 0 0 2655 10251 22998 51
247 2026/10/09 09:26:25.926 89.34 0 0 2520 10251 22998 51
248 2026/10/09 09:26:26.926 68.21 0 0 2520 10251 22998 51
249 2026/10/09 09:26:27.927 64.21 0 0 2520 10251 22998 51
250 2026/10/09 09:26:28.927 60.18 0 0 2520 10251 22998 51
251 2026/10/09 09:26:29.927 60.12 0 0 2520 10251 22998 51
252 2026/10/09 09:26:30.928 60.10 0 0 2520 10251 22998 51
253 2026/10/09 09:26:31.928 60.12 0 0 2520 10251 22998 51
254 2026/10/09 09:26:32.928 60.18 0 0 2520 10251 22998 51
255 2026/10/09 09:26:33.928 60.13 0 0 2520 10251 22998 51
256 2026/10/09 09:26:34.929 63.21 62 2 2655 10251 22998 51
257 2026/10/09 09:26:35.929 72.71 62 2 2655 10251 22998 51
258 2026/10/09 09:26:36.929 69.82 0 0 2655 10251 22998 51
259 2026/10/09 09:26:37.930 69.07 0 0 2655 10251 22998 51
260 2026/10/09 09:26:38.930 66.96 0 0 2520 10251 22998 51
261 2026/10/09 09:26:39.930 63.49 0 0 2520 10251 22998 51
262 2026/10/09 09:26:40.930 60.19 0 0 2520 10251 22998 51
263 2026/10/09 09:26:41.931 60.20 0 0 2520 10251 22998 51
264 2026/10/09 09:26:42.931 60.26 0 0 2520 10251 22998 51
265 2026/10/09 09:26:43.931 60.31 0 0 2520 10251 22998 51
266 2026/10/09 09:26:44.932 60.32 0 0 2520 10251 22998 51
267 2026/10/09 09:26:45.932 60.25 0 0 2520 10251 22998 51
268 2026/10/09 09:26:46.932 60.17 0 0 2520 10251 22998 51
269 2026/10/09 09:26:47.932 60.14 0 0 2520 10251 22998 51
270 2026/10/09 09:26:48.933 60.14 0 0 2520 10251 22998 51
271 2026/10/09 09:26:49.933 60.17 0 0 2520 10251 22998 51
272 2026/10/09 09:26:50.933 60.33 0 0 2520 10251 22998 51
273 2026/10/09 09:26:51.934 61.28 0 0 2520 10251 22998 51
274 2026/10/09 09:26:52.934 61.44 0 0 2520 10251 22998 51
275 2026/10/09 09:26:53.934 59.93 0 0 510 810 22998 51
276 2026/10/09 09:26:54.935 25.35 0 0 345 810 22998 49
277 2026/10/09 09:26:55.935 21.58 0 0 225 405 22998 49
278 2026/10/09 09:26:56.935 16.91 0 0 210 405 22998 49
279 2026/10/09 09:26:57.936 16.04 0 0 210 405 22998 49
280 2026/10/09 09:26:58.936 16.10 0 0 210 405 22998 49
281 2026/10/09 09:26:59.936 16.12 0 0 210 405 22998 49
282 2026/10/09 09:27:00.937 16.09 0 0 210 405 22998 48
283 2026/10/09 09:27:01.937 16.04 0 0 210 405 22998 48
284 2026/10/09 09:27:02.937 15.98 0 0 210 405 22998 48
285 2026/10/09 09:27:03.937 15.92 0 0 210 405 22998 48
286 2026/10/09 09:27:04.938 15.87 0 0 210 405 22998 48
287 2026/10/09 09:27:05.938 15.84 0 0 210 405 22998 47
288 2026/10/09 09:27:06.938 15.81 0 0 210 405 22998 47
289 2026/10/09 09:27:07.939 15.77 0 0 210 405 22998 47
290 2026/10/09 09:27:08.939 15.79 0 0 210 405 22998 47
291 2026/10/09 09:27:09.939 15.77 0 0 210 405 22998 47
292 2026/10/09 09:27:10.939 15.77 0 0 210 405 22998 46
293 2026/10/09 09:27:11.940 15.81 0 0 210 405 22998 46
294 2026/10/09 09:27:12.940 15.77 0 0 210 405 22998 46
295 2026/10/09 09:27:13.940 15.68 0 0 210 405 22998 46
296 2026/10/09 09:27:14.940 22.26 100 8 2520 10501 396 46
297 2026/10/09 09:27:15.941 77.00 100 0 2655 10251 22998 48
298 2026/10/09 09:27:16.941 80.62 100 0 2655 10251 22998 49
299 2026/10/09 09:27:17.941 80.60 100 0 2655 10251 22998 49
300 2026/10/09 09:27:18.942 80.53 100 0 2655 10251 22998 49
301 2026/10/09 09:27:19.942 80.60 100 0 2655 10251 22998 49
302 2026/10/09 09:27:20.942 80.48 100 0 2655 10251 22998 48
303 2026/10/09 09:27:21.942 80.53 100 0 2655 10251 22998 48
304 2026/10/09 09:27:22.943 80.41 100 0 2655 10251 22998 48
305 2026/10/09 09:27:23.943 80.50 100 0 2655 10251 22998 48
306 2026/10/09 09:27:24.943 80.45 100 0 2655 10251 22998 48
307 2026/10/09 09:27:25.943 80.53 100 0 2655 10251 22998 48
308 2026/10/09 09:27:26.944 80.49 100 0 2655 10251 22998 48
309 2026/10/09 09:27:27.944 80.55 100 0 2655 10251 22998 48
310 2026/10/09 09:27:28.944 80.38 100 0 2655 10251 22998 48
311 2026/10/09 09:27:29.944 80.45 100 0 2655 10251 22998 48
312 2026/10/09 09:27:30.945 80.60 100 0 2655 10251 22998 48
313 2026/10/09 09:27:31.945 80.38 100 0 2655 10251 22998 48
314 2026/10/09 09:27:32.945 80.32 100 0 2655 10251 22998 48
315 2026/10/09 09:27:33.946 80.42 100 0 2655 10251 22998 47
316 2026/10/09 09:27:34.946 80.33 100 0 2655 10251 22998 47
317 2026/10/09 09:27:35.946 80.35 100 0 2655 10251 22998 47
318 2026/10/09 09:27:36.946 80.45 100 0 2655 10251 22998 47
319 2026/10/09 09:27:37.947 80.25 100 0 2655 10251 22998 47
320 2026/10/09 09:27:38.947 88.14 0 0 2655 10251 22998 46
321 2026/10/09 09:27:39.947 86.87 0 0 2655 10251 22998 46
322 2026/10/09 09:27:40.948 65.27 0 0 2520 10251 22998 46
323 2026/10/09 09:27:41.948 62.61 0 0 2520 10251 22998 45
324 2026/10/09 09:27:42.948 60.06 0 0 2520 10251 22998 45
325 2026/10/09 09:27:43.948 60.08 0 0 2520 10251 22998 45
326 2026/10/09 09:27:44.949 60.10 0 0 2520 10251 22998 45
327 2026/10/09 09:27:45.949 60.05 0 0 2520 10251 22998 45
328 2026/10/09 09:27:46.949 59.96 0 0 2520 10251 22998 45
329 2026/10/09 09:27:47.949 59.92 0 0 2520 10251 22998 44
330 2026/10/09 09:27:48.950 61.24 62 2 2670 10251 22998 44
331 2026/10/09 09:27:49.950 70.68 57 2 2670 10251 22998 45
332 2026/10/09 09:27:50.950 67.56 0 0 2670 10251 22998 45
333 2026/10/09 09:27:51.951 66.73 0 0 2670 10251 22998 45
334 2026/10/09 09:27:52.951 64.56 0 0 2520 10251 22998 44
335 2026/10/09 09:27:53.951 62.16 0 0 2520 10251 22998 44
336 2026/10/09 09:27:54.952 59.84 0 0 2520 10251 22998 44
337 2026/10/09 09:27:55.952 59.76 0 0 2520 10251 22998 44
338 2026/10/09 09:27:56.952 59.72 0 0 2520 10251 22998 44
339 2026/10/09 09:27:57.952 59.76 0 0 2520 10251 22998 44
340 2026/10/09 09:27:58.953 59.76 0 0 2520 10251 22998 44
341 2026/10/09 09:27:59.953 59.78 0 0 2520 10251 22998 43
342 2026/10/09 09:28:00.953 59.81 0 0 2520 10251 22998 43
343 2026/10/09 09:28:01.954 59.78 0 0 2520 10251 22998 43
344 2026/10/09 09:28:02.954 59.73 0 0 2520 10251 22998 43
345 2026/10/09 09:28:03.954 59.73 0 0 2520 10251 22998 43
346 2026/10/09 09:28:04.954 59.73 0 0 2520 10251 22998 43
347 2026/10/09 09:28:05.955 59.68 0 0 2520 10251 22998 43
348 2026/10/09 09:28:06.955 59.70 0 0 2520 10251 22998 43
349 2026/10/09 09:28:07.955 59.32 0 0 510 810 22998 42
350 2026/10/09 09:28:08.956 41.08 0 0 315 405 22998 41
351 2026/10/09 09:28:09.956 19.52 0 0 210 405 22998 41
352 2026/10/09 09:28:10.957 15.66 0 0 210 405 22998 41
353 2026/10/09 09:28:11.957 15.53 0 0 210 405 22998 41
354 2026/10/09 09:28:12.957 15.52 0 0 210 405 22998 41
355 2026/10/09 09:28:13.957 15.53 0 0 210 405 22998 40
356 2026/10/09 09:28:14.958 15.52 0 0 210 405 22998 40
357 2026/10/09 09:28:15.958 15.44 0 0 210 405 22998 40
358 2026/10/09 09:28:16.958 15.39 0 0 210 405 22998 40
359 2026/10/09 09:28:17.959 15.45 0 0 210 405 22998 40
360 2026/10/09 09:28:18.959 15.48 0 0 210 405 22998 40
361 2026/10/09 09:28:19.959 15.49 0 0 210 405 22998 40
362 2026/10/09 09:28:20.959 15.57 0 0 210 405 22998 40
363 2026/10/09 09:28:21.960 15.60 0 0 210 405 22998 40
364 2026/10/09 09:28:22.960 15.58 0 0 210 405 22998 39
365 2026/10/09 09:28:23.960 15.57 0 0 210 405 22998 39
366 2026/10/09 09:28:24.960 15.61 0 0 210 405 22998 39
367 2026/10/09 09:28:25.961 15.68 0 0 210 405 22998 39
368 2026/10/09 09:28:26.961 15.71 0 0 210 405 22998 39
369 2026/10/09 09:28:27.961 15.69 0 0 210 405 22998 39
370 2026/10/09 09:28:28.962 15.75 0 0 210 405 11694 40
371 2026/10/09 09:28:29.987 72.43 100 1 2670 10251 23042 42
372 2026/10/09 09:28:30.987 87.19 100 1 2670 10251 23042 43
373 2026/10/09 09:28:31.987 87.34 100 1 2670 10251 23042 43
374 2026/10/09 09:28:32.987 86.72 100 1 2670 10251 23042 43
375 2026/10/09 09:28:33.988 87.05 100 1 2670 10251 23042 43
376 2026/10/09 09:28:34.988 86.92 100 1 2670 10251 23042 43
377 2026/10/09 09:28:35.988 86.67 100 1 2670 10251 23042 43
378 2026/10/09 09:28:36.989 86.73 100 1 2670 10251 23042 43
379 2026/10/09 09:28:37.989 86.80 100 1 2670 10251 23042 43
380 2026/10/09 09:28:38.989 86.40 100 1 2670 10251 23042 43
381 2026/10/09 09:28:39.989 86.70 100 1 2670 10251 23042 43
382 2026/10/09 09:28:40.990 87.21 100 1 2670 10251 23042 43
383 2026/10/09 09:28:41.990 86.72 100 1 2670 10251 23042 43
384 2026/10/09 09:28:42.990 86.79 100 1 2670 10251 23042 43
385 2026/10/09 09:28:43.990 86.68 100 1 2670 10251 23042 43
386 2026/10/09 09:28:44.991 87.05 100 1 2670 10251 23042 43
387 2026/10/09 09:28:45.991 86.97 100 1 2670 10251 23042 43
388 2026/10/09 09:28:46.991 86.47 100 1 2670 10251 23042 43
389 2026/10/09 09:28:47.992 86.59 100 1 2670 10251 23042 43
390 2026/10/09 09:28:48.992 86.12 100 1 2670 10251 23042 43
391 2026/10/09 09:28:49.992 86.32 100 1 2670 10251 23042 43
392 2026/10/09 09:28:50.992 86.41 100 1 2670 10251 23042 43
393 2026/10/09 09:28:51.993 96.41 0 0 2670 10251 23042 41
394 2026/10/09 09:28:52.993 64.56 6 0 2670 10251 23042 41
395 2026/10/09 09:28:53.993 64.31 0 0 2520 10501 470 42
396 2026/10/09 09:28:54.993 81.02 100 0 2670 10251 470 42
397 2026/10/09 09:28:55.994 79.83 100 0 2670 10251 470 42
398 2026/10/09 09:28:56.994 79.89 100 0 2670 10251 470 42
399 2026/10/09 09:28:57.994 79.93 100 0 2670 10251 470 42
400 2026/10/09 09:28:58.995 79.84 100 0 2670 10251 470 42
401 2026/10/09 09:28:59.995 79.88 100 0 2670 10251 470 42
402 2026/10/09 09:29:00.995 79.89 100 0 2670 10251 470 42
403 2026/10/09 09:29:01.995 79.77 100 0 2670 10251 470 42
404 2026/10/09 09:29:02.996 79.77 100 0 2670 10251 470 42
405 2026/10/09 09:29:03.996 79.79 100 0 2670 10251 470 42
406 2026/10/09 09:29:04.996 79.73 100 0 2670 10251 470 41
407 2026/10/09 09:29:05.996 67.24 0 0 2670 10251 21 41
408 2026/10/09 09:29:07.015 72.50 45 0 2670 10251 470 42
409 2026/10/09 09:29:08.015 79.44 100 0 2670 10251 470 42
410 2026/10/09 09:29:09.016 79.41 100 0 2670 10251 470 42
411 2026/10/09 09:29:10.016 79.28 100 0 2670 10251 470 42
412 2026/10/09 09:29:11.016 79.28 100 0 2670 10251 470 42
413 2026/10/09 09:29:12.017 79.30 100 0 2670 10251 470 42
414 2026/10/09 09:29:13.017 79.25 100 0 2670 10251 470 42
415 2026/10/09 09:29:14.017 79.20 100 0 2670 10251 470 42
416 2026/10/09 09:29:15.017 79.14 100 0 2670 10251 470 42
417 2026/10/09 09:29:16.018 79.18 100 0 2670 10251 470 42
418 2026/10/09 09:29:17.018 79.25 100 0 2670 10251 470 42
419 2026/10/09 09:29:18.018 78.49 100 0 2670 10251 470 42
420 2026/10/09 09:29:19.019 66.43 0 0 2670 10251 470 41
421 2026/10/09 09:29:20.019 74.06 0 0 2670 10251 2458 42
422 2026/10/09 09:29:21.019 79.75 100 0 2670 10251 2458 42
423 2026/10/09 09:29:22.019 79.78 100 0 2670 10251 2458 42
424 2026/10/09 09:29:23.020 79.79 100 0 2670 10251 2458 42
425 2026/10/09 09:29:24.020 79.89 100 0 2670 10251 2458 42
426 2026/10/09 09:29:25.020 79.80 100 0 2670 10251 2458 42
427 2026/10/09 09:29:26.021 79.83 100 0 2670 10251 2458 42
428 2026/10/09 09:29:27.021 79.84 100 0 2670 10251 2458 42
429 2026/10/09 09:29:28.021 79.86 100 0 2670 10251 2458 42
430 2026/10/09 09:29:29.021 79.78 100 0 2670 10251 2458 42
431 2026/10/09 09:29:30.022 79.85 100 0 2670 10251 2458 42
432 2026/10/09 09:29:31.022 76.33 100 0 2670 10251 2458 41
433 2026/10/09 09:29:32.022 65.11 0 0 2670 10251 2458 41
434 2026/10/09 09:29:33.023 61.91 0 0 2520 10251 1 40
435 2026/10/09 09:29:34.032 69.31 0 0 2670 10251 2458 41
436 2026/10/09 09:29:35.032 79.17 100 0 2670 10251 2458 41
437 2026/10/09 09:29:36.033 79.22 100 0 2670 10251 2458 41
438 2026/10/09 09:29:37.033 79.21 100 0 2670 10251 2458 41
439 2026/10/09 09:29:38.033 79.18 100 0 2670 10251 2458 41
440 2026/10/09 09:29:39.033 79.19 100 0 2670 10251 2458 41
441 2026/10/09 09:29:40.034 79.08 100 0 2670 10251 2458 41
442 2026/10/09 09:29:41.034 78.97 100 0 2670 10251 2458 41
443 2026/10/09 09:29:42.034 78.99 100 0 2670 10251 2458 41
444 2026/10/09 09:29:43.035 79.09 100 0 2670 10251 2458 41
445 2026/10/09 09:29:44.035 79.06 100 0 2670 10251 2458 41
446 2026/10/09 09:29:45.035 79.14 100 0 2670 10251 2458 41
447 2026/10/09 09:29:46.035 69.98 100 0 2670 10251 2458 40
448 2026/10/09 09:29:47.036 64.40 0 0 2670 10251 2458 40
449 2026/10/09 09:29:48.036 62.18 0 0 2520 10251 8614 40
450 2026/10/09 09:29:49.036 78.19 100 1 2670 10251 8614 41
451 2026/10/09 09:29:50.037 80.54 100 1 2670 10251 8614 41
452 2026/10/09 09:29:51.037 80.46 100 1 2670 10251 8614 41
453 2026/10/09 09:29:52.037 80.36 100 1 2670 10251 8614 41
454 2026/10/09 09:29:53.037 80.42 100 1 2670 10251 8614 41
455 2026/10/09 09:29:54.038 80.43 100 1 2670 10251 8614 41
456 2026/10/09 09:29:55.038 80.42 100 1 2670 10251 8614 41
457 2026/10/09 09:29:56.038 80.45 100 1 2670 10251 8614 41
458 2026/10/09 09:29:57.039 80.53 100 1 2670 10251 8614 41
459 2026/10/09 09:29:58.039 80.44 100 1 2670 10251 8614 41
460 2026/10/09 09:29:59.039 73.73 96 17 2670 10251 8614 40
461 2026/10/09 09:30:00.039 72.28 0 0 2670 10251 8614 40
462 2026/10/09 09:30:01.040 63.18 0 0 2520 10251 8614 40
463 2026/10/09 09:30:02.040 59.87 0 0 2520 10251 8614 39
464 2026/10/09 09:30:03.040 66.09 62 2 2670 10251 8614 40
465 2026/10/09 09:30:04.041 64.70 0 0 2670 10251 8614 40
466 2026/10/09 09:30:05.041 69.43 0 0 2670 10251 8614 40
467 2026/10/09 09:30:06.041 79.90 100 0 2670 10251 8614 41
468 2026/10/09 09:30:07.041 79.99 100 0 2670 10251 8614 41
469 2026/10/09 09:30:08.042 79.95 100 0 2670 10251 8614 41
470 2026/10/09 09:30:09.042 79.90 100 0 2670 10251 8614 41
471 2026/10/09 09:30:10.042 79.90 100 0 2670 10251 8614 41
472 2026/10/09 09:30:11.042 79.96 100 0 2670 10251 8614 41
473 2026/10/09 09:30:12.043 80.01 100 0 2670 10251 8614 41
474 2026/10/09 09:30:13.043 80.09 100 0 2670 10251 8614 41
475 2026/10/09 09:30:14.043 80.04 100 0 2670 10251 8614 41
476 2026/10/09 09:30:15.044 80.05 100 0 2670 10251 8614 41
477 2026/10/09 09:30:16.044 79.96 100 0 2670 10251 8614 41
478 2026/10/09 09:30:17.044 81.41 100 0 2670 10251 8614 45
479 2026/10/09 09:30:18.044 72.72 0 0 2670 10251 8614 40
480 2026/10/09 09:30:19.045 62.71 0 0 2520 10251 8614 39
481 2026/10/09 09:30:20.045 61.21 0 0 2520 10251 8614 39
482 2026/10/09 09:30:21.045 61.49 0 0 2670 10251 8614 39
483 2026/10/09 09:30:22.046 65.43 0 0 2670 10251 8614 39
484 2026/10/09 09:30:23.046 64.35 99 7 2520 10251 22 39
485 2026/10/09 09:30:24.046 253.29 100 35 2655 10251 23070 53
486 2026/10/09 09:30:25.047 317.02 100 28 2655 10251 23070 58
487 2026/10/09 09:30:26.047 320.76 100 29 2655 10251 23070 61
488 2026/10/09 09:30:27.047 319.67 100 33 2655 10251 23070 59
489 2026/10/09 09:30:28.047 321.51 100 25 2655 10251 23070 62
490 2026/10/09 09:30:29.048 320.74 100 33 2655 10251 23070 57
491 2026/10/09 09:30:30.048 318.79 100 32 2655 10251 23070 61
492 2026/10/09 09:30:31.048 322.72 100 26 2655 10251 23070 63
493 2026/10/09 09:30:32.049 320.73 100 34 2655 10251 23070 57
494 2026/10/09 09:30:33.049 322.26 100 31 2655 10251 23070 62
495 2026/10/09 09:30:34.049 323.12 100 26 2655 10251 23070 63
496 2026/10/09 09:30:35.049 321.20 100 35 2655 10251 23070 58
497 2026/10/09 09:30:36.050 320.36 100 30 2655 10251 23070 63
498 2026/10/09 09:30:37.050 324.21 100 27 2655 10251 23070 65
499 2026/10/09 09:30:38.050 320.98 100 35 2655 10251 23070 58
500 2026/10/09 09:30:39.051 320.73 100 29 2655 10251 23070 64
501 2026/10/09 09:30:40.051 324.10 100 28 2655 10251 23070 62
502 2026/10/09 09:30:41.051 319.81 100 35 2640 10251 23070 59
503 2026/10/09 09:30:42.051 319.73 100 30 2640 10251 23070 64
504 2026/10/09 09:30:43.052 324.18 100 26 2640 10251 23070 66
505 2026/10/09 09:30:44.052 198.06 0 0 2655 10251 23070 46
506 2026/10/09 09:30:45.052 67.92 0 0 2655 10251 23070 45
507 2026/10/09 09:30:46.053 66.94 0 0 2655 10251 23070 45
508 2026/10/09 09:30:47.053 64.34 0 0 2520 10251 23070 44
509 2026/10/09 09:30:48.053 62.08 0 0 2520 10251 23070 43
510 2026/10/09 09:30:49.053 59.98 0 0 2520 10251 23070 43
511 2026/10/09 09:30:50.054 59.95 0 0 2520 10251 23070 43
512 2026/10/09 09:30:51.054 59.88 0 0 2520 10251 23070 43
513 2026/10/09 09:30:52.054 59.80 0 0 2520 10251 23070 42
514 2026/10/09 09:30:53.055 59.76 0 0 2520 10251 23070 42
515 2026/10/09 09:30:54.055 59.68 0 0 2520 10251 23070 42
516 2026/10/09 09:30:55.055 59.64 0 0 2520 10251 23070 42
517 2026/10/09 09:30:56.055 59.63 0 0 2520 10251 23070 42
518 2026/10/09 09:30:57.056 64.30 62 2 2670 10251 23070 42
519 2026/10/09 09:30:58.056 69.06 0 0 2670 10251 23070 42
520 2026/10/09 09:30:59.056 65.91 0 0 2670 10251 23070 42
521 2026/10/09 09:31:00.057 68.25 86 9 2670 10251 23072 47
522 2026/10/09 09:31:01.057 179.33 100 15 2655 10251 23072 50
523 2026/10/09 09:31:02.057 197.90 100 15 2655 10251 23072 51
524 2026/10/09 09:31:03.057 198.35 100 15 2655 10251 23072 51
525 2026/10/09 09:31:04.058 198.71 100 15 2655 10251 23072 51
526 2026/10/09 09:31:05.058 198.50 100 15 2655 10251 23072 52
527 2026/10/09 09:31:06.058 198.66 100 15 2655 10251 23072 52
528 2026/10/09 09:31:07.059 198.52 100 15 2655 10251 23072 52
529 2026/10/09 09:31:08.059 198.71 100 15 2655 10251 23072 52
530 2026/10/09 09:31:09.059 198.60 100 15 2655 10251 23072 52
531 2026/10/09 09:31:10.059 198.79 100 15 2655 10251 23072 52
532 2026/10/09 09:31:11.060 198.85 100 15 2655 10251 23072 52
533 2026/10/09 09:31:12.060 198.80 100 15 2655 10251 23072 52
534 2026/10/09 09:31:13.060 198.66 100 15 2655 10251 23072 52
535 2026/10/09 09:31:14.061 198.77 100 15 2655 10251 23072 52
536 2026/10/09 09:31:15.061 198.40 100 15 2655 10251 23072 52
537 2026/10/09 09:31:16.061 198.27 100 15 2655 10251 23072 52
538 2026/10/09 09:31:17.061 198.50 100 15 2655 10251 23072 52
539 2026/10/09 09:31:18.062 199.08 100 15 2655 10251 23072 53
540 2026/10/09 09:31:19.062 199.29 100 15 2655 10251 23072 53
541 2026/10/09 09:31:20.062 198.94 100 15 2655 10251 23072 53
542 2026/10/09 09:31:21.062 117.09 0 0 2670 10251 23072 45
543 2026/10/09 09:31:22.063 66.38 0 0 2670 10251 23072 44
544 2026/10/09 09:31:23.063 62.98 0 0 2520 10251 23072 43
545 2026/10/09 09:31:24.063 61.35 0 0 2520 10251 23072 43
546 2026/10/09 09:31:25.064 60.01 0 0 2520 10251 23072 43
547 2026/10/09 09:31:26.064 60.01 0 0 2520 10251 23072 43
548 2026/10/09 09:31:27.064 59.97 0 0 2520 10251 23072 42
549 2026/10/09 09:31:28.065 59.93 0 0 2520 10251 23072 42
550 2026/10/09 09:31:29.065 59.93 0 0 2520 10251 23072 42
551 2026/10/09 09:31:30.065 59.94 0 0 2520 10251 23072 42
552 2026/10/09 09:31:31.066 59.99 0 0 2520 10251 23072 42
553 2026/10/09 09:31:32.066 62.99 61 2 2670 10251 23072 42
554 2026/10/09 09:31:33.066 70.17 61 2 2670 10251 23072 42
555 2026/10/09 09:31:34.066 66.30 0 0 2670 10251 23072 42
556 2026/10/09 09:31:35.067 64.64 100 7 2520 10251 11654 42
557 2026/10/09 09:31:36.102 94.93 100 3 2670 10251 23070 45
558 2026/10/09 09:31:37.102 111.44 100 4 2670 10251 23070 45
559 2026/10/09 09:31:38.102 111.81 100 4 2670 10251 23070 45
560 2026/10/09 09:31:39.103 111.75 100 3 2670 10251 23070 45
561 2026/10/09 09:31:40.103 111.68 100 4 2670 10251 23070 45
562 2026/10/09 09:31:41.103 112.03 100 4 2670 10251 23070 45
563 2026/10/09 09:31:42.103 111.63 100 3 2670 10251 23070 45
564 2026/10/09 09:31:43.104 111.67 100 4 2670 10251 23070 45
565 2026/10/09 09:31:44.104 111.63 100 4 2670 10251 23070 45
566 2026/10/09 09:31:45.104 111.82 100 4 2670 10251 23070 45
567 2026/10/09 09:31:46.105 111.56 100 4 2670 10251 23070 45
568 2026/10/09 09:31:47.105 111.63 100 4 2670 10251 23070 45
569 2026/10/09 09:31:48.105 111.07 100 4 2670 10251 23070 45
570 2026/10/09 09:31:49.106 111.18 100 4 2670 10251 23070 45
571 2026/10/09 09:31:50.106 111.23 100 4 2670 10251 23070 45
572 2026/10/09 09:31:51.106 111.25 100 4 2670 10251 23070 45
573 2026/10/09 09:31:52.106 111.24 100 4 2670 10251 23070 45
574 2026/10/09 09:31:53.107 110.97 100 4 2670 10251 23070 45
575 2026/10/09 09:31:54.107 110.42 100 4 2670 10251 23070 45
576 2026/10/09 09:31:55.107 110.77 100 4 2670 10251 23070 45
577 2026/10/09 09:31:56.108 112.36 100 4 2670 10251 23070 45
578 2026/10/09 09:31:57.108 67.65 0 0 2670 10251 23070 42
579 2026/10/09 09:31:58.108 63.90 0 0 2520 10251 23070 42
580 2026/10/09 09:31:59.108 61.85 0 0 2520 10251 23070 42
581 2026/10/09 09:32:00.109 59.94 0 0 2520 10251 23070 41
582 2026/10/09 09:32:01.109 59.94 0 0 2520 10251 23070 41
583 2026/10/09 09:32:02.109 59.90 0 0 2520 10251 23070 41
584 2026/10/09 09:32:03.109 59.87 0 0 2520 10251 23070 41
585 2026/10/09 09:32:04.110 59.88 0 0 2520 10251 23070 41
586 2026/10/09 09:32:05.110 59.86 0 0 2520 10251 23070 41
587 2026/10/09 09:32:06.110 59.83 0 0 2520 10251 23070 41
588 2026/10/09 09:32:07.111 64.11 0 0 2670 10251 23070 41
589 2026/10/09 09:32:08.111 69.77 55 2 2670 10251 23070 41
590 2026/10/09 09:32:09.111 65.86 59 2 2670 10251 23070 41
591 2026/10/09 09:32:10.111 65.37 0 0 2670 10251 23070 41
592 2026/10/09 09:32:11.112 65.17 0 0 2670 10501 1 41
593 2026/10/09 09:32:12.112 67.37 0 0 2670 10501 1 41
594 2026/10/09 09:32:13.112 61.96 0 0 540 5001 1 41
595 2026/10/09 09:32:14.112 44.49 0 0 345 810 1 40
596 2026/10/09 09:32:15.113 24.88 0 0 225 810 1 39
597 2026/10/09 09:32:16.113 19.96 0 0 210 405 1 39
598 2026/10/09 09:32:17.113 16.51 0 0 210 405 1 39
599 2026/10/09 09:32:18.114 15.51 0 0 210 405 1 38
600 2026/10/09 09:32:19.114 15.47 0 0 210 405 1 38
601 2026/10/09 09:32:20.114 15.51 0 0 210 405 1 38
602 2026/10/09 09:32:21.115 15.56 0 0 210 405 1 38
603 2026/10/09 09:32:22.115 15.48 0 0 210 405 1 38
604 2026/10/09 09:32:23.115 15.49 0 0 210 405 1 38

View file

@ -0,0 +1,17 @@
row rc=0 --n 20 --kernel 1 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n20-k1
row rc=0 --n 20 --kernel 2 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n20-k2
row rc=0 --n 22 --kernel 1 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n22-k1
row rc=0 --n 22 --kernel 2 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n22-k2
row rc=0 --n 24 --kernel 1 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n24-k1
row rc=0 --n 24 --kernel 2 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n24-k2
row rc=0 --n 20 --kernel 1 --layout aos --min-label-s 20 --check 2 --k 64 --tag abl-n20-k1-aos
row rc=0 --n 20 --B 1 --kernel 2 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B1-k2
row rc=0 --n 20 --B 1 --kernel 1 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B1-k1
row rc=0 --n 20 --B 32 --kernel 2 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B32-k2
row rc=0 --n 20 --B 32 --kernel 1 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B32-k1
row rc=0 --n 20 --B 128 --kernel 2 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B128-k2
row rc=0 --n 20 --B 128 --kernel 1 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B128-k1
row rc=0 --n 14 --kernel 1 --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n14-k1
row rc=0 --n 16 --kernel 1 --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n16-k1
row rc=0 --n 18 --kernel 1 --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n18-k1
DONE 2026-10-09T09:32:24Z

View file

@ -0,0 +1,16 @@
{"tag":"main-n20-k1","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":353,"Bmax":353,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":9,"graph_s":0.0243,"state_alloc_s":0.0022,"label_s_per_pass":2.399227,"labels_per_s":154277760.0,"labels_per_s_per_inst":437047.5,"ns_per_label_per_inst":2288.08,"merkle_s":0.048111,"prove_s":0.028913,"verify_all_s":0.0470,"accepted":353,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":16.44,"oracle":"IDENTICAL","label_window_unix_ms":[1791537770051,1791537791657],"free_gib":23.14,"per_inst_MiB":64.1}
{"tag":"main-n20-k2","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":353,"Bmax":353,"layout":"soa","kernel":"k2","k":64,"wrong_edge":0,"passes":14,"graph_s":0.0244,"state_alloc_s":0.1633,"label_s_per_pass":1.434892,"labels_per_s":257961822.7,"labels_per_s_per_inst":730770.0,"ns_per_label_per_inst":1368.42,"merkle_s":0.047834,"prove_s":0.029520,"verify_all_s":0.0489,"accepted":353,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":16.09,"oracle":"IDENTICAL","label_window_unix_ms":[1791537808762,1791537828851],"free_gib":23.14,"per_inst_MiB":64.1}
{"tag":"main-n22-k1","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":22,"N":4194304,"inst_MiB":128.0,"B":88,"Bmax":88,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":3,"graph_s":0.0934,"state_alloc_s":0.0926,"label_s_per_pass":9.618606,"labels_per_s":38373414.4,"labels_per_s_per_inst":436061.5,"ns_per_label_per_inst":2293.25,"merkle_s":0.047710,"prove_s":0.009508,"verify_all_s":0.0131,"accepted":88,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":23.18,"oracle":"IDENTICAL","label_window_unix_ms":[1791537845612,1791537874470],"free_gib":23.14,"per_inst_MiB":256.1}
{"tag":"main-n22-k2","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":22,"N":4194304,"inst_MiB":128.0,"B":88,"Bmax":88,"layout":"soa","kernel":"k2","k":64,"wrong_edge":0,"passes":4,"graph_s":0.0938,"state_alloc_s":0.0940,"label_s_per_pass":5.800857,"labels_per_s":63628313.2,"labels_per_s_per_inst":723049.0,"ns_per_label_per_inst":1383.03,"merkle_s":0.048206,"prove_s":0.009367,"verify_all_s":0.0129,"accepted":88,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":23.11,"oracle":"IDENTICAL","label_window_unix_ms":[1791537898256,1791537921459],"free_gib":23.14,"per_inst_MiB":256.1}
{"tag":"main-n24-k1","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":24,"N":16777216,"inst_MiB":512.0,"B":22,"Bmax":22,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":1,"graph_s":0.3730,"state_alloc_s":0.0106,"label_s_per_pass":38.473902,"labels_per_s":9593483.6,"labels_per_s_per_inst":436067.4,"ns_per_label_per_inst":2293.22,"merkle_s":0.047788,"prove_s":0.003201,"verify_all_s":0.0047,"accepted":22,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":50.37,"oracle":"IDENTICAL","label_window_unix_ms":[1791537945377,1791537983852],"free_gib":23.14,"per_inst_MiB":1024.1}
{"tag":"main-n24-k2","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":24,"N":16777216,"inst_MiB":512.0,"B":22,"Bmax":22,"layout":"soa","kernel":"k2","k":64,"wrong_edge":0,"passes":1,"graph_s":0.3740,"state_alloc_s":0.0158,"label_s_per_pass":22.737664,"labels_per_s":16232923.1,"labels_per_s_per_inst":737860.1,"ns_per_label_per_inst":1355.27,"merkle_s":0.047969,"prove_s":0.002959,"verify_all_s":0.0047,"accepted":22,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":50.37,"oracle":"IDENTICAL","label_window_unix_ms":[1791538035170,1791538057908],"free_gib":23.14,"per_inst_MiB":1024.1}
{"tag":"abl-n20-k1-aos","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":353,"Bmax":353,"layout":"aos","kernel":"k1","k":64,"wrong_edge":0,"passes":9,"graph_s":0.0242,"state_alloc_s":0.1368,"label_s_per_pass":2.423669,"labels_per_s":152721908.4,"labels_per_s_per_inst":432640.0,"ns_per_label_per_inst":2311.39,"merkle_s":0.083527,"prove_s":0.031405,"verify_all_s":0.0466,"accepted":353,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":2.25,"oracle":"IDENTICAL","label_window_unix_ms":[1791538108995,1791538130808],"free_gib":23.14,"per_inst_MiB":64.1}
{"tag":"ladder-n20-B1-k2","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":1,"Bmax":353,"layout":"soa","kernel":"k2","k":64,"wrong_edge":0,"passes":8,"graph_s":0.0244,"state_alloc_s":0.0071,"label_s_per_pass":1.375263,"labels_per_s":762454.9,"labels_per_s_per_inst":762454.9,"ns_per_label_per_inst":1311.55,"merkle_s":0.000319,"prove_s":0.000326,"verify_all_s":0.0022,"accepted":1,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":1.17,"oracle":"IDENTICAL","label_window_unix_ms":[1791538133617,1791538144632],"free_gib":23.14,"per_inst_MiB":64.1}
{"tag":"ladder-n20-B1-k1","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":1,"Bmax":353,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":5,"graph_s":0.0278,"state_alloc_s":0.0009,"label_s_per_pass":2.337456,"labels_per_s":448597.2,"labels_per_s_per_inst":448597.2,"ns_per_label_per_inst":2229.17,"merkle_s":0.000327,"prove_s":0.000347,"verify_all_s":0.0020,"accepted":1,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":1.17,"oracle":"IDENTICAL","label_window_unix_ms":[1791538146119,1791538157807],"free_gib":23.14,"per_inst_MiB":64.1}
{"tag":"ladder-n20-B32-k2","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":32,"Bmax":353,"layout":"soa","kernel":"k2","k":64,"wrong_edge":0,"passes":8,"graph_s":0.0241,"state_alloc_s":0.0010,"label_s_per_pass":1.399720,"labels_per_s":23972248.8,"labels_per_s_per_inst":749132.8,"ns_per_label_per_inst":1334.88,"merkle_s":0.004549,"prove_s":0.003421,"verify_all_s":0.0059,"accepted":32,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":2.40,"oracle":"IDENTICAL","label_window_unix_ms":[1791538159287,1791538170484],"free_gib":23.14,"per_inst_MiB":64.1}
{"tag":"ladder-n20-B32-k1","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":32,"Bmax":353,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":5,"graph_s":0.0242,"state_alloc_s":0.0011,"label_s_per_pass":2.370587,"labels_per_s":14154479.6,"labels_per_s_per_inst":442327.5,"ns_per_label_per_inst":2260.77,"merkle_s":0.004549,"prove_s":0.003840,"verify_all_s":0.0058,"accepted":32,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":2.41,"oracle":"IDENTICAL","label_window_unix_ms":[1791538173222,1791538185082],"free_gib":23.14,"per_inst_MiB":64.1}
{"tag":"ladder-n20-B128-k2","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":128,"Bmax":353,"layout":"soa","kernel":"k2","k":64,"wrong_edge":0,"passes":7,"graph_s":0.0240,"state_alloc_s":0.0014,"label_s_per_pass":1.442714,"labels_per_s":93031413.9,"labels_per_s_per_inst":726807.9,"ns_per_label_per_inst":1375.88,"merkle_s":0.017440,"prove_s":0.010995,"verify_all_s":0.0195,"accepted":128,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":6.24,"oracle":"IDENTICAL","label_window_unix_ms":[1791538187818,1791538197925],"free_gib":23.14,"per_inst_MiB":64.1}
{"tag":"ladder-n20-B128-k1","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":128,"Bmax":353,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":5,"graph_s":0.0243,"state_alloc_s":0.0015,"label_s_per_pass":2.398947,"labels_per_s":55948600.3,"labels_per_s_per_inst":437098.4,"ns_per_label_per_inst":2287.81,"merkle_s":0.017464,"prove_s":0.011916,"verify_all_s":0.0192,"accepted":128,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":6.17,"oracle":"IDENTICAL","label_window_unix_ms":[1791538204552,1791538216547],"free_gib":23.14,"per_inst_MiB":64.1}
{"tag":"diag-n14-k1","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":14,"N":16384,"inst_MiB":0.5,"B":20838,"Bmax":20838,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":287,"graph_s":0.0011,"state_alloc_s":0.0124,"label_s_per_pass":0.069711,"labels_per_s":4897508138.0,"labels_per_s_per_inst":235027.7,"ns_per_label_per_inst":4254.82,"merkle_s":0.044716,"prove_s":1.091650,"verify_all_s":1.9567,"accepted":20838,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":12.77,"oracle":"IDENTICAL","label_window_unix_ms":[1791538223095,1791538243109],"free_gib":23.14,"per_inst_MiB":1.1}
{"tag":"diag-n16-k1","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":16,"N":65536,"inst_MiB":2.0,"B":5530,"Bmax":5530,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":132,"graph_s":0.0024,"state_alloc_s":0.1885,"label_s_per_pass":0.152132,"labels_per_s":2382239545.4,"labels_per_s_per_inst":430784.7,"ns_per_label_per_inst":2321.35,"merkle_s":0.046818,"prove_s":0.343418,"verify_all_s":0.5917,"accepted":5530,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":13.62,"oracle":"IDENTICAL","label_window_unix_ms":[1791538259789,1791538279871],"free_gib":23.14,"per_inst_MiB":4.1}
{"tag":"diag-n18-k1","gpu":"NVIDIA GeForce RTX 4090","sm":"8.9","sms":128,"encoding":"B3P1","n":18,"N":262144,"inst_MiB":8.0,"B":1407,"Bmax":1407,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":34,"graph_s":0.0067,"state_alloc_s":0.1751,"label_s_per_pass":0.601714,"labels_per_s":612976879.2,"labels_per_s_per_inst":435662.3,"ns_per_label_per_inst":2295.36,"merkle_s":0.047299,"prove_s":0.098035,"verify_all_s":0.1728,"accepted":1407,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":14.42,"oracle":"IDENTICAL","label_window_unix_ms":[1791538295105,1791538315564],"free_gib":23.14,"per_inst_MiB":16.1}

View file

@ -0,0 +1,5 @@
{"mode":"cpu_time","encoding":"B1","impl":"C port, portable BLAKE2b","n":20,"N":1048576,"k":64,"threads":1,"graph_s_single_thread":0.523,"label_s_mean":0.2823,"merkle_s_mean":0.2621,"prove_s_mean":0.000172,"verify_s_mean":0.000903,"wall_s":0.554,"labels_per_s_per_instance":3714159.6,"labels_per_s_all":1892158.4,"accepted":1}
{"mode":"cpu_time","encoding":"B1","impl":"C port, portable BLAKE2b","n":22,"N":4194304,"k":64,"threads":1,"graph_s_single_thread":2.059,"label_s_mean":1.2048,"merkle_s_mean":1.0615,"prove_s_mean":0.000215,"verify_s_mean":0.001018,"wall_s":2.301,"labels_per_s_per_instance":3481409.4,"labels_per_s_all":1822422.8,"accepted":1}
{"mode":"cpu_time","encoding":"B1","impl":"C port, portable BLAKE2b","n":24,"N":16777216,"k":64,"threads":1,"graph_s_single_thread":8.284,"label_s_mean":4.9108,"merkle_s_mean":4.2930,"prove_s_mean":0.000254,"verify_s_mean":0.001082,"wall_s":9.337,"labels_per_s_per_instance":3416412.1,"labels_per_s_all":1796877.3,"accepted":1}
{"mode":"cpu_time","encoding":"B1","impl":"C port, portable BLAKE2b","n":20,"N":1048576,"k":64,"threads":26,"graph_s_single_thread":0.515,"label_s_mean":0.2851,"merkle_s_mean":0.2651,"prove_s_mean":0.000175,"verify_s_mean":0.000929,"wall_s":0.787,"labels_per_s_per_instance":3678200.1,"labels_per_s_all":34653203.8,"accepted":26}
{"mode":"cpu_time","encoding":"B1","impl":"C port, portable BLAKE2b","n":22,"N":4194304,"k":64,"threads":26,"graph_s_single_thread":2.065,"label_s_mean":1.2021,"merkle_s_mean":1.0632,"prove_s_mean":0.000235,"verify_s_mean":0.001000,"wall_s":3.196,"labels_per_s_per_instance":3489061.0,"labels_per_s_all":34117134.4,"accepted":26}

View file

@ -0,0 +1 @@
{"idle_window_unix_ms":[1791538470000,1791538500000]}

View file

@ -0,0 +1,15 @@
{"kat":4,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":8,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":12,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":16,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":20,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
CASE b1_kat_port PASS
{"tag":"known-failed-b1","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":12,"N":4096,"inst_MiB":0.1,"B":96,"Bmax":93706,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":1,"passes":1,"graph_s":0.0043,"state_alloc_s":0.0008,"label_s_per_pass":0.005726,"labels_per_s":68669142.3,"labels_per_s_per_inst":715303.6,"ns_per_label_per_inst":1398.01,"merkle_s":0.000138,"prove_s":0.009103,"verify_all_s":0.0001,"accepted":0,"checked":4,"lab_bad_inst":4,"tree_bad_inst":4,"root_bad":4,"proof_bad":4,"b1_kat_instance0":0,"check_s":0.03,"oracle":"MISMATCH","label_window_unix_ms":[1791539079246,1791539079252],"free_gib":30.86,"per_inst_MiB":0.3,"proof_bytes_inst0":79981}
CASE known_failed_wrong_edge_b1 PASS (oracle fired)
{"tag":"known-finished-b1-n8","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":8,"N":256,"inst_MiB":0.0,"B":96,"Bmax":446484,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":1,"graph_s":0.0025,"state_alloc_s":0.0004,"label_s_per_pass":0.000464,"labels_per_s":52932662.9,"labels_per_s_per_inst":551381.9,"ns_per_label_per_inst":1813.62,"merkle_s":0.000085,"prove_s":0.006601,"verify_all_s":0.0051,"accepted":96,"checked":4,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":0.00,"oracle":"IDENTICAL","label_window_unix_ms":[1791539079670,1791539079670],"free_gib":30.86,"per_inst_MiB":0.1,"proof_bytes_inst0":55405}
CASE known_finished_b1_n8 PASS
{"tag":"known-finished-b1-n12","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":12,"N":4096,"inst_MiB":0.1,"B":96,"Bmax":93706,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":1,"graph_s":0.0043,"state_alloc_s":0.0007,"label_s_per_pass":0.005717,"labels_per_s":68775219.1,"labels_per_s_per_inst":716408.5,"ns_per_label_per_inst":1395.85,"merkle_s":0.000138,"prove_s":0.008832,"verify_all_s":0.0042,"accepted":96,"checked":4,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":0.04,"oracle":"IDENTICAL","label_window_unix_ms":[1791539080051,1791539080057],"free_gib":30.86,"per_inst_MiB":0.3,"proof_bytes_inst0":79981}
CASE known_finished_b1_n12 PASS
{"tag":"known-finished-b1-n16","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":16,"N":65536,"inst_MiB":2.0,"B":96,"Bmax":7457,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":1,"graph_s":0.0073,"state_alloc_s":0.0009,"label_s_per_pass":0.091218,"labels_per_s":68971954.3,"labels_per_s_per_inst":718457.9,"ns_per_label_per_inst":1391.87,"merkle_s":0.000633,"prove_s":0.011245,"verify_all_s":0.0072,"accepted":96,"checked":4,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":0.47,"oracle":"IDENTICAL","label_window_unix_ms":[1791539080484,1791539080576],"free_gib":30.86,"per_inst_MiB":4.1,"proof_bytes_inst0":104557}
CASE known_finished_b1_n16 PASS
RESULT test_known_failed_b1 PASS

View file

@ -0,0 +1,16 @@
label=rtx5090-b1
encoding=B1 (tools/mhpow/b1 at build-6 09:26Z: params.py d47b8ff5, drsample.py 4169a5fc, mtp.py c0feed31)
src_id_b1=d672d3839ebb45e5
2026-10-09T09:34:29Z
model name : AMD EPYC 7K62 48-Core Processor
nproc=192 cgroup_cpus=26
7.79 12.11 23.04 7/6975 2532
name, driver_version, vbios_version, power.limit [W], power.default_limit [W], clocks.max.sm [MHz], clocks.max.memory [MHz], memory.total [MiB], pcie.link.gen.current, pcie.link.width.current
NVIDIA GeForce RTX 5090, 580.126.09, 98.02.2E.80.39, 480.00 W, 600.00 W, 3105 MHz, 14001 MHz, 32607 MiB, 4, 16
Build cuda_12.8.r12.8/compiler.35583870_0
{"kat":4,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":8,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":12,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":16,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
{"kat":20,"chi":1,"graph":1,"labels":1,"tau":1,"proof_sha":1,"proof_bin":1,"verify":1,"verdict":"IDENTICAL"}
11.67 12.19 17.72 7/7006 3389

View file

@ -0,0 +1,575 @@
2026/10/09 09:34:30.706, 6.64, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:31.736, 7.91, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:32.737, 5.75, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:33.738, 5.94, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:34.738, 5.98, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:35.739, 6.31, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:36.740, 5.64, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:37.741, 5.18, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:38.741, 5.49, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:39.741, 5.46, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:40.742, 5.78, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:41.743, 5.94, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:42.743, 6.07, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:43.744, 6.11, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:44.744, 6.27, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:45.745, 6.50, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:46.745, 7.64, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:47.746, 7.00, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:48.746, 6.76, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:49.747, 6.13, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:50.747, 6.38, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:51.747, 6.44, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:52.748, 6.02, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:53.748, 6.21, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:54.749, 5.62, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:55.749, 5.48, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:56.750, 5.61, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:57.750, 5.60, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:58.751, 5.99, 0, 0, 195, 405, 1, 40
2026/10/09 09:34:59.751, 5.39, 0, 0, 195, 405, 1, 40
2026/10/09 09:35:00.752, 5.39, 0, 0, 195, 405, 2, 40
2026/10/09 09:35:01.787, 54.46, 100, 1, 2917, 13801, 31044, 43
2026/10/09 09:35:02.788, 117.73, 100, 2, 2917, 13801, 31044, 43
2026/10/09 09:35:03.788, 118.21, 100, 2, 2917, 13801, 31044, 43
2026/10/09 09:35:04.789, 118.04, 100, 2, 2917, 13801, 31044, 43
2026/10/09 09:35:05.789, 118.12, 100, 2, 2917, 13801, 31044, 43
2026/10/09 09:35:06.789, 118.32, 100, 2, 2917, 13801, 31044, 43
2026/10/09 09:35:07.790, 118.12, 100, 2, 2917, 13801, 31044, 44
2026/10/09 09:35:08.790, 118.47, 100, 2, 2917, 13801, 31044, 44
2026/10/09 09:35:09.791, 118.66, 100, 2, 2917, 13801, 31044, 44
2026/10/09 09:35:10.792, 118.95, 100, 2, 2917, 13801, 31044, 44
2026/10/09 09:35:11.792, 118.65, 100, 2, 2917, 13801, 31044, 44
2026/10/09 09:35:12.792, 118.73, 100, 2, 2917, 13801, 31044, 44
2026/10/09 09:35:13.793, 118.39, 100, 2, 2917, 13801, 31044, 44
2026/10/09 09:35:14.794, 118.43, 100, 2, 2917, 13801, 31044, 44
2026/10/09 09:35:15.794, 118.76, 100, 2, 2917, 13801, 31044, 44
2026/10/09 09:35:16.795, 118.75, 100, 2, 2902, 13801, 31044, 44
2026/10/09 09:35:17.795, 119.08, 100, 2, 2902, 13801, 31044, 44
2026/10/09 09:35:18.796, 118.78, 100, 1, 2902, 13801, 31044, 44
2026/10/09 09:35:19.796, 118.96, 100, 2, 2902, 13801, 31044, 44
2026/10/09 09:35:20.797, 118.95, 100, 2, 2902, 13801, 31044, 45
2026/10/09 09:35:21.797, 118.67, 90, 40, 2902, 13801, 31044, 44
2026/10/09 09:35:22.798, 81.72, 0, 0, 2902, 13801, 31044, 44
2026/10/09 09:35:23.798, 68.77, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:24.800, 58.05, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:25.800, 58.13, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:26.800, 58.30, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:27.801, 58.73, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:28.801, 58.23, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:29.802, 58.52, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:30.802, 58.25, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:31.802, 58.30, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:32.803, 58.31, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:33.803, 57.78, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:34.803, 58.05, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:35.804, 59.08, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:36.806, 58.38, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:37.807, 58.67, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:38.807, 51.06, 0, 0, 502, 810, 31044, 42
2026/10/09 09:35:39.808, 28.27, 0, 0, 427, 810, 31044, 42
2026/10/09 09:35:40.809, 15.59, 0, 0, 262, 405, 31044, 42
2026/10/09 09:35:41.809, 12.99, 0, 0, 195, 405, 31044, 42
2026/10/09 09:35:42.809, 7.29, 0, 0, 195, 405, 31044, 42
2026/10/09 09:35:43.810, 14.20, 0, 0, 2460, 13801, 31044, 43
2026/10/09 09:35:44.810, 65.39, 15, 0, 2880, 13801, 31044, 44
2026/10/09 09:35:45.811, 86.94, 46, 1, 2917, 13801, 31044, 44
2026/10/09 09:35:46.812, 87.16, 46, 1, 2902, 13801, 31044, 44
2026/10/09 09:35:47.813, 84.60, 38, 1, 2902, 13801, 31044, 44
2026/10/09 09:35:48.814, 82.12, 0, 0, 2902, 13801, 31044, 44
2026/10/09 09:35:49.814, 63.34, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:50.815, 58.46, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:51.816, 57.97, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:52.816, 58.36, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:35:53.818, 63.52, 0, 0, 2542, 14001, 510, 44
2026/10/09 09:35:54.844, 94.53, 100, 0, 2902, 13801, 31014, 45
2026/10/09 09:35:55.872, 105.84, 100, 0, 2902, 13801, 31014, 45
2026/10/09 09:35:56.896, 105.97, 100, 0, 2902, 13801, 31014, 45
2026/10/09 09:35:57.918, 106.31, 100, 0, 2902, 13801, 31014, 45
2026/10/09 09:35:58.936, 106.44, 100, 0, 2902, 13801, 31014, 45
2026/10/09 09:35:59.953, 106.57, 100, 0, 2902, 13801, 31014, 45
2026/10/09 09:36:00.968, 107.12, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:01.980, 107.12, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:02.992, 107.15, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:04.002, 106.89, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:05.010, 106.91, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:06.018, 106.82, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:07.026, 107.11, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:08.033, 107.32, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:09.038, 107.10, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:10.044, 107.10, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:11.049, 107.59, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:12.053, 107.25, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:13.057, 107.44, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:14.061, 107.48, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:15.064, 107.43, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:16.067, 107.40, 100, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:17.070, 107.36, 100, 0, 2902, 13801, 31014, 47
2026/10/09 09:36:18.074, 107.43, 100, 0, 2902, 13801, 31014, 47
2026/10/09 09:36:19.076, 123.11, 100, 0, 2835, 13801, 31014, 47
2026/10/09 09:36:20.078, 103.07, 0, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:21.081, 79.11, 0, 0, 2580, 13801, 31014, 45
2026/10/09 09:36:22.083, 59.35, 0, 0, 2542, 13801, 31014, 45
2026/10/09 09:36:23.085, 59.54, 0, 0, 2542, 13801, 31014, 45
2026/10/09 09:36:24.086, 59.62, 0, 0, 2542, 13801, 31014, 45
2026/10/09 09:36:25.088, 59.30, 0, 0, 2542, 13801, 31014, 45
2026/10/09 09:36:26.088, 59.23, 0, 0, 2542, 13801, 31014, 45
2026/10/09 09:36:27.089, 59.39, 0, 0, 2542, 13801, 31014, 45
2026/10/09 09:36:28.089, 59.09, 0, 0, 2542, 13801, 31014, 45
2026/10/09 09:36:29.089, 59.08, 0, 0, 2542, 13801, 31014, 45
2026/10/09 09:36:30.090, 59.74, 0, 0, 2542, 13801, 31014, 45
2026/10/09 09:36:31.090, 59.12, 0, 0, 2542, 13801, 31014, 45
2026/10/09 09:36:32.091, 59.73, 0, 0, 2542, 13801, 31014, 45
2026/10/09 09:36:33.091, 59.91, 0, 0, 2542, 13801, 31014, 45
2026/10/09 09:36:34.091, 59.81, 0, 0, 2542, 13801, 31014, 45
2026/10/09 09:36:35.092, 60.02, 0, 0, 2542, 13801, 31014, 45
2026/10/09 09:36:36.092, 52.67, 0, 0, 502, 810, 31014, 45
2026/10/09 09:36:37.093, 26.96, 0, 0, 427, 810, 31014, 44
2026/10/09 09:36:38.093, 18.37, 0, 0, 270, 405, 31014, 44
2026/10/09 09:36:39.093, 11.11, 0, 0, 195, 405, 31014, 44
2026/10/09 09:36:40.094, 9.13, 0, 0, 195, 405, 31014, 44
2026/10/09 09:36:41.094, 6.49, 0, 0, 195, 405, 31014, 44
2026/10/09 09:36:42.094, 60.25, 46, 1, 2902, 13801, 31014, 46
2026/10/09 09:36:43.095, 87.13, 46, 1, 2902, 13801, 31014, 46
2026/10/09 09:36:44.095, 85.67, 11, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:45.095, 89.14, 46, 1, 2902, 13801, 31014, 46
2026/10/09 09:36:46.096, 84.78, 0, 0, 2902, 13801, 31014, 46
2026/10/09 09:36:47.100, 79.81, 0, 0, 2580, 13801, 31014, 46
2026/10/09 09:36:48.101, 59.13, 0, 0, 2542, 13801, 31014, 45
2026/10/09 09:36:49.101, 59.24, 0, 0, 2542, 13801, 31014, 46
2026/10/09 09:36:50.102, 59.84, 0, 0, 2542, 13801, 31014, 46
2026/10/09 09:36:51.102, 59.71, 0, 0, 2542, 13801, 31014, 46
2026/10/09 09:36:52.102, 59.91, 0, 0, 2542, 13801, 31014, 46
2026/10/09 09:36:53.104, 60.21, 0, 0, 2542, 13801, 31014, 46
2026/10/09 09:36:54.105, 60.28, 0, 0, 2542, 13801, 31014, 46
2026/10/09 09:36:55.105, 70.33, 79, 0, 2692, 13801, 30282, 46
2026/10/09 09:36:56.105, 103.78, 100, 0, 2902, 13801, 30282, 47
2026/10/09 09:36:57.106, 105.13, 100, 0, 2902, 13801, 30282, 47
2026/10/09 09:36:58.106, 105.37, 100, 0, 2902, 13801, 30282, 47
2026/10/09 09:36:59.107, 105.49, 100, 0, 2902, 13801, 30282, 47
2026/10/09 09:37:00.108, 105.29, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:01.110, 105.36, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:02.112, 105.61, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:03.113, 105.45, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:04.115, 105.50, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:05.116, 105.57, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:06.117, 105.23, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:07.118, 105.38, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:08.120, 105.40, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:09.120, 105.83, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:10.120, 106.09, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:11.121, 106.34, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:12.121, 106.62, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:13.121, 106.77, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:14.122, 106.78, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:15.122, 106.35, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:16.122, 106.50, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:17.123, 106.61, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:18.123, 106.39, 100, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:19.124, 106.71, 100, 0, 2902, 13801, 30282, 49
2026/10/09 09:37:20.124, 116.23, 0, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:21.124, 88.97, 0, 0, 2902, 13801, 30282, 48
2026/10/09 09:37:22.125, 77.67, 0, 0, 2542, 13801, 30282, 47
2026/10/09 09:37:23.125, 65.46, 0, 0, 2542, 13801, 30282, 47
2026/10/09 09:37:24.126, 64.89, 0, 0, 2542, 13801, 30282, 47
2026/10/09 09:37:25.126, 63.99, 0, 0, 2542, 13801, 30282, 47
2026/10/09 09:37:26.126, 63.61, 0, 0, 2542, 13801, 30282, 47
2026/10/09 09:37:27.126, 63.59, 0, 0, 2542, 13801, 30282, 47
2026/10/09 09:37:28.127, 64.28, 0, 0, 2542, 13801, 30282, 47
2026/10/09 09:37:29.127, 64.22, 0, 0, 2542, 13801, 30282, 47
2026/10/09 09:37:30.127, 64.58, 0, 0, 2542, 13801, 30282, 47
2026/10/09 09:37:31.128, 65.12, 0, 0, 2542, 13801, 30282, 47
2026/10/09 09:37:32.128, 65.21, 0, 0, 2542, 13801, 30282, 47
2026/10/09 09:37:33.128, 65.15, 0, 0, 2542, 13801, 30282, 46
2026/10/09 09:37:34.129, 63.94, 0, 0, 2542, 13801, 30282, 46
2026/10/09 09:37:35.129, 63.72, 0, 0, 2542, 13801, 30282, 46
2026/10/09 09:37:36.129, 63.97, 0, 0, 2542, 13801, 30282, 46
2026/10/09 09:37:37.130, 38.19, 0, 0, 420, 810, 30282, 45
2026/10/09 09:37:38.130, 30.69, 0, 0, 420, 810, 30282, 45
2026/10/09 09:37:39.131, 20.11, 0, 0, 255, 405, 30282, 45
2026/10/09 09:37:40.131, 40.60, 34, 1, 2542, 13801, 30282, 46
2026/10/09 09:37:41.131, 67.37, 10, 0, 2542, 13801, 30282, 46
2026/10/09 09:37:42.132, 63.74, 9, 0, 2542, 13801, 30282, 46
2026/10/09 09:37:43.132, 63.90, 20, 1, 2542, 13801, 30282, 46
2026/10/09 09:37:44.133, 68.41, 24, 1, 2542, 13801, 30282, 46
2026/10/09 09:37:45.134, 63.85, 0, 0, 2542, 13801, 30282, 45
2026/10/09 09:37:46.134, 63.01, 0, 0, 2542, 13801, 30282, 45
2026/10/09 09:37:47.135, 63.12, 0, 0, 2542, 13801, 30282, 45
2026/10/09 09:37:48.135, 62.73, 0, 0, 2542, 13801, 30282, 45
2026/10/09 09:37:49.135, 62.60, 0, 0, 2542, 13801, 30282, 45
2026/10/09 09:37:50.136, 62.75, 0, 0, 2542, 13801, 30282, 45
2026/10/09 09:37:51.136, 63.04, 0, 0, 2542, 13801, 30282, 45
2026/10/09 09:37:52.137, 63.22, 0, 0, 2542, 13801, 30282, 45
2026/10/09 09:37:53.138, 64.31, 0, 0, 2542, 13801, 30282, 45
2026/10/09 09:37:54.138, 64.34, 0, 0, 2542, 13801, 30282, 45
2026/10/09 09:37:55.139, 63.70, 0, 0, 2542, 13801, 30282, 45
2026/10/09 09:37:56.139, 63.02, 0, 0, 2542, 13801, 30282, 45
2026/10/09 09:37:57.139, 61.78, 0, 0, 2542, 13801, 30282, 45
2026/10/09 09:37:58.140, 61.72, 0, 0, 2542, 13801, 30282, 45
2026/10/09 09:37:59.140, 62.46, 0, 0, 2542, 13801, 30282, 45
2026/10/09 09:38:00.141, 62.69, 0, 0, 2542, 13801, 30282, 44
2026/10/09 09:38:01.142, 37.19, 0, 0, 420, 810, 30282, 44
2026/10/09 09:38:02.142, 32.83, 0, 0, 420, 810, 30282, 43
2026/10/09 09:38:03.143, 20.57, 0, 0, 255, 405, 30282, 43
2026/10/09 09:38:04.143, 17.54, 0, 0, 195, 405, 30282, 43
2026/10/09 09:38:05.144, 11.94, 0, 0, 195, 405, 30282, 43
2026/10/09 09:38:06.144, 9.13, 0, 0, 195, 405, 30282, 43
2026/10/09 09:38:07.145, 7.04, 0, 0, 195, 405, 30282, 43
2026/10/09 09:38:08.145, 7.31, 0, 0, 195, 405, 30282, 43
2026/10/09 09:38:09.146, 7.71, 0, 0, 195, 405, 30282, 43
2026/10/09 09:38:10.146, 6.38, 0, 0, 195, 405, 30282, 43
2026/10/09 09:38:11.147, 14.91, 100, 93, 930, 810, 2, 43
2026/10/09 09:38:12.147, 111.96, 100, 2, 2902, 13801, 31044, 46
2026/10/09 09:38:13.148, 127.65, 100, 1, 2902, 13801, 31044, 46
2026/10/09 09:38:14.148, 127.62, 100, 2, 2902, 13801, 31044, 46
2026/10/09 09:38:15.148, 127.49, 100, 2, 2902, 13801, 31044, 46
2026/10/09 09:38:16.149, 127.99, 100, 2, 2902, 13801, 31044, 46
2026/10/09 09:38:17.149, 127.46, 100, 2, 2902, 13801, 31044, 46
2026/10/09 09:38:18.150, 127.76, 100, 2, 2902, 13801, 31044, 46
2026/10/09 09:38:19.150, 128.28, 100, 2, 2902, 13801, 31044, 46
2026/10/09 09:38:20.153, 127.71, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:21.153, 128.05, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:22.154, 128.17, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:23.154, 128.00, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:24.154, 128.42, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:25.155, 128.42, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:26.155, 128.30, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:27.156, 128.67, 100, 1, 2902, 13801, 31044, 47
2026/10/09 09:38:28.156, 128.79, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:29.157, 131.04, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:30.157, 132.09, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:31.158, 132.60, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:32.158, 147.45, 0, 0, 2902, 13801, 31044, 47
2026/10/09 09:38:33.159, 87.84, 0, 0, 2902, 13801, 31044, 46
2026/10/09 09:38:34.159, 107.99, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:35.160, 126.15, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:36.160, 126.57, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:37.161, 126.36, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:38.161, 127.07, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:39.162, 127.66, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:40.162, 127.34, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:41.163, 126.51, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:42.163, 125.89, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:43.163, 125.68, 100, 1, 2902, 13801, 31044, 47
2026/10/09 09:38:44.164, 126.18, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:45.164, 126.18, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:46.165, 126.10, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:47.165, 126.03, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:48.165, 126.17, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:49.166, 126.23, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:50.166, 125.43, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:51.167, 125.10, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:52.167, 126.14, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:53.168, 126.37, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:54.168, 127.08, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:55.168, 125.85, 100, 2, 2902, 13801, 31044, 47
2026/10/09 09:38:56.169, 118.07, 0, 0, 2902, 13801, 31044, 46
2026/10/09 09:38:57.169, 86.36, 0, 0, 2902, 13801, 31044, 46
2026/10/09 09:38:58.169, 67.52, 0, 0, 2542, 13801, 31044, 45
2026/10/09 09:38:59.170, 63.17, 0, 0, 2542, 13801, 31044, 45
2026/10/09 09:39:00.170, 63.57, 0, 0, 2542, 13801, 31044, 45
2026/10/09 09:39:01.171, 63.27, 0, 0, 2542, 13801, 31044, 45
2026/10/09 09:39:02.171, 64.00, 0, 0, 2542, 13801, 31044, 45
2026/10/09 09:39:03.172, 63.61, 0, 0, 2542, 13801, 31044, 45
2026/10/09 09:39:04.172, 63.22, 0, 0, 2542, 13801, 31044, 45
2026/10/09 09:39:05.173, 63.11, 0, 0, 2542, 13801, 31044, 45
2026/10/09 09:39:06.173, 62.54, 0, 0, 2542, 13801, 31044, 45
2026/10/09 09:39:07.173, 62.62, 0, 0, 2542, 13801, 31044, 44
2026/10/09 09:39:08.174, 62.97, 0, 0, 2542, 13801, 31044, 44
2026/10/09 09:39:09.174, 63.05, 0, 0, 2542, 13801, 31044, 44
2026/10/09 09:39:10.175, 62.95, 0, 0, 2542, 13801, 31044, 44
2026/10/09 09:39:11.175, 63.08, 0, 0, 2542, 13801, 31044, 44
2026/10/09 09:39:12.181, 63.15, 0, 0, 2542, 13801, 31044, 44
2026/10/09 09:39:13.208, 36.92, 0, 0, 435, 810, 31044, 43
2026/10/09 09:39:14.232, 29.23, 0, 0, 435, 810, 31044, 43
2026/10/09 09:39:15.253, 18.82, 0, 0, 262, 405, 31044, 43
2026/10/09 09:39:16.271, 17.47, 0, 0, 195, 405, 31044, 43
2026/10/09 09:39:17.288, 10.34, 0, 0, 195, 405, 31044, 42
2026/10/09 09:39:18.302, 11.22, 0, 0, 195, 405, 31044, 42
2026/10/09 09:39:19.314, 49.04, 45, 1, 2917, 13801, 31044, 44
2026/10/09 09:39:20.326, 89.76, 10, 0, 2917, 13801, 31044, 44
2026/10/09 09:39:21.336, 88.25, 46, 1, 2917, 13801, 31044, 44
2026/10/09 09:39:22.344, 91.52, 49, 1, 2917, 13801, 31044, 44
2026/10/09 09:39:23.352, 87.50, 0, 0, 2917, 13801, 31044, 44
2026/10/09 09:39:24.359, 85.26, 0, 0, 2730, 13801, 31044, 44
2026/10/09 09:39:25.366, 63.94, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:39:26.372, 63.71, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:39:27.377, 63.20, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:39:28.383, 61.95, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:39:29.388, 67.14, 55, 37, 2542, 14001, 584, 43
2026/10/09 09:39:30.391, 96.87, 100, 0, 2902, 13801, 584, 45
2026/10/09 09:39:31.395, 105.35, 100, 0, 2902, 13801, 584, 45
2026/10/09 09:39:32.398, 105.62, 100, 0, 2902, 13801, 584, 45
2026/10/09 09:39:33.402, 105.61, 100, 0, 2902, 13801, 584, 45
2026/10/09 09:39:34.404, 105.65, 100, 0, 2902, 13801, 584, 45
2026/10/09 09:39:35.407, 105.04, 100, 0, 2902, 13801, 584, 45
2026/10/09 09:39:36.409, 104.89, 100, 0, 2902, 13801, 584, 45
2026/10/09 09:39:37.412, 104.61, 100, 0, 2902, 13801, 584, 45
2026/10/09 09:39:38.414, 104.90, 100, 0, 2902, 13801, 584, 45
2026/10/09 09:39:39.417, 105.22, 100, 0, 2902, 13801, 584, 45
2026/10/09 09:39:40.419, 94.36, 0, 0, 2902, 13801, 2, 44
2026/10/09 09:39:41.421, 96.08, 100, 0, 2902, 13801, 2572, 45
2026/10/09 09:39:42.422, 105.14, 100, 0, 2902, 13801, 2572, 45
2026/10/09 09:39:43.425, 105.28, 100, 0, 2902, 13801, 2572, 45
2026/10/09 09:39:44.426, 105.71, 100, 0, 2902, 13801, 2572, 45
2026/10/09 09:39:45.428, 105.87, 100, 0, 2902, 13801, 2572, 45
2026/10/09 09:39:46.429, 106.50, 100, 0, 2902, 13801, 2572, 45
2026/10/09 09:39:47.430, 107.10, 100, 0, 2902, 13801, 2572, 45
2026/10/09 09:39:48.433, 106.96, 100, 0, 2902, 13801, 2572, 45
2026/10/09 09:39:49.435, 106.56, 100, 0, 2902, 13801, 2572, 45
2026/10/09 09:39:50.436, 105.59, 100, 0, 2902, 13801, 2572, 45
2026/10/09 09:39:51.437, 104.71, 100, 0, 2902, 13801, 2572, 45
2026/10/09 09:39:52.439, 89.98, 0, 0, 2902, 13801, 2572, 44
2026/10/09 09:39:53.441, 84.90, 0, 0, 2722, 13801, 2572, 43
2026/10/09 09:39:54.442, 64.71, 0, 0, 2542, 14001, 8728, 43
2026/10/09 09:39:55.443, 100.03, 100, 0, 2902, 13801, 8728, 44
2026/10/09 09:39:56.445, 110.55, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:39:57.447, 110.36, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:39:58.450, 110.08, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:39:59.451, 109.37, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:40:00.453, 109.35, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:40:01.454, 109.70, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:40:02.456, 109.91, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:40:03.458, 109.97, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:40:04.460, 109.72, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:40:05.461, 111.28, 0, 0, 2887, 13801, 8728, 44
2026/10/09 09:40:06.463, 85.88, 0, 0, 2902, 13801, 8728, 44
2026/10/09 09:40:07.465, 79.55, 0, 0, 2542, 13801, 8728, 43
2026/10/09 09:40:08.467, 62.88, 0, 0, 2542, 13801, 8728, 43
2026/10/09 09:40:09.468, 63.27, 0, 0, 2542, 13801, 8728, 43
2026/10/09 09:40:10.470, 64.06, 0, 0, 2542, 13801, 8728, 43
2026/10/09 09:40:11.471, 65.09, 44, 1, 2542, 13801, 8728, 43
2026/10/09 09:40:12.473, 85.28, 0, 0, 2917, 13801, 8728, 43
2026/10/09 09:40:13.476, 85.61, 0, 0, 2917, 13801, 8728, 43
2026/10/09 09:40:14.477, 73.61, 0, 0, 2550, 13801, 508, 43
2026/10/09 09:40:15.479, 320.90, 100, 60, 2565, 13801, 31092, 55
2026/10/09 09:40:16.480, 480.67, 100, 60, 2542, 13801, 31092, 56
2026/10/09 09:40:17.482, 480.13, 100, 59, 2527, 13801, 31092, 56
2026/10/09 09:40:18.484, 480.07, 100, 58, 2527, 13801, 31092, 57
2026/10/09 09:40:19.486, 480.09, 100, 58, 2535, 13801, 31092, 57
2026/10/09 09:40:20.487, 479.88, 100, 59, 2535, 13801, 31092, 57
2026/10/09 09:40:21.489, 479.41, 100, 60, 2542, 13801, 31092, 57
2026/10/09 09:40:22.490, 479.90, 100, 60, 2535, 13801, 31092, 57
2026/10/09 09:40:23.492, 479.98, 100, 59, 2535, 13801, 31092, 58
2026/10/09 09:40:24.493, 480.04, 100, 59, 2535, 13801, 31092, 58
2026/10/09 09:40:25.495, 480.16, 100, 59, 2527, 13801, 31092, 58
2026/10/09 09:40:26.497, 480.00, 100, 59, 2535, 13801, 31092, 59
2026/10/09 09:40:27.499, 479.98, 100, 59, 2535, 13801, 31092, 59
2026/10/09 09:40:28.500, 480.17, 100, 59, 2527, 13801, 31092, 59
2026/10/09 09:40:29.502, 479.89, 100, 59, 2527, 13801, 31092, 59
2026/10/09 09:40:30.503, 479.88, 100, 59, 2527, 13801, 31092, 59
2026/10/09 09:40:31.505, 480.00, 100, 59, 2527, 13801, 31092, 60
2026/10/09 09:40:32.506, 480.02, 100, 58, 2512, 13801, 31092, 60
2026/10/09 09:40:33.508, 479.79, 100, 59, 2505, 13801, 31092, 60
2026/10/09 09:40:34.509, 479.94, 100, 59, 2520, 13801, 31092, 61
2026/10/09 09:40:35.511, 284.51, 0, 0, 2902, 13801, 31092, 50
2026/10/09 09:40:36.512, 90.81, 0, 0, 2902, 13801, 31092, 49
2026/10/09 09:40:37.514, 73.50, 0, 0, 2542, 13801, 31092, 48
2026/10/09 09:40:38.515, 65.98, 0, 0, 2542, 13801, 31092, 48
2026/10/09 09:40:39.516, 65.61, 0, 0, 2542, 13801, 31092, 48
2026/10/09 09:40:40.518, 67.59, 37, 1, 2542, 13801, 31092, 48
2026/10/09 09:40:41.519, 67.49, 0, 0, 2542, 13801, 31092, 48
2026/10/09 09:40:42.521, 65.41, 0, 0, 2542, 13801, 31092, 47
2026/10/09 09:40:43.522, 65.10, 0, 0, 2542, 13801, 31092, 47
2026/10/09 09:40:44.524, 64.55, 0, 0, 2542, 13801, 31092, 47
2026/10/09 09:40:45.525, 64.54, 0, 0, 2542, 13801, 31092, 47
2026/10/09 09:40:46.526, 64.65, 0, 0, 2542, 13801, 31092, 47
2026/10/09 09:40:47.528, 65.12, 0, 0, 2542, 13801, 31092, 47
2026/10/09 09:40:48.529, 65.19, 0, 0, 2542, 13801, 31092, 47
2026/10/09 09:40:49.530, 64.31, 0, 0, 2542, 13801, 31092, 47
2026/10/09 09:40:50.530, 63.77, 0, 0, 2542, 13801, 31092, 46
2026/10/09 09:40:51.530, 63.28, 0, 0, 2542, 13801, 31092, 46
2026/10/09 09:40:52.530, 63.48, 0, 0, 2542, 13801, 31092, 46
2026/10/09 09:40:53.531, 63.95, 0, 0, 2542, 13801, 31092, 46
2026/10/09 09:40:54.531, 64.60, 0, 0, 2542, 13801, 31092, 46
2026/10/09 09:40:55.532, 64.97, 0, 0, 2542, 13801, 31092, 46
2026/10/09 09:40:56.532, 65.83, 0, 0, 2542, 13801, 31092, 46
2026/10/09 09:40:57.533, 65.51, 0, 0, 2542, 13801, 31092, 46
2026/10/09 09:40:58.533, 46.88, 36, 1, 2160, 13801, 31092, 46
2026/10/09 09:40:59.534, 68.13, 37, 1, 2542, 13801, 31092, 46
2026/10/09 09:41:00.534, 67.97, 33, 1, 2542, 13801, 31092, 46
2026/10/09 09:41:01.535, 65.63, 0, 0, 2542, 13801, 31092, 46
2026/10/09 09:41:02.535, 64.04, 0, 0, 2542, 13801, 31092, 45
2026/10/09 09:41:03.535, 63.91, 0, 0, 2542, 13801, 31092, 45
2026/10/09 09:41:04.536, 64.09, 0, 0, 2542, 13801, 31092, 45
2026/10/09 09:41:05.536, 64.50, 0, 0, 2550, 13801, 1, 45
2026/10/09 09:41:06.537, 175.29, 100, 48, 2752, 13801, 31088, 53
2026/10/09 09:41:07.537, 459.95, 100, 47, 2737, 13801, 31088, 58
2026/10/09 09:41:08.537, 454.86, 100, 48, 2745, 13801, 31088, 55
2026/10/09 09:41:09.538, 460.96, 100, 47, 2737, 13801, 31088, 59
2026/10/09 09:41:10.538, 456.24, 100, 48, 2745, 13801, 31088, 56
2026/10/09 09:41:11.538, 461.29, 100, 47, 2737, 13801, 31088, 60
2026/10/09 09:41:12.539, 456.60, 100, 48, 2737, 13801, 31088, 57
2026/10/09 09:41:13.541, 460.51, 100, 48, 2745, 13801, 31088, 60
2026/10/09 09:41:14.541, 458.23, 100, 48, 2745, 13801, 31088, 58
2026/10/09 09:41:15.541, 460.86, 100, 48, 2737, 13801, 31088, 61
2026/10/09 09:41:16.542, 458.03, 100, 47, 2737, 13801, 31088, 58
2026/10/09 09:41:17.542, 460.49, 100, 48, 2745, 13801, 31088, 61
2026/10/09 09:41:18.542, 460.16, 100, 47, 2730, 13801, 31088, 59
2026/10/09 09:41:19.543, 460.32, 100, 48, 2737, 13801, 31088, 61
2026/10/09 09:41:20.546, 454.14, 100, 48, 2737, 13801, 31088, 61
2026/10/09 09:41:21.546, 460.31, 100, 47, 2737, 13801, 31088, 60
2026/10/09 09:41:22.547, 460.64, 100, 48, 2745, 13801, 31088, 62
2026/10/09 09:41:23.547, 460.12, 100, 47, 2730, 13801, 31088, 60
2026/10/09 09:41:24.547, 459.73, 100, 48, 2730, 13801, 31088, 62
2026/10/09 09:41:25.548, 462.76, 100, 47, 2722, 13801, 31088, 63
2026/10/09 09:41:26.548, 396.10, 0, 0, 2880, 13801, 31088, 54
2026/10/09 09:41:27.548, 93.83, 0, 0, 2902, 13801, 31088, 51
2026/10/09 09:41:28.549, 93.76, 0, 0, 2902, 13801, 31088, 51
2026/10/09 09:41:29.549, 91.43, 0, 0, 2902, 13801, 31088, 51
2026/10/09 09:41:30.551, 74.27, 0, 0, 2542, 13801, 31088, 50
2026/10/09 09:41:31.552, 66.28, 0, 0, 2542, 13801, 31088, 49
2026/10/09 09:41:32.552, 66.74, 0, 0, 2542, 13801, 31088, 49
2026/10/09 09:41:33.553, 67.17, 0, 0, 2542, 13801, 31088, 49
2026/10/09 09:41:34.553, 66.25, 0, 0, 2542, 13801, 31088, 49
2026/10/09 09:41:35.554, 65.93, 0, 0, 2542, 13801, 31088, 49
2026/10/09 09:41:36.556, 65.23, 0, 0, 2542, 13801, 31088, 48
2026/10/09 09:41:37.557, 65.28, 0, 0, 2542, 13801, 31088, 48
2026/10/09 09:41:38.559, 65.38, 0, 0, 2542, 13801, 31088, 48
2026/10/09 09:41:39.560, 65.73, 0, 0, 2542, 13801, 31088, 48
2026/10/09 09:41:40.562, 66.49, 0, 0, 2542, 13801, 31088, 48
2026/10/09 09:41:41.563, 67.03, 0, 0, 2542, 13801, 31088, 48
2026/10/09 09:41:42.565, 66.68, 0, 0, 2542, 13801, 31088, 48
2026/10/09 09:41:43.566, 66.08, 0, 0, 2542, 13801, 31088, 47
2026/10/09 09:41:44.568, 65.02, 0, 0, 2542, 13801, 31088, 47
2026/10/09 09:41:45.569, 39.50, 0, 0, 427, 810, 31088, 46
2026/10/09 09:41:46.570, 27.48, 0, 0, 382, 810, 31088, 46
2026/10/09 09:41:47.572, 20.71, 0, 0, 232, 405, 31088, 46
2026/10/09 09:41:48.573, 17.02, 0, 0, 195, 405, 31088, 46
2026/10/09 09:41:49.575, 12.73, 0, 0, 195, 405, 31088, 46
2026/10/09 09:41:50.576, 29.95, 9, 0, 2542, 13801, 31088, 46
2026/10/09 09:41:51.577, 66.31, 45, 1, 2542, 13801, 31088, 46
2026/10/09 09:41:52.579, 88.71, 47, 1, 2902, 13801, 31088, 47
2026/10/09 09:41:53.580, 91.56, 45, 1, 2902, 13801, 31088, 47
2026/10/09 09:41:54.581, 91.75, 45, 1, 2902, 13801, 31088, 47
2026/10/09 09:41:55.583, 89.73, 0, 0, 2902, 13801, 31088, 47
2026/10/09 09:41:56.584, 86.75, 0, 0, 2722, 13801, 31088, 47
2026/10/09 09:41:57.585, 64.56, 0, 0, 2542, 13801, 31088, 46
2026/10/09 09:41:58.587, 63.62, 0, 0, 2542, 13801, 31088, 46
2026/10/09 09:41:59.588, 63.60, 0, 0, 2542, 13801, 31088, 46
2026/10/09 09:42:00.590, 89.87, 88, 23, 2730, 13801, 31086, 49
2026/10/09 09:42:01.591, 336.23, 100, 26, 2895, 13801, 31086, 53
2026/10/09 09:42:02.593, 337.03, 100, 26, 2887, 13801, 31086, 54
2026/10/09 09:42:03.596, 337.48, 100, 26, 2887, 13801, 31086, 54
2026/10/09 09:42:04.598, 338.37, 100, 26, 2887, 13801, 31086, 54
2026/10/09 09:42:05.600, 338.53, 100, 26, 2887, 13801, 31086, 54
2026/10/09 09:42:06.601, 337.99, 100, 26, 2887, 13801, 31086, 54
2026/10/09 09:42:07.602, 337.30, 100, 26, 2887, 13801, 31086, 55
2026/10/09 09:42:08.604, 337.68, 100, 26, 2887, 13801, 31086, 55
2026/10/09 09:42:09.605, 338.44, 100, 26, 2887, 13801, 31086, 55
2026/10/09 09:42:10.607, 338.49, 100, 26, 2887, 13801, 31086, 55
2026/10/09 09:42:11.608, 339.06, 100, 26, 2887, 13801, 31086, 55
2026/10/09 09:42:12.610, 339.69, 100, 26, 2887, 13801, 31086, 55
2026/10/09 09:42:13.611, 340.12, 100, 26, 2887, 13801, 31086, 56
2026/10/09 09:42:14.613, 339.99, 100, 26, 2887, 13801, 31086, 56
2026/10/09 09:42:15.615, 339.81, 100, 26, 2887, 13801, 31086, 56
2026/10/09 09:42:16.616, 339.23, 100, 26, 2887, 13801, 31086, 56
2026/10/09 09:42:17.618, 339.70, 100, 26, 2887, 13801, 31086, 56
2026/10/09 09:42:18.619, 340.10, 100, 26, 2887, 13801, 31086, 56
2026/10/09 09:42:19.621, 340.47, 100, 26, 2887, 13801, 31086, 56
2026/10/09 09:42:20.622, 346.83, 100, 51, 2820, 13801, 31086, 54
2026/10/09 09:42:21.624, 127.09, 0, 0, 2902, 13801, 31086, 50
2026/10/09 09:42:22.625, 88.70, 0, 0, 2722, 13801, 31086, 49
2026/10/09 09:42:23.626, 66.86, 0, 0, 2542, 13801, 31086, 49
2026/10/09 09:42:24.628, 66.36, 0, 0, 2542, 13801, 31086, 49
2026/10/09 09:42:25.629, 66.40, 0, 0, 2542, 13801, 31086, 48
2026/10/09 09:42:26.631, 66.78, 0, 0, 2542, 13801, 31086, 48
2026/10/09 09:42:27.632, 67.73, 0, 0, 2542, 13801, 31086, 48
2026/10/09 09:42:28.634, 67.63, 0, 0, 2542, 13801, 31086, 48
2026/10/09 09:42:29.636, 66.49, 0, 0, 2542, 13801, 31086, 48
2026/10/09 09:42:30.637, 65.55, 0, 0, 2542, 13801, 31086, 48
2026/10/09 09:42:31.639, 65.46, 0, 0, 2542, 13801, 31086, 48
2026/10/09 09:42:32.640, 65.00, 0, 0, 2542, 13801, 31086, 48
2026/10/09 09:42:33.642, 65.36, 0, 0, 2542, 13801, 31086, 48
2026/10/09 09:42:34.643, 65.62, 0, 0, 2542, 13801, 31086, 47
2026/10/09 09:42:35.644, 66.06, 0, 0, 2542, 13801, 31086, 47
2026/10/09 09:42:36.646, 65.25, 0, 0, 2542, 13801, 31086, 47
2026/10/09 09:42:37.647, 64.62, 0, 0, 2542, 13801, 31086, 47
2026/10/09 09:42:38.649, 64.56, 0, 0, 2542, 13801, 31086, 47
2026/10/09 09:42:39.650, 39.18, 0, 0, 420, 810, 31086, 46
2026/10/09 09:42:40.652, 23.52, 0, 0, 330, 13801, 31086, 46
2026/10/09 09:42:41.653, 48.99, 37, 1, 2542, 13801, 31086, 47
2026/10/09 09:42:42.655, 70.20, 37, 1, 2542, 13801, 31086, 47
2026/10/09 09:42:43.656, 69.94, 37, 1, 2542, 13801, 31086, 47
2026/10/09 09:42:44.657, 66.66, 0, 0, 2542, 13801, 31086, 46
2026/10/09 09:42:45.659, 64.13, 0, 0, 2542, 13801, 31086, 46
2026/10/09 09:42:46.660, 64.17, 0, 0, 2542, 13801, 31086, 46
2026/10/09 09:42:47.662, 63.84, 0, 0, 2542, 13801, 31086, 46
2026/10/09 09:42:48.663, 70.77, 3, 2, 2542, 14001, 31078, 46
2026/10/09 09:42:49.664, 137.50, 100, 7, 2902, 13801, 31078, 49
2026/10/09 09:42:50.666, 172.24, 100, 6, 2902, 13801, 31078, 49
2026/10/09 09:42:51.667, 171.55, 100, 6, 2902, 13801, 31078, 49
2026/10/09 09:42:52.669, 170.73, 100, 7, 2902, 13801, 31078, 49
2026/10/09 09:42:53.670, 170.15, 100, 6, 2902, 13801, 31078, 49
2026/10/09 09:42:54.672, 170.66, 100, 7, 2902, 13801, 31078, 49
2026/10/09 09:42:55.673, 171.34, 100, 6, 2902, 13801, 31078, 49
2026/10/09 09:42:56.675, 171.82, 100, 7, 2902, 13801, 31078, 50
2026/10/09 09:42:57.676, 171.95, 100, 7, 2902, 13801, 31078, 49
2026/10/09 09:42:58.677, 171.76, 100, 6, 2902, 13801, 31078, 50
2026/10/09 09:42:59.679, 171.34, 100, 7, 2902, 13801, 31078, 50
2026/10/09 09:43:00.680, 171.30, 100, 6, 2902, 13801, 31078, 50
2026/10/09 09:43:01.682, 170.95, 100, 7, 2902, 13801, 31078, 50
2026/10/09 09:43:02.682, 171.30, 100, 6, 2902, 13801, 31078, 50
2026/10/09 09:43:03.684, 171.83, 100, 7, 2902, 13801, 31078, 50
2026/10/09 09:43:04.688, 172.13, 100, 7, 2902, 13801, 31078, 50
2026/10/09 09:43:05.689, 171.82, 100, 6, 2902, 13801, 31078, 50
2026/10/09 09:43:06.691, 171.23, 100, 7, 2902, 13801, 31078, 50
2026/10/09 09:43:07.692, 171.32, 100, 6, 2902, 13801, 31078, 50
2026/10/09 09:43:08.698, 185.53, 100, 7, 2827, 13801, 31078, 49
2026/10/09 09:43:09.699, 90.08, 0, 0, 2902, 13801, 31078, 47
2026/10/09 09:43:10.701, 85.71, 0, 0, 2580, 13801, 31078, 47
2026/10/09 09:43:11.702, 65.62, 0, 0, 2542, 13801, 31078, 46
2026/10/09 09:43:12.703, 66.02, 0, 0, 2542, 13801, 31078, 46
2026/10/09 09:43:13.707, 65.79, 0, 0, 2542, 13801, 31078, 46
2026/10/09 09:43:14.709, 65.23, 0, 0, 2542, 13801, 31078, 46
2026/10/09 09:43:15.711, 64.57, 0, 0, 2542, 13801, 31078, 46
2026/10/09 09:43:16.712, 64.43, 0, 0, 2542, 13801, 31078, 46
2026/10/09 09:43:17.714, 64.66, 0, 0, 2542, 13801, 31078, 46
2026/10/09 09:43:18.717, 65.34, 0, 0, 2542, 13801, 31078, 46
2026/10/09 09:43:19.718, 65.49, 0, 0, 2542, 13801, 31078, 46
2026/10/09 09:43:20.721, 65.20, 0, 0, 2542, 13801, 31078, 46
2026/10/09 09:43:21.723, 64.68, 0, 0, 2542, 13801, 31078, 46
2026/10/09 09:43:22.724, 64.11, 0, 0, 2542, 13801, 31078, 45
2026/10/09 09:43:23.725, 63.94, 0, 0, 2542, 13801, 31078, 45
2026/10/09 09:43:24.727, 63.42, 0, 0, 2542, 13801, 31078, 45
2026/10/09 09:43:25.728, 56.93, 0, 0, 645, 810, 31078, 45
2026/10/09 09:43:26.729, 30.20, 0, 0, 375, 810, 31078, 44
2026/10/09 09:43:27.731, 19.88, 0, 0, 232, 405, 31078, 44
2026/10/09 09:43:28.736, 17.28, 0, 0, 1590, 13801, 31078, 45
2026/10/09 09:43:29.738, 64.82, 11, 0, 2542, 13801, 31078, 45
2026/10/09 09:43:30.740, 67.52, 37, 1, 2542, 13801, 31078, 45
2026/10/09 09:43:31.740, 67.83, 37, 1, 2542, 13801, 31078, 45
2026/10/09 09:43:32.742, 66.57, 37, 1, 2542, 13801, 31078, 45
2026/10/09 09:43:33.743, 64.00, 0, 0, 2542, 13801, 31078, 45
2026/10/09 09:43:34.744, 64.29, 0, 0, 2542, 13801, 31078, 45
2026/10/09 09:43:35.746, 64.74, 0, 0, 2542, 13801, 31078, 45
2026/10/09 09:43:36.748, 64.57, 0, 0, 2542, 13801, 31078, 44
2026/10/09 09:43:37.750, 68.09, 0, 0, 2542, 14001, 1, 44
2026/10/09 09:43:38.751, 67.31, 0, 0, 2542, 14001, 1, 44
2026/10/09 09:43:39.753, 47.67, 0, 0, 1110, 7001, 1, 44
2026/10/09 09:43:40.755, 39.07, 0, 0, 697, 7001, 1, 43
2026/10/09 09:43:41.756, 28.18, 0, 0, 442, 810, 1, 43
2026/10/09 09:43:42.758, 26.70, 0, 0, 285, 810, 1, 43
2026/10/09 09:43:43.760, 20.66, 0, 0, 195, 405, 1, 43
2026/10/09 09:43:44.761, 14.24, 0, 0, 187, 405, 1, 43
2026/10/09 09:43:45.763, 13.60, 0, 0, 195, 405, 1, 43
2026/10/09 09:43:46.764, 11.56, 0, 0, 195, 405, 1, 42
2026/10/09 09:43:47.766, 10.77, 0, 0, 195, 405, 1, 42
2026/10/09 09:43:48.767, 11.75, 0, 0, 195, 405, 1, 42
2026/10/09 09:43:49.769, 13.01, 0, 0, 195, 405, 1, 42
2026/10/09 09:43:50.770, 12.13, 0, 0, 195, 405, 1, 42
2026/10/09 09:43:51.772, 10.90, 0, 0, 195, 405, 1, 42
2026/10/09 09:43:52.773, 9.52, 0, 0, 195, 405, 1, 42
2026/10/09 09:43:53.775, 9.49, 0, 0, 195, 405, 1, 42
2026/10/09 09:43:54.776, 9.82, 0, 0, 195, 405, 1, 42
2026/10/09 09:43:55.776, 10.98, 0, 0, 195, 405, 1, 42
2026/10/09 09:43:56.776, 11.04, 0, 0, 195, 405, 1, 42
2026/10/09 09:43:57.777, 6.53, 0, 0, 187, 405, 1, 42
2026/10/09 09:43:58.777, 7.22, 0, 0, 195, 405, 1, 41
2026/10/09 09:43:59.778, 6.87, 0, 0, 195, 405, 1, 41
2026/10/09 09:44:00.778, 6.91, 0, 0, 195, 405, 1, 41
2026/10/09 09:44:01.779, 7.08, 0, 0, 195, 405, 1, 41
2026/10/09 09:44:02.779, 6.98, 0, 0, 195, 405, 1, 41
2026/10/09 09:44:03.780, 6.82, 0, 0, 195, 405, 1, 41
2026/10/09 09:44:04.780, 6.89, 0, 0, 195, 405, 1, 41
2026/10/09 09:44:05.781, 8.17, 0, 0, 195, 405, 1, 41
1 2026/10/09 09:34:30.706 6.64 0 0 195 405 1 40
2 2026/10/09 09:34:31.736 7.91 0 0 195 405 1 40
3 2026/10/09 09:34:32.737 5.75 0 0 195 405 1 40
4 2026/10/09 09:34:33.738 5.94 0 0 195 405 1 40
5 2026/10/09 09:34:34.738 5.98 0 0 195 405 1 40
6 2026/10/09 09:34:35.739 6.31 0 0 195 405 1 40
7 2026/10/09 09:34:36.740 5.64 0 0 195 405 1 40
8 2026/10/09 09:34:37.741 5.18 0 0 195 405 1 40
9 2026/10/09 09:34:38.741 5.49 0 0 195 405 1 40
10 2026/10/09 09:34:39.741 5.46 0 0 195 405 1 40
11 2026/10/09 09:34:40.742 5.78 0 0 195 405 1 40
12 2026/10/09 09:34:41.743 5.94 0 0 195 405 1 40
13 2026/10/09 09:34:42.743 6.07 0 0 195 405 1 40
14 2026/10/09 09:34:43.744 6.11 0 0 195 405 1 40
15 2026/10/09 09:34:44.744 6.27 0 0 195 405 1 40
16 2026/10/09 09:34:45.745 6.50 0 0 195 405 1 40
17 2026/10/09 09:34:46.745 7.64 0 0 195 405 1 40
18 2026/10/09 09:34:47.746 7.00 0 0 195 405 1 40
19 2026/10/09 09:34:48.746 6.76 0 0 195 405 1 40
20 2026/10/09 09:34:49.747 6.13 0 0 195 405 1 40
21 2026/10/09 09:34:50.747 6.38 0 0 195 405 1 40
22 2026/10/09 09:34:51.747 6.44 0 0 195 405 1 40
23 2026/10/09 09:34:52.748 6.02 0 0 195 405 1 40
24 2026/10/09 09:34:53.748 6.21 0 0 195 405 1 40
25 2026/10/09 09:34:54.749 5.62 0 0 195 405 1 40
26 2026/10/09 09:34:55.749 5.48 0 0 195 405 1 40
27 2026/10/09 09:34:56.750 5.61 0 0 195 405 1 40
28 2026/10/09 09:34:57.750 5.60 0 0 195 405 1 40
29 2026/10/09 09:34:58.751 5.99 0 0 195 405 1 40
30 2026/10/09 09:34:59.751 5.39 0 0 195 405 1 40
31 2026/10/09 09:35:00.752 5.39 0 0 195 405 2 40
32 2026/10/09 09:35:01.787 54.46 100 1 2917 13801 31044 43
33 2026/10/09 09:35:02.788 117.73 100 2 2917 13801 31044 43
34 2026/10/09 09:35:03.788 118.21 100 2 2917 13801 31044 43
35 2026/10/09 09:35:04.789 118.04 100 2 2917 13801 31044 43
36 2026/10/09 09:35:05.789 118.12 100 2 2917 13801 31044 43
37 2026/10/09 09:35:06.789 118.32 100 2 2917 13801 31044 43
38 2026/10/09 09:35:07.790 118.12 100 2 2917 13801 31044 44
39 2026/10/09 09:35:08.790 118.47 100 2 2917 13801 31044 44
40 2026/10/09 09:35:09.791 118.66 100 2 2917 13801 31044 44
41 2026/10/09 09:35:10.792 118.95 100 2 2917 13801 31044 44
42 2026/10/09 09:35:11.792 118.65 100 2 2917 13801 31044 44
43 2026/10/09 09:35:12.792 118.73 100 2 2917 13801 31044 44
44 2026/10/09 09:35:13.793 118.39 100 2 2917 13801 31044 44
45 2026/10/09 09:35:14.794 118.43 100 2 2917 13801 31044 44
46 2026/10/09 09:35:15.794 118.76 100 2 2917 13801 31044 44
47 2026/10/09 09:35:16.795 118.75 100 2 2902 13801 31044 44
48 2026/10/09 09:35:17.795 119.08 100 2 2902 13801 31044 44
49 2026/10/09 09:35:18.796 118.78 100 1 2902 13801 31044 44
50 2026/10/09 09:35:19.796 118.96 100 2 2902 13801 31044 44
51 2026/10/09 09:35:20.797 118.95 100 2 2902 13801 31044 45
52 2026/10/09 09:35:21.797 118.67 90 40 2902 13801 31044 44
53 2026/10/09 09:35:22.798 81.72 0 0 2902 13801 31044 44
54 2026/10/09 09:35:23.798 68.77 0 0 2542 13801 31044 43
55 2026/10/09 09:35:24.800 58.05 0 0 2542 13801 31044 43
56 2026/10/09 09:35:25.800 58.13 0 0 2542 13801 31044 43
57 2026/10/09 09:35:26.800 58.30 0 0 2542 13801 31044 43
58 2026/10/09 09:35:27.801 58.73 0 0 2542 13801 31044 43
59 2026/10/09 09:35:28.801 58.23 0 0 2542 13801 31044 43
60 2026/10/09 09:35:29.802 58.52 0 0 2542 13801 31044 43
61 2026/10/09 09:35:30.802 58.25 0 0 2542 13801 31044 43
62 2026/10/09 09:35:31.802 58.30 0 0 2542 13801 31044 43
63 2026/10/09 09:35:32.803 58.31 0 0 2542 13801 31044 43
64 2026/10/09 09:35:33.803 57.78 0 0 2542 13801 31044 43
65 2026/10/09 09:35:34.803 58.05 0 0 2542 13801 31044 43
66 2026/10/09 09:35:35.804 59.08 0 0 2542 13801 31044 43
67 2026/10/09 09:35:36.806 58.38 0 0 2542 13801 31044 43
68 2026/10/09 09:35:37.807 58.67 0 0 2542 13801 31044 43
69 2026/10/09 09:35:38.807 51.06 0 0 502 810 31044 42
70 2026/10/09 09:35:39.808 28.27 0 0 427 810 31044 42
71 2026/10/09 09:35:40.809 15.59 0 0 262 405 31044 42
72 2026/10/09 09:35:41.809 12.99 0 0 195 405 31044 42
73 2026/10/09 09:35:42.809 7.29 0 0 195 405 31044 42
74 2026/10/09 09:35:43.810 14.20 0 0 2460 13801 31044 43
75 2026/10/09 09:35:44.810 65.39 15 0 2880 13801 31044 44
76 2026/10/09 09:35:45.811 86.94 46 1 2917 13801 31044 44
77 2026/10/09 09:35:46.812 87.16 46 1 2902 13801 31044 44
78 2026/10/09 09:35:47.813 84.60 38 1 2902 13801 31044 44
79 2026/10/09 09:35:48.814 82.12 0 0 2902 13801 31044 44
80 2026/10/09 09:35:49.814 63.34 0 0 2542 13801 31044 43
81 2026/10/09 09:35:50.815 58.46 0 0 2542 13801 31044 43
82 2026/10/09 09:35:51.816 57.97 0 0 2542 13801 31044 43
83 2026/10/09 09:35:52.816 58.36 0 0 2542 13801 31044 43
84 2026/10/09 09:35:53.818 63.52 0 0 2542 14001 510 44
85 2026/10/09 09:35:54.844 94.53 100 0 2902 13801 31014 45
86 2026/10/09 09:35:55.872 105.84 100 0 2902 13801 31014 45
87 2026/10/09 09:35:56.896 105.97 100 0 2902 13801 31014 45
88 2026/10/09 09:35:57.918 106.31 100 0 2902 13801 31014 45
89 2026/10/09 09:35:58.936 106.44 100 0 2902 13801 31014 45
90 2026/10/09 09:35:59.953 106.57 100 0 2902 13801 31014 45
91 2026/10/09 09:36:00.968 107.12 100 0 2902 13801 31014 46
92 2026/10/09 09:36:01.980 107.12 100 0 2902 13801 31014 46
93 2026/10/09 09:36:02.992 107.15 100 0 2902 13801 31014 46
94 2026/10/09 09:36:04.002 106.89 100 0 2902 13801 31014 46
95 2026/10/09 09:36:05.010 106.91 100 0 2902 13801 31014 46
96 2026/10/09 09:36:06.018 106.82 100 0 2902 13801 31014 46
97 2026/10/09 09:36:07.026 107.11 100 0 2902 13801 31014 46
98 2026/10/09 09:36:08.033 107.32 100 0 2902 13801 31014 46
99 2026/10/09 09:36:09.038 107.10 100 0 2902 13801 31014 46
100 2026/10/09 09:36:10.044 107.10 100 0 2902 13801 31014 46
101 2026/10/09 09:36:11.049 107.59 100 0 2902 13801 31014 46
102 2026/10/09 09:36:12.053 107.25 100 0 2902 13801 31014 46
103 2026/10/09 09:36:13.057 107.44 100 0 2902 13801 31014 46
104 2026/10/09 09:36:14.061 107.48 100 0 2902 13801 31014 46
105 2026/10/09 09:36:15.064 107.43 100 0 2902 13801 31014 46
106 2026/10/09 09:36:16.067 107.40 100 0 2902 13801 31014 46
107 2026/10/09 09:36:17.070 107.36 100 0 2902 13801 31014 47
108 2026/10/09 09:36:18.074 107.43 100 0 2902 13801 31014 47
109 2026/10/09 09:36:19.076 123.11 100 0 2835 13801 31014 47
110 2026/10/09 09:36:20.078 103.07 0 0 2902 13801 31014 46
111 2026/10/09 09:36:21.081 79.11 0 0 2580 13801 31014 45
112 2026/10/09 09:36:22.083 59.35 0 0 2542 13801 31014 45
113 2026/10/09 09:36:23.085 59.54 0 0 2542 13801 31014 45
114 2026/10/09 09:36:24.086 59.62 0 0 2542 13801 31014 45
115 2026/10/09 09:36:25.088 59.30 0 0 2542 13801 31014 45
116 2026/10/09 09:36:26.088 59.23 0 0 2542 13801 31014 45
117 2026/10/09 09:36:27.089 59.39 0 0 2542 13801 31014 45
118 2026/10/09 09:36:28.089 59.09 0 0 2542 13801 31014 45
119 2026/10/09 09:36:29.089 59.08 0 0 2542 13801 31014 45
120 2026/10/09 09:36:30.090 59.74 0 0 2542 13801 31014 45
121 2026/10/09 09:36:31.090 59.12 0 0 2542 13801 31014 45
122 2026/10/09 09:36:32.091 59.73 0 0 2542 13801 31014 45
123 2026/10/09 09:36:33.091 59.91 0 0 2542 13801 31014 45
124 2026/10/09 09:36:34.091 59.81 0 0 2542 13801 31014 45
125 2026/10/09 09:36:35.092 60.02 0 0 2542 13801 31014 45
126 2026/10/09 09:36:36.092 52.67 0 0 502 810 31014 45
127 2026/10/09 09:36:37.093 26.96 0 0 427 810 31014 44
128 2026/10/09 09:36:38.093 18.37 0 0 270 405 31014 44
129 2026/10/09 09:36:39.093 11.11 0 0 195 405 31014 44
130 2026/10/09 09:36:40.094 9.13 0 0 195 405 31014 44
131 2026/10/09 09:36:41.094 6.49 0 0 195 405 31014 44
132 2026/10/09 09:36:42.094 60.25 46 1 2902 13801 31014 46
133 2026/10/09 09:36:43.095 87.13 46 1 2902 13801 31014 46
134 2026/10/09 09:36:44.095 85.67 11 0 2902 13801 31014 46
135 2026/10/09 09:36:45.095 89.14 46 1 2902 13801 31014 46
136 2026/10/09 09:36:46.096 84.78 0 0 2902 13801 31014 46
137 2026/10/09 09:36:47.100 79.81 0 0 2580 13801 31014 46
138 2026/10/09 09:36:48.101 59.13 0 0 2542 13801 31014 45
139 2026/10/09 09:36:49.101 59.24 0 0 2542 13801 31014 46
140 2026/10/09 09:36:50.102 59.84 0 0 2542 13801 31014 46
141 2026/10/09 09:36:51.102 59.71 0 0 2542 13801 31014 46
142 2026/10/09 09:36:52.102 59.91 0 0 2542 13801 31014 46
143 2026/10/09 09:36:53.104 60.21 0 0 2542 13801 31014 46
144 2026/10/09 09:36:54.105 60.28 0 0 2542 13801 31014 46
145 2026/10/09 09:36:55.105 70.33 79 0 2692 13801 30282 46
146 2026/10/09 09:36:56.105 103.78 100 0 2902 13801 30282 47
147 2026/10/09 09:36:57.106 105.13 100 0 2902 13801 30282 47
148 2026/10/09 09:36:58.106 105.37 100 0 2902 13801 30282 47
149 2026/10/09 09:36:59.107 105.49 100 0 2902 13801 30282 47
150 2026/10/09 09:37:00.108 105.29 100 0 2902 13801 30282 48
151 2026/10/09 09:37:01.110 105.36 100 0 2902 13801 30282 48
152 2026/10/09 09:37:02.112 105.61 100 0 2902 13801 30282 48
153 2026/10/09 09:37:03.113 105.45 100 0 2902 13801 30282 48
154 2026/10/09 09:37:04.115 105.50 100 0 2902 13801 30282 48
155 2026/10/09 09:37:05.116 105.57 100 0 2902 13801 30282 48
156 2026/10/09 09:37:06.117 105.23 100 0 2902 13801 30282 48
157 2026/10/09 09:37:07.118 105.38 100 0 2902 13801 30282 48
158 2026/10/09 09:37:08.120 105.40 100 0 2902 13801 30282 48
159 2026/10/09 09:37:09.120 105.83 100 0 2902 13801 30282 48
160 2026/10/09 09:37:10.120 106.09 100 0 2902 13801 30282 48
161 2026/10/09 09:37:11.121 106.34 100 0 2902 13801 30282 48
162 2026/10/09 09:37:12.121 106.62 100 0 2902 13801 30282 48
163 2026/10/09 09:37:13.121 106.77 100 0 2902 13801 30282 48
164 2026/10/09 09:37:14.122 106.78 100 0 2902 13801 30282 48
165 2026/10/09 09:37:15.122 106.35 100 0 2902 13801 30282 48
166 2026/10/09 09:37:16.122 106.50 100 0 2902 13801 30282 48
167 2026/10/09 09:37:17.123 106.61 100 0 2902 13801 30282 48
168 2026/10/09 09:37:18.123 106.39 100 0 2902 13801 30282 48
169 2026/10/09 09:37:19.124 106.71 100 0 2902 13801 30282 49
170 2026/10/09 09:37:20.124 116.23 0 0 2902 13801 30282 48
171 2026/10/09 09:37:21.124 88.97 0 0 2902 13801 30282 48
172 2026/10/09 09:37:22.125 77.67 0 0 2542 13801 30282 47
173 2026/10/09 09:37:23.125 65.46 0 0 2542 13801 30282 47
174 2026/10/09 09:37:24.126 64.89 0 0 2542 13801 30282 47
175 2026/10/09 09:37:25.126 63.99 0 0 2542 13801 30282 47
176 2026/10/09 09:37:26.126 63.61 0 0 2542 13801 30282 47
177 2026/10/09 09:37:27.126 63.59 0 0 2542 13801 30282 47
178 2026/10/09 09:37:28.127 64.28 0 0 2542 13801 30282 47
179 2026/10/09 09:37:29.127 64.22 0 0 2542 13801 30282 47
180 2026/10/09 09:37:30.127 64.58 0 0 2542 13801 30282 47
181 2026/10/09 09:37:31.128 65.12 0 0 2542 13801 30282 47
182 2026/10/09 09:37:32.128 65.21 0 0 2542 13801 30282 47
183 2026/10/09 09:37:33.128 65.15 0 0 2542 13801 30282 46
184 2026/10/09 09:37:34.129 63.94 0 0 2542 13801 30282 46
185 2026/10/09 09:37:35.129 63.72 0 0 2542 13801 30282 46
186 2026/10/09 09:37:36.129 63.97 0 0 2542 13801 30282 46
187 2026/10/09 09:37:37.130 38.19 0 0 420 810 30282 45
188 2026/10/09 09:37:38.130 30.69 0 0 420 810 30282 45
189 2026/10/09 09:37:39.131 20.11 0 0 255 405 30282 45
190 2026/10/09 09:37:40.131 40.60 34 1 2542 13801 30282 46
191 2026/10/09 09:37:41.131 67.37 10 0 2542 13801 30282 46
192 2026/10/09 09:37:42.132 63.74 9 0 2542 13801 30282 46
193 2026/10/09 09:37:43.132 63.90 20 1 2542 13801 30282 46
194 2026/10/09 09:37:44.133 68.41 24 1 2542 13801 30282 46
195 2026/10/09 09:37:45.134 63.85 0 0 2542 13801 30282 45
196 2026/10/09 09:37:46.134 63.01 0 0 2542 13801 30282 45
197 2026/10/09 09:37:47.135 63.12 0 0 2542 13801 30282 45
198 2026/10/09 09:37:48.135 62.73 0 0 2542 13801 30282 45
199 2026/10/09 09:37:49.135 62.60 0 0 2542 13801 30282 45
200 2026/10/09 09:37:50.136 62.75 0 0 2542 13801 30282 45
201 2026/10/09 09:37:51.136 63.04 0 0 2542 13801 30282 45
202 2026/10/09 09:37:52.137 63.22 0 0 2542 13801 30282 45
203 2026/10/09 09:37:53.138 64.31 0 0 2542 13801 30282 45
204 2026/10/09 09:37:54.138 64.34 0 0 2542 13801 30282 45
205 2026/10/09 09:37:55.139 63.70 0 0 2542 13801 30282 45
206 2026/10/09 09:37:56.139 63.02 0 0 2542 13801 30282 45
207 2026/10/09 09:37:57.139 61.78 0 0 2542 13801 30282 45
208 2026/10/09 09:37:58.140 61.72 0 0 2542 13801 30282 45
209 2026/10/09 09:37:59.140 62.46 0 0 2542 13801 30282 45
210 2026/10/09 09:38:00.141 62.69 0 0 2542 13801 30282 44
211 2026/10/09 09:38:01.142 37.19 0 0 420 810 30282 44
212 2026/10/09 09:38:02.142 32.83 0 0 420 810 30282 43
213 2026/10/09 09:38:03.143 20.57 0 0 255 405 30282 43
214 2026/10/09 09:38:04.143 17.54 0 0 195 405 30282 43
215 2026/10/09 09:38:05.144 11.94 0 0 195 405 30282 43
216 2026/10/09 09:38:06.144 9.13 0 0 195 405 30282 43
217 2026/10/09 09:38:07.145 7.04 0 0 195 405 30282 43
218 2026/10/09 09:38:08.145 7.31 0 0 195 405 30282 43
219 2026/10/09 09:38:09.146 7.71 0 0 195 405 30282 43
220 2026/10/09 09:38:10.146 6.38 0 0 195 405 30282 43
221 2026/10/09 09:38:11.147 14.91 100 93 930 810 2 43
222 2026/10/09 09:38:12.147 111.96 100 2 2902 13801 31044 46
223 2026/10/09 09:38:13.148 127.65 100 1 2902 13801 31044 46
224 2026/10/09 09:38:14.148 127.62 100 2 2902 13801 31044 46
225 2026/10/09 09:38:15.148 127.49 100 2 2902 13801 31044 46
226 2026/10/09 09:38:16.149 127.99 100 2 2902 13801 31044 46
227 2026/10/09 09:38:17.149 127.46 100 2 2902 13801 31044 46
228 2026/10/09 09:38:18.150 127.76 100 2 2902 13801 31044 46
229 2026/10/09 09:38:19.150 128.28 100 2 2902 13801 31044 46
230 2026/10/09 09:38:20.153 127.71 100 2 2902 13801 31044 47
231 2026/10/09 09:38:21.153 128.05 100 2 2902 13801 31044 47
232 2026/10/09 09:38:22.154 128.17 100 2 2902 13801 31044 47
233 2026/10/09 09:38:23.154 128.00 100 2 2902 13801 31044 47
234 2026/10/09 09:38:24.154 128.42 100 2 2902 13801 31044 47
235 2026/10/09 09:38:25.155 128.42 100 2 2902 13801 31044 47
236 2026/10/09 09:38:26.155 128.30 100 2 2902 13801 31044 47
237 2026/10/09 09:38:27.156 128.67 100 1 2902 13801 31044 47
238 2026/10/09 09:38:28.156 128.79 100 2 2902 13801 31044 47
239 2026/10/09 09:38:29.157 131.04 100 2 2902 13801 31044 47
240 2026/10/09 09:38:30.157 132.09 100 2 2902 13801 31044 47
241 2026/10/09 09:38:31.158 132.60 100 2 2902 13801 31044 47
242 2026/10/09 09:38:32.158 147.45 0 0 2902 13801 31044 47
243 2026/10/09 09:38:33.159 87.84 0 0 2902 13801 31044 46
244 2026/10/09 09:38:34.159 107.99 100 2 2902 13801 31044 47
245 2026/10/09 09:38:35.160 126.15 100 2 2902 13801 31044 47
246 2026/10/09 09:38:36.160 126.57 100 2 2902 13801 31044 47
247 2026/10/09 09:38:37.161 126.36 100 2 2902 13801 31044 47
248 2026/10/09 09:38:38.161 127.07 100 2 2902 13801 31044 47
249 2026/10/09 09:38:39.162 127.66 100 2 2902 13801 31044 47
250 2026/10/09 09:38:40.162 127.34 100 2 2902 13801 31044 47
251 2026/10/09 09:38:41.163 126.51 100 2 2902 13801 31044 47
252 2026/10/09 09:38:42.163 125.89 100 2 2902 13801 31044 47
253 2026/10/09 09:38:43.163 125.68 100 1 2902 13801 31044 47
254 2026/10/09 09:38:44.164 126.18 100 2 2902 13801 31044 47
255 2026/10/09 09:38:45.164 126.18 100 2 2902 13801 31044 47
256 2026/10/09 09:38:46.165 126.10 100 2 2902 13801 31044 47
257 2026/10/09 09:38:47.165 126.03 100 2 2902 13801 31044 47
258 2026/10/09 09:38:48.165 126.17 100 2 2902 13801 31044 47
259 2026/10/09 09:38:49.166 126.23 100 2 2902 13801 31044 47
260 2026/10/09 09:38:50.166 125.43 100 2 2902 13801 31044 47
261 2026/10/09 09:38:51.167 125.10 100 2 2902 13801 31044 47
262 2026/10/09 09:38:52.167 126.14 100 2 2902 13801 31044 47
263 2026/10/09 09:38:53.168 126.37 100 2 2902 13801 31044 47
264 2026/10/09 09:38:54.168 127.08 100 2 2902 13801 31044 47
265 2026/10/09 09:38:55.168 125.85 100 2 2902 13801 31044 47
266 2026/10/09 09:38:56.169 118.07 0 0 2902 13801 31044 46
267 2026/10/09 09:38:57.169 86.36 0 0 2902 13801 31044 46
268 2026/10/09 09:38:58.169 67.52 0 0 2542 13801 31044 45
269 2026/10/09 09:38:59.170 63.17 0 0 2542 13801 31044 45
270 2026/10/09 09:39:00.170 63.57 0 0 2542 13801 31044 45
271 2026/10/09 09:39:01.171 63.27 0 0 2542 13801 31044 45
272 2026/10/09 09:39:02.171 64.00 0 0 2542 13801 31044 45
273 2026/10/09 09:39:03.172 63.61 0 0 2542 13801 31044 45
274 2026/10/09 09:39:04.172 63.22 0 0 2542 13801 31044 45
275 2026/10/09 09:39:05.173 63.11 0 0 2542 13801 31044 45
276 2026/10/09 09:39:06.173 62.54 0 0 2542 13801 31044 45
277 2026/10/09 09:39:07.173 62.62 0 0 2542 13801 31044 44
278 2026/10/09 09:39:08.174 62.97 0 0 2542 13801 31044 44
279 2026/10/09 09:39:09.174 63.05 0 0 2542 13801 31044 44
280 2026/10/09 09:39:10.175 62.95 0 0 2542 13801 31044 44
281 2026/10/09 09:39:11.175 63.08 0 0 2542 13801 31044 44
282 2026/10/09 09:39:12.181 63.15 0 0 2542 13801 31044 44
283 2026/10/09 09:39:13.208 36.92 0 0 435 810 31044 43
284 2026/10/09 09:39:14.232 29.23 0 0 435 810 31044 43
285 2026/10/09 09:39:15.253 18.82 0 0 262 405 31044 43
286 2026/10/09 09:39:16.271 17.47 0 0 195 405 31044 43
287 2026/10/09 09:39:17.288 10.34 0 0 195 405 31044 42
288 2026/10/09 09:39:18.302 11.22 0 0 195 405 31044 42
289 2026/10/09 09:39:19.314 49.04 45 1 2917 13801 31044 44
290 2026/10/09 09:39:20.326 89.76 10 0 2917 13801 31044 44
291 2026/10/09 09:39:21.336 88.25 46 1 2917 13801 31044 44
292 2026/10/09 09:39:22.344 91.52 49 1 2917 13801 31044 44
293 2026/10/09 09:39:23.352 87.50 0 0 2917 13801 31044 44
294 2026/10/09 09:39:24.359 85.26 0 0 2730 13801 31044 44
295 2026/10/09 09:39:25.366 63.94 0 0 2542 13801 31044 43
296 2026/10/09 09:39:26.372 63.71 0 0 2542 13801 31044 43
297 2026/10/09 09:39:27.377 63.20 0 0 2542 13801 31044 43
298 2026/10/09 09:39:28.383 61.95 0 0 2542 13801 31044 43
299 2026/10/09 09:39:29.388 67.14 55 37 2542 14001 584 43
300 2026/10/09 09:39:30.391 96.87 100 0 2902 13801 584 45
301 2026/10/09 09:39:31.395 105.35 100 0 2902 13801 584 45
302 2026/10/09 09:39:32.398 105.62 100 0 2902 13801 584 45
303 2026/10/09 09:39:33.402 105.61 100 0 2902 13801 584 45
304 2026/10/09 09:39:34.404 105.65 100 0 2902 13801 584 45
305 2026/10/09 09:39:35.407 105.04 100 0 2902 13801 584 45
306 2026/10/09 09:39:36.409 104.89 100 0 2902 13801 584 45
307 2026/10/09 09:39:37.412 104.61 100 0 2902 13801 584 45
308 2026/10/09 09:39:38.414 104.90 100 0 2902 13801 584 45
309 2026/10/09 09:39:39.417 105.22 100 0 2902 13801 584 45
310 2026/10/09 09:39:40.419 94.36 0 0 2902 13801 2 44
311 2026/10/09 09:39:41.421 96.08 100 0 2902 13801 2572 45
312 2026/10/09 09:39:42.422 105.14 100 0 2902 13801 2572 45
313 2026/10/09 09:39:43.425 105.28 100 0 2902 13801 2572 45
314 2026/10/09 09:39:44.426 105.71 100 0 2902 13801 2572 45
315 2026/10/09 09:39:45.428 105.87 100 0 2902 13801 2572 45
316 2026/10/09 09:39:46.429 106.50 100 0 2902 13801 2572 45
317 2026/10/09 09:39:47.430 107.10 100 0 2902 13801 2572 45
318 2026/10/09 09:39:48.433 106.96 100 0 2902 13801 2572 45
319 2026/10/09 09:39:49.435 106.56 100 0 2902 13801 2572 45
320 2026/10/09 09:39:50.436 105.59 100 0 2902 13801 2572 45
321 2026/10/09 09:39:51.437 104.71 100 0 2902 13801 2572 45
322 2026/10/09 09:39:52.439 89.98 0 0 2902 13801 2572 44
323 2026/10/09 09:39:53.441 84.90 0 0 2722 13801 2572 43
324 2026/10/09 09:39:54.442 64.71 0 0 2542 14001 8728 43
325 2026/10/09 09:39:55.443 100.03 100 0 2902 13801 8728 44
326 2026/10/09 09:39:56.445 110.55 100 0 2902 13801 8728 45
327 2026/10/09 09:39:57.447 110.36 100 0 2902 13801 8728 45
328 2026/10/09 09:39:58.450 110.08 100 0 2902 13801 8728 45
329 2026/10/09 09:39:59.451 109.37 100 0 2902 13801 8728 45
330 2026/10/09 09:40:00.453 109.35 100 0 2902 13801 8728 45
331 2026/10/09 09:40:01.454 109.70 100 0 2902 13801 8728 45
332 2026/10/09 09:40:02.456 109.91 100 0 2902 13801 8728 45
333 2026/10/09 09:40:03.458 109.97 100 0 2902 13801 8728 45
334 2026/10/09 09:40:04.460 109.72 100 0 2902 13801 8728 45
335 2026/10/09 09:40:05.461 111.28 0 0 2887 13801 8728 44
336 2026/10/09 09:40:06.463 85.88 0 0 2902 13801 8728 44
337 2026/10/09 09:40:07.465 79.55 0 0 2542 13801 8728 43
338 2026/10/09 09:40:08.467 62.88 0 0 2542 13801 8728 43
339 2026/10/09 09:40:09.468 63.27 0 0 2542 13801 8728 43
340 2026/10/09 09:40:10.470 64.06 0 0 2542 13801 8728 43
341 2026/10/09 09:40:11.471 65.09 44 1 2542 13801 8728 43
342 2026/10/09 09:40:12.473 85.28 0 0 2917 13801 8728 43
343 2026/10/09 09:40:13.476 85.61 0 0 2917 13801 8728 43
344 2026/10/09 09:40:14.477 73.61 0 0 2550 13801 508 43
345 2026/10/09 09:40:15.479 320.90 100 60 2565 13801 31092 55
346 2026/10/09 09:40:16.480 480.67 100 60 2542 13801 31092 56
347 2026/10/09 09:40:17.482 480.13 100 59 2527 13801 31092 56
348 2026/10/09 09:40:18.484 480.07 100 58 2527 13801 31092 57
349 2026/10/09 09:40:19.486 480.09 100 58 2535 13801 31092 57
350 2026/10/09 09:40:20.487 479.88 100 59 2535 13801 31092 57
351 2026/10/09 09:40:21.489 479.41 100 60 2542 13801 31092 57
352 2026/10/09 09:40:22.490 479.90 100 60 2535 13801 31092 57
353 2026/10/09 09:40:23.492 479.98 100 59 2535 13801 31092 58
354 2026/10/09 09:40:24.493 480.04 100 59 2535 13801 31092 58
355 2026/10/09 09:40:25.495 480.16 100 59 2527 13801 31092 58
356 2026/10/09 09:40:26.497 480.00 100 59 2535 13801 31092 59
357 2026/10/09 09:40:27.499 479.98 100 59 2535 13801 31092 59
358 2026/10/09 09:40:28.500 480.17 100 59 2527 13801 31092 59
359 2026/10/09 09:40:29.502 479.89 100 59 2527 13801 31092 59
360 2026/10/09 09:40:30.503 479.88 100 59 2527 13801 31092 59
361 2026/10/09 09:40:31.505 480.00 100 59 2527 13801 31092 60
362 2026/10/09 09:40:32.506 480.02 100 58 2512 13801 31092 60
363 2026/10/09 09:40:33.508 479.79 100 59 2505 13801 31092 60
364 2026/10/09 09:40:34.509 479.94 100 59 2520 13801 31092 61
365 2026/10/09 09:40:35.511 284.51 0 0 2902 13801 31092 50
366 2026/10/09 09:40:36.512 90.81 0 0 2902 13801 31092 49
367 2026/10/09 09:40:37.514 73.50 0 0 2542 13801 31092 48
368 2026/10/09 09:40:38.515 65.98 0 0 2542 13801 31092 48
369 2026/10/09 09:40:39.516 65.61 0 0 2542 13801 31092 48
370 2026/10/09 09:40:40.518 67.59 37 1 2542 13801 31092 48
371 2026/10/09 09:40:41.519 67.49 0 0 2542 13801 31092 48
372 2026/10/09 09:40:42.521 65.41 0 0 2542 13801 31092 47
373 2026/10/09 09:40:43.522 65.10 0 0 2542 13801 31092 47
374 2026/10/09 09:40:44.524 64.55 0 0 2542 13801 31092 47
375 2026/10/09 09:40:45.525 64.54 0 0 2542 13801 31092 47
376 2026/10/09 09:40:46.526 64.65 0 0 2542 13801 31092 47
377 2026/10/09 09:40:47.528 65.12 0 0 2542 13801 31092 47
378 2026/10/09 09:40:48.529 65.19 0 0 2542 13801 31092 47
379 2026/10/09 09:40:49.530 64.31 0 0 2542 13801 31092 47
380 2026/10/09 09:40:50.530 63.77 0 0 2542 13801 31092 46
381 2026/10/09 09:40:51.530 63.28 0 0 2542 13801 31092 46
382 2026/10/09 09:40:52.530 63.48 0 0 2542 13801 31092 46
383 2026/10/09 09:40:53.531 63.95 0 0 2542 13801 31092 46
384 2026/10/09 09:40:54.531 64.60 0 0 2542 13801 31092 46
385 2026/10/09 09:40:55.532 64.97 0 0 2542 13801 31092 46
386 2026/10/09 09:40:56.532 65.83 0 0 2542 13801 31092 46
387 2026/10/09 09:40:57.533 65.51 0 0 2542 13801 31092 46
388 2026/10/09 09:40:58.533 46.88 36 1 2160 13801 31092 46
389 2026/10/09 09:40:59.534 68.13 37 1 2542 13801 31092 46
390 2026/10/09 09:41:00.534 67.97 33 1 2542 13801 31092 46
391 2026/10/09 09:41:01.535 65.63 0 0 2542 13801 31092 46
392 2026/10/09 09:41:02.535 64.04 0 0 2542 13801 31092 45
393 2026/10/09 09:41:03.535 63.91 0 0 2542 13801 31092 45
394 2026/10/09 09:41:04.536 64.09 0 0 2542 13801 31092 45
395 2026/10/09 09:41:05.536 64.50 0 0 2550 13801 1 45
396 2026/10/09 09:41:06.537 175.29 100 48 2752 13801 31088 53
397 2026/10/09 09:41:07.537 459.95 100 47 2737 13801 31088 58
398 2026/10/09 09:41:08.537 454.86 100 48 2745 13801 31088 55
399 2026/10/09 09:41:09.538 460.96 100 47 2737 13801 31088 59
400 2026/10/09 09:41:10.538 456.24 100 48 2745 13801 31088 56
401 2026/10/09 09:41:11.538 461.29 100 47 2737 13801 31088 60
402 2026/10/09 09:41:12.539 456.60 100 48 2737 13801 31088 57
403 2026/10/09 09:41:13.541 460.51 100 48 2745 13801 31088 60
404 2026/10/09 09:41:14.541 458.23 100 48 2745 13801 31088 58
405 2026/10/09 09:41:15.541 460.86 100 48 2737 13801 31088 61
406 2026/10/09 09:41:16.542 458.03 100 47 2737 13801 31088 58
407 2026/10/09 09:41:17.542 460.49 100 48 2745 13801 31088 61
408 2026/10/09 09:41:18.542 460.16 100 47 2730 13801 31088 59
409 2026/10/09 09:41:19.543 460.32 100 48 2737 13801 31088 61
410 2026/10/09 09:41:20.546 454.14 100 48 2737 13801 31088 61
411 2026/10/09 09:41:21.546 460.31 100 47 2737 13801 31088 60
412 2026/10/09 09:41:22.547 460.64 100 48 2745 13801 31088 62
413 2026/10/09 09:41:23.547 460.12 100 47 2730 13801 31088 60
414 2026/10/09 09:41:24.547 459.73 100 48 2730 13801 31088 62
415 2026/10/09 09:41:25.548 462.76 100 47 2722 13801 31088 63
416 2026/10/09 09:41:26.548 396.10 0 0 2880 13801 31088 54
417 2026/10/09 09:41:27.548 93.83 0 0 2902 13801 31088 51
418 2026/10/09 09:41:28.549 93.76 0 0 2902 13801 31088 51
419 2026/10/09 09:41:29.549 91.43 0 0 2902 13801 31088 51
420 2026/10/09 09:41:30.551 74.27 0 0 2542 13801 31088 50
421 2026/10/09 09:41:31.552 66.28 0 0 2542 13801 31088 49
422 2026/10/09 09:41:32.552 66.74 0 0 2542 13801 31088 49
423 2026/10/09 09:41:33.553 67.17 0 0 2542 13801 31088 49
424 2026/10/09 09:41:34.553 66.25 0 0 2542 13801 31088 49
425 2026/10/09 09:41:35.554 65.93 0 0 2542 13801 31088 49
426 2026/10/09 09:41:36.556 65.23 0 0 2542 13801 31088 48
427 2026/10/09 09:41:37.557 65.28 0 0 2542 13801 31088 48
428 2026/10/09 09:41:38.559 65.38 0 0 2542 13801 31088 48
429 2026/10/09 09:41:39.560 65.73 0 0 2542 13801 31088 48
430 2026/10/09 09:41:40.562 66.49 0 0 2542 13801 31088 48
431 2026/10/09 09:41:41.563 67.03 0 0 2542 13801 31088 48
432 2026/10/09 09:41:42.565 66.68 0 0 2542 13801 31088 48
433 2026/10/09 09:41:43.566 66.08 0 0 2542 13801 31088 47
434 2026/10/09 09:41:44.568 65.02 0 0 2542 13801 31088 47
435 2026/10/09 09:41:45.569 39.50 0 0 427 810 31088 46
436 2026/10/09 09:41:46.570 27.48 0 0 382 810 31088 46
437 2026/10/09 09:41:47.572 20.71 0 0 232 405 31088 46
438 2026/10/09 09:41:48.573 17.02 0 0 195 405 31088 46
439 2026/10/09 09:41:49.575 12.73 0 0 195 405 31088 46
440 2026/10/09 09:41:50.576 29.95 9 0 2542 13801 31088 46
441 2026/10/09 09:41:51.577 66.31 45 1 2542 13801 31088 46
442 2026/10/09 09:41:52.579 88.71 47 1 2902 13801 31088 47
443 2026/10/09 09:41:53.580 91.56 45 1 2902 13801 31088 47
444 2026/10/09 09:41:54.581 91.75 45 1 2902 13801 31088 47
445 2026/10/09 09:41:55.583 89.73 0 0 2902 13801 31088 47
446 2026/10/09 09:41:56.584 86.75 0 0 2722 13801 31088 47
447 2026/10/09 09:41:57.585 64.56 0 0 2542 13801 31088 46
448 2026/10/09 09:41:58.587 63.62 0 0 2542 13801 31088 46
449 2026/10/09 09:41:59.588 63.60 0 0 2542 13801 31088 46
450 2026/10/09 09:42:00.590 89.87 88 23 2730 13801 31086 49
451 2026/10/09 09:42:01.591 336.23 100 26 2895 13801 31086 53
452 2026/10/09 09:42:02.593 337.03 100 26 2887 13801 31086 54
453 2026/10/09 09:42:03.596 337.48 100 26 2887 13801 31086 54
454 2026/10/09 09:42:04.598 338.37 100 26 2887 13801 31086 54
455 2026/10/09 09:42:05.600 338.53 100 26 2887 13801 31086 54
456 2026/10/09 09:42:06.601 337.99 100 26 2887 13801 31086 54
457 2026/10/09 09:42:07.602 337.30 100 26 2887 13801 31086 55
458 2026/10/09 09:42:08.604 337.68 100 26 2887 13801 31086 55
459 2026/10/09 09:42:09.605 338.44 100 26 2887 13801 31086 55
460 2026/10/09 09:42:10.607 338.49 100 26 2887 13801 31086 55
461 2026/10/09 09:42:11.608 339.06 100 26 2887 13801 31086 55
462 2026/10/09 09:42:12.610 339.69 100 26 2887 13801 31086 55
463 2026/10/09 09:42:13.611 340.12 100 26 2887 13801 31086 56
464 2026/10/09 09:42:14.613 339.99 100 26 2887 13801 31086 56
465 2026/10/09 09:42:15.615 339.81 100 26 2887 13801 31086 56
466 2026/10/09 09:42:16.616 339.23 100 26 2887 13801 31086 56
467 2026/10/09 09:42:17.618 339.70 100 26 2887 13801 31086 56
468 2026/10/09 09:42:18.619 340.10 100 26 2887 13801 31086 56
469 2026/10/09 09:42:19.621 340.47 100 26 2887 13801 31086 56
470 2026/10/09 09:42:20.622 346.83 100 51 2820 13801 31086 54
471 2026/10/09 09:42:21.624 127.09 0 0 2902 13801 31086 50
472 2026/10/09 09:42:22.625 88.70 0 0 2722 13801 31086 49
473 2026/10/09 09:42:23.626 66.86 0 0 2542 13801 31086 49
474 2026/10/09 09:42:24.628 66.36 0 0 2542 13801 31086 49
475 2026/10/09 09:42:25.629 66.40 0 0 2542 13801 31086 48
476 2026/10/09 09:42:26.631 66.78 0 0 2542 13801 31086 48
477 2026/10/09 09:42:27.632 67.73 0 0 2542 13801 31086 48
478 2026/10/09 09:42:28.634 67.63 0 0 2542 13801 31086 48
479 2026/10/09 09:42:29.636 66.49 0 0 2542 13801 31086 48
480 2026/10/09 09:42:30.637 65.55 0 0 2542 13801 31086 48
481 2026/10/09 09:42:31.639 65.46 0 0 2542 13801 31086 48
482 2026/10/09 09:42:32.640 65.00 0 0 2542 13801 31086 48
483 2026/10/09 09:42:33.642 65.36 0 0 2542 13801 31086 48
484 2026/10/09 09:42:34.643 65.62 0 0 2542 13801 31086 47
485 2026/10/09 09:42:35.644 66.06 0 0 2542 13801 31086 47
486 2026/10/09 09:42:36.646 65.25 0 0 2542 13801 31086 47
487 2026/10/09 09:42:37.647 64.62 0 0 2542 13801 31086 47
488 2026/10/09 09:42:38.649 64.56 0 0 2542 13801 31086 47
489 2026/10/09 09:42:39.650 39.18 0 0 420 810 31086 46
490 2026/10/09 09:42:40.652 23.52 0 0 330 13801 31086 46
491 2026/10/09 09:42:41.653 48.99 37 1 2542 13801 31086 47
492 2026/10/09 09:42:42.655 70.20 37 1 2542 13801 31086 47
493 2026/10/09 09:42:43.656 69.94 37 1 2542 13801 31086 47
494 2026/10/09 09:42:44.657 66.66 0 0 2542 13801 31086 46
495 2026/10/09 09:42:45.659 64.13 0 0 2542 13801 31086 46
496 2026/10/09 09:42:46.660 64.17 0 0 2542 13801 31086 46
497 2026/10/09 09:42:47.662 63.84 0 0 2542 13801 31086 46
498 2026/10/09 09:42:48.663 70.77 3 2 2542 14001 31078 46
499 2026/10/09 09:42:49.664 137.50 100 7 2902 13801 31078 49
500 2026/10/09 09:42:50.666 172.24 100 6 2902 13801 31078 49
501 2026/10/09 09:42:51.667 171.55 100 6 2902 13801 31078 49
502 2026/10/09 09:42:52.669 170.73 100 7 2902 13801 31078 49
503 2026/10/09 09:42:53.670 170.15 100 6 2902 13801 31078 49
504 2026/10/09 09:42:54.672 170.66 100 7 2902 13801 31078 49
505 2026/10/09 09:42:55.673 171.34 100 6 2902 13801 31078 49
506 2026/10/09 09:42:56.675 171.82 100 7 2902 13801 31078 50
507 2026/10/09 09:42:57.676 171.95 100 7 2902 13801 31078 49
508 2026/10/09 09:42:58.677 171.76 100 6 2902 13801 31078 50
509 2026/10/09 09:42:59.679 171.34 100 7 2902 13801 31078 50
510 2026/10/09 09:43:00.680 171.30 100 6 2902 13801 31078 50
511 2026/10/09 09:43:01.682 170.95 100 7 2902 13801 31078 50
512 2026/10/09 09:43:02.682 171.30 100 6 2902 13801 31078 50
513 2026/10/09 09:43:03.684 171.83 100 7 2902 13801 31078 50
514 2026/10/09 09:43:04.688 172.13 100 7 2902 13801 31078 50
515 2026/10/09 09:43:05.689 171.82 100 6 2902 13801 31078 50
516 2026/10/09 09:43:06.691 171.23 100 7 2902 13801 31078 50
517 2026/10/09 09:43:07.692 171.32 100 6 2902 13801 31078 50
518 2026/10/09 09:43:08.698 185.53 100 7 2827 13801 31078 49
519 2026/10/09 09:43:09.699 90.08 0 0 2902 13801 31078 47
520 2026/10/09 09:43:10.701 85.71 0 0 2580 13801 31078 47
521 2026/10/09 09:43:11.702 65.62 0 0 2542 13801 31078 46
522 2026/10/09 09:43:12.703 66.02 0 0 2542 13801 31078 46
523 2026/10/09 09:43:13.707 65.79 0 0 2542 13801 31078 46
524 2026/10/09 09:43:14.709 65.23 0 0 2542 13801 31078 46
525 2026/10/09 09:43:15.711 64.57 0 0 2542 13801 31078 46
526 2026/10/09 09:43:16.712 64.43 0 0 2542 13801 31078 46
527 2026/10/09 09:43:17.714 64.66 0 0 2542 13801 31078 46
528 2026/10/09 09:43:18.717 65.34 0 0 2542 13801 31078 46
529 2026/10/09 09:43:19.718 65.49 0 0 2542 13801 31078 46
530 2026/10/09 09:43:20.721 65.20 0 0 2542 13801 31078 46
531 2026/10/09 09:43:21.723 64.68 0 0 2542 13801 31078 46
532 2026/10/09 09:43:22.724 64.11 0 0 2542 13801 31078 45
533 2026/10/09 09:43:23.725 63.94 0 0 2542 13801 31078 45
534 2026/10/09 09:43:24.727 63.42 0 0 2542 13801 31078 45
535 2026/10/09 09:43:25.728 56.93 0 0 645 810 31078 45
536 2026/10/09 09:43:26.729 30.20 0 0 375 810 31078 44
537 2026/10/09 09:43:27.731 19.88 0 0 232 405 31078 44
538 2026/10/09 09:43:28.736 17.28 0 0 1590 13801 31078 45
539 2026/10/09 09:43:29.738 64.82 11 0 2542 13801 31078 45
540 2026/10/09 09:43:30.740 67.52 37 1 2542 13801 31078 45
541 2026/10/09 09:43:31.740 67.83 37 1 2542 13801 31078 45
542 2026/10/09 09:43:32.742 66.57 37 1 2542 13801 31078 45
543 2026/10/09 09:43:33.743 64.00 0 0 2542 13801 31078 45
544 2026/10/09 09:43:34.744 64.29 0 0 2542 13801 31078 45
545 2026/10/09 09:43:35.746 64.74 0 0 2542 13801 31078 45
546 2026/10/09 09:43:36.748 64.57 0 0 2542 13801 31078 44
547 2026/10/09 09:43:37.750 68.09 0 0 2542 14001 1 44
548 2026/10/09 09:43:38.751 67.31 0 0 2542 14001 1 44
549 2026/10/09 09:43:39.753 47.67 0 0 1110 7001 1 44
550 2026/10/09 09:43:40.755 39.07 0 0 697 7001 1 43
551 2026/10/09 09:43:41.756 28.18 0 0 442 810 1 43
552 2026/10/09 09:43:42.758 26.70 0 0 285 810 1 43
553 2026/10/09 09:43:43.760 20.66 0 0 195 405 1 43
554 2026/10/09 09:43:44.761 14.24 0 0 187 405 1 43
555 2026/10/09 09:43:45.763 13.60 0 0 195 405 1 43
556 2026/10/09 09:43:46.764 11.56 0 0 195 405 1 42
557 2026/10/09 09:43:47.766 10.77 0 0 195 405 1 42
558 2026/10/09 09:43:48.767 11.75 0 0 195 405 1 42
559 2026/10/09 09:43:49.769 13.01 0 0 195 405 1 42
560 2026/10/09 09:43:50.770 12.13 0 0 195 405 1 42
561 2026/10/09 09:43:51.772 10.90 0 0 195 405 1 42
562 2026/10/09 09:43:52.773 9.52 0 0 195 405 1 42
563 2026/10/09 09:43:53.775 9.49 0 0 195 405 1 42
564 2026/10/09 09:43:54.776 9.82 0 0 195 405 1 42
565 2026/10/09 09:43:55.776 10.98 0 0 195 405 1 42
566 2026/10/09 09:43:56.776 11.04 0 0 195 405 1 42
567 2026/10/09 09:43:57.777 6.53 0 0 187 405 1 42
568 2026/10/09 09:43:58.777 7.22 0 0 195 405 1 41
569 2026/10/09 09:43:59.778 6.87 0 0 195 405 1 41
570 2026/10/09 09:44:00.778 6.91 0 0 195 405 1 41
571 2026/10/09 09:44:01.779 7.08 0 0 195 405 1 41
572 2026/10/09 09:44:02.779 6.98 0 0 195 405 1 41
573 2026/10/09 09:44:03.780 6.82 0 0 195 405 1 41
574 2026/10/09 09:44:04.780 6.89 0 0 195 405 1 41
575 2026/10/09 09:44:05.781 8.17 0 0 195 405 1 41

View file

@ -0,0 +1,13 @@
row rc=0 --n 20 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n20
row rc=0 --n 22 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n22
row rc=0 --n 24 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n24
row rc=0 --n 20 --layout aos --min-label-s 20 --check 2 --k 64 --tag abl-n20-aos
row rc=0 --n 20 --layout soa --min-label-s 20 --check 2 --k 64 --tpb 32 --tag abl-n20-tpb32
row rc=0 --n 20 --B 1 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B1
row rc=0 --n 20 --B 32 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B32
row rc=0 --n 20 --B 128 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B128
row rc=0 --n 12 --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n12
row rc=0 --n 14 --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n14
row rc=0 --n 16 --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n16
row rc=0 --n 18 --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n18
DONE 2026-10-09T09:44:06Z

View file

@ -0,0 +1,12 @@
{"tag":"main-n20","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":20,"N":1048576,"inst_MiB":32.0,"B":476,"Bmax":476,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":13,"graph_s":0.0398,"state_alloc_s":0.0042,"label_s_per_pass":1.542732,"labels_per_s":323531288.9,"labels_per_s_per_inst":679687.6,"ns_per_label_per_inst":1471.26,"merkle_s":0.039813,"prove_s":0.052700,"verify_all_s":0.0348,"accepted":476,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":32.16,"oracle":"IDENTICAL","label_window_unix_ms":[1791538501040,1791538521096],"free_gib":30.86,"per_inst_MiB":64.1,"proof_bytes_inst0":129133}
{"tag":"main-n22","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":22,"N":4194304,"inst_MiB":128.0,"B":119,"Bmax":119,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":4,"graph_s":0.1164,"state_alloc_s":0.0061,"label_s_per_pass":6.174518,"labels_per_s":80835817.5,"labels_per_s_per_inst":679292.6,"ns_per_label_per_inst":1472.12,"merkle_s":0.039964,"prove_s":0.019030,"verify_all_s":0.0077,"accepted":119,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":-1,"check_s":35.22,"oracle":"IDENTICAL","label_window_unix_ms":[1791538553910,1791538578843],"free_gib":30.86,"per_inst_MiB":256.1,"proof_bytes_inst0":141421}
{"tag":"main-n24","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":24,"N":16777216,"inst_MiB":512.0,"B":29,"Bmax":29,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":1,"graph_s":0.4549,"state_alloc_s":0.0107,"label_s_per_pass":24.638883,"labels_per_s":19746807.0,"labels_per_s_per_inst":680924.4,"ns_per_label_per_inst":1468.59,"merkle_s":0.039104,"prove_s":0.007084,"verify_all_s":0.0037,"accepted":29,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":-1,"check_s":50.67,"oracle":"IDENTICAL","label_window_unix_ms":[1791538614989,1791538639625],"free_gib":30.86,"per_inst_MiB":1024.1,"proof_bytes_inst0":153709}
{"tag":"abl-n20-aos","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":20,"N":1048576,"inst_MiB":32.0,"B":476,"Bmax":476,"layout":"aos","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":13,"graph_s":0.0406,"state_alloc_s":0.0042,"label_s_per_pass":1.559065,"labels_per_s":320141969.3,"labels_per_s_per_inst":672567.2,"ns_per_label_per_inst":1486.84,"merkle_s":0.065504,"prove_s":0.062077,"verify_all_s":0.0370,"accepted":476,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":1.38,"oracle":"IDENTICAL","label_window_unix_ms":[1791538691377,1791538711638],"free_gib":30.86,"per_inst_MiB":64.1,"proof_bytes_inst0":129133}
{"tag":"abl-n20-tpb32","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":20,"N":1048576,"inst_MiB":32.0,"B":476,"Bmax":476,"layout":"soa","kernel":"k1","tpb":32,"k":64,"wrong_edge":0,"passes":14,"graph_s":0.0393,"state_alloc_s":0.0043,"label_s_per_pass":1.548229,"labels_per_s":322382709.2,"labels_per_s_per_inst":677274.6,"ns_per_label_per_inst":1476.51,"merkle_s":0.040048,"prove_s":0.058053,"verify_all_s":0.0364,"accepted":476,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":33.57,"oracle":"IDENTICAL","label_window_unix_ms":[1791538713628,1791538735158],"free_gib":30.86,"per_inst_MiB":64.1,"proof_bytes_inst0":129133}
{"tag":"ladder-n20-B1","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":20,"N":1048576,"inst_MiB":32.0,"B":1,"Bmax":476,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":7,"graph_s":0.0391,"state_alloc_s":0.0013,"label_s_per_pass":1.443471,"labels_per_s":726426.9,"labels_per_s_per_inst":726426.9,"ns_per_label_per_inst":1376.60,"merkle_s":0.000406,"prove_s":0.001079,"verify_all_s":0.0010,"accepted":1,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":0.80,"oracle":"IDENTICAL","label_window_unix_ms":[1791538769321,1791538779445],"free_gib":30.86,"per_inst_MiB":64.1,"proof_bytes_inst0":129133}
{"tag":"ladder-n20-B32","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":20,"N":1048576,"inst_MiB":32.0,"B":32,"Bmax":476,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":7,"graph_s":0.0414,"state_alloc_s":0.0026,"label_s_per_pass":1.505308,"labels_per_s":22290745.7,"labels_per_s_per_inst":696585.8,"ns_per_label_per_inst":1435.57,"merkle_s":0.002977,"prove_s":0.006635,"verify_all_s":0.0033,"accepted":32,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":2.66,"oracle":"IDENTICAL","label_window_unix_ms":[1791538780645,1791538791186],"free_gib":30.86,"per_inst_MiB":64.1,"proof_bytes_inst0":129133}
{"tag":"ladder-n20-B128","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":20,"N":1048576,"inst_MiB":32.0,"B":128,"Bmax":476,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":7,"graph_s":0.0387,"state_alloc_s":0.0022,"label_s_per_pass":1.528175,"labels_per_s":87828739.8,"labels_per_s_per_inst":686162.0,"ns_per_label_per_inst":1457.38,"merkle_s":0.011431,"prove_s":0.017750,"verify_all_s":0.0096,"accepted":128,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":9.08,"oracle":"IDENTICAL","label_window_unix_ms":[1791538794255,1791538804954],"free_gib":30.86,"per_inst_MiB":64.1,"proof_bytes_inst0":129133}
{"tag":"diag-n12","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":12,"N":4096,"inst_MiB":0.1,"B":93706,"Bmax":93706,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":621,"graph_s":0.0066,"state_alloc_s":0.0291,"label_s_per_pass":0.032221,"labels_per_s":11912239216.4,"labels_per_s_per_inst":127123.5,"ns_per_label_per_inst":7866.36,"merkle_s":0.034377,"prove_s":6.447307,"verify_all_s":2.0544,"accepted":93706,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":20.15,"oracle":"IDENTICAL","label_window_unix_ms":[1791538814518,1791538834540],"free_gib":30.86,"per_inst_MiB":0.3,"proof_bytes_inst0":79981}
{"tag":"diag-n14","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":14,"N":16384,"inst_MiB":0.5,"B":28102,"Bmax":28102,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":410,"graph_s":0.0084,"state_alloc_s":0.0104,"label_s_per_pass":0.048846,"labels_per_s":9426017100.7,"labels_per_s_per_inst":335421.6,"ns_per_label_per_inst":2981.32,"merkle_s":0.038570,"prove_s":2.039850,"verify_all_s":0.7426,"accepted":28102,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":-1,"check_s":30.11,"oracle":"IDENTICAL","label_window_unix_ms":[1791538865805,1791538885853],"free_gib":30.86,"per_inst_MiB":1.1,"proof_bytes_inst0":92269}
{"tag":"diag-n16","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":16,"N":65536,"inst_MiB":2.0,"B":7457,"Bmax":7457,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":205,"graph_s":0.0088,"state_alloc_s":0.0052,"label_s_per_pass":0.097815,"labels_per_s":4996208280.0,"labels_per_s_per_inst":670002.5,"ns_per_label_per_inst":1492.53,"merkle_s":0.040285,"prove_s":0.660960,"verify_all_s":0.2275,"accepted":7457,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":1,"check_s":26.60,"oracle":"IDENTICAL","label_window_unix_ms":[1791538920021,1791538940081],"free_gib":30.86,"per_inst_MiB":4.1,"proof_bytes_inst0":104557}
{"tag":"diag-n18","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B1","n":18,"N":262144,"inst_MiB":8.0,"B":1897,"Bmax":1897,"layout":"soa","kernel":"k1","tpb":128,"k":64,"wrong_edge":0,"passes":52,"graph_s":0.0195,"state_alloc_s":0.0251,"label_s_per_pass":0.387782,"labels_per_s":1282387942.5,"labels_per_s_per_inst":676008.4,"ns_per_label_per_inst":1479.27,"merkle_s":0.040299,"prove_s":0.193505,"verify_all_s":0.0802,"accepted":1897,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"b1_kat_instance0":-1,"check_s":27.80,"oracle":"IDENTICAL","label_window_unix_ms":[1791538968395,1791538988568],"free_gib":30.86,"per_inst_MiB":16.1,"proof_bytes_inst0":116845}

View file

@ -0,0 +1,5 @@
{"mode":"cpu_time","sha":"sha_ni","n":20,"N":1048576,"k":64,"threads":1,"graph_s_single_thread":0.3492,"label_s_mean":0.1293,"merkle_s_mean":0.0943,"prove_s_mean":0.000277,"verify_s_mean":0.002238,"wall_s":0.2342,"labels_per_s_per_instance":8111504.0,"labels_per_s_all":4478139.8,"accepted":1}
{"mode":"cpu_time","sha":"sha_ni","n":22,"N":4194304,"k":64,"threads":1,"graph_s_single_thread":1.3670,"label_s_mean":0.5443,"merkle_s_mean":0.3727,"prove_s_mean":0.000453,"verify_s_mean":0.002461,"wall_s":0.9520,"labels_per_s_per_instance":7705689.3,"labels_per_s_all":4405672.7,"accepted":1}
{"mode":"cpu_time","sha":"sha_ni","n":24,"N":16777216,"k":64,"threads":1,"graph_s_single_thread":5.4652,"label_s_mean":2.3266,"merkle_s_mean":1.5502,"prove_s_mean":0.000698,"verify_s_mean":0.002686,"wall_s":4.0082,"labels_per_s_per_instance":7211107.0,"labels_per_s_all":4185749.5,"accepted":1}
{"mode":"cpu_time","sha":"sha_ni","n":20,"N":1048576,"k":64,"threads":26,"graph_s_single_thread":0.3506,"label_s_mean":0.1358,"merkle_s_mean":0.0968,"prove_s_mean":0.000339,"verify_s_mean":0.002254,"wall_s":0.4568,"labels_per_s_per_instance":7723278.4,"labels_per_s_all":59687957.7,"accepted":26}
{"mode":"cpu_time","sha":"sha_ni","n":22,"N":4194304,"k":64,"threads":26,"graph_s_single_thread":1.3755,"label_s_mean":0.5606,"merkle_s_mean":0.3901,"prove_s_mean":0.157581,"verify_s_mean":0.002884,"wall_s":2.0500,"labels_per_s_per_instance":7481489.0,"labels_per_s_all":53194915.4,"accepted":26}

View file

@ -0,0 +1 @@
{"idle_window_unix_ms":[1791537591000,1791537621000]}

View file

@ -0,0 +1,9 @@
{"mode":"selftest","sha":"sha_ni","sha256_abc_kat_fail":0,"portable_words_mismatch":0,"fast_mismatch":0}
CASE cpu_selftest PASS
{"tag":"known-failed","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":12,"N":4096,"inst_MiB":0.1,"B":96,"Bmax":106101,"layout":"soa","kernel":"k1","k":32,"wrong_edge":1,"passes":1,"graph_s":0.0026,"state_alloc_s":0.0008,"label_s_per_pass":0.008546,"labels_per_s":46009891.5,"labels_per_s_per_inst":479269.7,"ns_per_label_per_inst":2086.51,"merkle_s":0.000158,"prove_s":0.005535,"verify_all_s":0.0003,"accepted":0,"checked":4,"lab_bad_inst":4,"tree_bad_inst":4,"root_bad":4,"proof_bad":4,"check_s":0.04,"oracle":"MISMATCH","label_window_unix_ms":[1791539081499,1791539081507],"free_gib":30.86,"per_inst_MiB":0.3}
CASE known_failed_wrong_edge PASS (oracle fired: MISMATCH, 0 proofs accepted, exit 1)
{"tag":"known-finished-k1","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":12,"N":4096,"inst_MiB":0.1,"B":96,"Bmax":106101,"layout":"soa","kernel":"k1","k":32,"wrong_edge":0,"passes":1,"graph_s":0.0025,"state_alloc_s":0.0007,"label_s_per_pass":0.008864,"labels_per_s":44360532.0,"labels_per_s_per_inst":462088.9,"ns_per_label_per_inst":2164.09,"merkle_s":0.000155,"prove_s":0.004310,"verify_all_s":0.0054,"accepted":96,"checked":4,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":0.04,"oracle":"IDENTICAL","label_window_unix_ms":[1791539081908,1791539081917],"free_gib":30.86,"per_inst_MiB":0.3}
CASE known_finished_k1 PASS
{"tag":"known-finished-k2","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":12,"N":4096,"inst_MiB":0.1,"B":96,"Bmax":106101,"layout":"soa","kernel":"k2","k":32,"wrong_edge":0,"passes":1,"graph_s":0.0026,"state_alloc_s":0.0007,"label_s_per_pass":0.005429,"labels_per_s":72434039.1,"labels_per_s_per_inst":754521.2,"ns_per_label_per_inst":1325.34,"merkle_s":0.000159,"prove_s":0.005180,"verify_all_s":0.0063,"accepted":96,"checked":4,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":0.04,"oracle":"IDENTICAL","label_window_unix_ms":[1791539082308,1791539082313],"free_gib":30.86,"per_inst_MiB":0.3}
CASE known_finished_k2 PASS
RESULT test_known_failed PASS

View file

@ -0,0 +1,10 @@
label=rtx5090-r1
src_id=2079d0d8ce7eef96
2026-10-09T09:19:51Z
model name : AMD EPYC 7K62 48-Core Processor
nproc=26 cgroup_cpus=26
81.29 45.78 37.93 17/7832 1532
name, driver_version, vbios_version, power.limit [W], power.default_limit [W], clocks.max.sm [MHz], clocks.max.memory [MHz], memory.total [MiB], pcie.link.gen.current, pcie.link.width.current
NVIDIA GeForce RTX 5090, 580.126.09, 98.02.2E.80.39, 480.00 W, 600.00 W, 3105 MHz, 14001 MHz, 32607 MiB, 4, 16
Build cuda_12.8.r12.8/compiler.35583870_0
11.88 14.12 24.80 5/6965 2238

View file

@ -0,0 +1,782 @@
2026/10/09 09:19:51.244, 5.65, 0, 0, 195, 405, 1, 38
2026/10/09 09:19:52.258, 5.64, 0, 0, 195, 405, 1, 38
2026/10/09 09:19:53.259, 5.97, 0, 0, 195, 405, 1, 38
2026/10/09 09:19:54.260, 5.78, 0, 0, 195, 405, 1, 38
2026/10/09 09:19:55.262, 6.72, 0, 0, 195, 405, 1, 38
2026/10/09 09:19:56.263, 6.36, 0, 0, 195, 405, 1, 38
2026/10/09 09:19:57.265, 6.10, 0, 0, 195, 405, 1, 38
2026/10/09 09:19:58.266, 6.26, 0, 0, 195, 405, 1, 38
2026/10/09 09:19:59.268, 5.36, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:00.269, 5.24, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:01.274, 5.32, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:02.275, 5.43, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:03.276, 5.38, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:04.278, 5.40, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:05.280, 5.43, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:06.281, 6.49, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:07.283, 6.16, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:08.284, 6.03, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:09.286, 6.23, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:10.287, 5.66, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:11.289, 5.95, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:12.289, 5.88, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:13.290, 6.38, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:14.292, 6.01, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:15.292, 6.36, 0, 0, 187, 405, 1, 38
2026/10/09 09:20:16.294, 6.14, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:17.295, 5.91, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:18.297, 5.63, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:19.297, 5.13, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:20.298, 5.44, 0, 0, 195, 405, 1, 38
2026/10/09 09:20:21.299, 5.39, 0, 0, 195, 405, 2, 38
2026/10/09 09:20:22.334, 41.49, 100, 1, 2917, 13801, 31044, 40
2026/10/09 09:20:23.335, 110.68, 100, 1, 2917, 13801, 31044, 41
2026/10/09 09:20:24.336, 110.98, 100, 1, 2917, 13801, 31044, 41
2026/10/09 09:20:25.337, 111.05, 100, 1, 2917, 13801, 31044, 41
2026/10/09 09:20:26.338, 111.15, 100, 1, 2917, 13801, 31044, 41
2026/10/09 09:20:27.339, 111.48, 100, 1, 2917, 13801, 31044, 41
2026/10/09 09:20:28.340, 111.47, 100, 1, 2917, 13801, 31044, 41
2026/10/09 09:20:29.340, 111.33, 100, 1, 2917, 13801, 31044, 41
2026/10/09 09:20:30.341, 111.33, 100, 1, 2917, 13801, 31044, 41
2026/10/09 09:20:31.342, 111.64, 100, 1, 2917, 13801, 31044, 42
2026/10/09 09:20:32.342, 111.78, 100, 1, 2917, 13801, 31044, 42
2026/10/09 09:20:33.343, 111.89, 100, 1, 2917, 13801, 31044, 42
2026/10/09 09:20:34.344, 111.83, 100, 1, 2917, 13801, 31044, 42
2026/10/09 09:20:35.345, 111.96, 100, 1, 2917, 13801, 31044, 42
2026/10/09 09:20:36.345, 112.26, 100, 1, 2917, 13801, 31044, 42
2026/10/09 09:20:37.346, 112.33, 100, 1, 2917, 13801, 31044, 42
2026/10/09 09:20:38.347, 112.13, 100, 1, 2917, 13801, 31044, 42
2026/10/09 09:20:39.348, 112.21, 100, 1, 2917, 13801, 31044, 42
2026/10/09 09:20:40.349, 112.56, 100, 1, 2917, 13801, 31044, 42
2026/10/09 09:20:41.350, 112.57, 100, 1, 2917, 13801, 31044, 42
2026/10/09 09:20:42.351, 112.58, 100, 1, 2917, 13801, 31044, 43
2026/10/09 09:20:43.352, 129.16, 100, 38, 2917, 13801, 31044, 43
2026/10/09 09:20:44.354, 88.13, 0, 0, 2917, 13801, 31044, 42
2026/10/09 09:20:45.354, 76.04, 0, 0, 2797, 13801, 31044, 41
2026/10/09 09:20:46.355, 56.58, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:20:47.357, 56.65, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:20:48.357, 56.85, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:20:49.357, 57.19, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:20:50.358, 56.94, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:20:51.358, 56.97, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:20:52.358, 57.11, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:20:53.358, 57.11, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:20:54.359, 56.97, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:20:55.359, 56.96, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:20:56.360, 56.81, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:20:57.360, 57.15, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:20:58.360, 57.04, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:20:59.361, 56.84, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:21:00.361, 56.47, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:21:01.361, 32.98, 0, 0, 472, 810, 31044, 40
2026/10/09 09:21:02.362, 21.74, 0, 0, 420, 810, 31044, 40
2026/10/09 09:21:03.362, 24.60, 9, 0, 2542, 13801, 31044, 41
2026/10/09 09:21:04.363, 60.76, 35, 1, 2542, 13801, 31044, 41
2026/10/09 09:21:05.363, 61.54, 35, 1, 2542, 13801, 31044, 41
2026/10/09 09:21:06.364, 61.40, 35, 1, 2542, 13801, 31044, 41
2026/10/09 09:21:07.364, 59.04, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:21:08.365, 57.08, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:21:09.365, 56.94, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:21:10.365, 57.12, 0, 0, 2542, 13801, 31044, 41
2026/10/09 09:21:11.366, 56.72, 0, 0, 2542, 13801, 31044, 42
2026/10/09 09:21:12.366, 57.25, 0, 0, 2542, 13801, 31044, 42
2026/10/09 09:21:13.367, 62.29, 55, 36, 2542, 14001, 31044, 42
2026/10/09 09:21:14.367, 108.58, 100, 2, 2910, 13801, 31044, 44
2026/10/09 09:21:15.368, 125.03, 100, 2, 2902, 13801, 31044, 44
2026/10/09 09:21:16.368, 125.49, 100, 2, 2902, 13801, 31044, 44
2026/10/09 09:21:17.370, 124.96, 100, 2, 2902, 13801, 31044, 44
2026/10/09 09:21:18.370, 125.14, 100, 2, 2902, 13801, 31044, 44
2026/10/09 09:21:19.370, 125.40, 100, 2, 2902, 13801, 31044, 44
2026/10/09 09:21:20.371, 125.85, 100, 2, 2902, 13801, 31044, 44
2026/10/09 09:21:21.371, 126.00, 100, 2, 2902, 13801, 31044, 44
2026/10/09 09:21:22.371, 126.49, 100, 2, 2902, 13801, 31044, 45
2026/10/09 09:21:23.372, 126.34, 100, 2, 2902, 13801, 31044, 45
2026/10/09 09:21:24.372, 126.40, 100, 2, 2902, 13801, 31044, 45
2026/10/09 09:21:25.372, 126.51, 100, 2, 2902, 13801, 31044, 45
2026/10/09 09:21:26.373, 126.85, 100, 2, 2902, 13801, 31044, 45
2026/10/09 09:21:27.373, 127.50, 100, 2, 2902, 13801, 31044, 45
2026/10/09 09:21:28.374, 129.60, 100, 2, 2902, 13801, 31044, 45
2026/10/09 09:21:29.374, 129.35, 100, 2, 2902, 13801, 31044, 45
2026/10/09 09:21:30.375, 128.97, 100, 2, 2902, 13801, 31044, 45
2026/10/09 09:21:31.375, 129.16, 100, 2, 2902, 13801, 31044, 45
2026/10/09 09:21:32.375, 129.80, 100, 2, 2902, 13801, 31044, 45
2026/10/09 09:21:33.376, 130.43, 100, 2, 2902, 13801, 31044, 45
2026/10/09 09:21:34.376, 136.49, 0, 0, 2902, 13801, 31044, 44
2026/10/09 09:21:35.376, 86.41, 0, 0, 2902, 13801, 31044, 44
2026/10/09 09:21:36.377, 71.82, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:21:37.377, 61.56, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:21:38.377, 61.34, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:21:39.378, 60.80, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:21:40.378, 60.75, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:21:41.378, 61.37, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:21:42.378, 61.54, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:21:43.379, 61.54, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:21:44.379, 61.35, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:21:45.380, 61.01, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:21:46.380, 60.51, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:21:47.380, 60.78, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:21:48.381, 60.81, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:21:49.381, 61.59, 0, 0, 2542, 13801, 31044, 43
2026/10/09 09:21:50.382, 61.24, 0, 0, 2542, 13801, 31044, 42
2026/10/09 09:21:51.382, 37.40, 0, 0, 487, 810, 31044, 42
2026/10/09 09:21:52.382, 25.75, 0, 0, 420, 810, 31044, 42
2026/10/09 09:21:53.383, 23.98, 9, 0, 1702, 13801, 31044, 42
2026/10/09 09:21:54.383, 63.66, 34, 1, 2542, 13801, 31044, 42
2026/10/09 09:21:55.384, 64.48, 34, 1, 2542, 13801, 31044, 42
2026/10/09 09:21:56.384, 65.37, 34, 1, 2542, 13801, 31044, 42
2026/10/09 09:21:57.385, 64.88, 0, 0, 2542, 13801, 31044, 42
2026/10/09 09:21:58.385, 61.99, 0, 0, 2542, 13801, 31044, 42
2026/10/09 09:21:59.386, 61.08, 0, 0, 2542, 13801, 31044, 42
2026/10/09 09:22:00.386, 60.54, 0, 0, 2542, 13801, 31044, 42
2026/10/09 09:22:01.387, 59.61, 0, 0, 2542, 13801, 31044, 42
2026/10/09 09:22:02.387, 59.74, 0, 0, 2542, 13801, 31044, 42
2026/10/09 09:22:03.387, 60.49, 0, 0, 2542, 13801, 31044, 42
2026/10/09 09:22:04.388, 67.36, 1, 0, 2542, 13801, 31014, 42
2026/10/09 09:22:05.388, 103.82, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:22:06.389, 107.14, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:22:07.389, 107.34, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:22:08.390, 107.06, 100, 0, 2917, 13801, 31014, 44
2026/10/09 09:22:09.390, 106.56, 100, 0, 2917, 13801, 31014, 44
2026/10/09 09:22:10.391, 106.57, 100, 0, 2917, 13801, 31014, 44
2026/10/09 09:22:11.391, 107.26, 100, 0, 2917, 13801, 31014, 44
2026/10/09 09:22:12.392, 108.01, 100, 0, 2917, 13801, 31014, 44
2026/10/09 09:22:13.392, 107.32, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:14.392, 106.63, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:15.393, 106.03, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:16.394, 105.86, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:17.394, 105.98, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:18.394, 106.71, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:19.395, 107.57, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:20.395, 108.16, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:21.395, 108.24, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:22.396, 107.61, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:23.396, 106.89, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:24.397, 106.62, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:25.397, 107.13, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:26.398, 106.81, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:27.398, 107.10, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:28.399, 107.50, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:29.399, 107.60, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:30.400, 107.22, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:31.401, 106.79, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:32.401, 106.00, 100, 0, 2902, 13801, 31014, 44
2026/10/09 09:22:33.401, 120.86, 0, 0, 2895, 13801, 31014, 43
2026/10/09 09:22:34.402, 84.61, 0, 0, 2917, 13801, 31014, 43
2026/10/09 09:22:35.402, 70.85, 0, 0, 2542, 13801, 31014, 42
2026/10/09 09:22:36.403, 60.86, 0, 0, 2542, 13801, 31014, 42
2026/10/09 09:22:37.403, 60.53, 0, 0, 2542, 13801, 31014, 42
2026/10/09 09:22:38.404, 60.58, 0, 0, 2542, 13801, 31014, 42
2026/10/09 09:22:39.404, 59.60, 0, 0, 2542, 13801, 31014, 42
2026/10/09 09:22:40.405, 59.74, 0, 0, 2542, 13801, 31014, 42
2026/10/09 09:22:41.405, 61.23, 0, 0, 2542, 13801, 31014, 42
2026/10/09 09:22:42.405, 61.14, 0, 0, 2542, 13801, 31014, 42
2026/10/09 09:22:43.406, 61.30, 0, 0, 2542, 13801, 31014, 42
2026/10/09 09:22:44.406, 61.68, 0, 0, 2542, 13801, 31014, 42
2026/10/09 09:22:45.407, 60.51, 0, 0, 2542, 13801, 31014, 42
2026/10/09 09:22:46.407, 59.92, 0, 0, 2542, 13801, 31014, 42
2026/10/09 09:22:47.407, 59.83, 0, 0, 2542, 13801, 31014, 42
2026/10/09 09:22:48.408, 59.80, 0, 0, 2542, 13801, 31014, 42
2026/10/09 09:22:49.408, 60.27, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:22:50.408, 37.60, 0, 0, 465, 810, 31014, 41
2026/10/09 09:22:51.409, 26.32, 0, 0, 412, 810, 31014, 41
2026/10/09 09:22:52.409, 18.11, 0, 0, 255, 405, 31014, 40
2026/10/09 09:22:53.410, 25.19, 37, 1, 2542, 13801, 31014, 41
2026/10/09 09:22:54.410, 64.97, 37, 1, 2542, 13801, 31014, 41
2026/10/09 09:22:55.410, 62.30, 37, 1, 2542, 13801, 31014, 41
2026/10/09 09:22:56.411, 64.84, 34, 1, 2542, 13801, 31014, 41
2026/10/09 09:22:57.411, 62.15, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:22:58.412, 61.37, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:22:59.412, 60.64, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:00.413, 60.44, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:01.414, 60.54, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:02.415, 60.62, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:03.415, 60.97, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:04.416, 61.25, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:05.416, 61.83, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:06.416, 62.31, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:07.417, 61.91, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:08.417, 60.80, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:09.417, 59.81, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:10.418, 59.71, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:11.418, 59.89, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:12.419, 60.68, 0, 0, 2542, 13801, 4, 41
2026/10/09 09:23:13.419, 81.40, 100, 0, 2850, 13801, 31014, 42
2026/10/09 09:23:14.420, 109.56, 100, 0, 2917, 13801, 31014, 42
2026/10/09 09:23:15.420, 109.37, 100, 0, 2917, 13801, 31014, 42
2026/10/09 09:23:16.421, 109.37, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:17.421, 108.92, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:18.421, 109.00, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:19.422, 109.62, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:20.422, 109.93, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:21.422, 110.17, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:22.423, 109.36, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:23.423, 109.04, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:24.424, 109.05, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:25.424, 109.36, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:26.425, 109.75, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:27.425, 110.32, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:28.426, 111.04, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:29.426, 111.42, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:30.427, 110.72, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:31.427, 109.50, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:32.428, 108.86, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:33.428, 108.85, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:34.429, 109.33, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:35.429, 109.71, 100, 0, 2917, 13801, 31014, 43
2026/10/09 09:23:36.430, 132.39, 68, 43, 2917, 13801, 31014, 50
2026/10/09 09:23:37.430, 85.72, 0, 0, 2917, 13801, 31014, 42
2026/10/09 09:23:38.430, 80.54, 0, 0, 2797, 13801, 31014, 42
2026/10/09 09:23:39.431, 60.16, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:40.431, 59.61, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:41.432, 59.67, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:42.432, 60.87, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:43.433, 61.56, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:44.433, 61.53, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:45.434, 60.73, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:46.434, 60.52, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:47.435, 60.33, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:48.435, 60.39, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:49.436, 60.68, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:50.436, 61.35, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:51.437, 61.84, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:52.437, 60.73, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:53.437, 60.34, 0, 0, 2542, 13801, 31014, 41
2026/10/09 09:23:54.439, 36.69, 0, 0, 465, 810, 31014, 40
2026/10/09 09:23:55.439, 24.98, 0, 0, 435, 810, 31014, 40
2026/10/09 09:23:56.439, 17.30, 0, 0, 255, 405, 31014, 40
2026/10/09 09:23:57.440, 15.19, 0, 0, 195, 405, 31014, 39
2026/10/09 09:23:58.440, 11.20, 0, 0, 195, 405, 31014, 39
2026/10/09 09:23:59.441, 14.97, 14, 0, 502, 13801, 31014, 40
2026/10/09 09:24:00.441, 74.07, 88, 1, 2917, 13801, 31014, 41
2026/10/09 09:24:01.442, 89.86, 88, 1, 2917, 13801, 31014, 41
2026/10/09 09:24:02.442, 89.95, 89, 1, 2917, 13801, 31014, 41
2026/10/09 09:24:03.443, 86.60, 0, 0, 2917, 13801, 31014, 41
2026/10/09 09:24:04.443, 83.77, 0, 0, 2917, 13801, 31014, 41
2026/10/09 09:24:05.443, 64.98, 0, 0, 2542, 13801, 31014, 40
2026/10/09 09:24:06.444, 60.65, 0, 0, 2542, 13801, 31014, 40
2026/10/09 09:24:07.444, 60.74, 0, 0, 2542, 13801, 31014, 40
2026/10/09 09:24:08.446, 60.49, 0, 0, 2542, 13801, 31014, 40
2026/10/09 09:24:09.446, 60.17, 0, 0, 2542, 13801, 31014, 40
2026/10/09 09:24:10.447, 60.63, 0, 0, 2542, 13801, 31014, 40
2026/10/09 09:24:11.449, 60.86, 0, 0, 2542, 13801, 31014, 40
2026/10/09 09:24:12.449, 61.31, 0, 0, 2542, 13801, 31014, 40
2026/10/09 09:24:13.449, 61.55, 0, 0, 2542, 13801, 31014, 40
2026/10/09 09:24:14.450, 61.93, 0, 0, 2542, 13801, 31014, 40
2026/10/09 09:24:15.450, 61.43, 0, 0, 2542, 13801, 31014, 40
2026/10/09 09:24:16.451, 60.64, 0, 0, 2542, 13801, 31014, 40
2026/10/09 09:24:17.451, 59.92, 0, 0, 2542, 13801, 31014, 40
2026/10/09 09:24:18.451, 59.71, 0, 0, 2542, 13801, 31014, 40
2026/10/09 09:24:19.453, 65.52, 0, 0, 2542, 14001, 510, 40
2026/10/09 09:24:20.454, 82.43, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:21.454, 102.96, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:22.454, 103.34, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:23.455, 103.55, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:24.455, 102.95, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:25.455, 102.64, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:26.456, 103.10, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:27.456, 103.11, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:28.457, 103.84, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:29.457, 104.07, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:30.458, 103.57, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:31.458, 102.97, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:32.459, 103.05, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:33.459, 103.12, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:34.460, 103.80, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:35.460, 104.34, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:36.460, 104.53, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:37.461, 105.31, 100, 0, 2910, 13801, 30282, 42
2026/10/09 09:24:38.461, 104.70, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:39.461, 104.02, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:40.461, 103.64, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:41.462, 103.30, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:42.463, 103.07, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:43.463, 103.35, 100, 0, 2910, 13801, 30282, 42
2026/10/09 09:24:44.464, 103.55, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:45.464, 103.95, 100, 0, 2910, 13801, 30282, 42
2026/10/09 09:24:46.465, 104.04, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:47.466, 103.94, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:48.466, 103.54, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:49.467, 103.61, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:50.467, 103.82, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:51.468, 103.96, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:52.468, 104.24, 100, 0, 2910, 13801, 30282, 42
2026/10/09 09:24:53.468, 103.94, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:54.469, 103.38, 100, 0, 2910, 13801, 30282, 42
2026/10/09 09:24:55.469, 103.36, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:56.469, 103.49, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:57.470, 103.88, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:58.470, 112.81, 0, 0, 2917, 13801, 30282, 42
2026/10/09 09:24:59.471, 85.09, 0, 0, 2917, 13801, 30282, 42
2026/10/09 09:25:00.471, 64.84, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:25:01.472, 61.64, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:25:02.473, 60.78, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:25:03.474, 60.04, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:25:04.474, 60.23, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:25:05.474, 60.42, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:25:06.475, 60.67, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:25:07.475, 60.86, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:25:08.476, 60.86, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:25:09.476, 60.69, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:25:10.476, 59.78, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:11.477, 58.81, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:25:12.477, 59.21, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:13.477, 60.10, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:14.478, 60.40, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:15.478, 54.96, 0, 0, 2055, 810, 30282, 40
2026/10/09 09:25:16.479, 25.10, 0, 0, 412, 810, 30282, 40
2026/10/09 09:25:17.479, 16.52, 0, 0, 247, 405, 30282, 39
2026/10/09 09:25:18.479, 14.05, 0, 0, 195, 405, 30282, 39
2026/10/09 09:25:19.480, 8.65, 0, 0, 195, 405, 30282, 39
2026/10/09 09:25:20.485, 30.23, 85, 1, 2662, 13801, 30282, 41
2026/10/09 09:25:21.486, 89.20, 85, 1, 2917, 13801, 30282, 41
2026/10/09 09:25:22.486, 89.71, 70, 1, 2917, 13801, 30282, 41
2026/10/09 09:25:23.487, 89.28, 0, 0, 2917, 13801, 30282, 41
2026/10/09 09:25:24.487, 84.36, 0, 0, 2917, 13801, 30282, 41
2026/10/09 09:25:25.488, 75.01, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:26.488, 59.43, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:27.489, 59.66, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:28.489, 60.24, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:29.489, 60.00, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:30.490, 60.29, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:31.490, 60.57, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:32.490, 60.75, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:33.491, 60.36, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:34.491, 60.24, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:35.491, 59.89, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:36.491, 60.16, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:37.492, 60.38, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:38.492, 60.24, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:39.492, 59.58, 0, 0, 2542, 13801, 30282, 40
2026/10/09 09:25:40.493, 35.40, 0, 0, 465, 810, 30282, 39
2026/10/09 09:25:41.493, 24.09, 0, 0, 420, 810, 30282, 39
2026/10/09 09:25:42.493, 16.38, 0, 0, 255, 405, 30282, 39
2026/10/09 09:25:43.494, 13.72, 0, 0, 195, 405, 30282, 39
2026/10/09 09:25:44.494, 11.84, 0, 0, 195, 405, 30282, 39
2026/10/09 09:25:45.495, 7.59, 0, 0, 195, 405, 30282, 38
2026/10/09 09:25:46.495, 7.03, 0, 0, 195, 405, 30282, 38
2026/10/09 09:25:47.496, 8.02, 0, 0, 195, 405, 30282, 38
2026/10/09 09:25:48.496, 7.06, 0, 0, 195, 405, 30282, 38
2026/10/09 09:25:49.497, 6.02, 0, 0, 195, 405, 30282, 38
2026/10/09 09:25:50.500, 5.97, 0, 0, 195, 405, 30282, 38
2026/10/09 09:25:51.500, 6.39, 0, 0, 195, 405, 30282, 38
2026/10/09 09:25:52.501, 6.11, 0, 0, 195, 405, 30282, 38
2026/10/09 09:25:53.501, 5.93, 0, 0, 195, 405, 30282, 38
2026/10/09 09:25:54.501, 5.34, 0, 0, 195, 405, 30282, 38
2026/10/09 09:25:55.502, 5.58, 0, 0, 195, 405, 30282, 38
2026/10/09 09:25:56.502, 5.57, 0, 0, 195, 405, 30282, 38
2026/10/09 09:25:57.502, 5.57, 0, 0, 195, 405, 30282, 38
2026/10/09 09:25:58.503, 5.73, 0, 0, 195, 405, 30282, 38
2026/10/09 09:25:59.503, 6.07, 0, 0, 195, 405, 30282, 38
2026/10/09 09:26:00.503, 6.07, 0, 0, 187, 405, 30282, 38
2026/10/09 09:26:01.504, 5.82, 0, 0, 195, 405, 30282, 38
2026/10/09 09:26:02.504, 5.59, 0, 0, 195, 405, 30282, 38
2026/10/09 09:26:03.504, 5.50, 0, 0, 195, 405, 30282, 38
2026/10/09 09:26:04.505, 5.44, 0, 0, 195, 405, 30282, 38
2026/10/09 09:26:05.505, 6.05, 0, 0, 195, 405, 30282, 38
2026/10/09 09:26:06.505, 5.71, 0, 0, 195, 405, 30282, 38
2026/10/09 09:26:07.506, 5.81, 0, 0, 195, 405, 30282, 38
2026/10/09 09:26:08.506, 5.71, 0, 0, 195, 405, 30282, 38
2026/10/09 09:26:09.506, 5.13, 0, 0, 195, 405, 30282, 38
2026/10/09 09:26:10.507, 5.00, 0, 0, 195, 405, 30282, 38
2026/10/09 09:26:11.507, 4.92, 0, 0, 195, 405, 30282, 38
2026/10/09 09:26:12.507, 5.37, 0, 0, 195, 405, 30282, 38
2026/10/09 09:26:13.507, 5.57, 0, 0, 187, 405, 30282, 38
2026/10/09 09:26:14.508, 5.38, 0, 0, 195, 405, 30282, 38
2026/10/09 09:26:15.508, 5.80, 0, 0, 195, 405, 30281, 38
2026/10/09 09:26:16.509, 14.49, 100, 91, 855, 14001, 510, 39
2026/10/09 09:26:17.509, 78.72, 100, 0, 2917, 13801, 30282, 41
2026/10/09 09:26:18.509, 100.97, 100, 0, 2917, 13801, 30282, 41
2026/10/09 09:26:19.510, 100.94, 100, 0, 2917, 13801, 30282, 41
2026/10/09 09:26:20.510, 101.08, 100, 0, 2917, 13801, 30282, 41
2026/10/09 09:26:21.510, 101.54, 100, 0, 2917, 13801, 30282, 41
2026/10/09 09:26:22.511, 101.14, 100, 0, 2917, 13801, 30282, 41
2026/10/09 09:26:23.511, 101.12, 100, 0, 2910, 13801, 30282, 42
2026/10/09 09:26:24.511, 101.08, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:26:25.512, 101.53, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:26:26.514, 101.61, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:26:27.514, 101.79, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:26:28.517, 101.44, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:26:29.517, 101.37, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:26:30.518, 101.46, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:26:31.518, 101.21, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:26:32.518, 101.59, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:26:33.518, 102.12, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:26:34.519, 102.17, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:26:35.519, 102.20, 100, 0, 2917, 13801, 30282, 42
2026/10/09 09:26:36.520, 102.05, 100, 0, 2917, 13801, 30282, 43
2026/10/09 09:26:37.520, 102.24, 100, 0, 2917, 13801, 30282, 43
2026/10/09 09:26:38.520, 102.58, 100, 0, 2917, 13801, 30282, 43
2026/10/09 09:26:39.521, 102.44, 100, 0, 2917, 13801, 30282, 43
2026/10/09 09:26:40.521, 109.61, 0, 0, 2917, 13801, 30282, 42
2026/10/09 09:26:41.522, 81.34, 0, 0, 2917, 13801, 30282, 42
2026/10/09 09:26:42.522, 57.87, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:26:43.522, 57.60, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:26:44.523, 57.29, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:26:45.523, 56.88, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:26:46.523, 57.25, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:26:47.525, 57.18, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:26:48.526, 56.98, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:26:49.526, 57.34, 0, 0, 2542, 13801, 30282, 41
2026/10/09 09:26:50.527, 57.39, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:26:51.527, 57.35, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:26:52.528, 57.19, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:26:53.528, 57.29, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:26:54.529, 57.45, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:26:55.529, 57.34, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:26:56.530, 57.25, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:26:57.530, 33.99, 0, 0, 472, 810, 30282, 41
2026/10/09 09:26:58.531, 22.65, 0, 0, 420, 810, 30282, 41
2026/10/09 09:26:59.531, 16.42, 0, 0, 255, 405, 30282, 41
2026/10/09 09:27:00.531, 13.00, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:01.532, 8.23, 0, 0, 195, 405, 30282, 40
2026/10/09 09:27:02.533, 11.22, 89, 1, 495, 13801, 30282, 41
2026/10/09 09:27:03.533, 84.05, 81, 1, 2917, 13801, 30282, 42
2026/10/09 09:27:04.534, 84.25, 11, 0, 2917, 13801, 30282, 42
2026/10/09 09:27:05.534, 84.19, 81, 1, 2917, 13801, 30282, 43
2026/10/09 09:27:06.534, 86.34, 81, 1, 2917, 13801, 30282, 43
2026/10/09 09:27:07.535, 81.81, 0, 0, 2917, 13801, 30282, 43
2026/10/09 09:27:08.535, 77.34, 0, 0, 2797, 13801, 30282, 42
2026/10/09 09:27:09.536, 58.29, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:27:10.537, 57.37, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:27:11.540, 58.22, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:27:12.540, 57.90, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:27:13.540, 57.67, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:27:14.541, 57.50, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:27:15.541, 57.76, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:27:16.541, 57.93, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:27:17.542, 58.07, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:27:18.542, 57.77, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:27:19.542, 58.06, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:27:20.544, 57.99, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:27:21.544, 58.09, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:27:22.544, 58.42, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:27:23.545, 58.10, 0, 0, 2542, 13801, 30282, 42
2026/10/09 09:27:24.545, 34.90, 0, 0, 472, 810, 30282, 42
2026/10/09 09:27:25.546, 26.85, 0, 0, 405, 810, 30282, 41
2026/10/09 09:27:26.546, 13.94, 0, 0, 247, 405, 30282, 41
2026/10/09 09:27:27.547, 11.60, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:28.547, 8.12, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:29.548, 6.17, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:30.548, 5.99, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:31.549, 5.87, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:32.549, 5.76, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:33.550, 5.71, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:34.551, 5.71, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:35.551, 5.68, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:36.551, 5.94, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:37.552, 5.68, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:38.552, 6.28, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:39.552, 6.11, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:40.553, 6.16, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:41.553, 6.50, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:42.553, 6.03, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:43.554, 6.15, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:44.554, 5.92, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:45.555, 5.72, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:46.555, 6.22, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:47.556, 5.79, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:48.556, 7.42, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:49.556, 6.87, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:50.557, 6.55, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:51.557, 6.81, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:52.557, 6.15, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:53.558, 6.24, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:54.558, 7.68, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:55.559, 6.92, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:56.559, 5.24, 0, 0, 195, 405, 30282, 41
2026/10/09 09:27:57.559, 5.52, 0, 0, 195, 405, 1, 41
2026/10/09 09:27:58.800, 64.95, 43, 32, 2865, 13801, 31044, 43
2026/10/09 09:27:59.801, 121.17, 100, 1, 2917, 13801, 31044, 44
2026/10/09 09:28:00.801, 121.17, 100, 1, 2917, 13801, 31044, 44
2026/10/09 09:28:01.802, 120.89, 100, 1, 2902, 13801, 31044, 44
2026/10/09 09:28:02.802, 120.83, 100, 1, 2902, 13801, 31044, 44
2026/10/09 09:28:03.802, 119.90, 100, 1, 2902, 13801, 31044, 44
2026/10/09 09:28:04.803, 120.52, 100, 1, 2902, 13801, 31044, 44
2026/10/09 09:28:05.803, 119.46, 100, 1, 2902, 13801, 31044, 45
2026/10/09 09:28:06.803, 120.91, 100, 1, 2902, 13801, 31044, 45
2026/10/09 09:28:07.803, 120.60, 100, 1, 2902, 13801, 31044, 45
2026/10/09 09:28:08.804, 122.03, 100, 1, 2902, 13801, 31044, 45
2026/10/09 09:28:09.804, 121.86, 100, 1, 2902, 13801, 31044, 45
2026/10/09 09:28:10.805, 121.26, 100, 1, 2902, 13801, 31044, 45
2026/10/09 09:28:11.805, 121.99, 100, 1, 2902, 13801, 31044, 45
2026/10/09 09:28:12.806, 121.39, 100, 1, 2902, 13801, 31044, 45
2026/10/09 09:28:13.806, 122.26, 100, 1, 2902, 13801, 31044, 45
2026/10/09 09:28:14.806, 121.34, 100, 1, 2902, 13801, 31044, 45
2026/10/09 09:28:15.808, 121.88, 100, 1, 2902, 13801, 31044, 45
2026/10/09 09:28:16.809, 121.93, 100, 1, 2902, 13801, 31044, 45
2026/10/09 09:28:17.809, 122.07, 100, 1, 2902, 13801, 31044, 45
2026/10/09 09:28:18.809, 122.53, 100, 1, 2902, 13801, 31044, 46
2026/10/09 09:28:19.810, 130.23, 36, 24, 2902, 13801, 31044, 45
2026/10/09 09:28:20.810, 83.19, 0, 0, 2902, 13801, 31044, 45
2026/10/09 09:28:21.810, 68.23, 0, 0, 2542, 13801, 1, 44
2026/10/09 09:28:22.879, 80.00, 0, 0, 2827, 13801, 584, 45
2026/10/09 09:28:23.879, 104.48, 100, 0, 2902, 13801, 584, 45
2026/10/09 09:28:24.879, 104.78, 100, 0, 2902, 13801, 584, 45
2026/10/09 09:28:25.880, 104.75, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:26.880, 104.21, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:27.881, 104.40, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:28.881, 104.59, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:29.882, 104.69, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:30.882, 104.33, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:31.883, 104.14, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:32.884, 104.19, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:33.884, 91.98, 4, 0, 2902, 13801, 584, 45
2026/10/09 09:28:34.885, 85.61, 0, 0, 2902, 14001, 584, 45
2026/10/09 09:28:35.885, 99.67, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:36.885, 102.37, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:37.887, 102.81, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:38.887, 103.20, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:39.888, 103.21, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:40.888, 102.88, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:41.889, 102.89, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:42.889, 104.16, 100, 0, 2902, 13801, 584, 46
2026/10/09 09:28:43.890, 106.62, 100, 0, 2902, 13801, 584, 47
2026/10/09 09:28:44.890, 106.60, 100, 0, 2902, 13801, 584, 47
2026/10/09 09:28:45.892, 107.20, 100, 0, 2902, 13801, 584, 47
2026/10/09 09:28:46.892, 92.81, 0, 0, 2902, 13801, 584, 46
2026/10/09 09:28:47.892, 91.26, 0, 0, 2902, 14001, 2572, 46
2026/10/09 09:28:48.893, 107.04, 100, 0, 2902, 13801, 2572, 47
2026/10/09 09:28:49.893, 109.66, 100, 0, 2902, 13801, 2572, 47
2026/10/09 09:28:50.893, 109.09, 100, 0, 2902, 13801, 2572, 47
2026/10/09 09:28:51.894, 108.67, 100, 0, 2902, 13801, 2572, 47
2026/10/09 09:28:52.894, 109.48, 100, 0, 2902, 13801, 2572, 47
2026/10/09 09:28:53.894, 109.80, 100, 0, 2902, 13801, 2572, 47
2026/10/09 09:28:54.895, 109.90, 100, 0, 2902, 13801, 2572, 47
2026/10/09 09:28:55.895, 110.11, 100, 0, 2902, 13801, 2572, 46
2026/10/09 09:28:56.896, 110.40, 100, 0, 2902, 13801, 2572, 46
2026/10/09 09:28:57.896, 109.73, 100, 0, 2902, 13801, 2572, 46
2026/10/09 09:28:58.896, 109.55, 100, 0, 2902, 13801, 2572, 46
2026/10/09 09:28:59.897, 95.06, 0, 0, 2902, 13801, 2572, 46
2026/10/09 09:29:00.898, 88.76, 18, 0, 2902, 13801, 2572, 45
2026/10/09 09:29:01.900, 68.08, 0, 0, 2542, 13801, 2, 45
2026/10/09 09:29:02.911, 81.77, 0, 0, 2902, 13801, 2572, 46
2026/10/09 09:29:03.911, 107.27, 100, 0, 2902, 13801, 2572, 46
2026/10/09 09:29:04.912, 107.22, 100, 0, 2902, 13801, 2572, 46
2026/10/09 09:29:05.912, 106.81, 100, 0, 2902, 13801, 2572, 46
2026/10/09 09:29:06.912, 107.10, 100, 0, 2902, 13801, 2572, 46
2026/10/09 09:29:07.913, 107.13, 100, 0, 2902, 13801, 2572, 46
2026/10/09 09:29:08.914, 108.14, 100, 0, 2902, 13801, 2572, 46
2026/10/09 09:29:09.915, 108.64, 100, 0, 2902, 13801, 2572, 46
2026/10/09 09:29:10.915, 108.98, 100, 0, 2902, 13801, 2572, 46
2026/10/09 09:29:11.915, 108.21, 100, 0, 2902, 13801, 2572, 46
2026/10/09 09:29:12.916, 107.35, 100, 0, 2902, 13801, 2572, 46
2026/10/09 09:29:13.916, 106.43, 100, 0, 2902, 13801, 2572, 46
2026/10/09 09:29:14.917, 94.45, 0, 0, 2902, 13801, 2572, 45
2026/10/09 09:29:15.917, 87.83, 0, 0, 2902, 13801, 2572, 45
2026/10/09 09:29:16.918, 65.56, 0, 0, 2542, 13801, 2569, 44
2026/10/09 09:29:17.918, 73.71, 5, 3, 2640, 13801, 8728, 45
2026/10/09 09:29:18.918, 112.17, 100, 0, 2902, 13801, 8728, 46
2026/10/09 09:29:19.919, 112.32, 100, 0, 2902, 13801, 8728, 46
2026/10/09 09:29:20.919, 111.49, 100, 0, 2902, 13801, 8728, 46
2026/10/09 09:29:21.919, 111.10, 100, 0, 2902, 13801, 8728, 46
2026/10/09 09:29:22.920, 111.44, 100, 0, 2902, 13801, 8728, 46
2026/10/09 09:29:23.920, 112.03, 100, 0, 2902, 13801, 8728, 46
2026/10/09 09:29:24.920, 112.57, 100, 0, 2902, 13801, 8728, 46
2026/10/09 09:29:25.921, 112.01, 100, 0, 2902, 13801, 8728, 46
2026/10/09 09:29:26.921, 111.47, 100, 0, 2902, 13801, 8728, 46
2026/10/09 09:29:27.921, 115.98, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:29:28.921, 86.35, 0, 0, 2902, 13801, 8728, 45
2026/10/09 09:29:29.923, 79.40, 0, 0, 2647, 13801, 8728, 44
2026/10/09 09:29:30.923, 62.52, 0, 0, 2542, 13801, 8728, 44
2026/10/09 09:29:31.924, 62.79, 0, 0, 2542, 13801, 8728, 44
2026/10/09 09:29:32.924, 63.29, 0, 0, 2542, 13801, 8728, 44
2026/10/09 09:29:33.925, 64.38, 0, 0, 2542, 13801, 8728, 44
2026/10/09 09:29:34.925, 85.54, 46, 1, 2902, 13801, 8728, 44
2026/10/09 09:29:35.925, 86.07, 0, 0, 2902, 13801, 8728, 44
2026/10/09 09:29:36.926, 70.69, 0, 0, 2542, 13801, 2, 44
2026/10/09 09:29:37.930, 80.67, 0, 0, 2835, 13801, 8728, 45
2026/10/09 09:29:38.930, 108.59, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:29:39.930, 109.20, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:29:40.931, 108.99, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:29:41.931, 109.61, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:29:42.931, 109.48, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:29:43.932, 109.30, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:29:44.932, 108.72, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:29:45.933, 108.78, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:29:46.934, 108.84, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:29:47.934, 109.04, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:29:48.935, 109.19, 100, 0, 2902, 13801, 8728, 45
2026/10/09 09:29:49.935, 103.49, 95, 12, 2902, 13801, 8728, 44
2026/10/09 09:29:50.935, 85.74, 0, 0, 2902, 13801, 8728, 44
2026/10/09 09:29:51.936, 69.09, 0, 0, 2542, 13801, 8728, 43
2026/10/09 09:29:52.938, 62.32, 0, 0, 2542, 13801, 8728, 43
2026/10/09 09:29:53.939, 62.53, 0, 0, 2542, 13801, 8728, 43
2026/10/09 09:29:54.939, 63.38, 0, 0, 2542, 13801, 8728, 43
2026/10/09 09:29:55.939, 76.29, 46, 1, 2902, 13801, 8728, 44
2026/10/09 09:29:56.941, 89.33, 0, 0, 2902, 13801, 8728, 44
2026/10/09 09:29:57.941, 86.40, 0, 0, 2902, 13801, 8728, 44
2026/10/09 09:29:58.941, 66.93, 0, 0, 2542, 13801, 31088, 43
2026/10/09 09:29:59.942, 282.73, 78, 29, 2857, 13801, 31088, 55
2026/10/09 09:30:00.942, 437.12, 100, 34, 2857, 13801, 31088, 52
2026/10/09 09:30:01.942, 438.90, 100, 42, 2850, 13801, 31088, 54
2026/10/09 09:30:02.943, 439.16, 100, 35, 2850, 13801, 31088, 57
2026/10/09 09:30:03.943, 434.74, 100, 33, 2850, 13801, 31088, 53
2026/10/09 09:30:04.944, 439.25, 100, 42, 2857, 13801, 31088, 55
2026/10/09 09:30:05.944, 439.65, 100, 35, 2850, 13801, 31088, 58
2026/10/09 09:30:06.945, 439.62, 100, 33, 2850, 13801, 31088, 55
2026/10/09 09:30:07.945, 440.15, 100, 42, 2850, 13801, 31088, 56
2026/10/09 09:30:08.946, 440.65, 100, 35, 2857, 13801, 31088, 59
2026/10/09 09:30:09.947, 440.49, 100, 33, 2850, 13801, 31088, 55
2026/10/09 09:30:10.948, 438.63, 100, 42, 2850, 13801, 31088, 57
2026/10/09 09:30:11.948, 440.69, 100, 34, 2842, 13801, 31088, 59
2026/10/09 09:30:12.949, 437.54, 100, 33, 2857, 13801, 31088, 56
2026/10/09 09:30:13.949, 441.41, 100, 41, 2850, 13801, 31088, 57
2026/10/09 09:30:14.949, 441.76, 100, 35, 2850, 13801, 31088, 60
2026/10/09 09:30:15.950, 440.53, 100, 33, 2842, 13801, 31088, 56
2026/10/09 09:30:16.951, 443.29, 100, 42, 2857, 13801, 31088, 58
2026/10/09 09:30:17.951, 442.86, 100, 35, 2850, 13801, 31088, 61
2026/10/09 09:30:18.953, 438.49, 100, 33, 2850, 13801, 31088, 57
2026/10/09 09:30:19.954, 294.46, 100, 54, 2902, 13801, 31088, 50
2026/10/09 09:30:20.954, 91.68, 0, 0, 2902, 13801, 31088, 49
2026/10/09 09:30:21.955, 74.84, 0, 0, 2542, 13801, 31088, 48
2026/10/09 09:30:22.955, 66.00, 0, 0, 2542, 13801, 31088, 48
2026/10/09 09:30:23.956, 65.63, 0, 0, 2542, 13801, 31088, 48
2026/10/09 09:30:24.956, 65.76, 0, 0, 2542, 13801, 31088, 48
2026/10/09 09:30:25.961, 66.14, 0, 0, 2542, 13801, 31088, 47
2026/10/09 09:30:26.962, 65.88, 0, 0, 2542, 13801, 31088, 47
2026/10/09 09:30:27.964, 65.65, 0, 0, 2542, 13801, 31088, 47
2026/10/09 09:30:28.964, 64.68, 0, 0, 2542, 13801, 31088, 47
2026/10/09 09:30:29.964, 64.49, 0, 0, 2542, 13801, 31088, 47
2026/10/09 09:30:30.965, 64.25, 0, 0, 2542, 13801, 31088, 47
2026/10/09 09:30:31.965, 64.80, 0, 0, 2542, 13801, 31088, 47
2026/10/09 09:30:32.966, 65.39, 0, 0, 2542, 13801, 31088, 47
2026/10/09 09:30:33.966, 65.17, 0, 0, 2542, 13801, 31088, 46
2026/10/09 09:30:34.966, 64.83, 0, 0, 2542, 13801, 31088, 46
2026/10/09 09:30:35.967, 64.33, 0, 0, 2542, 13801, 31088, 46
2026/10/09 09:30:36.967, 63.90, 0, 0, 2542, 13801, 31088, 46
2026/10/09 09:30:37.968, 59.26, 0, 0, 2205, 810, 31088, 45
2026/10/09 09:30:38.968, 29.40, 0, 0, 412, 810, 31088, 45
2026/10/09 09:30:39.968, 19.55, 0, 0, 255, 405, 31088, 45
2026/10/09 09:30:40.969, 17.92, 0, 0, 195, 405, 31088, 45
2026/10/09 09:30:41.969, 14.79, 0, 0, 195, 405, 31088, 44
2026/10/09 09:30:42.970, 12.58, 0, 0, 195, 405, 31088, 44
2026/10/09 09:30:43.970, 13.92, 0, 0, 195, 13801, 31088, 45
2026/10/09 09:30:44.970, 83.59, 46, 1, 2902, 13801, 31088, 46
2026/10/09 09:30:45.971, 92.34, 46, 1, 2902, 13801, 31088, 46
2026/10/09 09:30:46.971, 91.88, 46, 1, 2902, 13801, 31088, 46
2026/10/09 09:30:47.971, 88.53, 0, 0, 2902, 13801, 31088, 46
2026/10/09 09:30:48.972, 76.36, 0, 0, 2542, 13801, 31088, 45
2026/10/09 09:30:49.972, 63.82, 0, 0, 2542, 13801, 31088, 45
2026/10/09 09:30:50.972, 64.02, 0, 0, 2542, 13801, 31088, 45
2026/10/09 09:30:51.973, 63.89, 0, 0, 2542, 13801, 4, 45
2026/10/09 09:30:52.974, 136.62, 0, 0, 2865, 13801, 31086, 50
2026/10/09 09:30:53.975, 280.06, 100, 17, 2895, 13801, 31086, 51
2026/10/09 09:30:54.975, 280.93, 100, 17, 2895, 13801, 31086, 51
2026/10/09 09:30:55.976, 281.56, 100, 17, 2895, 13801, 31086, 51
2026/10/09 09:30:56.976, 281.60, 100, 17, 2895, 13801, 31086, 52
2026/10/09 09:30:57.976, 281.03, 100, 17, 2895, 13801, 31086, 52
2026/10/09 09:30:58.977, 281.69, 100, 17, 2895, 13801, 31086, 52
2026/10/09 09:30:59.977, 281.86, 100, 17, 2895, 13801, 31086, 52
2026/10/09 09:31:00.977, 282.22, 100, 17, 2895, 13801, 31086, 52
2026/10/09 09:31:01.978, 282.35, 100, 17, 2895, 13801, 31086, 52
2026/10/09 09:31:02.978, 282.92, 100, 17, 2895, 13801, 31086, 52
2026/10/09 09:31:03.979, 283.50, 100, 17, 2895, 13801, 31086, 52
2026/10/09 09:31:04.979, 283.65, 100, 17, 2895, 13801, 31086, 53
2026/10/09 09:31:05.979, 283.10, 100, 17, 2895, 13801, 31086, 53
2026/10/09 09:31:06.980, 282.61, 100, 17, 2895, 13801, 31086, 53
2026/10/09 09:31:07.980, 282.42, 100, 17, 2895, 13801, 31086, 53
2026/10/09 09:31:08.981, 282.69, 100, 17, 2895, 13801, 31086, 53
2026/10/09 09:31:09.982, 283.02, 100, 17, 2895, 13801, 31086, 53
2026/10/09 09:31:10.982, 283.45, 100, 17, 2895, 13801, 31086, 53
2026/10/09 09:31:11.983, 283.18, 100, 17, 2887, 13801, 31086, 53
2026/10/09 09:31:12.983, 249.55, 100, 17, 2850, 13801, 31086, 49
2026/10/09 09:31:13.983, 91.15, 0, 0, 2902, 13801, 31086, 48
2026/10/09 09:31:14.983, 78.46, 0, 0, 2542, 13801, 31086, 47
2026/10/09 09:31:15.984, 63.98, 0, 0, 2542, 13801, 31086, 47
2026/10/09 09:31:16.984, 64.04, 0, 0, 2542, 13801, 31086, 47
2026/10/09 09:31:17.984, 63.96, 0, 0, 2542, 13801, 31086, 47
2026/10/09 09:31:18.985, 64.00, 0, 0, 2542, 13801, 31086, 47
2026/10/09 09:31:19.985, 64.55, 0, 0, 2542, 13801, 31086, 46
2026/10/09 09:31:20.985, 64.01, 0, 0, 2542, 13801, 31086, 46
2026/10/09 09:31:21.986, 63.37, 0, 0, 2542, 13801, 31086, 46
2026/10/09 09:31:22.997, 63.87, 0, 0, 2542, 13801, 31086, 46
2026/10/09 09:31:23.997, 63.95, 0, 0, 2542, 13801, 31086, 46
2026/10/09 09:31:24.997, 64.34, 0, 0, 2542, 13801, 31086, 46
2026/10/09 09:31:25.998, 64.84, 0, 0, 2542, 13801, 31086, 46
2026/10/09 09:31:26.998, 65.71, 0, 0, 2542, 13801, 31086, 46
2026/10/09 09:31:27.998, 65.46, 0, 0, 2542, 13801, 31086, 46
2026/10/09 09:31:28.998, 64.32, 0, 0, 2542, 13801, 31086, 46
2026/10/09 09:31:29.999, 58.37, 0, 0, 2212, 810, 31086, 45
2026/10/09 09:31:30.999, 31.87, 0, 0, 427, 810, 31086, 45
2026/10/09 09:31:32.000, 20.65, 0, 0, 255, 405, 31086, 44
2026/10/09 09:31:33.000, 12.89, 0, 0, 195, 405, 31086, 44
2026/10/09 09:31:34.000, 11.45, 0, 0, 195, 405, 31086, 44
2026/10/09 09:31:35.001, 11.88, 0, 0, 195, 405, 31086, 44
2026/10/09 09:31:36.001, 12.13, 0, 0, 195, 405, 31086, 44
2026/10/09 09:31:37.001, 68.13, 47, 1, 2902, 13801, 31086, 46
2026/10/09 09:31:38.001, 92.35, 46, 1, 2902, 13801, 31086, 46
2026/10/09 09:31:39.003, 91.90, 46, 1, 2902, 13801, 31086, 46
2026/10/09 09:31:40.003, 89.02, 0, 0, 2902, 13801, 31086, 46
2026/10/09 09:31:41.003, 85.81, 0, 0, 2902, 13801, 31086, 45
2026/10/09 09:31:42.004, 63.83, 0, 0, 2542, 13801, 31086, 45
2026/10/09 09:31:43.005, 64.17, 0, 0, 2542, 13801, 31086, 45
2026/10/09 09:31:44.005, 63.16, 0, 0, 2542, 13801, 31086, 45
2026/10/09 09:31:45.006, 73.41, 0, 0, 2550, 13801, 31078, 46
2026/10/09 09:31:46.006, 150.52, 100, 4, 2902, 13801, 31078, 47
2026/10/09 09:31:47.007, 151.11, 100, 4, 2902, 13801, 31078, 47
2026/10/09 09:31:48.007, 151.67, 100, 4, 2902, 13801, 31078, 47
2026/10/09 09:31:49.007, 152.14, 100, 4, 2902, 13801, 31078, 47
2026/10/09 09:31:50.008, 152.76, 100, 4, 2902, 13801, 31078, 47
2026/10/09 09:31:51.009, 153.29, 100, 4, 2902, 13801, 31078, 47
2026/10/09 09:31:52.009, 152.19, 100, 4, 2902, 13801, 31078, 47
2026/10/09 09:31:53.011, 150.78, 100, 4, 2902, 13801, 31078, 47
2026/10/09 09:31:54.011, 151.14, 100, 4, 2902, 13801, 31078, 47
2026/10/09 09:31:55.011, 151.63, 100, 4, 2902, 13801, 31078, 47
2026/10/09 09:31:56.012, 151.49, 100, 4, 2902, 13801, 31078, 48
2026/10/09 09:31:57.012, 151.60, 100, 4, 2902, 13801, 31078, 47
2026/10/09 09:31:58.012, 151.94, 100, 4, 2902, 13801, 31078, 47
2026/10/09 09:31:59.013, 152.10, 100, 4, 2902, 13801, 31078, 48
2026/10/09 09:32:00.013, 152.14, 100, 4, 2902, 13801, 31078, 47
2026/10/09 09:32:01.014, 151.90, 100, 4, 2902, 13801, 31078, 48
2026/10/09 09:32:02.014, 151.59, 100, 4, 2902, 13801, 31078, 48
2026/10/09 09:32:03.015, 152.02, 100, 4, 2902, 13801, 31078, 48
2026/10/09 09:32:04.016, 152.50, 100, 4, 2902, 13801, 31078, 48
2026/10/09 09:32:05.016, 152.26, 100, 4, 2902, 13801, 31078, 48
2026/10/09 09:32:06.017, 126.92, 8, 0, 2902, 13801, 31078, 46
2026/10/09 09:32:07.017, 86.76, 0, 0, 2902, 13801, 31078, 46
2026/10/09 09:32:08.018, 67.73, 0, 0, 2542, 13801, 31078, 45
2026/10/09 09:32:09.019, 62.97, 0, 0, 2542, 13801, 31078, 45
2026/10/09 09:32:10.019, 62.94, 0, 0, 2542, 13801, 31078, 45
2026/10/09 09:32:11.019, 63.60, 0, 0, 2542, 13801, 31078, 45
2026/10/09 09:32:12.020, 64.42, 0, 0, 2542, 13801, 31078, 45
2026/10/09 09:32:13.020, 64.88, 0, 0, 2542, 13801, 31078, 44
2026/10/09 09:32:14.021, 64.02, 0, 0, 2542, 13801, 31078, 44
2026/10/09 09:32:15.022, 63.05, 0, 0, 2542, 13801, 31078, 44
2026/10/09 09:32:16.022, 62.57, 0, 0, 2542, 13801, 31078, 44
2026/10/09 09:32:17.022, 63.00, 0, 0, 2542, 13801, 31078, 44
2026/10/09 09:32:18.027, 63.54, 0, 0, 2542, 13801, 31078, 44
2026/10/09 09:32:19.029, 63.67, 0, 0, 2542, 13801, 31078, 44
2026/10/09 09:32:20.030, 63.47, 0, 0, 2542, 13801, 31078, 44
2026/10/09 09:32:21.030, 63.64, 0, 0, 2542, 13801, 31078, 44
2026/10/09 09:32:22.031, 63.33, 0, 0, 2542, 13801, 31078, 44
2026/10/09 09:32:23.032, 58.01, 0, 0, 2212, 810, 31078, 43
2026/10/09 09:32:24.033, 27.62, 0, 0, 427, 810, 31078, 43
2026/10/09 09:32:25.033, 20.32, 0, 0, 255, 405, 31078, 43
2026/10/09 09:32:26.034, 13.54, 0, 0, 195, 405, 31078, 42
2026/10/09 09:32:27.035, 13.25, 0, 0, 195, 405, 31078, 42
2026/10/09 09:32:28.036, 18.28, 0, 0, 780, 13801, 31078, 43
2026/10/09 09:32:29.037, 66.39, 14, 0, 2542, 13801, 31078, 44
2026/10/09 09:32:30.037, 89.76, 46, 1, 2902, 13801, 31078, 44
2026/10/09 09:32:31.039, 90.27, 46, 1, 2902, 13801, 31078, 44
2026/10/09 09:32:32.039, 88.51, 49, 1, 2902, 13801, 31078, 44
2026/10/09 09:32:33.039, 86.09, 0, 0, 2902, 13801, 31078, 44
2026/10/09 09:32:34.040, 71.17, 0, 0, 2542, 13801, 31078, 43
2026/10/09 09:32:35.040, 62.98, 0, 0, 2542, 13801, 31078, 43
2026/10/09 09:32:36.041, 63.26, 0, 0, 2542, 13801, 31078, 43
2026/10/09 09:32:37.041, 62.69, 0, 0, 2542, 13801, 1, 43
2026/10/09 09:32:38.041, 66.16, 4, 2, 2542, 14001, 1, 43
2026/10/09 09:32:39.043, 61.73, 0, 0, 2542, 14001, 1, 43
2026/10/09 09:32:40.044, 41.91, 0, 0, 982, 7001, 1, 42
2026/10/09 09:32:41.044, 29.15, 0, 0, 607, 7001, 1, 42
2026/10/09 09:32:42.044, 26.95, 0, 0, 405, 810, 1, 42
2026/10/09 09:32:43.046, 25.65, 0, 0, 255, 810, 1, 42
2026/10/09 09:32:44.047, 16.14, 0, 0, 195, 405, 1, 41
2026/10/09 09:32:45.048, 11.85, 0, 0, 195, 405, 1, 41
2026/10/09 09:32:46.049, 10.58, 0, 0, 195, 405, 1, 41
2026/10/09 09:32:47.050, 8.51, 0, 0, 195, 405, 1, 41
2026/10/09 09:32:48.051, 6.24, 0, 0, 195, 405, 1, 41
2026/10/09 09:32:49.052, 6.01, 0, 0, 195, 405, 1, 41
2026/10/09 09:32:50.054, 7.89, 0, 0, 195, 405, 1, 41
2026/10/09 09:32:51.055, 7.17, 0, 0, 195, 405, 1, 41
2026/10/09 09:32:52.057, 6.78, 0, 0, 195, 405, 1, 41
2026/10/09 09:32:53.057, 6.43, 0, 0, 195, 405, 1, 41
1 2026/10/09 09:19:51.244 5.65 0 0 195 405 1 38
2 2026/10/09 09:19:52.258 5.64 0 0 195 405 1 38
3 2026/10/09 09:19:53.259 5.97 0 0 195 405 1 38
4 2026/10/09 09:19:54.260 5.78 0 0 195 405 1 38
5 2026/10/09 09:19:55.262 6.72 0 0 195 405 1 38
6 2026/10/09 09:19:56.263 6.36 0 0 195 405 1 38
7 2026/10/09 09:19:57.265 6.10 0 0 195 405 1 38
8 2026/10/09 09:19:58.266 6.26 0 0 195 405 1 38
9 2026/10/09 09:19:59.268 5.36 0 0 195 405 1 38
10 2026/10/09 09:20:00.269 5.24 0 0 195 405 1 38
11 2026/10/09 09:20:01.274 5.32 0 0 195 405 1 38
12 2026/10/09 09:20:02.275 5.43 0 0 195 405 1 38
13 2026/10/09 09:20:03.276 5.38 0 0 195 405 1 38
14 2026/10/09 09:20:04.278 5.40 0 0 195 405 1 38
15 2026/10/09 09:20:05.280 5.43 0 0 195 405 1 38
16 2026/10/09 09:20:06.281 6.49 0 0 195 405 1 38
17 2026/10/09 09:20:07.283 6.16 0 0 195 405 1 38
18 2026/10/09 09:20:08.284 6.03 0 0 195 405 1 38
19 2026/10/09 09:20:09.286 6.23 0 0 195 405 1 38
20 2026/10/09 09:20:10.287 5.66 0 0 195 405 1 38
21 2026/10/09 09:20:11.289 5.95 0 0 195 405 1 38
22 2026/10/09 09:20:12.289 5.88 0 0 195 405 1 38
23 2026/10/09 09:20:13.290 6.38 0 0 195 405 1 38
24 2026/10/09 09:20:14.292 6.01 0 0 195 405 1 38
25 2026/10/09 09:20:15.292 6.36 0 0 187 405 1 38
26 2026/10/09 09:20:16.294 6.14 0 0 195 405 1 38
27 2026/10/09 09:20:17.295 5.91 0 0 195 405 1 38
28 2026/10/09 09:20:18.297 5.63 0 0 195 405 1 38
29 2026/10/09 09:20:19.297 5.13 0 0 195 405 1 38
30 2026/10/09 09:20:20.298 5.44 0 0 195 405 1 38
31 2026/10/09 09:20:21.299 5.39 0 0 195 405 2 38
32 2026/10/09 09:20:22.334 41.49 100 1 2917 13801 31044 40
33 2026/10/09 09:20:23.335 110.68 100 1 2917 13801 31044 41
34 2026/10/09 09:20:24.336 110.98 100 1 2917 13801 31044 41
35 2026/10/09 09:20:25.337 111.05 100 1 2917 13801 31044 41
36 2026/10/09 09:20:26.338 111.15 100 1 2917 13801 31044 41
37 2026/10/09 09:20:27.339 111.48 100 1 2917 13801 31044 41
38 2026/10/09 09:20:28.340 111.47 100 1 2917 13801 31044 41
39 2026/10/09 09:20:29.340 111.33 100 1 2917 13801 31044 41
40 2026/10/09 09:20:30.341 111.33 100 1 2917 13801 31044 41
41 2026/10/09 09:20:31.342 111.64 100 1 2917 13801 31044 42
42 2026/10/09 09:20:32.342 111.78 100 1 2917 13801 31044 42
43 2026/10/09 09:20:33.343 111.89 100 1 2917 13801 31044 42
44 2026/10/09 09:20:34.344 111.83 100 1 2917 13801 31044 42
45 2026/10/09 09:20:35.345 111.96 100 1 2917 13801 31044 42
46 2026/10/09 09:20:36.345 112.26 100 1 2917 13801 31044 42
47 2026/10/09 09:20:37.346 112.33 100 1 2917 13801 31044 42
48 2026/10/09 09:20:38.347 112.13 100 1 2917 13801 31044 42
49 2026/10/09 09:20:39.348 112.21 100 1 2917 13801 31044 42
50 2026/10/09 09:20:40.349 112.56 100 1 2917 13801 31044 42
51 2026/10/09 09:20:41.350 112.57 100 1 2917 13801 31044 42
52 2026/10/09 09:20:42.351 112.58 100 1 2917 13801 31044 43
53 2026/10/09 09:20:43.352 129.16 100 38 2917 13801 31044 43
54 2026/10/09 09:20:44.354 88.13 0 0 2917 13801 31044 42
55 2026/10/09 09:20:45.354 76.04 0 0 2797 13801 31044 41
56 2026/10/09 09:20:46.355 56.58 0 0 2542 13801 31044 41
57 2026/10/09 09:20:47.357 56.65 0 0 2542 13801 31044 41
58 2026/10/09 09:20:48.357 56.85 0 0 2542 13801 31044 41
59 2026/10/09 09:20:49.357 57.19 0 0 2542 13801 31044 41
60 2026/10/09 09:20:50.358 56.94 0 0 2542 13801 31044 41
61 2026/10/09 09:20:51.358 56.97 0 0 2542 13801 31044 41
62 2026/10/09 09:20:52.358 57.11 0 0 2542 13801 31044 41
63 2026/10/09 09:20:53.358 57.11 0 0 2542 13801 31044 41
64 2026/10/09 09:20:54.359 56.97 0 0 2542 13801 31044 41
65 2026/10/09 09:20:55.359 56.96 0 0 2542 13801 31044 41
66 2026/10/09 09:20:56.360 56.81 0 0 2542 13801 31044 41
67 2026/10/09 09:20:57.360 57.15 0 0 2542 13801 31044 41
68 2026/10/09 09:20:58.360 57.04 0 0 2542 13801 31044 41
69 2026/10/09 09:20:59.361 56.84 0 0 2542 13801 31044 41
70 2026/10/09 09:21:00.361 56.47 0 0 2542 13801 31044 41
71 2026/10/09 09:21:01.361 32.98 0 0 472 810 31044 40
72 2026/10/09 09:21:02.362 21.74 0 0 420 810 31044 40
73 2026/10/09 09:21:03.362 24.60 9 0 2542 13801 31044 41
74 2026/10/09 09:21:04.363 60.76 35 1 2542 13801 31044 41
75 2026/10/09 09:21:05.363 61.54 35 1 2542 13801 31044 41
76 2026/10/09 09:21:06.364 61.40 35 1 2542 13801 31044 41
77 2026/10/09 09:21:07.364 59.04 0 0 2542 13801 31044 41
78 2026/10/09 09:21:08.365 57.08 0 0 2542 13801 31044 41
79 2026/10/09 09:21:09.365 56.94 0 0 2542 13801 31044 41
80 2026/10/09 09:21:10.365 57.12 0 0 2542 13801 31044 41
81 2026/10/09 09:21:11.366 56.72 0 0 2542 13801 31044 42
82 2026/10/09 09:21:12.366 57.25 0 0 2542 13801 31044 42
83 2026/10/09 09:21:13.367 62.29 55 36 2542 14001 31044 42
84 2026/10/09 09:21:14.367 108.58 100 2 2910 13801 31044 44
85 2026/10/09 09:21:15.368 125.03 100 2 2902 13801 31044 44
86 2026/10/09 09:21:16.368 125.49 100 2 2902 13801 31044 44
87 2026/10/09 09:21:17.370 124.96 100 2 2902 13801 31044 44
88 2026/10/09 09:21:18.370 125.14 100 2 2902 13801 31044 44
89 2026/10/09 09:21:19.370 125.40 100 2 2902 13801 31044 44
90 2026/10/09 09:21:20.371 125.85 100 2 2902 13801 31044 44
91 2026/10/09 09:21:21.371 126.00 100 2 2902 13801 31044 44
92 2026/10/09 09:21:22.371 126.49 100 2 2902 13801 31044 45
93 2026/10/09 09:21:23.372 126.34 100 2 2902 13801 31044 45
94 2026/10/09 09:21:24.372 126.40 100 2 2902 13801 31044 45
95 2026/10/09 09:21:25.372 126.51 100 2 2902 13801 31044 45
96 2026/10/09 09:21:26.373 126.85 100 2 2902 13801 31044 45
97 2026/10/09 09:21:27.373 127.50 100 2 2902 13801 31044 45
98 2026/10/09 09:21:28.374 129.60 100 2 2902 13801 31044 45
99 2026/10/09 09:21:29.374 129.35 100 2 2902 13801 31044 45
100 2026/10/09 09:21:30.375 128.97 100 2 2902 13801 31044 45
101 2026/10/09 09:21:31.375 129.16 100 2 2902 13801 31044 45
102 2026/10/09 09:21:32.375 129.80 100 2 2902 13801 31044 45
103 2026/10/09 09:21:33.376 130.43 100 2 2902 13801 31044 45
104 2026/10/09 09:21:34.376 136.49 0 0 2902 13801 31044 44
105 2026/10/09 09:21:35.376 86.41 0 0 2902 13801 31044 44
106 2026/10/09 09:21:36.377 71.82 0 0 2542 13801 31044 43
107 2026/10/09 09:21:37.377 61.56 0 0 2542 13801 31044 43
108 2026/10/09 09:21:38.377 61.34 0 0 2542 13801 31044 43
109 2026/10/09 09:21:39.378 60.80 0 0 2542 13801 31044 43
110 2026/10/09 09:21:40.378 60.75 0 0 2542 13801 31044 43
111 2026/10/09 09:21:41.378 61.37 0 0 2542 13801 31044 43
112 2026/10/09 09:21:42.378 61.54 0 0 2542 13801 31044 43
113 2026/10/09 09:21:43.379 61.54 0 0 2542 13801 31044 43
114 2026/10/09 09:21:44.379 61.35 0 0 2542 13801 31044 43
115 2026/10/09 09:21:45.380 61.01 0 0 2542 13801 31044 43
116 2026/10/09 09:21:46.380 60.51 0 0 2542 13801 31044 43
117 2026/10/09 09:21:47.380 60.78 0 0 2542 13801 31044 43
118 2026/10/09 09:21:48.381 60.81 0 0 2542 13801 31044 43
119 2026/10/09 09:21:49.381 61.59 0 0 2542 13801 31044 43
120 2026/10/09 09:21:50.382 61.24 0 0 2542 13801 31044 42
121 2026/10/09 09:21:51.382 37.40 0 0 487 810 31044 42
122 2026/10/09 09:21:52.382 25.75 0 0 420 810 31044 42
123 2026/10/09 09:21:53.383 23.98 9 0 1702 13801 31044 42
124 2026/10/09 09:21:54.383 63.66 34 1 2542 13801 31044 42
125 2026/10/09 09:21:55.384 64.48 34 1 2542 13801 31044 42
126 2026/10/09 09:21:56.384 65.37 34 1 2542 13801 31044 42
127 2026/10/09 09:21:57.385 64.88 0 0 2542 13801 31044 42
128 2026/10/09 09:21:58.385 61.99 0 0 2542 13801 31044 42
129 2026/10/09 09:21:59.386 61.08 0 0 2542 13801 31044 42
130 2026/10/09 09:22:00.386 60.54 0 0 2542 13801 31044 42
131 2026/10/09 09:22:01.387 59.61 0 0 2542 13801 31044 42
132 2026/10/09 09:22:02.387 59.74 0 0 2542 13801 31044 42
133 2026/10/09 09:22:03.387 60.49 0 0 2542 13801 31044 42
134 2026/10/09 09:22:04.388 67.36 1 0 2542 13801 31014 42
135 2026/10/09 09:22:05.388 103.82 100 0 2917 13801 31014 43
136 2026/10/09 09:22:06.389 107.14 100 0 2917 13801 31014 43
137 2026/10/09 09:22:07.389 107.34 100 0 2917 13801 31014 43
138 2026/10/09 09:22:08.390 107.06 100 0 2917 13801 31014 44
139 2026/10/09 09:22:09.390 106.56 100 0 2917 13801 31014 44
140 2026/10/09 09:22:10.391 106.57 100 0 2917 13801 31014 44
141 2026/10/09 09:22:11.391 107.26 100 0 2917 13801 31014 44
142 2026/10/09 09:22:12.392 108.01 100 0 2917 13801 31014 44
143 2026/10/09 09:22:13.392 107.32 100 0 2902 13801 31014 44
144 2026/10/09 09:22:14.392 106.63 100 0 2902 13801 31014 44
145 2026/10/09 09:22:15.393 106.03 100 0 2902 13801 31014 44
146 2026/10/09 09:22:16.394 105.86 100 0 2902 13801 31014 44
147 2026/10/09 09:22:17.394 105.98 100 0 2902 13801 31014 44
148 2026/10/09 09:22:18.394 106.71 100 0 2902 13801 31014 44
149 2026/10/09 09:22:19.395 107.57 100 0 2902 13801 31014 44
150 2026/10/09 09:22:20.395 108.16 100 0 2902 13801 31014 44
151 2026/10/09 09:22:21.395 108.24 100 0 2902 13801 31014 44
152 2026/10/09 09:22:22.396 107.61 100 0 2902 13801 31014 44
153 2026/10/09 09:22:23.396 106.89 100 0 2902 13801 31014 44
154 2026/10/09 09:22:24.397 106.62 100 0 2902 13801 31014 44
155 2026/10/09 09:22:25.397 107.13 100 0 2902 13801 31014 44
156 2026/10/09 09:22:26.398 106.81 100 0 2902 13801 31014 44
157 2026/10/09 09:22:27.398 107.10 100 0 2902 13801 31014 44
158 2026/10/09 09:22:28.399 107.50 100 0 2902 13801 31014 44
159 2026/10/09 09:22:29.399 107.60 100 0 2902 13801 31014 44
160 2026/10/09 09:22:30.400 107.22 100 0 2902 13801 31014 44
161 2026/10/09 09:22:31.401 106.79 100 0 2902 13801 31014 44
162 2026/10/09 09:22:32.401 106.00 100 0 2902 13801 31014 44
163 2026/10/09 09:22:33.401 120.86 0 0 2895 13801 31014 43
164 2026/10/09 09:22:34.402 84.61 0 0 2917 13801 31014 43
165 2026/10/09 09:22:35.402 70.85 0 0 2542 13801 31014 42
166 2026/10/09 09:22:36.403 60.86 0 0 2542 13801 31014 42
167 2026/10/09 09:22:37.403 60.53 0 0 2542 13801 31014 42
168 2026/10/09 09:22:38.404 60.58 0 0 2542 13801 31014 42
169 2026/10/09 09:22:39.404 59.60 0 0 2542 13801 31014 42
170 2026/10/09 09:22:40.405 59.74 0 0 2542 13801 31014 42
171 2026/10/09 09:22:41.405 61.23 0 0 2542 13801 31014 42
172 2026/10/09 09:22:42.405 61.14 0 0 2542 13801 31014 42
173 2026/10/09 09:22:43.406 61.30 0 0 2542 13801 31014 42
174 2026/10/09 09:22:44.406 61.68 0 0 2542 13801 31014 42
175 2026/10/09 09:22:45.407 60.51 0 0 2542 13801 31014 42
176 2026/10/09 09:22:46.407 59.92 0 0 2542 13801 31014 42
177 2026/10/09 09:22:47.407 59.83 0 0 2542 13801 31014 42
178 2026/10/09 09:22:48.408 59.80 0 0 2542 13801 31014 42
179 2026/10/09 09:22:49.408 60.27 0 0 2542 13801 31014 41
180 2026/10/09 09:22:50.408 37.60 0 0 465 810 31014 41
181 2026/10/09 09:22:51.409 26.32 0 0 412 810 31014 41
182 2026/10/09 09:22:52.409 18.11 0 0 255 405 31014 40
183 2026/10/09 09:22:53.410 25.19 37 1 2542 13801 31014 41
184 2026/10/09 09:22:54.410 64.97 37 1 2542 13801 31014 41
185 2026/10/09 09:22:55.410 62.30 37 1 2542 13801 31014 41
186 2026/10/09 09:22:56.411 64.84 34 1 2542 13801 31014 41
187 2026/10/09 09:22:57.411 62.15 0 0 2542 13801 31014 41
188 2026/10/09 09:22:58.412 61.37 0 0 2542 13801 31014 41
189 2026/10/09 09:22:59.412 60.64 0 0 2542 13801 31014 41
190 2026/10/09 09:23:00.413 60.44 0 0 2542 13801 31014 41
191 2026/10/09 09:23:01.414 60.54 0 0 2542 13801 31014 41
192 2026/10/09 09:23:02.415 60.62 0 0 2542 13801 31014 41
193 2026/10/09 09:23:03.415 60.97 0 0 2542 13801 31014 41
194 2026/10/09 09:23:04.416 61.25 0 0 2542 13801 31014 41
195 2026/10/09 09:23:05.416 61.83 0 0 2542 13801 31014 41
196 2026/10/09 09:23:06.416 62.31 0 0 2542 13801 31014 41
197 2026/10/09 09:23:07.417 61.91 0 0 2542 13801 31014 41
198 2026/10/09 09:23:08.417 60.80 0 0 2542 13801 31014 41
199 2026/10/09 09:23:09.417 59.81 0 0 2542 13801 31014 41
200 2026/10/09 09:23:10.418 59.71 0 0 2542 13801 31014 41
201 2026/10/09 09:23:11.418 59.89 0 0 2542 13801 31014 41
202 2026/10/09 09:23:12.419 60.68 0 0 2542 13801 4 41
203 2026/10/09 09:23:13.419 81.40 100 0 2850 13801 31014 42
204 2026/10/09 09:23:14.420 109.56 100 0 2917 13801 31014 42
205 2026/10/09 09:23:15.420 109.37 100 0 2917 13801 31014 42
206 2026/10/09 09:23:16.421 109.37 100 0 2917 13801 31014 43
207 2026/10/09 09:23:17.421 108.92 100 0 2917 13801 31014 43
208 2026/10/09 09:23:18.421 109.00 100 0 2917 13801 31014 43
209 2026/10/09 09:23:19.422 109.62 100 0 2917 13801 31014 43
210 2026/10/09 09:23:20.422 109.93 100 0 2917 13801 31014 43
211 2026/10/09 09:23:21.422 110.17 100 0 2917 13801 31014 43
212 2026/10/09 09:23:22.423 109.36 100 0 2917 13801 31014 43
213 2026/10/09 09:23:23.423 109.04 100 0 2917 13801 31014 43
214 2026/10/09 09:23:24.424 109.05 100 0 2917 13801 31014 43
215 2026/10/09 09:23:25.424 109.36 100 0 2917 13801 31014 43
216 2026/10/09 09:23:26.425 109.75 100 0 2917 13801 31014 43
217 2026/10/09 09:23:27.425 110.32 100 0 2917 13801 31014 43
218 2026/10/09 09:23:28.426 111.04 100 0 2917 13801 31014 43
219 2026/10/09 09:23:29.426 111.42 100 0 2917 13801 31014 43
220 2026/10/09 09:23:30.427 110.72 100 0 2917 13801 31014 43
221 2026/10/09 09:23:31.427 109.50 100 0 2917 13801 31014 43
222 2026/10/09 09:23:32.428 108.86 100 0 2917 13801 31014 43
223 2026/10/09 09:23:33.428 108.85 100 0 2917 13801 31014 43
224 2026/10/09 09:23:34.429 109.33 100 0 2917 13801 31014 43
225 2026/10/09 09:23:35.429 109.71 100 0 2917 13801 31014 43
226 2026/10/09 09:23:36.430 132.39 68 43 2917 13801 31014 50
227 2026/10/09 09:23:37.430 85.72 0 0 2917 13801 31014 42
228 2026/10/09 09:23:38.430 80.54 0 0 2797 13801 31014 42
229 2026/10/09 09:23:39.431 60.16 0 0 2542 13801 31014 41
230 2026/10/09 09:23:40.431 59.61 0 0 2542 13801 31014 41
231 2026/10/09 09:23:41.432 59.67 0 0 2542 13801 31014 41
232 2026/10/09 09:23:42.432 60.87 0 0 2542 13801 31014 41
233 2026/10/09 09:23:43.433 61.56 0 0 2542 13801 31014 41
234 2026/10/09 09:23:44.433 61.53 0 0 2542 13801 31014 41
235 2026/10/09 09:23:45.434 60.73 0 0 2542 13801 31014 41
236 2026/10/09 09:23:46.434 60.52 0 0 2542 13801 31014 41
237 2026/10/09 09:23:47.435 60.33 0 0 2542 13801 31014 41
238 2026/10/09 09:23:48.435 60.39 0 0 2542 13801 31014 41
239 2026/10/09 09:23:49.436 60.68 0 0 2542 13801 31014 41
240 2026/10/09 09:23:50.436 61.35 0 0 2542 13801 31014 41
241 2026/10/09 09:23:51.437 61.84 0 0 2542 13801 31014 41
242 2026/10/09 09:23:52.437 60.73 0 0 2542 13801 31014 41
243 2026/10/09 09:23:53.437 60.34 0 0 2542 13801 31014 41
244 2026/10/09 09:23:54.439 36.69 0 0 465 810 31014 40
245 2026/10/09 09:23:55.439 24.98 0 0 435 810 31014 40
246 2026/10/09 09:23:56.439 17.30 0 0 255 405 31014 40
247 2026/10/09 09:23:57.440 15.19 0 0 195 405 31014 39
248 2026/10/09 09:23:58.440 11.20 0 0 195 405 31014 39
249 2026/10/09 09:23:59.441 14.97 14 0 502 13801 31014 40
250 2026/10/09 09:24:00.441 74.07 88 1 2917 13801 31014 41
251 2026/10/09 09:24:01.442 89.86 88 1 2917 13801 31014 41
252 2026/10/09 09:24:02.442 89.95 89 1 2917 13801 31014 41
253 2026/10/09 09:24:03.443 86.60 0 0 2917 13801 31014 41
254 2026/10/09 09:24:04.443 83.77 0 0 2917 13801 31014 41
255 2026/10/09 09:24:05.443 64.98 0 0 2542 13801 31014 40
256 2026/10/09 09:24:06.444 60.65 0 0 2542 13801 31014 40
257 2026/10/09 09:24:07.444 60.74 0 0 2542 13801 31014 40
258 2026/10/09 09:24:08.446 60.49 0 0 2542 13801 31014 40
259 2026/10/09 09:24:09.446 60.17 0 0 2542 13801 31014 40
260 2026/10/09 09:24:10.447 60.63 0 0 2542 13801 31014 40
261 2026/10/09 09:24:11.449 60.86 0 0 2542 13801 31014 40
262 2026/10/09 09:24:12.449 61.31 0 0 2542 13801 31014 40
263 2026/10/09 09:24:13.449 61.55 0 0 2542 13801 31014 40
264 2026/10/09 09:24:14.450 61.93 0 0 2542 13801 31014 40
265 2026/10/09 09:24:15.450 61.43 0 0 2542 13801 31014 40
266 2026/10/09 09:24:16.451 60.64 0 0 2542 13801 31014 40
267 2026/10/09 09:24:17.451 59.92 0 0 2542 13801 31014 40
268 2026/10/09 09:24:18.451 59.71 0 0 2542 13801 31014 40
269 2026/10/09 09:24:19.453 65.52 0 0 2542 14001 510 40
270 2026/10/09 09:24:20.454 82.43 100 0 2917 13801 30282 42
271 2026/10/09 09:24:21.454 102.96 100 0 2917 13801 30282 42
272 2026/10/09 09:24:22.454 103.34 100 0 2917 13801 30282 42
273 2026/10/09 09:24:23.455 103.55 100 0 2917 13801 30282 42
274 2026/10/09 09:24:24.455 102.95 100 0 2917 13801 30282 42
275 2026/10/09 09:24:25.455 102.64 100 0 2917 13801 30282 42
276 2026/10/09 09:24:26.456 103.10 100 0 2917 13801 30282 42
277 2026/10/09 09:24:27.456 103.11 100 0 2917 13801 30282 42
278 2026/10/09 09:24:28.457 103.84 100 0 2917 13801 30282 42
279 2026/10/09 09:24:29.457 104.07 100 0 2917 13801 30282 42
280 2026/10/09 09:24:30.458 103.57 100 0 2917 13801 30282 42
281 2026/10/09 09:24:31.458 102.97 100 0 2917 13801 30282 42
282 2026/10/09 09:24:32.459 103.05 100 0 2917 13801 30282 42
283 2026/10/09 09:24:33.459 103.12 100 0 2917 13801 30282 42
284 2026/10/09 09:24:34.460 103.80 100 0 2917 13801 30282 42
285 2026/10/09 09:24:35.460 104.34 100 0 2917 13801 30282 42
286 2026/10/09 09:24:36.460 104.53 100 0 2917 13801 30282 42
287 2026/10/09 09:24:37.461 105.31 100 0 2910 13801 30282 42
288 2026/10/09 09:24:38.461 104.70 100 0 2917 13801 30282 42
289 2026/10/09 09:24:39.461 104.02 100 0 2917 13801 30282 42
290 2026/10/09 09:24:40.461 103.64 100 0 2917 13801 30282 42
291 2026/10/09 09:24:41.462 103.30 100 0 2917 13801 30282 42
292 2026/10/09 09:24:42.463 103.07 100 0 2917 13801 30282 42
293 2026/10/09 09:24:43.463 103.35 100 0 2910 13801 30282 42
294 2026/10/09 09:24:44.464 103.55 100 0 2917 13801 30282 42
295 2026/10/09 09:24:45.464 103.95 100 0 2910 13801 30282 42
296 2026/10/09 09:24:46.465 104.04 100 0 2917 13801 30282 42
297 2026/10/09 09:24:47.466 103.94 100 0 2917 13801 30282 42
298 2026/10/09 09:24:48.466 103.54 100 0 2917 13801 30282 42
299 2026/10/09 09:24:49.467 103.61 100 0 2917 13801 30282 42
300 2026/10/09 09:24:50.467 103.82 100 0 2917 13801 30282 42
301 2026/10/09 09:24:51.468 103.96 100 0 2917 13801 30282 42
302 2026/10/09 09:24:52.468 104.24 100 0 2910 13801 30282 42
303 2026/10/09 09:24:53.468 103.94 100 0 2917 13801 30282 42
304 2026/10/09 09:24:54.469 103.38 100 0 2910 13801 30282 42
305 2026/10/09 09:24:55.469 103.36 100 0 2917 13801 30282 42
306 2026/10/09 09:24:56.469 103.49 100 0 2917 13801 30282 42
307 2026/10/09 09:24:57.470 103.88 100 0 2917 13801 30282 42
308 2026/10/09 09:24:58.470 112.81 0 0 2917 13801 30282 42
309 2026/10/09 09:24:59.471 85.09 0 0 2917 13801 30282 42
310 2026/10/09 09:25:00.471 64.84 0 0 2542 13801 30282 41
311 2026/10/09 09:25:01.472 61.64 0 0 2542 13801 30282 41
312 2026/10/09 09:25:02.473 60.78 0 0 2542 13801 30282 41
313 2026/10/09 09:25:03.474 60.04 0 0 2542 13801 30282 41
314 2026/10/09 09:25:04.474 60.23 0 0 2542 13801 30282 41
315 2026/10/09 09:25:05.474 60.42 0 0 2542 13801 30282 41
316 2026/10/09 09:25:06.475 60.67 0 0 2542 13801 30282 41
317 2026/10/09 09:25:07.475 60.86 0 0 2542 13801 30282 41
318 2026/10/09 09:25:08.476 60.86 0 0 2542 13801 30282 41
319 2026/10/09 09:25:09.476 60.69 0 0 2542 13801 30282 41
320 2026/10/09 09:25:10.476 59.78 0 0 2542 13801 30282 40
321 2026/10/09 09:25:11.477 58.81 0 0 2542 13801 30282 41
322 2026/10/09 09:25:12.477 59.21 0 0 2542 13801 30282 40
323 2026/10/09 09:25:13.477 60.10 0 0 2542 13801 30282 40
324 2026/10/09 09:25:14.478 60.40 0 0 2542 13801 30282 40
325 2026/10/09 09:25:15.478 54.96 0 0 2055 810 30282 40
326 2026/10/09 09:25:16.479 25.10 0 0 412 810 30282 40
327 2026/10/09 09:25:17.479 16.52 0 0 247 405 30282 39
328 2026/10/09 09:25:18.479 14.05 0 0 195 405 30282 39
329 2026/10/09 09:25:19.480 8.65 0 0 195 405 30282 39
330 2026/10/09 09:25:20.485 30.23 85 1 2662 13801 30282 41
331 2026/10/09 09:25:21.486 89.20 85 1 2917 13801 30282 41
332 2026/10/09 09:25:22.486 89.71 70 1 2917 13801 30282 41
333 2026/10/09 09:25:23.487 89.28 0 0 2917 13801 30282 41
334 2026/10/09 09:25:24.487 84.36 0 0 2917 13801 30282 41
335 2026/10/09 09:25:25.488 75.01 0 0 2542 13801 30282 40
336 2026/10/09 09:25:26.488 59.43 0 0 2542 13801 30282 40
337 2026/10/09 09:25:27.489 59.66 0 0 2542 13801 30282 40
338 2026/10/09 09:25:28.489 60.24 0 0 2542 13801 30282 40
339 2026/10/09 09:25:29.489 60.00 0 0 2542 13801 30282 40
340 2026/10/09 09:25:30.490 60.29 0 0 2542 13801 30282 40
341 2026/10/09 09:25:31.490 60.57 0 0 2542 13801 30282 40
342 2026/10/09 09:25:32.490 60.75 0 0 2542 13801 30282 40
343 2026/10/09 09:25:33.491 60.36 0 0 2542 13801 30282 40
344 2026/10/09 09:25:34.491 60.24 0 0 2542 13801 30282 40
345 2026/10/09 09:25:35.491 59.89 0 0 2542 13801 30282 40
346 2026/10/09 09:25:36.491 60.16 0 0 2542 13801 30282 40
347 2026/10/09 09:25:37.492 60.38 0 0 2542 13801 30282 40
348 2026/10/09 09:25:38.492 60.24 0 0 2542 13801 30282 40
349 2026/10/09 09:25:39.492 59.58 0 0 2542 13801 30282 40
350 2026/10/09 09:25:40.493 35.40 0 0 465 810 30282 39
351 2026/10/09 09:25:41.493 24.09 0 0 420 810 30282 39
352 2026/10/09 09:25:42.493 16.38 0 0 255 405 30282 39
353 2026/10/09 09:25:43.494 13.72 0 0 195 405 30282 39
354 2026/10/09 09:25:44.494 11.84 0 0 195 405 30282 39
355 2026/10/09 09:25:45.495 7.59 0 0 195 405 30282 38
356 2026/10/09 09:25:46.495 7.03 0 0 195 405 30282 38
357 2026/10/09 09:25:47.496 8.02 0 0 195 405 30282 38
358 2026/10/09 09:25:48.496 7.06 0 0 195 405 30282 38
359 2026/10/09 09:25:49.497 6.02 0 0 195 405 30282 38
360 2026/10/09 09:25:50.500 5.97 0 0 195 405 30282 38
361 2026/10/09 09:25:51.500 6.39 0 0 195 405 30282 38
362 2026/10/09 09:25:52.501 6.11 0 0 195 405 30282 38
363 2026/10/09 09:25:53.501 5.93 0 0 195 405 30282 38
364 2026/10/09 09:25:54.501 5.34 0 0 195 405 30282 38
365 2026/10/09 09:25:55.502 5.58 0 0 195 405 30282 38
366 2026/10/09 09:25:56.502 5.57 0 0 195 405 30282 38
367 2026/10/09 09:25:57.502 5.57 0 0 195 405 30282 38
368 2026/10/09 09:25:58.503 5.73 0 0 195 405 30282 38
369 2026/10/09 09:25:59.503 6.07 0 0 195 405 30282 38
370 2026/10/09 09:26:00.503 6.07 0 0 187 405 30282 38
371 2026/10/09 09:26:01.504 5.82 0 0 195 405 30282 38
372 2026/10/09 09:26:02.504 5.59 0 0 195 405 30282 38
373 2026/10/09 09:26:03.504 5.50 0 0 195 405 30282 38
374 2026/10/09 09:26:04.505 5.44 0 0 195 405 30282 38
375 2026/10/09 09:26:05.505 6.05 0 0 195 405 30282 38
376 2026/10/09 09:26:06.505 5.71 0 0 195 405 30282 38
377 2026/10/09 09:26:07.506 5.81 0 0 195 405 30282 38
378 2026/10/09 09:26:08.506 5.71 0 0 195 405 30282 38
379 2026/10/09 09:26:09.506 5.13 0 0 195 405 30282 38
380 2026/10/09 09:26:10.507 5.00 0 0 195 405 30282 38
381 2026/10/09 09:26:11.507 4.92 0 0 195 405 30282 38
382 2026/10/09 09:26:12.507 5.37 0 0 195 405 30282 38
383 2026/10/09 09:26:13.507 5.57 0 0 187 405 30282 38
384 2026/10/09 09:26:14.508 5.38 0 0 195 405 30282 38
385 2026/10/09 09:26:15.508 5.80 0 0 195 405 30281 38
386 2026/10/09 09:26:16.509 14.49 100 91 855 14001 510 39
387 2026/10/09 09:26:17.509 78.72 100 0 2917 13801 30282 41
388 2026/10/09 09:26:18.509 100.97 100 0 2917 13801 30282 41
389 2026/10/09 09:26:19.510 100.94 100 0 2917 13801 30282 41
390 2026/10/09 09:26:20.510 101.08 100 0 2917 13801 30282 41
391 2026/10/09 09:26:21.510 101.54 100 0 2917 13801 30282 41
392 2026/10/09 09:26:22.511 101.14 100 0 2917 13801 30282 41
393 2026/10/09 09:26:23.511 101.12 100 0 2910 13801 30282 42
394 2026/10/09 09:26:24.511 101.08 100 0 2917 13801 30282 42
395 2026/10/09 09:26:25.512 101.53 100 0 2917 13801 30282 42
396 2026/10/09 09:26:26.514 101.61 100 0 2917 13801 30282 42
397 2026/10/09 09:26:27.514 101.79 100 0 2917 13801 30282 42
398 2026/10/09 09:26:28.517 101.44 100 0 2917 13801 30282 42
399 2026/10/09 09:26:29.517 101.37 100 0 2917 13801 30282 42
400 2026/10/09 09:26:30.518 101.46 100 0 2917 13801 30282 42
401 2026/10/09 09:26:31.518 101.21 100 0 2917 13801 30282 42
402 2026/10/09 09:26:32.518 101.59 100 0 2917 13801 30282 42
403 2026/10/09 09:26:33.518 102.12 100 0 2917 13801 30282 42
404 2026/10/09 09:26:34.519 102.17 100 0 2917 13801 30282 42
405 2026/10/09 09:26:35.519 102.20 100 0 2917 13801 30282 42
406 2026/10/09 09:26:36.520 102.05 100 0 2917 13801 30282 43
407 2026/10/09 09:26:37.520 102.24 100 0 2917 13801 30282 43
408 2026/10/09 09:26:38.520 102.58 100 0 2917 13801 30282 43
409 2026/10/09 09:26:39.521 102.44 100 0 2917 13801 30282 43
410 2026/10/09 09:26:40.521 109.61 0 0 2917 13801 30282 42
411 2026/10/09 09:26:41.522 81.34 0 0 2917 13801 30282 42
412 2026/10/09 09:26:42.522 57.87 0 0 2542 13801 30282 41
413 2026/10/09 09:26:43.522 57.60 0 0 2542 13801 30282 41
414 2026/10/09 09:26:44.523 57.29 0 0 2542 13801 30282 41
415 2026/10/09 09:26:45.523 56.88 0 0 2542 13801 30282 41
416 2026/10/09 09:26:46.523 57.25 0 0 2542 13801 30282 41
417 2026/10/09 09:26:47.525 57.18 0 0 2542 13801 30282 41
418 2026/10/09 09:26:48.526 56.98 0 0 2542 13801 30282 41
419 2026/10/09 09:26:49.526 57.34 0 0 2542 13801 30282 41
420 2026/10/09 09:26:50.527 57.39 0 0 2542 13801 30282 42
421 2026/10/09 09:26:51.527 57.35 0 0 2542 13801 30282 42
422 2026/10/09 09:26:52.528 57.19 0 0 2542 13801 30282 42
423 2026/10/09 09:26:53.528 57.29 0 0 2542 13801 30282 42
424 2026/10/09 09:26:54.529 57.45 0 0 2542 13801 30282 42
425 2026/10/09 09:26:55.529 57.34 0 0 2542 13801 30282 42
426 2026/10/09 09:26:56.530 57.25 0 0 2542 13801 30282 42
427 2026/10/09 09:26:57.530 33.99 0 0 472 810 30282 41
428 2026/10/09 09:26:58.531 22.65 0 0 420 810 30282 41
429 2026/10/09 09:26:59.531 16.42 0 0 255 405 30282 41
430 2026/10/09 09:27:00.531 13.00 0 0 195 405 30282 41
431 2026/10/09 09:27:01.532 8.23 0 0 195 405 30282 40
432 2026/10/09 09:27:02.533 11.22 89 1 495 13801 30282 41
433 2026/10/09 09:27:03.533 84.05 81 1 2917 13801 30282 42
434 2026/10/09 09:27:04.534 84.25 11 0 2917 13801 30282 42
435 2026/10/09 09:27:05.534 84.19 81 1 2917 13801 30282 43
436 2026/10/09 09:27:06.534 86.34 81 1 2917 13801 30282 43
437 2026/10/09 09:27:07.535 81.81 0 0 2917 13801 30282 43
438 2026/10/09 09:27:08.535 77.34 0 0 2797 13801 30282 42
439 2026/10/09 09:27:09.536 58.29 0 0 2542 13801 30282 42
440 2026/10/09 09:27:10.537 57.37 0 0 2542 13801 30282 42
441 2026/10/09 09:27:11.540 58.22 0 0 2542 13801 30282 42
442 2026/10/09 09:27:12.540 57.90 0 0 2542 13801 30282 42
443 2026/10/09 09:27:13.540 57.67 0 0 2542 13801 30282 42
444 2026/10/09 09:27:14.541 57.50 0 0 2542 13801 30282 42
445 2026/10/09 09:27:15.541 57.76 0 0 2542 13801 30282 42
446 2026/10/09 09:27:16.541 57.93 0 0 2542 13801 30282 42
447 2026/10/09 09:27:17.542 58.07 0 0 2542 13801 30282 42
448 2026/10/09 09:27:18.542 57.77 0 0 2542 13801 30282 42
449 2026/10/09 09:27:19.542 58.06 0 0 2542 13801 30282 42
450 2026/10/09 09:27:20.544 57.99 0 0 2542 13801 30282 42
451 2026/10/09 09:27:21.544 58.09 0 0 2542 13801 30282 42
452 2026/10/09 09:27:22.544 58.42 0 0 2542 13801 30282 42
453 2026/10/09 09:27:23.545 58.10 0 0 2542 13801 30282 42
454 2026/10/09 09:27:24.545 34.90 0 0 472 810 30282 42
455 2026/10/09 09:27:25.546 26.85 0 0 405 810 30282 41
456 2026/10/09 09:27:26.546 13.94 0 0 247 405 30282 41
457 2026/10/09 09:27:27.547 11.60 0 0 195 405 30282 41
458 2026/10/09 09:27:28.547 8.12 0 0 195 405 30282 41
459 2026/10/09 09:27:29.548 6.17 0 0 195 405 30282 41
460 2026/10/09 09:27:30.548 5.99 0 0 195 405 30282 41
461 2026/10/09 09:27:31.549 5.87 0 0 195 405 30282 41
462 2026/10/09 09:27:32.549 5.76 0 0 195 405 30282 41
463 2026/10/09 09:27:33.550 5.71 0 0 195 405 30282 41
464 2026/10/09 09:27:34.551 5.71 0 0 195 405 30282 41
465 2026/10/09 09:27:35.551 5.68 0 0 195 405 30282 41
466 2026/10/09 09:27:36.551 5.94 0 0 195 405 30282 41
467 2026/10/09 09:27:37.552 5.68 0 0 195 405 30282 41
468 2026/10/09 09:27:38.552 6.28 0 0 195 405 30282 41
469 2026/10/09 09:27:39.552 6.11 0 0 195 405 30282 41
470 2026/10/09 09:27:40.553 6.16 0 0 195 405 30282 41
471 2026/10/09 09:27:41.553 6.50 0 0 195 405 30282 41
472 2026/10/09 09:27:42.553 6.03 0 0 195 405 30282 41
473 2026/10/09 09:27:43.554 6.15 0 0 195 405 30282 41
474 2026/10/09 09:27:44.554 5.92 0 0 195 405 30282 41
475 2026/10/09 09:27:45.555 5.72 0 0 195 405 30282 41
476 2026/10/09 09:27:46.555 6.22 0 0 195 405 30282 41
477 2026/10/09 09:27:47.556 5.79 0 0 195 405 30282 41
478 2026/10/09 09:27:48.556 7.42 0 0 195 405 30282 41
479 2026/10/09 09:27:49.556 6.87 0 0 195 405 30282 41
480 2026/10/09 09:27:50.557 6.55 0 0 195 405 30282 41
481 2026/10/09 09:27:51.557 6.81 0 0 195 405 30282 41
482 2026/10/09 09:27:52.557 6.15 0 0 195 405 30282 41
483 2026/10/09 09:27:53.558 6.24 0 0 195 405 30282 41
484 2026/10/09 09:27:54.558 7.68 0 0 195 405 30282 41
485 2026/10/09 09:27:55.559 6.92 0 0 195 405 30282 41
486 2026/10/09 09:27:56.559 5.24 0 0 195 405 30282 41
487 2026/10/09 09:27:57.559 5.52 0 0 195 405 1 41
488 2026/10/09 09:27:58.800 64.95 43 32 2865 13801 31044 43
489 2026/10/09 09:27:59.801 121.17 100 1 2917 13801 31044 44
490 2026/10/09 09:28:00.801 121.17 100 1 2917 13801 31044 44
491 2026/10/09 09:28:01.802 120.89 100 1 2902 13801 31044 44
492 2026/10/09 09:28:02.802 120.83 100 1 2902 13801 31044 44
493 2026/10/09 09:28:03.802 119.90 100 1 2902 13801 31044 44
494 2026/10/09 09:28:04.803 120.52 100 1 2902 13801 31044 44
495 2026/10/09 09:28:05.803 119.46 100 1 2902 13801 31044 45
496 2026/10/09 09:28:06.803 120.91 100 1 2902 13801 31044 45
497 2026/10/09 09:28:07.803 120.60 100 1 2902 13801 31044 45
498 2026/10/09 09:28:08.804 122.03 100 1 2902 13801 31044 45
499 2026/10/09 09:28:09.804 121.86 100 1 2902 13801 31044 45
500 2026/10/09 09:28:10.805 121.26 100 1 2902 13801 31044 45
501 2026/10/09 09:28:11.805 121.99 100 1 2902 13801 31044 45
502 2026/10/09 09:28:12.806 121.39 100 1 2902 13801 31044 45
503 2026/10/09 09:28:13.806 122.26 100 1 2902 13801 31044 45
504 2026/10/09 09:28:14.806 121.34 100 1 2902 13801 31044 45
505 2026/10/09 09:28:15.808 121.88 100 1 2902 13801 31044 45
506 2026/10/09 09:28:16.809 121.93 100 1 2902 13801 31044 45
507 2026/10/09 09:28:17.809 122.07 100 1 2902 13801 31044 45
508 2026/10/09 09:28:18.809 122.53 100 1 2902 13801 31044 46
509 2026/10/09 09:28:19.810 130.23 36 24 2902 13801 31044 45
510 2026/10/09 09:28:20.810 83.19 0 0 2902 13801 31044 45
511 2026/10/09 09:28:21.810 68.23 0 0 2542 13801 1 44
512 2026/10/09 09:28:22.879 80.00 0 0 2827 13801 584 45
513 2026/10/09 09:28:23.879 104.48 100 0 2902 13801 584 45
514 2026/10/09 09:28:24.879 104.78 100 0 2902 13801 584 45
515 2026/10/09 09:28:25.880 104.75 100 0 2902 13801 584 46
516 2026/10/09 09:28:26.880 104.21 100 0 2902 13801 584 46
517 2026/10/09 09:28:27.881 104.40 100 0 2902 13801 584 46
518 2026/10/09 09:28:28.881 104.59 100 0 2902 13801 584 46
519 2026/10/09 09:28:29.882 104.69 100 0 2902 13801 584 46
520 2026/10/09 09:28:30.882 104.33 100 0 2902 13801 584 46
521 2026/10/09 09:28:31.883 104.14 100 0 2902 13801 584 46
522 2026/10/09 09:28:32.884 104.19 100 0 2902 13801 584 46
523 2026/10/09 09:28:33.884 91.98 4 0 2902 13801 584 45
524 2026/10/09 09:28:34.885 85.61 0 0 2902 14001 584 45
525 2026/10/09 09:28:35.885 99.67 100 0 2902 13801 584 46
526 2026/10/09 09:28:36.885 102.37 100 0 2902 13801 584 46
527 2026/10/09 09:28:37.887 102.81 100 0 2902 13801 584 46
528 2026/10/09 09:28:38.887 103.20 100 0 2902 13801 584 46
529 2026/10/09 09:28:39.888 103.21 100 0 2902 13801 584 46
530 2026/10/09 09:28:40.888 102.88 100 0 2902 13801 584 46
531 2026/10/09 09:28:41.889 102.89 100 0 2902 13801 584 46
532 2026/10/09 09:28:42.889 104.16 100 0 2902 13801 584 46
533 2026/10/09 09:28:43.890 106.62 100 0 2902 13801 584 47
534 2026/10/09 09:28:44.890 106.60 100 0 2902 13801 584 47
535 2026/10/09 09:28:45.892 107.20 100 0 2902 13801 584 47
536 2026/10/09 09:28:46.892 92.81 0 0 2902 13801 584 46
537 2026/10/09 09:28:47.892 91.26 0 0 2902 14001 2572 46
538 2026/10/09 09:28:48.893 107.04 100 0 2902 13801 2572 47
539 2026/10/09 09:28:49.893 109.66 100 0 2902 13801 2572 47
540 2026/10/09 09:28:50.893 109.09 100 0 2902 13801 2572 47
541 2026/10/09 09:28:51.894 108.67 100 0 2902 13801 2572 47
542 2026/10/09 09:28:52.894 109.48 100 0 2902 13801 2572 47
543 2026/10/09 09:28:53.894 109.80 100 0 2902 13801 2572 47
544 2026/10/09 09:28:54.895 109.90 100 0 2902 13801 2572 47
545 2026/10/09 09:28:55.895 110.11 100 0 2902 13801 2572 46
546 2026/10/09 09:28:56.896 110.40 100 0 2902 13801 2572 46
547 2026/10/09 09:28:57.896 109.73 100 0 2902 13801 2572 46
548 2026/10/09 09:28:58.896 109.55 100 0 2902 13801 2572 46
549 2026/10/09 09:28:59.897 95.06 0 0 2902 13801 2572 46
550 2026/10/09 09:29:00.898 88.76 18 0 2902 13801 2572 45
551 2026/10/09 09:29:01.900 68.08 0 0 2542 13801 2 45
552 2026/10/09 09:29:02.911 81.77 0 0 2902 13801 2572 46
553 2026/10/09 09:29:03.911 107.27 100 0 2902 13801 2572 46
554 2026/10/09 09:29:04.912 107.22 100 0 2902 13801 2572 46
555 2026/10/09 09:29:05.912 106.81 100 0 2902 13801 2572 46
556 2026/10/09 09:29:06.912 107.10 100 0 2902 13801 2572 46
557 2026/10/09 09:29:07.913 107.13 100 0 2902 13801 2572 46
558 2026/10/09 09:29:08.914 108.14 100 0 2902 13801 2572 46
559 2026/10/09 09:29:09.915 108.64 100 0 2902 13801 2572 46
560 2026/10/09 09:29:10.915 108.98 100 0 2902 13801 2572 46
561 2026/10/09 09:29:11.915 108.21 100 0 2902 13801 2572 46
562 2026/10/09 09:29:12.916 107.35 100 0 2902 13801 2572 46
563 2026/10/09 09:29:13.916 106.43 100 0 2902 13801 2572 46
564 2026/10/09 09:29:14.917 94.45 0 0 2902 13801 2572 45
565 2026/10/09 09:29:15.917 87.83 0 0 2902 13801 2572 45
566 2026/10/09 09:29:16.918 65.56 0 0 2542 13801 2569 44
567 2026/10/09 09:29:17.918 73.71 5 3 2640 13801 8728 45
568 2026/10/09 09:29:18.918 112.17 100 0 2902 13801 8728 46
569 2026/10/09 09:29:19.919 112.32 100 0 2902 13801 8728 46
570 2026/10/09 09:29:20.919 111.49 100 0 2902 13801 8728 46
571 2026/10/09 09:29:21.919 111.10 100 0 2902 13801 8728 46
572 2026/10/09 09:29:22.920 111.44 100 0 2902 13801 8728 46
573 2026/10/09 09:29:23.920 112.03 100 0 2902 13801 8728 46
574 2026/10/09 09:29:24.920 112.57 100 0 2902 13801 8728 46
575 2026/10/09 09:29:25.921 112.01 100 0 2902 13801 8728 46
576 2026/10/09 09:29:26.921 111.47 100 0 2902 13801 8728 46
577 2026/10/09 09:29:27.921 115.98 100 0 2902 13801 8728 45
578 2026/10/09 09:29:28.921 86.35 0 0 2902 13801 8728 45
579 2026/10/09 09:29:29.923 79.40 0 0 2647 13801 8728 44
580 2026/10/09 09:29:30.923 62.52 0 0 2542 13801 8728 44
581 2026/10/09 09:29:31.924 62.79 0 0 2542 13801 8728 44
582 2026/10/09 09:29:32.924 63.29 0 0 2542 13801 8728 44
583 2026/10/09 09:29:33.925 64.38 0 0 2542 13801 8728 44
584 2026/10/09 09:29:34.925 85.54 46 1 2902 13801 8728 44
585 2026/10/09 09:29:35.925 86.07 0 0 2902 13801 8728 44
586 2026/10/09 09:29:36.926 70.69 0 0 2542 13801 2 44
587 2026/10/09 09:29:37.930 80.67 0 0 2835 13801 8728 45
588 2026/10/09 09:29:38.930 108.59 100 0 2902 13801 8728 45
589 2026/10/09 09:29:39.930 109.20 100 0 2902 13801 8728 45
590 2026/10/09 09:29:40.931 108.99 100 0 2902 13801 8728 45
591 2026/10/09 09:29:41.931 109.61 100 0 2902 13801 8728 45
592 2026/10/09 09:29:42.931 109.48 100 0 2902 13801 8728 45
593 2026/10/09 09:29:43.932 109.30 100 0 2902 13801 8728 45
594 2026/10/09 09:29:44.932 108.72 100 0 2902 13801 8728 45
595 2026/10/09 09:29:45.933 108.78 100 0 2902 13801 8728 45
596 2026/10/09 09:29:46.934 108.84 100 0 2902 13801 8728 45
597 2026/10/09 09:29:47.934 109.04 100 0 2902 13801 8728 45
598 2026/10/09 09:29:48.935 109.19 100 0 2902 13801 8728 45
599 2026/10/09 09:29:49.935 103.49 95 12 2902 13801 8728 44
600 2026/10/09 09:29:50.935 85.74 0 0 2902 13801 8728 44
601 2026/10/09 09:29:51.936 69.09 0 0 2542 13801 8728 43
602 2026/10/09 09:29:52.938 62.32 0 0 2542 13801 8728 43
603 2026/10/09 09:29:53.939 62.53 0 0 2542 13801 8728 43
604 2026/10/09 09:29:54.939 63.38 0 0 2542 13801 8728 43
605 2026/10/09 09:29:55.939 76.29 46 1 2902 13801 8728 44
606 2026/10/09 09:29:56.941 89.33 0 0 2902 13801 8728 44
607 2026/10/09 09:29:57.941 86.40 0 0 2902 13801 8728 44
608 2026/10/09 09:29:58.941 66.93 0 0 2542 13801 31088 43
609 2026/10/09 09:29:59.942 282.73 78 29 2857 13801 31088 55
610 2026/10/09 09:30:00.942 437.12 100 34 2857 13801 31088 52
611 2026/10/09 09:30:01.942 438.90 100 42 2850 13801 31088 54
612 2026/10/09 09:30:02.943 439.16 100 35 2850 13801 31088 57
613 2026/10/09 09:30:03.943 434.74 100 33 2850 13801 31088 53
614 2026/10/09 09:30:04.944 439.25 100 42 2857 13801 31088 55
615 2026/10/09 09:30:05.944 439.65 100 35 2850 13801 31088 58
616 2026/10/09 09:30:06.945 439.62 100 33 2850 13801 31088 55
617 2026/10/09 09:30:07.945 440.15 100 42 2850 13801 31088 56
618 2026/10/09 09:30:08.946 440.65 100 35 2857 13801 31088 59
619 2026/10/09 09:30:09.947 440.49 100 33 2850 13801 31088 55
620 2026/10/09 09:30:10.948 438.63 100 42 2850 13801 31088 57
621 2026/10/09 09:30:11.948 440.69 100 34 2842 13801 31088 59
622 2026/10/09 09:30:12.949 437.54 100 33 2857 13801 31088 56
623 2026/10/09 09:30:13.949 441.41 100 41 2850 13801 31088 57
624 2026/10/09 09:30:14.949 441.76 100 35 2850 13801 31088 60
625 2026/10/09 09:30:15.950 440.53 100 33 2842 13801 31088 56
626 2026/10/09 09:30:16.951 443.29 100 42 2857 13801 31088 58
627 2026/10/09 09:30:17.951 442.86 100 35 2850 13801 31088 61
628 2026/10/09 09:30:18.953 438.49 100 33 2850 13801 31088 57
629 2026/10/09 09:30:19.954 294.46 100 54 2902 13801 31088 50
630 2026/10/09 09:30:20.954 91.68 0 0 2902 13801 31088 49
631 2026/10/09 09:30:21.955 74.84 0 0 2542 13801 31088 48
632 2026/10/09 09:30:22.955 66.00 0 0 2542 13801 31088 48
633 2026/10/09 09:30:23.956 65.63 0 0 2542 13801 31088 48
634 2026/10/09 09:30:24.956 65.76 0 0 2542 13801 31088 48
635 2026/10/09 09:30:25.961 66.14 0 0 2542 13801 31088 47
636 2026/10/09 09:30:26.962 65.88 0 0 2542 13801 31088 47
637 2026/10/09 09:30:27.964 65.65 0 0 2542 13801 31088 47
638 2026/10/09 09:30:28.964 64.68 0 0 2542 13801 31088 47
639 2026/10/09 09:30:29.964 64.49 0 0 2542 13801 31088 47
640 2026/10/09 09:30:30.965 64.25 0 0 2542 13801 31088 47
641 2026/10/09 09:30:31.965 64.80 0 0 2542 13801 31088 47
642 2026/10/09 09:30:32.966 65.39 0 0 2542 13801 31088 47
643 2026/10/09 09:30:33.966 65.17 0 0 2542 13801 31088 46
644 2026/10/09 09:30:34.966 64.83 0 0 2542 13801 31088 46
645 2026/10/09 09:30:35.967 64.33 0 0 2542 13801 31088 46
646 2026/10/09 09:30:36.967 63.90 0 0 2542 13801 31088 46
647 2026/10/09 09:30:37.968 59.26 0 0 2205 810 31088 45
648 2026/10/09 09:30:38.968 29.40 0 0 412 810 31088 45
649 2026/10/09 09:30:39.968 19.55 0 0 255 405 31088 45
650 2026/10/09 09:30:40.969 17.92 0 0 195 405 31088 45
651 2026/10/09 09:30:41.969 14.79 0 0 195 405 31088 44
652 2026/10/09 09:30:42.970 12.58 0 0 195 405 31088 44
653 2026/10/09 09:30:43.970 13.92 0 0 195 13801 31088 45
654 2026/10/09 09:30:44.970 83.59 46 1 2902 13801 31088 46
655 2026/10/09 09:30:45.971 92.34 46 1 2902 13801 31088 46
656 2026/10/09 09:30:46.971 91.88 46 1 2902 13801 31088 46
657 2026/10/09 09:30:47.971 88.53 0 0 2902 13801 31088 46
658 2026/10/09 09:30:48.972 76.36 0 0 2542 13801 31088 45
659 2026/10/09 09:30:49.972 63.82 0 0 2542 13801 31088 45
660 2026/10/09 09:30:50.972 64.02 0 0 2542 13801 31088 45
661 2026/10/09 09:30:51.973 63.89 0 0 2542 13801 4 45
662 2026/10/09 09:30:52.974 136.62 0 0 2865 13801 31086 50
663 2026/10/09 09:30:53.975 280.06 100 17 2895 13801 31086 51
664 2026/10/09 09:30:54.975 280.93 100 17 2895 13801 31086 51
665 2026/10/09 09:30:55.976 281.56 100 17 2895 13801 31086 51
666 2026/10/09 09:30:56.976 281.60 100 17 2895 13801 31086 52
667 2026/10/09 09:30:57.976 281.03 100 17 2895 13801 31086 52
668 2026/10/09 09:30:58.977 281.69 100 17 2895 13801 31086 52
669 2026/10/09 09:30:59.977 281.86 100 17 2895 13801 31086 52
670 2026/10/09 09:31:00.977 282.22 100 17 2895 13801 31086 52
671 2026/10/09 09:31:01.978 282.35 100 17 2895 13801 31086 52
672 2026/10/09 09:31:02.978 282.92 100 17 2895 13801 31086 52
673 2026/10/09 09:31:03.979 283.50 100 17 2895 13801 31086 52
674 2026/10/09 09:31:04.979 283.65 100 17 2895 13801 31086 53
675 2026/10/09 09:31:05.979 283.10 100 17 2895 13801 31086 53
676 2026/10/09 09:31:06.980 282.61 100 17 2895 13801 31086 53
677 2026/10/09 09:31:07.980 282.42 100 17 2895 13801 31086 53
678 2026/10/09 09:31:08.981 282.69 100 17 2895 13801 31086 53
679 2026/10/09 09:31:09.982 283.02 100 17 2895 13801 31086 53
680 2026/10/09 09:31:10.982 283.45 100 17 2895 13801 31086 53
681 2026/10/09 09:31:11.983 283.18 100 17 2887 13801 31086 53
682 2026/10/09 09:31:12.983 249.55 100 17 2850 13801 31086 49
683 2026/10/09 09:31:13.983 91.15 0 0 2902 13801 31086 48
684 2026/10/09 09:31:14.983 78.46 0 0 2542 13801 31086 47
685 2026/10/09 09:31:15.984 63.98 0 0 2542 13801 31086 47
686 2026/10/09 09:31:16.984 64.04 0 0 2542 13801 31086 47
687 2026/10/09 09:31:17.984 63.96 0 0 2542 13801 31086 47
688 2026/10/09 09:31:18.985 64.00 0 0 2542 13801 31086 47
689 2026/10/09 09:31:19.985 64.55 0 0 2542 13801 31086 46
690 2026/10/09 09:31:20.985 64.01 0 0 2542 13801 31086 46
691 2026/10/09 09:31:21.986 63.37 0 0 2542 13801 31086 46
692 2026/10/09 09:31:22.997 63.87 0 0 2542 13801 31086 46
693 2026/10/09 09:31:23.997 63.95 0 0 2542 13801 31086 46
694 2026/10/09 09:31:24.997 64.34 0 0 2542 13801 31086 46
695 2026/10/09 09:31:25.998 64.84 0 0 2542 13801 31086 46
696 2026/10/09 09:31:26.998 65.71 0 0 2542 13801 31086 46
697 2026/10/09 09:31:27.998 65.46 0 0 2542 13801 31086 46
698 2026/10/09 09:31:28.998 64.32 0 0 2542 13801 31086 46
699 2026/10/09 09:31:29.999 58.37 0 0 2212 810 31086 45
700 2026/10/09 09:31:30.999 31.87 0 0 427 810 31086 45
701 2026/10/09 09:31:32.000 20.65 0 0 255 405 31086 44
702 2026/10/09 09:31:33.000 12.89 0 0 195 405 31086 44
703 2026/10/09 09:31:34.000 11.45 0 0 195 405 31086 44
704 2026/10/09 09:31:35.001 11.88 0 0 195 405 31086 44
705 2026/10/09 09:31:36.001 12.13 0 0 195 405 31086 44
706 2026/10/09 09:31:37.001 68.13 47 1 2902 13801 31086 46
707 2026/10/09 09:31:38.001 92.35 46 1 2902 13801 31086 46
708 2026/10/09 09:31:39.003 91.90 46 1 2902 13801 31086 46
709 2026/10/09 09:31:40.003 89.02 0 0 2902 13801 31086 46
710 2026/10/09 09:31:41.003 85.81 0 0 2902 13801 31086 45
711 2026/10/09 09:31:42.004 63.83 0 0 2542 13801 31086 45
712 2026/10/09 09:31:43.005 64.17 0 0 2542 13801 31086 45
713 2026/10/09 09:31:44.005 63.16 0 0 2542 13801 31086 45
714 2026/10/09 09:31:45.006 73.41 0 0 2550 13801 31078 46
715 2026/10/09 09:31:46.006 150.52 100 4 2902 13801 31078 47
716 2026/10/09 09:31:47.007 151.11 100 4 2902 13801 31078 47
717 2026/10/09 09:31:48.007 151.67 100 4 2902 13801 31078 47
718 2026/10/09 09:31:49.007 152.14 100 4 2902 13801 31078 47
719 2026/10/09 09:31:50.008 152.76 100 4 2902 13801 31078 47
720 2026/10/09 09:31:51.009 153.29 100 4 2902 13801 31078 47
721 2026/10/09 09:31:52.009 152.19 100 4 2902 13801 31078 47
722 2026/10/09 09:31:53.011 150.78 100 4 2902 13801 31078 47
723 2026/10/09 09:31:54.011 151.14 100 4 2902 13801 31078 47
724 2026/10/09 09:31:55.011 151.63 100 4 2902 13801 31078 47
725 2026/10/09 09:31:56.012 151.49 100 4 2902 13801 31078 48
726 2026/10/09 09:31:57.012 151.60 100 4 2902 13801 31078 47
727 2026/10/09 09:31:58.012 151.94 100 4 2902 13801 31078 47
728 2026/10/09 09:31:59.013 152.10 100 4 2902 13801 31078 48
729 2026/10/09 09:32:00.013 152.14 100 4 2902 13801 31078 47
730 2026/10/09 09:32:01.014 151.90 100 4 2902 13801 31078 48
731 2026/10/09 09:32:02.014 151.59 100 4 2902 13801 31078 48
732 2026/10/09 09:32:03.015 152.02 100 4 2902 13801 31078 48
733 2026/10/09 09:32:04.016 152.50 100 4 2902 13801 31078 48
734 2026/10/09 09:32:05.016 152.26 100 4 2902 13801 31078 48
735 2026/10/09 09:32:06.017 126.92 8 0 2902 13801 31078 46
736 2026/10/09 09:32:07.017 86.76 0 0 2902 13801 31078 46
737 2026/10/09 09:32:08.018 67.73 0 0 2542 13801 31078 45
738 2026/10/09 09:32:09.019 62.97 0 0 2542 13801 31078 45
739 2026/10/09 09:32:10.019 62.94 0 0 2542 13801 31078 45
740 2026/10/09 09:32:11.019 63.60 0 0 2542 13801 31078 45
741 2026/10/09 09:32:12.020 64.42 0 0 2542 13801 31078 45
742 2026/10/09 09:32:13.020 64.88 0 0 2542 13801 31078 44
743 2026/10/09 09:32:14.021 64.02 0 0 2542 13801 31078 44
744 2026/10/09 09:32:15.022 63.05 0 0 2542 13801 31078 44
745 2026/10/09 09:32:16.022 62.57 0 0 2542 13801 31078 44
746 2026/10/09 09:32:17.022 63.00 0 0 2542 13801 31078 44
747 2026/10/09 09:32:18.027 63.54 0 0 2542 13801 31078 44
748 2026/10/09 09:32:19.029 63.67 0 0 2542 13801 31078 44
749 2026/10/09 09:32:20.030 63.47 0 0 2542 13801 31078 44
750 2026/10/09 09:32:21.030 63.64 0 0 2542 13801 31078 44
751 2026/10/09 09:32:22.031 63.33 0 0 2542 13801 31078 44
752 2026/10/09 09:32:23.032 58.01 0 0 2212 810 31078 43
753 2026/10/09 09:32:24.033 27.62 0 0 427 810 31078 43
754 2026/10/09 09:32:25.033 20.32 0 0 255 405 31078 43
755 2026/10/09 09:32:26.034 13.54 0 0 195 405 31078 42
756 2026/10/09 09:32:27.035 13.25 0 0 195 405 31078 42
757 2026/10/09 09:32:28.036 18.28 0 0 780 13801 31078 43
758 2026/10/09 09:32:29.037 66.39 14 0 2542 13801 31078 44
759 2026/10/09 09:32:30.037 89.76 46 1 2902 13801 31078 44
760 2026/10/09 09:32:31.039 90.27 46 1 2902 13801 31078 44
761 2026/10/09 09:32:32.039 88.51 49 1 2902 13801 31078 44
762 2026/10/09 09:32:33.039 86.09 0 0 2902 13801 31078 44
763 2026/10/09 09:32:34.040 71.17 0 0 2542 13801 31078 43
764 2026/10/09 09:32:35.040 62.98 0 0 2542 13801 31078 43
765 2026/10/09 09:32:36.041 63.26 0 0 2542 13801 31078 43
766 2026/10/09 09:32:37.041 62.69 0 0 2542 13801 1 43
767 2026/10/09 09:32:38.041 66.16 4 2 2542 14001 1 43
768 2026/10/09 09:32:39.043 61.73 0 0 2542 14001 1 43
769 2026/10/09 09:32:40.044 41.91 0 0 982 7001 1 42
770 2026/10/09 09:32:41.044 29.15 0 0 607 7001 1 42
771 2026/10/09 09:32:42.044 26.95 0 0 405 810 1 42
772 2026/10/09 09:32:43.046 25.65 0 0 255 810 1 42
773 2026/10/09 09:32:44.047 16.14 0 0 195 405 1 41
774 2026/10/09 09:32:45.048 11.85 0 0 195 405 1 41
775 2026/10/09 09:32:46.049 10.58 0 0 195 405 1 41
776 2026/10/09 09:32:47.050 8.51 0 0 195 405 1 41
777 2026/10/09 09:32:48.051 6.24 0 0 195 405 1 41
778 2026/10/09 09:32:49.052 6.01 0 0 195 405 1 41
779 2026/10/09 09:32:50.054 7.89 0 0 195 405 1 41
780 2026/10/09 09:32:51.055 7.17 0 0 195 405 1 41
781 2026/10/09 09:32:52.057 6.78 0 0 195 405 1 41
782 2026/10/09 09:32:53.057 6.43 0 0 195 405 1 41

View file

@ -0,0 +1,17 @@
row rc=0 --n 20 --kernel 1 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n20-k1
row rc=0 --n 20 --kernel 2 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n20-k2
row rc=0 --n 22 --kernel 1 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n22-k1
row rc=0 --n 22 --kernel 2 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n22-k2
row rc=0 --n 24 --kernel 1 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n24-k1
row rc=0 --n 24 --kernel 2 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n24-k2
row rc=0 --n 20 --kernel 1 --layout aos --min-label-s 20 --check 2 --k 64 --tag abl-n20-k1-aos
row rc=0 --n 20 --B 1 --kernel 2 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B1-k2
row rc=0 --n 20 --B 1 --kernel 1 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B1-k1
row rc=0 --n 20 --B 32 --kernel 2 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B32-k2
row rc=0 --n 20 --B 32 --kernel 1 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B32-k1
row rc=0 --n 20 --B 128 --kernel 2 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B128-k2
row rc=0 --n 20 --B 128 --kernel 1 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B128-k1
row rc=0 --n 14 --kernel 1 --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n14-k1
row rc=0 --n 16 --kernel 1 --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n16-k1
row rc=0 --n 18 --kernel 1 --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n18-k1
DONE 2026-10-09T09:32:53Z

View file

@ -0,0 +1,16 @@
{"tag":"main-n20-k1","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":476,"Bmax":476,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":9,"graph_s":0.0331,"state_alloc_s":0.0044,"label_s_per_pass":2.374543,"labels_per_s":210197127.8,"labels_per_s_per_inst":441590.6,"ns_per_label_per_inst":2264.54,"merkle_s":0.049581,"prove_s":0.050169,"verify_all_s":0.0585,"accepted":476,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":29.70,"oracle":"IDENTICAL","label_window_unix_ms":[1791537621586,1791537642960],"free_gib":30.86,"per_inst_MiB":64.1}
{"tag":"main-n20-k2","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":476,"Bmax":476,"layout":"soa","kernel":"k2","k":64,"wrong_edge":0,"passes":14,"graph_s":0.0319,"state_alloc_s":0.0041,"label_s_per_pass":1.450105,"labels_per_s":344197277.0,"labels_per_s_per_inst":723103.5,"ns_per_label_per_inst":1382.93,"merkle_s":0.049909,"prove_s":0.048875,"verify_all_s":0.0624,"accepted":476,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":29.78,"oracle":"IDENTICAL","label_window_unix_ms":[1791537673260,1791537693559],"free_gib":30.86,"per_inst_MiB":64.1}
{"tag":"main-n22-k1","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":22,"N":4194304,"inst_MiB":128.0,"B":119,"Bmax":119,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":3,"graph_s":0.1037,"state_alloc_s":0.0059,"label_s_per_pass":9.526424,"labels_per_s":52393443.7,"labels_per_s_per_inst":440281.0,"ns_per_label_per_inst":2271.28,"merkle_s":0.049892,"prove_s":0.018214,"verify_all_s":0.0234,"accepted":119,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":39.44,"oracle":"IDENTICAL","label_window_unix_ms":[1791537724049,1791537752589],"free_gib":30.86,"per_inst_MiB":256.1}
{"tag":"main-n22-k2","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":22,"N":4194304,"inst_MiB":128.0,"B":119,"Bmax":119,"layout":"soa","kernel":"k2","k":64,"wrong_edge":0,"passes":4,"graph_s":0.0886,"state_alloc_s":0.0063,"label_s_per_pass":5.810858,"labels_per_s":85894750.4,"labels_per_s_per_inst":721804.6,"ns_per_label_per_inst":1385.42,"merkle_s":0.049737,"prove_s":0.019536,"verify_all_s":0.0188,"accepted":119,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":42.65,"oracle":"IDENTICAL","label_window_unix_ms":[1791537792668,1791537815914],"free_gib":30.86,"per_inst_MiB":256.1}
{"tag":"main-n24-k1","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":24,"N":16777216,"inst_MiB":512.0,"B":29,"Bmax":29,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":1,"graph_s":0.3139,"state_alloc_s":0.0105,"label_s_per_pass":37.719477,"labels_per_s":12898887.0,"labels_per_s_per_inst":444789.2,"ns_per_label_per_inst":2248.26,"merkle_s":0.048540,"prove_s":0.007375,"verify_all_s":0.0066,"accepted":29,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":78.12,"oracle":"IDENTICAL","label_window_unix_ms":[1791537859489,1791537897210],"free_gib":30.86,"per_inst_MiB":1024.1}
{"tag":"main-n24-k2","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":24,"N":16777216,"inst_MiB":512.0,"B":29,"Bmax":29,"layout":"soa","kernel":"k2","k":64,"wrong_edge":0,"passes":1,"graph_s":0.3160,"state_alloc_s":0.0105,"label_s_per_pass":22.628076,"labels_per_s":21501574.4,"labels_per_s_per_inst":741433.6,"ns_per_label_per_inst":1348.74,"merkle_s":0.048381,"prove_s":0.007364,"verify_all_s":0.0072,"accepted":29,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":78.12,"oracle":"IDENTICAL","label_window_unix_ms":[1791537976560,1791537999189],"free_gib":30.86,"per_inst_MiB":1024.1}
{"tag":"abl-n20-k1-aos","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":476,"Bmax":476,"layout":"aos","kernel":"k1","k":64,"wrong_edge":0,"passes":9,"graph_s":0.0306,"state_alloc_s":0.0041,"label_s_per_pass":2.294495,"labels_per_s":217530252.8,"labels_per_s_per_inst":456996.3,"ns_per_label_per_inst":2188.20,"merkle_s":0.065382,"prove_s":0.060450,"verify_all_s":0.0643,"accepted":476,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":2.66,"oracle":"IDENTICAL","label_window_unix_ms":[1791538078235,1791538098877],"free_gib":30.86,"per_inst_MiB":64.1}
{"tag":"ladder-n20-B1-k2","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":1,"Bmax":476,"layout":"soa","kernel":"k2","k":64,"wrong_edge":0,"passes":8,"graph_s":0.0334,"state_alloc_s":0.0089,"label_s_per_pass":1.335745,"labels_per_s":785012.1,"labels_per_s_per_inst":785012.1,"ns_per_label_per_inst":1273.87,"merkle_s":0.000410,"prove_s":0.000791,"verify_all_s":0.0042,"accepted":1,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":1.36,"oracle":"IDENTICAL","label_window_unix_ms":[1791538102201,1791538112888],"free_gib":30.86,"per_inst_MiB":64.1}
{"tag":"ladder-n20-B1-k1","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":1,"Bmax":476,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":5,"graph_s":0.0338,"state_alloc_s":0.0020,"label_s_per_pass":2.217935,"labels_per_s":472771.3,"labels_per_s_per_inst":472771.3,"ns_per_label_per_inst":2115.19,"merkle_s":0.000462,"prove_s":0.000850,"verify_all_s":0.0033,"accepted":1,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":1.36,"oracle":"IDENTICAL","label_window_unix_ms":[1791538114646,1791538125737],"free_gib":30.86,"per_inst_MiB":64.1}
{"tag":"ladder-n20-B32-k2","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":32,"Bmax":476,"layout":"soa","kernel":"k2","k":64,"wrong_edge":0,"passes":8,"graph_s":0.0325,"state_alloc_s":0.0018,"label_s_per_pass":1.384905,"labels_per_s":24228694.2,"labels_per_s_per_inst":757146.7,"ns_per_label_per_inst":1320.75,"merkle_s":0.003666,"prove_s":0.006195,"verify_all_s":0.0075,"accepted":32,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":2.99,"oracle":"IDENTICAL","label_window_unix_ms":[1791538127648,1791538138727],"free_gib":30.86,"per_inst_MiB":64.1}
{"tag":"ladder-n20-B32-k1","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":32,"Bmax":476,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":5,"graph_s":0.0323,"state_alloc_s":0.0081,"label_s_per_pass":2.321576,"labels_per_s":14453301.7,"labels_per_s_per_inst":451665.7,"ns_per_label_per_inst":2214.03,"merkle_s":0.003674,"prove_s":0.007400,"verify_all_s":0.0082,"accepted":32,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":3.10,"oracle":"IDENTICAL","label_window_unix_ms":[1791538142134,1791538153741],"free_gib":30.86,"per_inst_MiB":64.1}
{"tag":"ladder-n20-B128-k2","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":128,"Bmax":476,"layout":"soa","kernel":"k2","k":64,"wrong_edge":0,"passes":7,"graph_s":0.0327,"state_alloc_s":0.0040,"label_s_per_pass":1.444609,"labels_per_s":92909371.3,"labels_per_s_per_inst":725854.5,"ns_per_label_per_inst":1377.69,"merkle_s":0.013555,"prove_s":0.018398,"verify_all_s":0.0256,"accepted":128,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":9.23,"oracle":"IDENTICAL","label_window_unix_ms":[1791538157341,1791538167454],"free_gib":30.86,"per_inst_MiB":64.1}
{"tag":"ladder-n20-B128-k1","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":20,"N":1048576,"inst_MiB":32.0,"B":128,"Bmax":476,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":5,"graph_s":0.0332,"state_alloc_s":0.0098,"label_s_per_pass":2.360619,"labels_per_s":56857012.6,"labels_per_s_per_inst":444195.4,"ns_per_label_per_inst":2251.26,"merkle_s":0.013533,"prove_s":0.017153,"verify_all_s":0.0224,"accepted":128,"checked":1,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":9.39,"oracle":"IDENTICAL","label_window_unix_ms":[1791538177197,1791538189001],"free_gib":30.86,"per_inst_MiB":64.1}
{"tag":"diag-n14-k1","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":14,"N":16384,"inst_MiB":0.5,"B":28102,"Bmax":28102,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":294,"graph_s":0.0046,"state_alloc_s":0.0136,"label_s_per_pass":0.068155,"labels_per_s":6755570135.5,"labels_per_s_per_inst":240394.6,"ns_per_label_per_inst":4159.83,"merkle_s":0.047129,"prove_s":1.925969,"verify_all_s":1.7964,"accepted":28102,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":28.27,"oracle":"IDENTICAL","label_window_unix_ms":[1791538198942,1791538218984],"free_gib":30.86,"per_inst_MiB":1.1}
{"tag":"diag-n16-k1","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":16,"N":65536,"inst_MiB":2.0,"B":7457,"Bmax":7457,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":134,"graph_s":0.0052,"state_alloc_s":0.0229,"label_s_per_pass":0.149479,"labels_per_s":3269377676.3,"labels_per_s_per_inst":438430.7,"ns_per_label_per_inst":2280.86,"merkle_s":0.049755,"prove_s":0.648247,"verify_all_s":0.5440,"accepted":7457,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":30.35,"oracle":"IDENTICAL","label_window_unix_ms":[1791538252174,1791538272208],"free_gib":30.86,"per_inst_MiB":4.1}
{"tag":"diag-n18-k1","gpu":"NVIDIA GeForce RTX 5090","sm":"12.0","sms":170,"encoding":"B3P1","n":18,"N":262144,"inst_MiB":8.0,"B":1897,"Bmax":1897,"layout":"soa","kernel":"k1","k":64,"wrong_edge":0,"passes":34,"graph_s":0.0124,"state_alloc_s":0.0042,"label_s_per_pass":0.596598,"labels_per_s":833537717.2,"labels_per_s_per_inst":439397.8,"ns_per_label_per_inst":2275.84,"merkle_s":0.050154,"prove_s":0.174954,"verify_all_s":0.1720,"accepted":1897,"checked":2,"lab_bad_inst":0,"tree_bad_inst":0,"root_bad":0,"proof_bad":0,"check_s":31.57,"oracle":"IDENTICAL","label_window_unix_ms":[1791538304460,1791538324746],"free_gib":30.86,"per_inst_MiB":16.1}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,53 @@
# Candidate 2: fresh-state class v6 labels under the MTP commitment (research, withdrawn)
Track B, the B3 lane, 9 October 2026. Labelled research, BOUND-side (an argument about what any prover may skip, not a chip estimate), NOT RUN until the panel reads it. Nothing activates. Main withdrew the candidate at 10:5x UK after X7's verdict (no read-dominated design reaches 1.5x at any f); this page records why it fails as specified, with the fixtures and the measured rows that show it.
## The candidate as specified (the coordinator's order, 10:4x UK)
The MTP framework of [BS25] (eprint 2025/1456, full PDF sha256 13c3646e...) in the B1 lane's encoding, with two changes: the label function and the instance shape.
- Per trial, a fresh dataset keyed by chi (chi binds the trial id): the frozen class v6 dataset geometry, 2^28 words = 1 GiB, built by an expansion "the verifier can recompute at the opened positions".
- The label chain: `l_0 = H('L' | chi | 0)`, `h_v` = the frozen class v6 warp (32 lanes, generator 6, ProgramClass::V6, the 55,296-instruction shadow) at nonce `u32le(l_{v-1})` over that dataset, `l_v = H('L' | chi | v | l_{v-1} | h_v)`.
- B1's Merkle commitment, challenge rule `c_i = H('C' | chi | i | tau) mod N` and the verifier's steps unchanged; container `C2MTPV61`.
## The finding: two holes (physical reasons)
| hole | what | why | measured |
|---|---|---|---|
| H1, recomputation | a dataset the verifier can recompute at any position cheaply can be recomputed by every prover at the same cost, so storing it, and the memory traffic the candidate exists to impose, is optional | the frozen closed-form dataset word is six ALU operations; a random 64-byte DRAM fetch costs on the order of nanojoules while recomputing an item costs on the order of tens of picojoules on a specialist (approximate, from memory; neither a WITNESS nor a BOUND); the frozen memory-hard dataset (a 256 MiB cache from chi, 8 dependent cache reads per item) removes the cheap recomputation only by making the verifier build the same 256 MiB cache per proof | closed form at the 1 GiB geometry: the prover's peak RSS is 65 MB (nothing stored); memory-hard: the prover holds the 256 MiB cache only (items derived on demand) and the VERIFIER holds the same 256 MiB and spends 0.94 s per proof at k = 64, so verification is not memory-easy |
| H2, the chain is a path | each label's only graph parent is `l_{v-1}`, so the DAG is a path, which is not depth-robust | [BS25]'s bound is `cmc >= lambda/4 * min over |S| <= e of cc(G - S)`; for a path `cc(G - S)` is O(N), so the theorem gives no memory cost from the labels; all of it would have to come from the dataset, which H1 makes optional | n/a (a property of the graph) |
The GPU side confirms the dataset change is neutral on the card (g = 1 for the dataset): the kit's own worker, the same frozen program (signing id 2a1d6caab4c24564) on the chi-keyed pack against the day pack, a same-session pair on the rented RTX 4090 (stock clocks, board power, idle not subtracted), 100 batches of 2^24: 31.296 and 31.298 MH/s on the day pack, 31.289 and 31.301 MH/s on the chi pack (233.5 to 237.7 W mean board power); the card builds the per-trial 256 MiB cache and 1 GiB dataset in about 34 ms (cache 2 ms, dataset 31 to 33 ms, the worker's own log). This is the only GPU row taken; main's redirect asked for none further.
## Fixtures and rows (the 4090 pod's CPU, one thread, the frozen igneum-pow)
Software: tools/mhpow/c2/ref (Rust, depends on igneum-pow by path), built against the frozen tree 1a938abe4, whose fingerprint was read back on the pod as 5f4d6dc6199294db89042171004e6420c1e5791e716d4b39b73d375818c10b6f (the control's). Program: generator 6 from the fixed public seeds `H('igneum/mhpow/c2/epoch-seed/v1')` and `H('igneum/mhpow/c2/era-seed/v1')` for the CPU rows; the GPU pair used the control's own seeds so the program is the frozen object byte for byte. KAT chi = `H('C2-fixture' | mode | u64 n | u64 log2)`. Raw lines: rows/kat.jsonl, rows/rows.jsonl, rows/neg.jsonl, rows/gpu-4090/.
| row | mode | n (labels) | dataset | k | tau (first 16 hex) | proof bytes | verify | per label (s) | items per label | prover peak RSS | verifier (s) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| KAT | closed form | 4 (16) | 4 MiB | 16 | c19333666825a359 | 5,181 | accept | 0.00195 | 0 | 65.6 MB | 0.030 |
| KAT | closed form | 4 (16) | 1 GiB | 16 | 6d5092a06c6146bd | 4,861 | accept | 0.00140 | 0 | 66.6 MB | 0.022 |
| KAT | memory-hard | 4 (16) | 4 MiB | 16 | 9369ed9e82004032 | 5,021 | accept | 0.0142 | 8,190 | 264 MB | 0.235 |
| KAT | memory-hard | 4 (16) | 1 GiB | 16 | 347992c5a4e800ec | 5,181 | accept | 0.0148 | 8,192 | 260 MB | 0.228 |
| honest | closed form | 8 (256) | 1 GiB | 64 | cac4bd846763aa45 | 36,973 | accept | 0.00171 | 0 | 65.0 MB | 0.112 |
| honest | memory-hard | 8 (256) | 1 GiB | 64 | b99506c4f11d5412 | 36,973 | accept | 0.0150 | 8,192 | 262 MB | 0.943 |
Per label: 32 class v6 hashes (64 base instructions x 8 iterations plus the 55,296-instruction shadow each, about 1.79 M ALU instructions) and 8,192 dataset reads of 4 bytes (the program's widths are 4-byte words: 256 loads per hash, 1,024 bytes per hash), plus one BLAKE2b. Per trial in the memory-hard mode: a 0.46 s cache fill on one CPU thread (34 ms on the 4090). Full digests (labels sha256, proof sha256, chi) are in the raw lines.
Known-failed cases (`c2ref neg`), both modes at the 1 GiB geometry, each refused by the named check: a flipped challenged label (check_2b_merkle_openings), a flipped sibling (check_2b_merkle_openings), a truncated proof (check_0_container), labels computed over a wrong dataset key and committed honestly (check_3_local_consistency), half the labels red and committed honestly (check_3_local_consistency). Result PASS in both modes.
## Open rows
| row | what | status |
|---|---|---|
| C2-1 | the read-hit fractions for the adversary lane's sweep | not measured: the candidate was withdrawn before the read trace was instrumented (the frozen interpreter has no trace hook) |
| C2-2 | the chi-keyed GPU pair on the RTX 5090 | not run: the 5090's ssh proxy refused at the launch and main's redirect asked for no further C2 GPU row |
| C2-3 | any repair of H1 and H2 | not attempted; a repair needs a dataset whose items cost a prover more to recompute than to fetch while staying cheap to verify, and a depth-robust label graph, which is the B1/B4 construction itself and inherits the B3 per-instance chain trap (docs/analysis/mhpow/b3/README.md) |
## Commands
```
tools/mhpow/c2/run_c2.sh <root> # on a pod or box: checks the frozen fingerprint, builds tools/mhpow/c2/ref, writes kat, neg and rows
tools/mhpow/c2/c2_gpu_row.sh <out> <worker> <control pack> <chi pack> [batches] # the same-session GPU pair
mhpow-c2-ref statefile 4 mh 28 chi.igsd; igneum-pow export --program-class v6 --epoch-hex af89be5d... --era-hex edc4fa84... --day-hex <chi> --state chi.igsd --out packs/c2-chi
```

View file

@ -0,0 +1,21 @@
5fe2c7d722906797b5f9fc728957ec25281e85fa976e870293992fb0baf53793 packs/c2-chi/identity.json
3c3f0be767dcd9edcb90e6cb033673d55ae92c2bef4d9477b4b303e1e4ef9e3c packs/c2-chi/program.json
fa237ce6ed2542faffc3e662320b802f7dfd99053291cd4d44fb03f863df05c9 packs/c2-chi/leaves.bin
a920879a35040cd3c499a5937e11e34b59422114c82888360b2aac66b8ea000e packs/c2-chi/vectors.json
b26ea91d1a1990fe25980e6be74cff721c2b62daee3e900ebb699b485d984fba chi.igsd
{
"program_id": "0x2a1d6caab4c24564",
"load_class": "mx8-erad810f22d+sh256x27+state+reg64c+fold+rw",
"generator": 6,
"day": "bytes:9d124edce3e8e6d78bf47adbcadc4ba1e1f26624009da8ad1c168019bd82fc3c",
"dataset_bytes": 1073741824,
"kernel_blake2b256": {
"kernel.cu": "0ab1c5705ad53a2f4eef3a06f234ec1e3e27313516013473438997506b9340ff",
"kernel.cl": "03c4223e43d527dabf864972116274c122265fb5fd75e2dd1a314fefca34a8d1",
"program.metal": "594400ba33aed932b2de273d6ddbbf4bd5db1dc4d830a2e1e6c2c1ce3243bc24",
"program_bound.metal": "6ea3d9c11ce89827d040da2764e69ba220ecb78be6414dffa4b10a2ba8c1a82d",
"kernel_bound.cu": "2bb553f680c811d4095d8d98babc8f911aa8125583eb068ef89bf7d25d76f14a",
"kernel_bound.cl": "038099517bc391d1645751c2c7857e9ce161b58549dad78741f2e6cddccb098e"
},
"rule": "the external review's A06 (8 October 2026): a pack's program, dataset and work identities are distinct, and its kernel texts are authenticated by the hash of their bytes, never by the metadata beside them"
}

View file

@ -0,0 +1,4 @@
info igneum-worker-cuda 1.0 (4 October 2026): device 0 NVIDIA_GeForce_RTX_4090 (sm_89, 128 SMs), driver 12.8 from libcuda.so.1, NVRTC 12.8 from libnvrtc.so.12, target sm_89 (the device's architecture, listed by NVRTC)
pack /root/c2/packs/hl-v6-all-cs on NVIDIA_GeForce_RTX_4090: nvrtc 2391 cache 2 dataset 33 hot 0 check 576 race 0 ms variant base class v6 (state leaves 93, uploaded for the build and freed); self-test PASS (cache head, last line and FNV-1a 64 448274a57f508cbc; dataset head, word [268435455] and 64 samples; 96 of 96 vector lanes)
warm-up dispatch (base 0): 535.96 ms; 100 timed dispatches of 16777216 nonces: mean 536.08 ms
RESULT pack=/root/c2/packs/hl-v6-all-cs class=mx8-erad810f22d+sh256x27+state+reg64c+fold+rw device=NVIDIA_GeForce_RTX_4090 arch=sm_89 regs=88 blocks_per_sm=20 warps=0 resident=2560 arena_mib=0 hot_mib=0 hot_slots=0 hot_fill_ms=0.00 nonces=16777216 batches=100 check=PASS fingerprint=01f51b9d4805e5e6 mhs=31.296 loads=256 bytes=1024 scratch_ops=0 time=wall

View file

@ -0,0 +1,4 @@
info igneum-worker-cuda 1.0 (4 October 2026): device 0 NVIDIA_GeForce_RTX_4090 (sm_89, 128 SMs), driver 12.8 from libcuda.so.1, NVRTC 12.8 from libnvrtc.so.12, target sm_89 (the device's architecture, listed by NVRTC)
pack /root/c2/packs/c2-chi on NVIDIA_GeForce_RTX_4090: nvrtc 2410 cache 2 dataset 32 hot 0 check 555 race 0 ms variant base class v6 (state leaves 1, uploaded for the build and freed); self-test PASS (cache head, last line and FNV-1a 64 861e888556e6fea5; dataset head, word [268435455] and 64 samples; 96 of 96 vector lanes)
warm-up dispatch (base 0): 535.96 ms; 100 timed dispatches of 16777216 nonces: mean 536.20 ms
RESULT pack=/root/c2/packs/c2-chi class=mx8-erad810f22d+sh256x27+state+reg64c+fold+rw device=NVIDIA_GeForce_RTX_4090 arch=sm_89 regs=88 blocks_per_sm=20 warps=0 resident=2560 arena_mib=0 hot_mib=0 hot_slots=0 hot_fill_ms=0.00 nonces=16777216 batches=100 check=PASS fingerprint=6f8a98dfbc719901 mhs=31.289 loads=256 bytes=1024 scratch_ops=0 time=wall

View file

@ -0,0 +1,4 @@
info igneum-worker-cuda 1.0 (4 October 2026): device 0 NVIDIA_GeForce_RTX_4090 (sm_89, 128 SMs), driver 12.8 from libcuda.so.1, NVRTC 12.8 from libnvrtc.so.12, target sm_89 (the device's architecture, listed by NVRTC)
pack /root/c2/packs/hl-v6-all-cs on NVIDIA_GeForce_RTX_4090: nvrtc 2434 cache 2 dataset 31 hot 0 check 571 race 0 ms variant base class v6 (state leaves 93, uploaded for the build and freed); self-test PASS (cache head, last line and FNV-1a 64 448274a57f508cbc; dataset head, word [268435455] and 64 samples; 96 of 96 vector lanes)
warm-up dispatch (base 0): 535.95 ms; 100 timed dispatches of 16777216 nonces: mean 536.05 ms
RESULT pack=/root/c2/packs/hl-v6-all-cs class=mx8-erad810f22d+sh256x27+state+reg64c+fold+rw device=NVIDIA_GeForce_RTX_4090 arch=sm_89 regs=88 blocks_per_sm=20 warps=0 resident=2560 arena_mib=0 hot_mib=0 hot_slots=0 hot_fill_ms=0.00 nonces=16777216 batches=100 check=PASS fingerprint=01f51b9d4805e5e6 mhs=31.298 loads=256 bytes=1024 scratch_ops=0 time=wall

View file

@ -0,0 +1,4 @@
info igneum-worker-cuda 1.0 (4 October 2026): device 0 NVIDIA_GeForce_RTX_4090 (sm_89, 128 SMs), driver 12.8 from libcuda.so.1, NVRTC 12.8 from libnvrtc.so.12, target sm_89 (the device's architecture, listed by NVRTC)
pack /root/c2/packs/c2-chi on NVIDIA_GeForce_RTX_4090: nvrtc 2397 cache 2 dataset 32 hot 0 check 578 race 0 ms variant base class v6 (state leaves 1, uploaded for the build and freed); self-test PASS (cache head, last line and FNV-1a 64 861e888556e6fea5; dataset head, word [268435455] and 64 samples; 96 of 96 vector lanes)
warm-up dispatch (base 0): 535.95 ms; 100 timed dispatches of 16777216 nonces: mean 536.00 ms
RESULT pack=/root/c2/packs/c2-chi class=mx8-erad810f22d+sh256x27+state+reg64c+fold+rw device=NVIDIA_GeForce_RTX_4090 arch=sm_89 regs=88 blocks_per_sm=20 warps=0 resident=2560 arena_mib=0 hot_mib=0 hot_slots=0 hot_fill_ms=0.00 nonces=16777216 batches=100 check=PASS fingerprint=6f8a98dfbc719901 mhs=31.301 loads=256 bytes=1024 scratch_ops=0 time=wall

View file

@ -0,0 +1,22 @@
RESULT start 2026-10-09T09:55:28Z NVIDIA GeForce RTX 4090, 570.153.02 worker=f5f3846c998dff53
RESULT run=1 pack=hl-v6-all-cs rc=0 wall_s=57.83 RESULT pack=/root/c2/packs/hl-v6-all-cs class=mx8-erad810f22d+sh256x27+state+reg64c+fold+rw device=NVIDIA_GeForce_RTX_4090 arch=sm_89 regs=88 blocks_per_sm=20 warps=0 resident=2560 arena_mib=0 hot_mib=0 hot_slots=0 hot_fill_ms=0.00 nonces=16777216 batches=100 check=PASS fingerprint=01f51b9d4805e5e6 mhs=31.296 loads=256 bytes=1024 scratch_ops=0 time=wall
1 hl-v6-all-cs | info igneum-worker-cuda 1.0 (4 October 2026): device 0 NVIDIA_GeForce_RTX_4090 (sm_89, 128 SMs), driver 12.8 from libcuda.so.1, NVRTC 12.8 from libnvrtc.so.12, target sm_89 (the device's architecture, listed by NVRTC)
1 hl-v6-all-cs | pack /root/c2/packs/hl-v6-all-cs on NVIDIA_GeForce_RTX_4090: nvrtc 2391 cache 2 dataset 33 hot 0 check 576 race 0 ms variant base class v6 (state leaves 93, uploaded for the build and freed); self-test PASS (cache head, last line and FNV-1a 64 448274a57f508cbc; dataset head, word [268435455] and 64 samples; 96 of 96 vector lanes)
1 hl-v6-all-cs | warm-up dispatch (base 0): 535.96 ms; 100 timed dispatches of 16777216 nonces: mean 536.08 ms
1 hl-v6-all-cs | RESULT pack=/root/c2/packs/hl-v6-all-cs class=mx8-erad810f22d+sh256x27+state+reg64c+fold+rw device=NVIDIA_GeForce_RTX_4090 arch=sm_89 regs=88 blocks_per_sm=20 warps=0 resident=2560 arena_mib=0 hot_mib=0 hot_slots=0 hot_fill_ms=0.00 nonces=16777216 batches=100 check=PASS fingerprint=01f51b9d4805e5e6 mhs=31.296 loads=256 bytes=1024 scratch_ops=0 time=wall
RESULT run=2 pack=c2-chi rc=0 wall_s=57.81 RESULT pack=/root/c2/packs/c2-chi class=mx8-erad810f22d+sh256x27+state+reg64c+fold+rw device=NVIDIA_GeForce_RTX_4090 arch=sm_89 regs=88 blocks_per_sm=20 warps=0 resident=2560 arena_mib=0 hot_mib=0 hot_slots=0 hot_fill_ms=0.00 nonces=16777216 batches=100 check=PASS fingerprint=6f8a98dfbc719901 mhs=31.289 loads=256 bytes=1024 scratch_ops=0 time=wall
2 c2-chi | info igneum-worker-cuda 1.0 (4 October 2026): device 0 NVIDIA_GeForce_RTX_4090 (sm_89, 128 SMs), driver 12.8 from libcuda.so.1, NVRTC 12.8 from libnvrtc.so.12, target sm_89 (the device's architecture, listed by NVRTC)
2 c2-chi | pack /root/c2/packs/c2-chi on NVIDIA_GeForce_RTX_4090: nvrtc 2410 cache 2 dataset 32 hot 0 check 555 race 0 ms variant base class v6 (state leaves 1, uploaded for the build and freed); self-test PASS (cache head, last line and FNV-1a 64 861e888556e6fea5; dataset head, word [268435455] and 64 samples; 96 of 96 vector lanes)
2 c2-chi | warm-up dispatch (base 0): 535.96 ms; 100 timed dispatches of 16777216 nonces: mean 536.20 ms
2 c2-chi | RESULT pack=/root/c2/packs/c2-chi class=mx8-erad810f22d+sh256x27+state+reg64c+fold+rw device=NVIDIA_GeForce_RTX_4090 arch=sm_89 regs=88 blocks_per_sm=20 warps=0 resident=2560 arena_mib=0 hot_mib=0 hot_slots=0 hot_fill_ms=0.00 nonces=16777216 batches=100 check=PASS fingerprint=6f8a98dfbc719901 mhs=31.289 loads=256 bytes=1024 scratch_ops=0 time=wall
RESULT run=3 pack=hl-v6-all-cs rc=0 wall_s=57.85 RESULT pack=/root/c2/packs/hl-v6-all-cs class=mx8-erad810f22d+sh256x27+state+reg64c+fold+rw device=NVIDIA_GeForce_RTX_4090 arch=sm_89 regs=88 blocks_per_sm=20 warps=0 resident=2560 arena_mib=0 hot_mib=0 hot_slots=0 hot_fill_ms=0.00 nonces=16777216 batches=100 check=PASS fingerprint=01f51b9d4805e5e6 mhs=31.298 loads=256 bytes=1024 scratch_ops=0 time=wall
3 hl-v6-all-cs | info igneum-worker-cuda 1.0 (4 October 2026): device 0 NVIDIA_GeForce_RTX_4090 (sm_89, 128 SMs), driver 12.8 from libcuda.so.1, NVRTC 12.8 from libnvrtc.so.12, target sm_89 (the device's architecture, listed by NVRTC)
3 hl-v6-all-cs | pack /root/c2/packs/hl-v6-all-cs on NVIDIA_GeForce_RTX_4090: nvrtc 2434 cache 2 dataset 31 hot 0 check 571 race 0 ms variant base class v6 (state leaves 93, uploaded for the build and freed); self-test PASS (cache head, last line and FNV-1a 64 448274a57f508cbc; dataset head, word [268435455] and 64 samples; 96 of 96 vector lanes)
3 hl-v6-all-cs | warm-up dispatch (base 0): 535.95 ms; 100 timed dispatches of 16777216 nonces: mean 536.05 ms
3 hl-v6-all-cs | RESULT pack=/root/c2/packs/hl-v6-all-cs class=mx8-erad810f22d+sh256x27+state+reg64c+fold+rw device=NVIDIA_GeForce_RTX_4090 arch=sm_89 regs=88 blocks_per_sm=20 warps=0 resident=2560 arena_mib=0 hot_mib=0 hot_slots=0 hot_fill_ms=0.00 nonces=16777216 batches=100 check=PASS fingerprint=01f51b9d4805e5e6 mhs=31.298 loads=256 bytes=1024 scratch_ops=0 time=wall
RESULT run=4 pack=c2-chi rc=0 wall_s=57.79 RESULT pack=/root/c2/packs/c2-chi class=mx8-erad810f22d+sh256x27+state+reg64c+fold+rw device=NVIDIA_GeForce_RTX_4090 arch=sm_89 regs=88 blocks_per_sm=20 warps=0 resident=2560 arena_mib=0 hot_mib=0 hot_slots=0 hot_fill_ms=0.00 nonces=16777216 batches=100 check=PASS fingerprint=6f8a98dfbc719901 mhs=31.301 loads=256 bytes=1024 scratch_ops=0 time=wall
4 c2-chi | info igneum-worker-cuda 1.0 (4 October 2026): device 0 NVIDIA_GeForce_RTX_4090 (sm_89, 128 SMs), driver 12.8 from libcuda.so.1, NVRTC 12.8 from libnvrtc.so.12, target sm_89 (the device's architecture, listed by NVRTC)
4 c2-chi | pack /root/c2/packs/c2-chi on NVIDIA_GeForce_RTX_4090: nvrtc 2397 cache 2 dataset 32 hot 0 check 578 race 0 ms variant base class v6 (state leaves 1, uploaded for the build and freed); self-test PASS (cache head, last line and FNV-1a 64 861e888556e6fea5; dataset head, word [268435455] and 64 samples; 96 of 96 vector lanes)
4 c2-chi | warm-up dispatch (base 0): 535.95 ms; 100 timed dispatches of 16777216 nonces: mean 536.00 ms
4 c2-chi | RESULT pack=/root/c2/packs/c2-chi class=mx8-erad810f22d+sh256x27+state+reg64c+fold+rw device=NVIDIA_GeForce_RTX_4090 arch=sm_89 regs=88 blocks_per_sm=20 warps=0 resident=2560 arena_mib=0 hot_mib=0 hot_slots=0 hot_fill_ms=0.00 nonces=16777216 batches=100 check=PASS fingerprint=6f8a98dfbc719901 mhs=31.301 loads=256 bytes=1024 scratch_ops=0 time=wall
RESULT end 2026-10-09T09:59:28Z

View file

@ -0,0 +1,60 @@
2026/10/09 09:55:28.683, 15.16, 210, 405, 38, 0
2026/10/09 09:55:29.685, 15.08, 210, 405, 38, 0
2026/10/09 09:55:30.685, 15.05, 210, 405, 38, 0
2026/10/09 09:55:31.685, 37.83, 2520, 10251, 39, 0
2026/10/09 09:55:32.686, 59.86, 2520, 10251, 40, 0
2026/10/09 09:55:33.686, 63.13, 2520, 10251, 40, 19
2026/10/09 09:55:34.686, 134.91, 2670, 10251, 45, 41
2026/10/09 09:55:35.686, 199.34, 2670, 10251, 48, 100
2026/10/09 09:55:36.686, 230.08, 2670, 10251, 49, 100
2026/10/09 09:55:37.687, 230.54, 2670, 10251, 50, 100
2026/10/09 09:55:38.687, 230.82, 2670, 10251, 50, 100
2026/10/09 09:55:39.687, 230.82, 2670, 10251, 51, 100
2026/10/09 09:55:40.687, 231.13, 2670, 10251, 51, 100
2026/10/09 09:55:41.687, 232.27, 2670, 10251, 51, 100
2026/10/09 09:55:42.688, 232.39, 2670, 10251, 51, 100
2026/10/09 09:55:43.688, 232.43, 2670, 10251, 52, 100
2026/10/09 09:55:44.688, 232.31, 2670, 10251, 52, 100
2026/10/09 09:55:45.688, 232.73, 2655, 10251, 52, 100
2026/10/09 09:55:46.688, 232.87, 2655, 10251, 52, 100
2026/10/09 09:55:47.689, 232.89, 2655, 10251, 52, 100
2026/10/09 09:55:48.689, 233.00, 2655, 10251, 53, 100
2026/10/09 09:55:49.689, 232.91, 2655, 10251, 53, 100
2026/10/09 09:55:50.689, 233.44, 2655, 10251, 53, 100
2026/10/09 09:55:51.689, 233.58, 2655, 10251, 53, 100
2026/10/09 09:55:52.689, 233.93, 2655, 10251, 53, 100
2026/10/09 09:55:53.690, 233.96, 2655, 10251, 53, 100
2026/10/09 09:55:54.690, 234.23, 2655, 10251, 53, 100
2026/10/09 09:55:55.690, 233.79, 2655, 10251, 53, 100
2026/10/09 09:55:56.690, 233.85, 2655, 10251, 53, 100
2026/10/09 09:55:57.690, 233.85, 2655, 10251, 54, 100
2026/10/09 09:55:58.691, 233.45, 2655, 10251, 54, 100
2026/10/09 09:55:59.691, 233.43, 2655, 10251, 54, 100
2026/10/09 09:56:00.691, 233.57, 2655, 10251, 54, 100
2026/10/09 09:56:01.691, 233.54, 2655, 10251, 54, 100
2026/10/09 09:56:02.691, 233.64, 2655, 10251, 54, 100
2026/10/09 09:56:03.692, 233.62, 2655, 10251, 54, 100
2026/10/09 09:56:04.692, 233.77, 2655, 10251, 54, 100
2026/10/09 09:56:05.692, 233.58, 2655, 10251, 54, 100
2026/10/09 09:56:06.692, 233.46, 2655, 10251, 54, 100
2026/10/09 09:56:07.692, 233.75, 2655, 10251, 54, 100
2026/10/09 09:56:08.692, 233.86, 2655, 10251, 54, 100
2026/10/09 09:56:09.693, 233.44, 2655, 10251, 54, 100
2026/10/09 09:56:10.693, 233.32, 2655, 10251, 54, 100
2026/10/09 09:56:11.693, 233.73, 2655, 10251, 54, 100
2026/10/09 09:56:12.693, 233.80, 2655, 10251, 55, 100
2026/10/09 09:56:13.693, 234.10, 2655, 10251, 55, 100
2026/10/09 09:56:14.694, 234.31, 2655, 10251, 55, 100
2026/10/09 09:56:15.694, 234.43, 2655, 10251, 55, 100
2026/10/09 09:56:16.694, 234.81, 2655, 10251, 55, 100
2026/10/09 09:56:17.694, 234.94, 2655, 10251, 55, 100
2026/10/09 09:56:18.694, 234.47, 2655, 10251, 55, 100
2026/10/09 09:56:19.695, 235.02, 2655, 10251, 55, 100
2026/10/09 09:56:20.695, 235.12, 2655, 10251, 55, 100
2026/10/09 09:56:21.695, 234.88, 2655, 10251, 55, 100
2026/10/09 09:56:22.695, 234.93, 2655, 10251, 55, 100
2026/10/09 09:56:23.695, 234.77, 2655, 10251, 55, 100
2026/10/09 09:56:24.696, 234.76, 2655, 10251, 55, 100
2026/10/09 09:56:25.696, 234.68, 2655, 10251, 55, 100
2026/10/09 09:56:26.696, 234.94, 2655, 10251, 55, 100
2026/10/09 09:56:27.696, 234.94, 2655, 10251, 55, 100
1 2026/10/09 09:55:28.683 15.16 210 405 38 0
2 2026/10/09 09:55:29.685 15.08 210 405 38 0
3 2026/10/09 09:55:30.685 15.05 210 405 38 0
4 2026/10/09 09:55:31.685 37.83 2520 10251 39 0
5 2026/10/09 09:55:32.686 59.86 2520 10251 40 0
6 2026/10/09 09:55:33.686 63.13 2520 10251 40 19
7 2026/10/09 09:55:34.686 134.91 2670 10251 45 41
8 2026/10/09 09:55:35.686 199.34 2670 10251 48 100
9 2026/10/09 09:55:36.686 230.08 2670 10251 49 100
10 2026/10/09 09:55:37.687 230.54 2670 10251 50 100
11 2026/10/09 09:55:38.687 230.82 2670 10251 50 100
12 2026/10/09 09:55:39.687 230.82 2670 10251 51 100
13 2026/10/09 09:55:40.687 231.13 2670 10251 51 100
14 2026/10/09 09:55:41.687 232.27 2670 10251 51 100
15 2026/10/09 09:55:42.688 232.39 2670 10251 51 100
16 2026/10/09 09:55:43.688 232.43 2670 10251 52 100
17 2026/10/09 09:55:44.688 232.31 2670 10251 52 100
18 2026/10/09 09:55:45.688 232.73 2655 10251 52 100
19 2026/10/09 09:55:46.688 232.87 2655 10251 52 100
20 2026/10/09 09:55:47.689 232.89 2655 10251 52 100
21 2026/10/09 09:55:48.689 233.00 2655 10251 53 100
22 2026/10/09 09:55:49.689 232.91 2655 10251 53 100
23 2026/10/09 09:55:50.689 233.44 2655 10251 53 100
24 2026/10/09 09:55:51.689 233.58 2655 10251 53 100
25 2026/10/09 09:55:52.689 233.93 2655 10251 53 100
26 2026/10/09 09:55:53.690 233.96 2655 10251 53 100
27 2026/10/09 09:55:54.690 234.23 2655 10251 53 100
28 2026/10/09 09:55:55.690 233.79 2655 10251 53 100
29 2026/10/09 09:55:56.690 233.85 2655 10251 53 100
30 2026/10/09 09:55:57.690 233.85 2655 10251 54 100
31 2026/10/09 09:55:58.691 233.45 2655 10251 54 100
32 2026/10/09 09:55:59.691 233.43 2655 10251 54 100
33 2026/10/09 09:56:00.691 233.57 2655 10251 54 100
34 2026/10/09 09:56:01.691 233.54 2655 10251 54 100
35 2026/10/09 09:56:02.691 233.64 2655 10251 54 100
36 2026/10/09 09:56:03.692 233.62 2655 10251 54 100
37 2026/10/09 09:56:04.692 233.77 2655 10251 54 100
38 2026/10/09 09:56:05.692 233.58 2655 10251 54 100
39 2026/10/09 09:56:06.692 233.46 2655 10251 54 100
40 2026/10/09 09:56:07.692 233.75 2655 10251 54 100
41 2026/10/09 09:56:08.692 233.86 2655 10251 54 100
42 2026/10/09 09:56:09.693 233.44 2655 10251 54 100
43 2026/10/09 09:56:10.693 233.32 2655 10251 54 100
44 2026/10/09 09:56:11.693 233.73 2655 10251 54 100
45 2026/10/09 09:56:12.693 233.80 2655 10251 55 100
46 2026/10/09 09:56:13.693 234.10 2655 10251 55 100
47 2026/10/09 09:56:14.694 234.31 2655 10251 55 100
48 2026/10/09 09:56:15.694 234.43 2655 10251 55 100
49 2026/10/09 09:56:16.694 234.81 2655 10251 55 100
50 2026/10/09 09:56:17.694 234.94 2655 10251 55 100
51 2026/10/09 09:56:18.694 234.47 2655 10251 55 100
52 2026/10/09 09:56:19.695 235.02 2655 10251 55 100
53 2026/10/09 09:56:20.695 235.12 2655 10251 55 100
54 2026/10/09 09:56:21.695 234.88 2655 10251 55 100
55 2026/10/09 09:56:22.695 234.93 2655 10251 55 100
56 2026/10/09 09:56:23.695 234.77 2655 10251 55 100
57 2026/10/09 09:56:24.696 234.76 2655 10251 55 100
58 2026/10/09 09:56:25.696 234.68 2655 10251 55 100
59 2026/10/09 09:56:26.696 234.94 2655 10251 55 100
60 2026/10/09 09:56:27.696 234.94 2655 10251 55 100

View file

@ -0,0 +1,60 @@
2026/10/09 09:56:28.760, 235.46, 2655, 10501, 50, 79
2026/10/09 09:56:29.762, 93.72, 2655, 10501, 47, 0
2026/10/09 09:56:30.762, 69.26, 495, 5001, 46, 0
2026/10/09 09:56:31.762, 54.92, 2520, 10251, 46, 0
2026/10/09 09:56:32.762, 60.91, 2520, 10251, 46, 0
2026/10/09 09:56:33.762, 60.27, 2520, 10251, 46, 0
2026/10/09 09:56:34.763, 90.12, 2655, 10251, 53, 100
2026/10/09 09:56:35.763, 202.76, 2655, 10251, 54, 100
2026/10/09 09:56:36.763, 233.44, 2655, 10251, 54, 100
2026/10/09 09:56:37.763, 234.20, 2655, 10251, 54, 100
2026/10/09 09:56:38.763, 234.45, 2655, 10251, 55, 100
2026/10/09 09:56:39.764, 233.92, 2655, 10251, 55, 100
2026/10/09 09:56:40.764, 234.14, 2655, 10251, 55, 100
2026/10/09 09:56:41.764, 234.18, 2655, 10251, 55, 100
2026/10/09 09:56:42.764, 234.42, 2655, 10251, 55, 100
2026/10/09 09:56:43.764, 234.71, 2655, 10251, 55, 100
2026/10/09 09:56:44.765, 234.79, 2655, 10251, 55, 100
2026/10/09 09:56:45.765, 234.71, 2655, 10251, 55, 100
2026/10/09 09:56:46.765, 234.36, 2655, 10251, 55, 100
2026/10/09 09:56:47.765, 235.13, 2655, 10251, 55, 100
2026/10/09 09:56:48.765, 234.43, 2655, 10251, 55, 100
2026/10/09 09:56:49.765, 234.65, 2655, 10251, 55, 100
2026/10/09 09:56:50.766, 235.30, 2655, 10251, 55, 99
2026/10/09 09:56:51.766, 235.64, 2655, 10251, 56, 100
2026/10/09 09:56:52.766, 235.44, 2655, 10251, 56, 100
2026/10/09 09:56:53.766, 235.33, 2655, 10251, 56, 100
2026/10/09 09:56:54.766, 235.33, 2655, 10251, 56, 100
2026/10/09 09:56:55.767, 235.12, 2655, 10251, 56, 100
2026/10/09 09:56:56.767, 235.22, 2655, 10251, 56, 100
2026/10/09 09:56:57.767, 235.54, 2655, 10251, 56, 100
2026/10/09 09:56:58.767, 235.38, 2655, 10251, 56, 100
2026/10/09 09:56:59.767, 235.69, 2655, 10251, 56, 100
2026/10/09 09:57:00.768, 235.56, 2655, 10251, 56, 100
2026/10/09 09:57:01.768, 235.77, 2655, 10251, 56, 100
2026/10/09 09:57:02.768, 235.87, 2655, 10251, 56, 100
2026/10/09 09:57:03.768, 236.17, 2655, 10251, 56, 100
2026/10/09 09:57:04.768, 235.76, 2655, 10251, 56, 100
2026/10/09 09:57:05.768, 235.54, 2655, 10251, 56, 99
2026/10/09 09:57:06.769, 235.23, 2655, 10251, 56, 100
2026/10/09 09:57:07.769, 235.66, 2655, 10251, 56, 100
2026/10/09 09:57:08.769, 236.26, 2655, 10251, 56, 100
2026/10/09 09:57:09.769, 235.85, 2655, 10251, 56, 100
2026/10/09 09:57:10.769, 236.10, 2655, 10251, 56, 100
2026/10/09 09:57:11.770, 236.31, 2655, 10251, 56, 100
2026/10/09 09:57:12.770, 236.20, 2655, 10251, 56, 100
2026/10/09 09:57:13.770, 236.60, 2655, 10251, 56, 100
2026/10/09 09:57:14.770, 236.28, 2655, 10251, 56, 100
2026/10/09 09:57:15.770, 236.22, 2655, 10251, 56, 100
2026/10/09 09:57:16.771, 236.59, 2655, 10251, 57, 100
2026/10/09 09:57:17.771, 236.23, 2655, 10251, 57, 100
2026/10/09 09:57:18.771, 236.55, 2655, 10251, 57, 100
2026/10/09 09:57:19.771, 236.54, 2655, 10251, 57, 100
2026/10/09 09:57:20.771, 236.28, 2655, 10251, 57, 100
2026/10/09 09:57:21.772, 236.37, 2655, 10251, 57, 100
2026/10/09 09:57:22.772, 236.44, 2655, 10251, 57, 100
2026/10/09 09:57:23.772, 236.29, 2655, 10251, 57, 100
2026/10/09 09:57:24.772, 236.33, 2655, 10251, 57, 100
2026/10/09 09:57:25.772, 235.78, 2655, 10251, 57, 100
2026/10/09 09:57:26.773, 236.03, 2655, 10251, 57, 100
2026/10/09 09:57:27.773, 235.99, 2655, 10251, 57, 100
1 2026/10/09 09:56:28.760 235.46 2655 10501 50 79
2 2026/10/09 09:56:29.762 93.72 2655 10501 47 0
3 2026/10/09 09:56:30.762 69.26 495 5001 46 0
4 2026/10/09 09:56:31.762 54.92 2520 10251 46 0
5 2026/10/09 09:56:32.762 60.91 2520 10251 46 0
6 2026/10/09 09:56:33.762 60.27 2520 10251 46 0
7 2026/10/09 09:56:34.763 90.12 2655 10251 53 100
8 2026/10/09 09:56:35.763 202.76 2655 10251 54 100
9 2026/10/09 09:56:36.763 233.44 2655 10251 54 100
10 2026/10/09 09:56:37.763 234.20 2655 10251 54 100
11 2026/10/09 09:56:38.763 234.45 2655 10251 55 100
12 2026/10/09 09:56:39.764 233.92 2655 10251 55 100
13 2026/10/09 09:56:40.764 234.14 2655 10251 55 100
14 2026/10/09 09:56:41.764 234.18 2655 10251 55 100
15 2026/10/09 09:56:42.764 234.42 2655 10251 55 100
16 2026/10/09 09:56:43.764 234.71 2655 10251 55 100
17 2026/10/09 09:56:44.765 234.79 2655 10251 55 100
18 2026/10/09 09:56:45.765 234.71 2655 10251 55 100
19 2026/10/09 09:56:46.765 234.36 2655 10251 55 100
20 2026/10/09 09:56:47.765 235.13 2655 10251 55 100
21 2026/10/09 09:56:48.765 234.43 2655 10251 55 100
22 2026/10/09 09:56:49.765 234.65 2655 10251 55 100
23 2026/10/09 09:56:50.766 235.30 2655 10251 55 99
24 2026/10/09 09:56:51.766 235.64 2655 10251 56 100
25 2026/10/09 09:56:52.766 235.44 2655 10251 56 100
26 2026/10/09 09:56:53.766 235.33 2655 10251 56 100
27 2026/10/09 09:56:54.766 235.33 2655 10251 56 100
28 2026/10/09 09:56:55.767 235.12 2655 10251 56 100
29 2026/10/09 09:56:56.767 235.22 2655 10251 56 100
30 2026/10/09 09:56:57.767 235.54 2655 10251 56 100
31 2026/10/09 09:56:58.767 235.38 2655 10251 56 100
32 2026/10/09 09:56:59.767 235.69 2655 10251 56 100
33 2026/10/09 09:57:00.768 235.56 2655 10251 56 100
34 2026/10/09 09:57:01.768 235.77 2655 10251 56 100
35 2026/10/09 09:57:02.768 235.87 2655 10251 56 100
36 2026/10/09 09:57:03.768 236.17 2655 10251 56 100
37 2026/10/09 09:57:04.768 235.76 2655 10251 56 100
38 2026/10/09 09:57:05.768 235.54 2655 10251 56 99
39 2026/10/09 09:57:06.769 235.23 2655 10251 56 100
40 2026/10/09 09:57:07.769 235.66 2655 10251 56 100
41 2026/10/09 09:57:08.769 236.26 2655 10251 56 100
42 2026/10/09 09:57:09.769 235.85 2655 10251 56 100
43 2026/10/09 09:57:10.769 236.10 2655 10251 56 100
44 2026/10/09 09:57:11.770 236.31 2655 10251 56 100
45 2026/10/09 09:57:12.770 236.20 2655 10251 56 100
46 2026/10/09 09:57:13.770 236.60 2655 10251 56 100
47 2026/10/09 09:57:14.770 236.28 2655 10251 56 100
48 2026/10/09 09:57:15.770 236.22 2655 10251 56 100
49 2026/10/09 09:57:16.771 236.59 2655 10251 57 100
50 2026/10/09 09:57:17.771 236.23 2655 10251 57 100
51 2026/10/09 09:57:18.771 236.55 2655 10251 57 100
52 2026/10/09 09:57:19.771 236.54 2655 10251 57 100
53 2026/10/09 09:57:20.771 236.28 2655 10251 57 100
54 2026/10/09 09:57:21.772 236.37 2655 10251 57 100
55 2026/10/09 09:57:22.772 236.44 2655 10251 57 100
56 2026/10/09 09:57:23.772 236.29 2655 10251 57 100
57 2026/10/09 09:57:24.772 236.33 2655 10251 57 100
58 2026/10/09 09:57:25.772 235.78 2655 10251 57 100
59 2026/10/09 09:57:26.773 236.03 2655 10251 57 100
60 2026/10/09 09:57:27.773 235.99 2655 10251 57 100

View file

@ -0,0 +1,60 @@
2026/10/09 09:57:28.827, 236.48, 2655, 10501, 53, 66
2026/10/09 09:57:29.829, 91.85, 2655, 10501, 49, 0
2026/10/09 09:57:30.830, 69.46, 510, 5001, 47, 0
2026/10/09 09:57:31.831, 53.45, 2520, 10251, 47, 0
2026/10/09 09:57:32.831, 60.88, 2520, 10251, 47, 0
2026/10/09 09:57:33.831, 64.08, 2520, 10251, 47, 0
2026/10/09 09:57:34.831, 135.91, 2655, 10251, 52, 96
2026/10/09 09:57:35.831, 205.44, 2655, 10251, 55, 100
2026/10/09 09:57:36.832, 234.23, 2655, 10251, 55, 100
2026/10/09 09:57:37.832, 235.06, 2655, 10251, 56, 100
2026/10/09 09:57:38.832, 235.11, 2655, 10251, 56, 100
2026/10/09 09:57:39.833, 234.86, 2655, 10251, 56, 100
2026/10/09 09:57:40.834, 234.90, 2655, 10251, 56, 100
2026/10/09 09:57:41.834, 235.63, 2655, 10251, 56, 100
2026/10/09 09:57:42.834, 235.74, 2655, 10251, 56, 100
2026/10/09 09:57:43.834, 235.33, 2655, 10251, 56, 100
2026/10/09 09:57:44.834, 235.27, 2655, 10251, 56, 100
2026/10/09 09:57:45.835, 235.85, 2655, 10251, 56, 100
2026/10/09 09:57:46.835, 235.68, 2655, 10251, 56, 100
2026/10/09 09:57:47.835, 235.53, 2655, 10251, 56, 100
2026/10/09 09:57:48.835, 236.01, 2655, 10251, 57, 100
2026/10/09 09:57:49.835, 235.81, 2655, 10251, 57, 100
2026/10/09 09:57:50.836, 235.83, 2655, 10251, 57, 100
2026/10/09 09:57:51.838, 236.13, 2655, 10251, 57, 100
2026/10/09 09:57:52.838, 236.27, 2655, 10251, 57, 100
2026/10/09 09:57:53.840, 236.15, 2655, 10251, 57, 100
2026/10/09 09:57:54.840, 235.88, 2655, 10251, 57, 100
2026/10/09 09:57:55.840, 236.00, 2655, 10251, 57, 100
2026/10/09 09:57:56.840, 236.15, 2655, 10251, 57, 100
2026/10/09 09:57:57.840, 236.30, 2655, 10251, 57, 100
2026/10/09 09:57:58.841, 237.03, 2655, 10251, 57, 100
2026/10/09 09:57:59.841, 237.00, 2655, 10251, 57, 100
2026/10/09 09:58:00.841, 237.41, 2655, 10251, 57, 100
2026/10/09 09:58:01.841, 236.78, 2655, 10251, 57, 100
2026/10/09 09:58:02.841, 236.84, 2655, 10251, 57, 100
2026/10/09 09:58:03.842, 236.43, 2655, 10251, 57, 100
2026/10/09 09:58:04.842, 236.59, 2655, 10251, 57, 100
2026/10/09 09:58:05.842, 236.79, 2655, 10251, 57, 100
2026/10/09 09:58:06.842, 237.10, 2655, 10251, 57, 100
2026/10/09 09:58:07.842, 237.36, 2655, 10251, 57, 100
2026/10/09 09:58:08.842, 237.59, 2655, 10251, 57, 100
2026/10/09 09:58:09.843, 237.55, 2655, 10251, 57, 100
2026/10/09 09:58:10.843, 237.32, 2655, 10251, 57, 100
2026/10/09 09:58:11.843, 237.50, 2655, 10251, 57, 100
2026/10/09 09:58:12.843, 237.55, 2655, 10251, 57, 100
2026/10/09 09:58:13.843, 237.50, 2655, 10251, 58, 100
2026/10/09 09:58:14.844, 238.12, 2655, 10251, 58, 100
2026/10/09 09:58:15.844, 238.33, 2655, 10251, 58, 100
2026/10/09 09:58:16.844, 237.71, 2655, 10251, 58, 100
2026/10/09 09:58:17.844, 238.23, 2655, 10251, 58, 100
2026/10/09 09:58:18.844, 238.06, 2655, 10251, 58, 100
2026/10/09 09:58:19.844, 237.33, 2655, 10251, 58, 100
2026/10/09 09:58:20.845, 237.55, 2655, 10251, 58, 100
2026/10/09 09:58:21.845, 237.82, 2655, 10251, 58, 100
2026/10/09 09:58:22.845, 237.71, 2655, 10251, 58, 100
2026/10/09 09:58:23.845, 237.55, 2655, 10251, 58, 100
2026/10/09 09:58:24.845, 237.68, 2655, 10251, 58, 100
2026/10/09 09:58:25.846, 238.10, 2655, 10251, 58, 100
2026/10/09 09:58:26.846, 237.73, 2655, 10251, 58, 100
2026/10/09 09:58:27.846, 238.08, 2655, 10251, 58, 100
1 2026/10/09 09:57:28.827 236.48 2655 10501 53 66
2 2026/10/09 09:57:29.829 91.85 2655 10501 49 0
3 2026/10/09 09:57:30.830 69.46 510 5001 47 0
4 2026/10/09 09:57:31.831 53.45 2520 10251 47 0
5 2026/10/09 09:57:32.831 60.88 2520 10251 47 0
6 2026/10/09 09:57:33.831 64.08 2520 10251 47 0
7 2026/10/09 09:57:34.831 135.91 2655 10251 52 96
8 2026/10/09 09:57:35.831 205.44 2655 10251 55 100
9 2026/10/09 09:57:36.832 234.23 2655 10251 55 100
10 2026/10/09 09:57:37.832 235.06 2655 10251 56 100
11 2026/10/09 09:57:38.832 235.11 2655 10251 56 100
12 2026/10/09 09:57:39.833 234.86 2655 10251 56 100
13 2026/10/09 09:57:40.834 234.90 2655 10251 56 100
14 2026/10/09 09:57:41.834 235.63 2655 10251 56 100
15 2026/10/09 09:57:42.834 235.74 2655 10251 56 100
16 2026/10/09 09:57:43.834 235.33 2655 10251 56 100
17 2026/10/09 09:57:44.834 235.27 2655 10251 56 100
18 2026/10/09 09:57:45.835 235.85 2655 10251 56 100
19 2026/10/09 09:57:46.835 235.68 2655 10251 56 100
20 2026/10/09 09:57:47.835 235.53 2655 10251 56 100
21 2026/10/09 09:57:48.835 236.01 2655 10251 57 100
22 2026/10/09 09:57:49.835 235.81 2655 10251 57 100
23 2026/10/09 09:57:50.836 235.83 2655 10251 57 100
24 2026/10/09 09:57:51.838 236.13 2655 10251 57 100
25 2026/10/09 09:57:52.838 236.27 2655 10251 57 100
26 2026/10/09 09:57:53.840 236.15 2655 10251 57 100
27 2026/10/09 09:57:54.840 235.88 2655 10251 57 100
28 2026/10/09 09:57:55.840 236.00 2655 10251 57 100
29 2026/10/09 09:57:56.840 236.15 2655 10251 57 100
30 2026/10/09 09:57:57.840 236.30 2655 10251 57 100
31 2026/10/09 09:57:58.841 237.03 2655 10251 57 100
32 2026/10/09 09:57:59.841 237.00 2655 10251 57 100
33 2026/10/09 09:58:00.841 237.41 2655 10251 57 100
34 2026/10/09 09:58:01.841 236.78 2655 10251 57 100
35 2026/10/09 09:58:02.841 236.84 2655 10251 57 100
36 2026/10/09 09:58:03.842 236.43 2655 10251 57 100
37 2026/10/09 09:58:04.842 236.59 2655 10251 57 100
38 2026/10/09 09:58:05.842 236.79 2655 10251 57 100
39 2026/10/09 09:58:06.842 237.10 2655 10251 57 100
40 2026/10/09 09:58:07.842 237.36 2655 10251 57 100
41 2026/10/09 09:58:08.842 237.59 2655 10251 57 100
42 2026/10/09 09:58:09.843 237.55 2655 10251 57 100
43 2026/10/09 09:58:10.843 237.32 2655 10251 57 100
44 2026/10/09 09:58:11.843 237.50 2655 10251 57 100
45 2026/10/09 09:58:12.843 237.55 2655 10251 57 100
46 2026/10/09 09:58:13.843 237.50 2655 10251 58 100
47 2026/10/09 09:58:14.844 238.12 2655 10251 58 100
48 2026/10/09 09:58:15.844 238.33 2655 10251 58 100
49 2026/10/09 09:58:16.844 237.71 2655 10251 58 100
50 2026/10/09 09:58:17.844 238.23 2655 10251 58 100
51 2026/10/09 09:58:18.844 238.06 2655 10251 58 100
52 2026/10/09 09:58:19.844 237.33 2655 10251 58 100
53 2026/10/09 09:58:20.845 237.55 2655 10251 58 100
54 2026/10/09 09:58:21.845 237.82 2655 10251 58 100
55 2026/10/09 09:58:22.845 237.71 2655 10251 58 100
56 2026/10/09 09:58:23.845 237.55 2655 10251 58 100
57 2026/10/09 09:58:24.845 237.68 2655 10251 58 100
58 2026/10/09 09:58:25.846 238.10 2655 10251 58 100
59 2026/10/09 09:58:26.846 237.73 2655 10251 58 100
60 2026/10/09 09:58:27.846 238.08 2655 10251 58 100

View file

@ -0,0 +1,60 @@
2026/10/09 09:58:28.890, 216.30, 2655, 10501, 51, 100
2026/10/09 09:58:29.892, 70.14, 2655, 10501, 50, 0
2026/10/09 09:58:30.892, 55.99, 2655, 10501, 48, 0
2026/10/09 09:58:31.892, 53.26, 2520, 10251, 48, 0
2026/10/09 09:58:32.892, 61.34, 2520, 10251, 48, 0
2026/10/09 09:58:33.894, 64.41, 2520, 10251, 48, 0
2026/10/09 09:58:34.894, 127.10, 2655, 10251, 50, 50
2026/10/09 09:58:35.894, 204.81, 2655, 10251, 56, 100
2026/10/09 09:58:36.894, 235.54, 2655, 10251, 57, 100
2026/10/09 09:58:37.894, 236.37, 2655, 10251, 57, 100
2026/10/09 09:58:38.895, 236.07, 2655, 10251, 57, 100
2026/10/09 09:58:39.895, 236.35, 2655, 10251, 57, 100
2026/10/09 09:58:40.895, 236.63, 2655, 10251, 57, 100
2026/10/09 09:58:41.895, 237.04, 2655, 10251, 57, 100
2026/10/09 09:58:42.895, 236.84, 2655, 10251, 57, 100
2026/10/09 09:58:43.896, 236.80, 2655, 10251, 57, 100
2026/10/09 09:58:44.896, 236.34, 2655, 10251, 57, 100
2026/10/09 09:58:45.896, 236.93, 2655, 10251, 57, 100
2026/10/09 09:58:46.896, 237.55, 2655, 10251, 57, 100
2026/10/09 09:58:47.897, 237.32, 2655, 10251, 58, 100
2026/10/09 09:58:48.898, 237.05, 2655, 10251, 58, 100
2026/10/09 09:58:49.898, 236.92, 2655, 10251, 58, 100
2026/10/09 09:58:50.898, 237.30, 2655, 10251, 58, 100
2026/10/09 09:58:51.898, 237.89, 2655, 10251, 58, 100
2026/10/09 09:58:52.898, 238.35, 2655, 10251, 58, 100
2026/10/09 09:58:53.899, 237.80, 2655, 10251, 58, 100
2026/10/09 09:58:54.899, 238.07, 2655, 10251, 58, 100
2026/10/09 09:58:55.899, 238.13, 2655, 10251, 58, 100
2026/10/09 09:58:56.899, 237.76, 2655, 10251, 58, 100
2026/10/09 09:58:57.899, 237.97, 2655, 10251, 58, 97
2026/10/09 09:58:58.899, 237.39, 2655, 10251, 58, 100
2026/10/09 09:58:59.900, 238.12, 2655, 10251, 58, 100
2026/10/09 09:59:00.900, 238.63, 2655, 10251, 58, 100
2026/10/09 09:59:01.900, 238.74, 2655, 10251, 58, 100
2026/10/09 09:59:02.900, 238.50, 2655, 10251, 58, 100
2026/10/09 09:59:03.900, 238.56, 2655, 10251, 58, 100
2026/10/09 09:59:04.901, 238.13, 2655, 10251, 58, 100
2026/10/09 09:59:05.901, 238.45, 2655, 10251, 58, 100
2026/10/09 09:59:06.901, 238.93, 2655, 10251, 58, 100
2026/10/09 09:59:07.901, 237.96, 2655, 10251, 58, 100
2026/10/09 09:59:08.901, 238.27, 2655, 10251, 58, 100
2026/10/09 09:59:09.902, 238.71, 2655, 10251, 58, 100
2026/10/09 09:59:10.903, 237.92, 2655, 10251, 58, 100
2026/10/09 09:59:11.903, 238.06, 2655, 10251, 58, 100
2026/10/09 09:59:12.903, 237.82, 2655, 10251, 58, 100
2026/10/09 09:59:13.904, 237.75, 2655, 10251, 58, 100
2026/10/09 09:59:14.904, 237.96, 2655, 10251, 58, 100
2026/10/09 09:59:15.904, 238.15, 2655, 10251, 58, 100
2026/10/09 09:59:16.904, 237.57, 2655, 10251, 58, 100
2026/10/09 09:59:17.905, 237.93, 2655, 10251, 58, 100
2026/10/09 09:59:18.905, 237.85, 2655, 10251, 58, 100
2026/10/09 09:59:19.905, 237.87, 2655, 10251, 58, 100
2026/10/09 09:59:20.905, 238.10, 2655, 10251, 58, 100
2026/10/09 09:59:21.905, 237.71, 2655, 10251, 58, 100
2026/10/09 09:59:22.906, 237.89, 2655, 10251, 58, 100
2026/10/09 09:59:23.906, 237.99, 2655, 10251, 58, 100
2026/10/09 09:59:24.906, 237.80, 2655, 10251, 58, 100
2026/10/09 09:59:25.906, 238.00, 2655, 10251, 58, 100
2026/10/09 09:59:26.907, 238.30, 2655, 10251, 58, 100
2026/10/09 09:59:27.907, 238.33, 2655, 10251, 59, 100
1 2026/10/09 09:58:28.890 216.30 2655 10501 51 100
2 2026/10/09 09:58:29.892 70.14 2655 10501 50 0
3 2026/10/09 09:58:30.892 55.99 2655 10501 48 0
4 2026/10/09 09:58:31.892 53.26 2520 10251 48 0
5 2026/10/09 09:58:32.892 61.34 2520 10251 48 0
6 2026/10/09 09:58:33.894 64.41 2520 10251 48 0
7 2026/10/09 09:58:34.894 127.10 2655 10251 50 50
8 2026/10/09 09:58:35.894 204.81 2655 10251 56 100
9 2026/10/09 09:58:36.894 235.54 2655 10251 57 100
10 2026/10/09 09:58:37.894 236.37 2655 10251 57 100
11 2026/10/09 09:58:38.895 236.07 2655 10251 57 100
12 2026/10/09 09:58:39.895 236.35 2655 10251 57 100
13 2026/10/09 09:58:40.895 236.63 2655 10251 57 100
14 2026/10/09 09:58:41.895 237.04 2655 10251 57 100
15 2026/10/09 09:58:42.895 236.84 2655 10251 57 100
16 2026/10/09 09:58:43.896 236.80 2655 10251 57 100
17 2026/10/09 09:58:44.896 236.34 2655 10251 57 100
18 2026/10/09 09:58:45.896 236.93 2655 10251 57 100
19 2026/10/09 09:58:46.896 237.55 2655 10251 57 100
20 2026/10/09 09:58:47.897 237.32 2655 10251 58 100
21 2026/10/09 09:58:48.898 237.05 2655 10251 58 100
22 2026/10/09 09:58:49.898 236.92 2655 10251 58 100
23 2026/10/09 09:58:50.898 237.30 2655 10251 58 100
24 2026/10/09 09:58:51.898 237.89 2655 10251 58 100
25 2026/10/09 09:58:52.898 238.35 2655 10251 58 100
26 2026/10/09 09:58:53.899 237.80 2655 10251 58 100
27 2026/10/09 09:58:54.899 238.07 2655 10251 58 100
28 2026/10/09 09:58:55.899 238.13 2655 10251 58 100
29 2026/10/09 09:58:56.899 237.76 2655 10251 58 100
30 2026/10/09 09:58:57.899 237.97 2655 10251 58 97
31 2026/10/09 09:58:58.899 237.39 2655 10251 58 100
32 2026/10/09 09:58:59.900 238.12 2655 10251 58 100
33 2026/10/09 09:59:00.900 238.63 2655 10251 58 100
34 2026/10/09 09:59:01.900 238.74 2655 10251 58 100
35 2026/10/09 09:59:02.900 238.50 2655 10251 58 100
36 2026/10/09 09:59:03.900 238.56 2655 10251 58 100
37 2026/10/09 09:59:04.901 238.13 2655 10251 58 100
38 2026/10/09 09:59:05.901 238.45 2655 10251 58 100
39 2026/10/09 09:59:06.901 238.93 2655 10251 58 100
40 2026/10/09 09:59:07.901 237.96 2655 10251 58 100
41 2026/10/09 09:59:08.901 238.27 2655 10251 58 100
42 2026/10/09 09:59:09.902 238.71 2655 10251 58 100
43 2026/10/09 09:59:10.903 237.92 2655 10251 58 100
44 2026/10/09 09:59:11.903 238.06 2655 10251 58 100
45 2026/10/09 09:59:12.903 237.82 2655 10251 58 100
46 2026/10/09 09:59:13.904 237.75 2655 10251 58 100
47 2026/10/09 09:59:14.904 237.96 2655 10251 58 100
48 2026/10/09 09:59:15.904 238.15 2655 10251 58 100
49 2026/10/09 09:59:16.904 237.57 2655 10251 58 100
50 2026/10/09 09:59:17.905 237.93 2655 10251 58 100
51 2026/10/09 09:59:18.905 237.85 2655 10251 58 100
52 2026/10/09 09:59:19.905 237.87 2655 10251 58 100
53 2026/10/09 09:59:20.905 238.10 2655 10251 58 100
54 2026/10/09 09:59:21.905 237.71 2655 10251 58 100
55 2026/10/09 09:59:22.906 237.89 2655 10251 58 100
56 2026/10/09 09:59:23.906 237.99 2655 10251 58 100
57 2026/10/09 09:59:24.906 237.80 2655 10251 58 100
58 2026/10/09 09:59:25.906 238.00 2655 10251 58 100
59 2026/10/09 09:59:26.907 238.30 2655 10251 58 100
60 2026/10/09 09:59:27.907 238.33 2655 10251 59 100

View file

@ -0,0 +1,4 @@
{"c2":"kat","mode":"closed","n":4,"N":16,"dataset_log2_words":20,"dataset_bytes":4194304,"k":16,"chi":"f8a7fa59983706a6fa4a76788ba98d204511d193e6931e66202644eae02860d8","labels_sha256":"d4c40efece3c6c59a18beaa0039519c5923981e9f5b45d80ac593f0e847cec58","tau":"c19333666825a359e51554ebf51ca90d2b9ad6855177909dc8816688be3df29c","proof_bytes":5181,"proof_sha256":"a2bccf91cd630b7d2c19ee35fb677440c315eb251fb4fee1bcdc31e71b82f7e0","verify":"accept","program_s":4.5754,"dataset_setup_s":0.0000,"label_s":0.0312,"label_s_per_label":0.001953,"merkle_s":0.00001,"prove_s":0.00001,"verify_s":0.0303,"items_derived_per_label":0.0,"load_sites_per_program":16,"lanes":32,"peak_rss_kb":65572}
{"c2":"kat","mode":"closed","n":4,"N":16,"dataset_log2_words":28,"dataset_bytes":1073741824,"k":16,"chi":"4d72564a3d95497ac238e9e451a4b0bef068eddf03cb2542c41b86dbbeed9bf5","labels_sha256":"e52db800f74e79a79ca17aaf88475fa349e6a72ec204490c82fd03e62b09f3b8","tau":"6d5092a06c6146bd04874054f4591ff9507654c7a8b698000a57955423a60a11","proof_bytes":4861,"proof_sha256":"50b913b499178ecab4747ebe5855e24f5d3eb474d4ae7cbf2b1b51945d44b707","verify":"accept","program_s":4.4907,"dataset_setup_s":0.0000,"label_s":0.0224,"label_s_per_label":0.001399,"merkle_s":0.00001,"prove_s":0.00001,"verify_s":0.0224,"items_derived_per_label":0.0,"load_sites_per_program":16,"lanes":32,"peak_rss_kb":66572}
{"c2":"kat","mode":"mh","n":4,"N":16,"dataset_log2_words":20,"dataset_bytes":4194304,"k":16,"chi":"8f8ef99471f1688822ec55495a8fcd4937f24259e190df0f51cc72b55ab0e5a0","labels_sha256":"1a8d6ef14fe23762c29463a821a9aad2199ba4026b5c8185bafc7f271277cb4a","tau":"9369ed9e820040328d9e12e8a9a60c017e9da6e1c8fa3964e964ea28b37b7e51","proof_bytes":5021,"proof_sha256":"b1d322990c64ed7e3941491e132fd486dfad8e2dc845765b46985fb3be849073","verify":"accept","program_s":4.4954,"dataset_setup_s":0.4592,"label_s":0.2272,"label_s_per_label":0.014197,"merkle_s":0.00001,"prove_s":0.00001,"verify_s":0.2346,"items_derived_per_label":8190.2,"load_sites_per_program":16,"lanes":32,"peak_rss_kb":264088}
{"c2":"kat","mode":"mh","n":4,"N":16,"dataset_log2_words":28,"dataset_bytes":1073741824,"k":16,"chi":"9d124edce3e8e6d78bf47adbcadc4ba1e1f26624009da8ad1c168019bd82fc3c","labels_sha256":"fd3bf890f87acd56c6ce2539636923d152969d435ad9123a9b9ec66a8ddff5c6","tau":"347992c5a4e800ec94d0954c52335f20084613fb91b48da10cc0caa8be23b549","proof_bytes":5181,"proof_sha256":"3ffe04d44fe2530bff65ff0e5effac6e10ff2c26acbe2a8e269467d7e21066bb","verify":"accept","program_s":4.6213,"dataset_setup_s":0.4500,"label_s":0.2371,"label_s_per_label":0.014816,"merkle_s":0.00001,"prove_s":0.00001,"verify_s":0.2284,"items_derived_per_label":8192.0,"load_sites_per_program":16,"lanes":32,"peak_rss_kb":260124}

View file

@ -0,0 +1,14 @@
{"neg":"flip_challenged_label","refused":true,"by":"check_2b_merkle_openings node 8"}
{"neg":"flip_last_sibling","refused":true,"by":"check_2b_merkle_openings parent of 11"}
{"neg":"truncate","refused":true,"by":"check_0_container"}
{"neg":"wrong_dataset_key","refused":true,"by":"check_3_local_consistency node 13"}
{"neg":"half_red_labels","refused":true,"by":"check_3_local_consistency node 14"}
{"neg_result":"PASS"}
rc=0
{"neg":"flip_challenged_label","refused":true,"by":"check_2b_merkle_openings node 16"}
{"neg":"flip_last_sibling","refused":true,"by":"check_2b_merkle_openings parent of 8"}
{"neg":"truncate","refused":true,"by":"check_0_container"}
{"neg":"wrong_dataset_key","refused":true,"by":"check_3_local_consistency node 10"}
{"neg":"half_red_labels","refused":true,"by":"check_3_local_consistency node 9"}
{"neg_result":"PASS"}
rc=0

View file

@ -0,0 +1,2 @@
{"c2":"row","mode":"closed","n":8,"N":256,"dataset_log2_words":28,"dataset_bytes":1073741824,"k":64,"chi":"73ab8286d16c6ccf62bd84460efbaca9c92b7d6e087efb7cbf8be1dece6ff3d0","labels_sha256":"0b46878e8a321b8ef4e6a6961fb9d53b2a2856f4fc0cf3aa9c876be9a3c3209b","tau":"cac4bd846763aa4585594bc17145caf30190c5b01ddc605c126dc5307745ce64","proof_bytes":36973,"proof_sha256":"1b92e7c11a87b68de607bdc02c5aca1a78dfbf8d403030d053bed62f144780d6","verify":"accept","program_s":4.6420,"dataset_setup_s":0.0000,"label_s":0.4379,"label_s_per_label":0.001710,"merkle_s":0.00007,"prove_s":0.00003,"verify_s":0.1115,"items_derived_per_label":0.0,"load_sites_per_program":16,"lanes":32,"peak_rss_kb":65044}
{"c2":"row","mode":"mh","n":8,"N":256,"dataset_log2_words":28,"dataset_bytes":1073741824,"k":64,"chi":"ab0aca59198a4b58bd696022e0c6221d01ba344cee90b50b44355c1ff521d34b","labels_sha256":"7ede9fb7f04c0bd3ca5f4b3b69c396b169acde119db4b78e0e3677a5724936ce","tau":"b99506c4f11d5412dbba56f3d5fdf45358a0799d1d2be2d82712e3a66a523d81","proof_bytes":36973,"proof_sha256":"f17f9f9f57cb9710db5374a48589faf39e430ca5b6de3401748005be497dfadf","verify":"accept","program_s":4.5874,"dataset_setup_s":0.4648,"label_s":3.8310,"label_s_per_label":0.014965,"merkle_s":0.00007,"prove_s":0.00003,"verify_s":0.9425,"items_derived_per_label":8192.0,"load_sites_per_program":16,"lanes":32,"peak_rss_kb":261576}

View file

@ -542,6 +542,15 @@ Rule: a case maps to a cell only where the cell's tests visibly answer it; cover
- Cases:
- R15-07 R15-07: Cryptography + hardware: partial: the statement, the obligations and the losses on published constants; the proof of terms 2 and 3, the amortisation and the panel's reading open
### rows:mhpow-b3-gpu-feasibility
- Command: `tools/mhpow/b3/build.sh && tools/mhpow/b3/test_known_failed_b1.sh <b1-kat-dir> && tools/mhpow/b3/run_rows_b1.sh <card-label> <b1-kat-dir> (on a rented GPU pod; never the Mac); python3 tools/mhpow/b3/parse_rows.py <out-dirs>`
- Box class: rented GPU pod (RTX 5090, RTX 4090), stock clocks
- Fixtures: F0
- Cases:
- POW-01 Match independent execution across every backend: partial: the Track B research candidate's CUDA backend against an independent CPU reference (B1) only; nothing about the shipped v6 evaluator
- POW-06 Bound verifier work and malformed-input cost: partial: verifier time per proof for the Track B candidate at k = 64 on one CPU; no malformed-input or rate budget
## Automated cases with no harness in the matrix (NOT RUN, the reason)
- GOV-02 Approve thresholds before results: the approval is recorded in the registry's approval field; the automated half (thresholds frozen before any run_status) is the gate rule landing by 21:00

View file

@ -1420,32 +1420,31 @@
"manual_page": 24,
"owner_lane": "hash lane (a690540514aa453d7)",
"run_status": "NOT RUN",
"evidence_path": "docs/analysis/review-2026-10-08-b/f10/emu-test.log; build-1:/srv/artefacts/tas/same-work-20261008-01/job-context.json; build-1:/srv/artefacts/tas/same-work-20261008-01/references/ref-D.txt; build-1:/srv/artefacts/tas/same-work-20261008-01/references/ref-D1.txt; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-5090-1.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-5090-2.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-5090-3.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-4090-1.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-4090-2.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-4090-3.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-3090-1.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-3090-2.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-3090-3.json; build-1:/srv/artefacts/tas/same-work-20261008-01/opencl-rx7600-take1.report.txt; build-1:/srv/artefacts/tas/same-work-20261008-01/opencl-rx7600.report.txt; build-1:/srv/artefacts/tas/same-work-20261008-01/metal-1.json; build-1:/srv/artefacts/tas/same-work-20261008-01/metal-2.json; build-1:/srv/artefacts/tas/same-work-20261008-01/metal-3.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v5-win.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v5-win.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v5-win.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v6-all.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v6-all.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v6-all.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v6-foldrw.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v6-foldrw.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v6-foldrw.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v6-all-nowin.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v6-all-nowin.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v6-all-nowin.json; build-1:/srv/artefacts/tas/202-5d53a591-1176efb9/node-5d53a591/box4-miner.log; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v5-win.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v5-win.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v5-win.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v6-all.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v6-all.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v6-all.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v6-foldrw.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v6-foldrw.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v6-foldrw.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v6-all-nowin.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v6-all-nowin.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v6-all-nowin.json",
"run_id": "same-work-20261008-01",
"updated": "2026-10-09T08:57:42.332Z",
"evidence_path": "docs/analysis/review-2026-10-08-b/f10/emu-test.log; build-1:/srv/artefacts/tas/same-work-20261008-01/job-context.json; build-1:/srv/artefacts/tas/same-work-20261008-01/references/ref-D.txt; build-1:/srv/artefacts/tas/same-work-20261008-01/references/ref-D1.txt; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-5090-1.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-5090-2.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-5090-3.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-4090-1.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-4090-2.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-4090-3.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-3090-1.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-3090-2.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-3090-3.json; build-1:/srv/artefacts/tas/same-work-20261008-01/opencl-rx7600-take1.report.txt; build-1:/srv/artefacts/tas/same-work-20261008-01/opencl-rx7600.report.txt; build-1:/srv/artefacts/tas/same-work-20261008-01/metal-1.json; build-1:/srv/artefacts/tas/same-work-20261008-01/metal-2.json; build-1:/srv/artefacts/tas/same-work-20261008-01/metal-3.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v5-win.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v5-win.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v5-win.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v6-all.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v6-all.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v6-all.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v6-foldrw.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v6-foldrw.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v6-foldrw.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v6-all-nowin.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v6-all-nowin.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v6-all-nowin.json; build-1:/srv/artefacts/tas/202-5d53a591-1176efb9/node-5d53a591/box4-miner.log; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v5-win.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v5-win.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v5-win.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v6-all.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v6-all.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v6-all.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v6-foldrw.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v6-foldrw.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v6-foldrw.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v6-all-nowin.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v6-all-nowin.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v6-all-nowin.json; docs/analysis/mhpow/b3/README.md",
"run_id": "mhpow-b3-20261009-01",
"updated": "2026-10-09T10:15:09.175Z",
"evidence_record": {
"requirement_id": "POW-01",
"decision": "NOT RUN",
"method": "GPU",
"cell": "harness:p01-vectors",
"manifest_sha": "c30ab32c",
"run_id": "same-work-20261008-01",
"evidence": "build-1:/srv/artefacts/tas/same-work-20261008-01/job-context.json; build-1:/srv/artefacts/tas/same-work-20261008-01/references/ref-D.txt; build-1:/srv/artefacts/tas/same-work-20261008-01/references/ref-D1.txt; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-5090-1.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-5090-2.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-5090-3.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-4090-1.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-4090-2.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-4090-3.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-3090-1.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-3090-2.json; build-1:/srv/artefacts/tas/same-work-20261008-01/cuda-3090-3.json; build-1:/srv/artefacts/tas/same-work-20261008-01/opencl-rx7600-take1.report.txt; build-1:/srv/artefacts/tas/same-work-20261008-01/opencl-rx7600.report.txt; build-1:/srv/artefacts/tas/same-work-20261008-01/metal-1.json; build-1:/srv/artefacts/tas/same-work-20261008-01/metal-2.json; build-1:/srv/artefacts/tas/same-work-20261008-01/metal-3.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v5-win.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v5-win.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v5-win.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v6-all.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v6-all.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v6-all.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v6-foldrw.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v6-foldrw.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v6-foldrw.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-5090-hl-v6-all-nowin.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-4090-hl-v6-all-nowin.json; build-1:/srv/artefacts/p01/p01-20261008-01/cuda-3090-hl-v6-all-nowin.json",
"in_progress": false,
"coverage": "the million-vector campaign per backend per pack, bit-for-bit; PASS only when every supported backend reads a million vectors with zero disagreement; the malformed-input half is harness:parser-malformed",
"cell": "rows:mhpow-b3-gpu-feasibility",
"manifest_sha": "bc6bfa75e",
"run_id": "mhpow-b3-20261009-01",
"evidence": "docs/analysis/mhpow/b3/README.md",
"in_progress": true,
"coverage": "partial: the Track B research candidate's CUDA backend against an independent CPU reference (B1) only; nothing about the shipped v6 evaluator",
"release_identity": {
"commit": "c30ab32c; the CPU reference class-v6 1a938abe4; the CUDA reader the kit's gen 6 worker 804a6f7f",
"commit": "bc6bfa75e",
"lockfile": "",
"binary": "igneum-pow sha256 0d3f3fca...; igneum-worker-cuda sha256 804a6f7f...",
"network_object": "the frozen class v6 object: pack hl-v6-all (tgz sha256 9131431015e102f4..., re-exported byte for byte from class-v6 1a938abe4 on build-4 at 21:44 UK, every file's sha256 equal), id 0x4de7b836cc40a4ea, epoch seed edc4fa84... (the genesis seeds) over the node1 state stream",
"activation": "none (a re-check of hashes against one job context, no chain state changes)",
"binary": "",
"network_object": "",
"activation": "",
"profile_hashes": ""
},
"claim_impact": "POW-01's CUDA half across a dataset-day switch on the frozen object: CUDA against the CPU reference bit for bit on three ranges with the day switch at nonce 1572864. NOT same-work evidence: the node engine refuses this seed/stream pair (IgneumEngine::epoch_for's class v5 check wants the stream's block af89be5d... to equal the epoch seed edc4fa84...), so the node and pool readers cannot read it; the coordinator's ruling 22:0x UK keeps it as the CUDA and CPU-only row",
"claim_impact": "none: no public figure moves; the Track B candidate is not proposed for activation",
"reviewer": "",
"at": "2026-10-09T08:57:42.332Z",
"note": "the same-work row on the frozen object is complete: CPU reference, CUDA 5090/4090/3090 x3, OpenCL x3, Metal x3, every nonce equal across the day switch; POW-01 itself is decided by the hash lane's P01 corpus and review, not by this row; the P01 CUDA campaign's evidence is carried here so it stays on the case | Context 01 at build-1:/srv/artefacts/tas/same-work-20261008-01/job-context.json (sha256 d2540e02...). CPU reference: igneum-pow hash-bound (class-v6 1a938abe4, binary 0d3f3fca...) on build-4, 21:46 to 21:55 UK, ref-D c49fed11... over [0, 1572864), ref-D1 5ae1220d... over [1572864, 3145728); ref-D's first million lines equal the hash lane's P01 reference /srv/artefacts/packs/p01-vectors/hl-v6-all.txt byte for byte. The node1 state stream (block af89be5d...) was written on build-4 at 15:34 UK, before the 20:00 UK split; the cell carries the island label by main's 22:2x UK rule. CUDA: the 5090 PASS on all three phases (the gen 6 worker 804a6f7f, the driver at c8b65a26 or later; 23:16 to 23:20 UK: cuda-5090-1.json 1b36fb8a..., cuda-5090-2.json 70200bff... with the day switch at 1572864 driven through the worker's prepare and both boundary hashes equal to the reference (69abfadf816e767e before, 5b3fb17ad84744fd after), cuda-5090-3.json f2ecf5c7...; 1,048,576 agree each, 0 disagree, 0 missing); the 4090 PASS on all three phases (23:22 to 23:25 UK: cuda-4090-1.json cd0f5aee..., cuda-4090-2.json f864f950... with the day switch at 1572864, cuda-4090-3.json 126bd552...; 1,048,576 agree each, 0 disagree, 0 missing); The 3090 PASS on all three phases (05:07 to 05:10 UK; cuda-3090-{1,2,3}.json afa3d4a4..., 167875f9..., cc956dee...; 1,048,576 agree each, 0 disagree, 0 missing; the day switch at 1572864 with the same boundary hashes as every other reader): the fleet lane's first run on that pod at 00:35 UK never ran a phase (its verify rule demanded two reference files where a context carries one, then its put failed on the pod's flapping ssh; a runner fault, reported once), the rerun from 04:57 UK ran detached on the pod under a pid file with a collector pulling each JSON. So the CUDA cell reads three cards on this context. Metal and OpenCL are the morning's reads (08:30 UK). The case stays NOT RUN in progress until every reader has read (the coordinator's ruling 23:1x UK: a PASS by inference is forbidden). OPENCL on the first rig's RX 7600: take 1 (05:54 UK, opencl-rx7600-take1.report.txt 7fb1ee95...) was a job fault on the rig, not a reader result (the script matched an older gen-5-stamped pack of the same name in the rig's jobs tree; the worker refused it as class v5 against a class v6 job); take 2 (run-ca3-pc1-samework01-opencl-7600-20261009-b, the packs by exact path, 06:03 to 06:05 UK) reads PASS on all three phases: p1 digest 1517d572..., p2 91d63d8b... across the day switch 20730 to 20731 at 1572864 (the D+1 pack prepared in 486 ms, the boundary block 8,192 of 8,192 lines), p3 e483e82a..., each 1,048,576 of 1,048,576 equal to ref-D's and ref-D1's slices, both pack ids 0x4de7b836cc40a4ea generator 6 in the RESULT lines; 'RESULT verdict all PASS context=same-work-20261008-01 reader=opencl card=rx7600'; the report opencl-rx7600.report.txt (sha256 84683b16..., read back on build-1 at 06:09 UK). So the OpenCL reader on the RX 7600 reads all three contexts equal to the CPU reference across their day switches; Metal is the sixth reader on every context, 08:30 UK. METAL, the project's macOS machine (Apple M6) on the serve worker igneum-worker-metal 5aeddcba... (built from class-v6 755c2dbcf by the hash lane), the driver on master with --prepare-first, 08:30 to 08:31 UK: PASS on all three phases, metal-{1,2,3}.json a7ab9fac..., 9be3101a..., b3df42ef... (read back on build-1 at 09:41 UK), 1,048,576 agree each, 0 disagree, 0 missing, the day switch at 1572864 with the boundary hashes 69abfadf816e767e before and 5b3fb17ad84744fd after, equal to every other reader's. So the frozen object reads equal on the CPU reference, CUDA (three cards), OpenCL and Metal across the day switch. This row does not decide POW-01 (its accept covers the full P01 corpus across families, boundary seeds and backends with an independent review: the hash lane's); the record stays NOT RUN for POW-01 and carries the hash lane's P01 campaign evidence (p01-20261008-01) beside this row's, because the recorder keeps one record per cell and this run's record had displaced that batch's on harness:p01-vectors since 22:27 UK.",
"network_label": "on an island, not a network"
"at": "2026-10-09T10:15:09.175Z",
"note": "POW-01 (Track B candidate only, not the shipped v6): an independently written CPU reference (B1, Python) and its C port agree with the CUDA backend byte for byte on every checked instance at n = 8 to 24 on two cards. POW-06 (Track B candidate only): the C-port verifier's time per GPU proof at k = 64 is recorded per row; the proof is about 129 to 180 KB at k = 64 and k is not yet fixed by the theorem's constants (BLOCKED row in the README). The GPU feasibility verdict itself (the README's trap rows) is a research finding for the panel, not a registry case. | Track B B3 (R15-06, the GPU feasibility lane, 9 October 2026): GPU adaptation of the Blocki-Smearsoll TCC 2025 MTP/DRSample MHPoW (eprint 2025/1456, full PDF sha256 13c3646e...) without changing the function: CUDA labelling, Merkle commitment and proof creation, batched at 32, 128 and 512 MiB per instance with the card filled, on a rented RTX 5090 and RTX 4090 at stock clocks (no clock lock on rented pods), board power from nvidia-smi at 1 Hz with idle not subtracted. Correctness oracle: the B1 lane's reference encoding (tools/mhpow/b1 working copy on build-6 09:26Z, not landed) through a C port that reproduces B1's five known-answer fixtures byte for byte, then the GPU byte for byte on labels, every Merkle node, root and proof container, instance 0 equal to B1's own fixture, every GPU proof accepted; the known-failed test (DRSample's long edges deleted on the GPU) fires. A research candidate only: nothing activates, no comparison with the v6 work unit is made (the comparison contract is a BLOCKED row), no PASS is claimed. NOT RUN until the panel reads it."
},
"in_progress_since": "2026-10-08T20:07:26.255Z",
"approvals": {
@ -1549,6 +1548,29 @@
"reviewer": "",
"at": "2026-10-09T08:55:05.275Z",
"note": "P01 part A, the CUDA half, complete at 20:41 UK: four packs (hl-v5-win e3da3669 id 0x6554474f410f36f3 gen 5; hl-v6-all 6df3d430 id 0x4de7b836cc40a4ea gen 6; hl-v6-foldrw f0dc3428 id 0xd7eba30115d26dd4; hl-v6-all-nowin 67ceec05 id 0xbe1d6f48928cef4a) on three CUDA cards (RTX 5090 sm_120, 4090 sm_89, 3090 sm_86), twelve runs, every one driver exit 0, answered 1,000,000, agree 1,000,000, disagree 0, missing 0, 41 to 50 s per million; the kit worker 9bfcf728 for gen 5, the generator-6 worker 804a6f7f for gen 6; the twelve JSONs parsed on build-1 with their sha256s. Remaining for PASS: OpenCL (the project's first rig's RX 7600, the hash lane; no rented AMD card exists tonight) and Metal (the mini, the morning); the case stays NOT RUN in progress until then. (rig names scrubbed for the served registry at 22:2x UK, the steward's identity landing.) Re-recorded at 09:5x UK once the recorder kept records per run: the twelve CUDA evidence files return to POW-01's evidence_path beside the same-work run's record."
},
"rows:mhpow-b3-gpu-feasibility": {
"requirement_id": "POW-01",
"decision": "NOT RUN",
"method": "GPU",
"cell": "rows:mhpow-b3-gpu-feasibility",
"manifest_sha": "bc6bfa75e",
"run_id": "mhpow-b3-20261009-01",
"evidence": "docs/analysis/mhpow/b3/README.md",
"in_progress": true,
"coverage": "partial: the Track B research candidate's CUDA backend against an independent CPU reference (B1) only; nothing about the shipped v6 evaluator",
"release_identity": {
"commit": "bc6bfa75e",
"lockfile": "",
"binary": "",
"network_object": "",
"activation": "",
"profile_hashes": ""
},
"claim_impact": "none: no public figure moves; the Track B candidate is not proposed for activation",
"reviewer": "",
"at": "2026-10-09T10:15:09.175Z",
"note": "POW-01 (Track B candidate only, not the shipped v6): an independently written CPU reference (B1, Python) and its C port agree with the CUDA backend byte for byte on every checked instance at n = 8 to 24 on two cards. POW-06 (Track B candidate only): the C-port verifier's time per GPU proof at k = 64 is recorded per row; the proof is about 129 to 180 KB at k = 64 and k is not yet fixed by the theorem's constants (BLOCKED row in the README). The GPU feasibility verdict itself (the README's trap rows) is a research finding for the panel, not a registry case. | Track B B3 (R15-06, the GPU feasibility lane, 9 October 2026): GPU adaptation of the Blocki-Smearsoll TCC 2025 MTP/DRSample MHPoW (eprint 2025/1456, full PDF sha256 13c3646e...) without changing the function: CUDA labelling, Merkle commitment and proof creation, batched at 32, 128 and 512 MiB per instance with the card filled, on a rented RTX 5090 and RTX 4090 at stock clocks (no clock lock on rented pods), board power from nvidia-smi at 1 Hz with idle not subtracted. Correctness oracle: the B1 lane's reference encoding (tools/mhpow/b1 working copy on build-6 09:26Z, not landed) through a C port that reproduces B1's five known-answer fixtures byte for byte, then the GPU byte for byte on labels, every Merkle node, root and proof container, instance 0 equal to B1's own fixture, every GPU proof accepted; the known-failed test (DRSample's long edges deleted on the GPU) fires. A research candidate only: nothing activates, no comparison with the v6 work unit is made (the comparison contract is a BLOCKED row), no PASS is claimed. NOT RUN until the panel reads it."
}
}
},
@ -2148,31 +2170,31 @@
"manual_page": 25,
"owner_lane": "hash lane (a690540514aa453d7)",
"run_status": "NOT RUN",
"evidence_path": "build-1:/srv/artefacts/tas/p01-partb-20261008-01/summary.jsonl; docs/analysis/mhpow/b1/README.md; docs/analysis/mhpow/b2/README.md",
"run_id": "mhpow-b2-20261009-01",
"updated": "2026-10-09T10:10:43.564Z",
"evidence_path": "build-1:/srv/artefacts/tas/p01-partb-20261008-01/summary.jsonl; docs/analysis/mhpow/b1/README.md; docs/analysis/mhpow/b2/README.md; docs/analysis/mhpow/b3/README.md",
"run_id": "mhpow-b3-20261009-01",
"updated": "2026-10-09T10:15:09.175Z",
"evidence_record": {
"requirement_id": "POW-06",
"decision": "NOT RUN",
"method": "model",
"cell": "model:mhpow-b2-binding",
"manifest_sha": "13c3646e",
"run_id": "mhpow-b2-20261009-01",
"evidence": "docs/analysis/mhpow/b2/README.md",
"method": "GPU",
"cell": "rows:mhpow-b3-gpu-feasibility",
"manifest_sha": "bc6bfa75e",
"run_id": "mhpow-b3-20261009-01",
"evidence": "docs/analysis/mhpow/b3/README.md",
"in_progress": true,
"coverage": "partial: certificate size as a formula; no verifier timing, no malformed-input cost",
"coverage": "partial: verifier time per proof for the Track B candidate at k = 64 on one CPU; no malformed-input or rate budget",
"release_identity": {
"commit": "13c3646e",
"commit": "bc6bfa75e",
"lockfile": "",
"binary": "",
"network_object": "",
"activation": "",
"profile_hashes": ""
},
"claim_impact": "none: no public figure moves; Track B's construction is not adopted and nothing activates",
"claim_impact": "none: no public figure moves; the Track B candidate is not proposed for activation",
"reviewer": "",
"at": "2026-10-09T10:10:43.564Z",
"note": "POW-05: obligations O-06 to O-11 and O-16 (grinding, chosen instance, amortisation, partial evaluation, precomputation); O-07 records two FAIL rules and B-T3 the open question. POW-06: O-11's certificate sizes as functions of DRSample's unproved constant c3 (13.6 to 194.9 MiB at lambda 256), a sensitivity table only; the verifier budget is B6's. | B2, the binding spec lane of the 1.5x programme's Track B (9 October 2026): the canonical instance input for an MTP/DRSample memory-hard proof of work in Igneum's setting (328 bytes, work version 1, draft) and the obligations table O-01 to O-16 read against Blocki and Smearsoll, eprint 2025/1456 (the full PDF, sha256 13c3646e...). Reuse across template, trial, epoch, day, era, network and class object: answered by the paper's per-input soundness plus the layout. The lottery: two candidate rules FAIL with written counter-examples (re-roll through a red sink, about 1.3 x 10^6 draws per labelling at N = 2^24; free screening on chi alone); the replacement and the multi-instance, adaptive-input, constants and energy questions BLOCKED to the B4 theory lane and the node lane. Figures by tools/mhpow/b2/b2_figures.py on build-9. NOT RUN until the panel reads it; this lane writes no PASS."
"at": "2026-10-09T10:15:09.175Z",
"note": "POW-01 (Track B candidate only, not the shipped v6): an independently written CPU reference (B1, Python) and its C port agree with the CUDA backend byte for byte on every checked instance at n = 8 to 24 on two cards. POW-06 (Track B candidate only): the C-port verifier's time per GPU proof at k = 64 is recorded per row; the proof is about 129 to 180 KB at k = 64 and k is not yet fixed by the theorem's constants (BLOCKED row in the README). The GPU feasibility verdict itself (the README's trap rows) is a research finding for the panel, not a registry case. | Track B B3 (R15-06, the GPU feasibility lane, 9 October 2026): GPU adaptation of the Blocki-Smearsoll TCC 2025 MTP/DRSample MHPoW (eprint 2025/1456, full PDF sha256 13c3646e...) without changing the function: CUDA labelling, Merkle commitment and proof creation, batched at 32, 128 and 512 MiB per instance with the card filled, on a rented RTX 5090 and RTX 4090 at stock clocks (no clock lock on rented pods), board power from nvidia-smi at 1 Hz with idle not subtracted. Correctness oracle: the B1 lane's reference encoding (tools/mhpow/b1 working copy on build-6 09:26Z, not landed) through a C port that reproduces B1's five known-answer fixtures byte for byte, then the GPU byte for byte on labels, every Merkle node, root and proof container, instance 0 equal to B1's own fixture, every GPU proof accepted; the known-failed test (DRSample's long edges deleted on the GPU) fires. A research candidate only: nothing activates, no comparison with the v6 work unit is made (the comparison contract is a BLOCKED row), no PASS is claimed. NOT RUN until the panel reads it."
},
"in_progress_since": "2026-10-08T18:28:32.463Z",
"approvals": {
@ -2251,6 +2273,29 @@
"reviewer": "",
"at": "2026-10-09T10:10:43.564Z",
"note": "POW-05: obligations O-06 to O-11 and O-16 (grinding, chosen instance, amortisation, partial evaluation, precomputation); O-07 records two FAIL rules and B-T3 the open question. POW-06: O-11's certificate sizes as functions of DRSample's unproved constant c3 (13.6 to 194.9 MiB at lambda 256), a sensitivity table only; the verifier budget is B6's. | B2, the binding spec lane of the 1.5x programme's Track B (9 October 2026): the canonical instance input for an MTP/DRSample memory-hard proof of work in Igneum's setting (328 bytes, work version 1, draft) and the obligations table O-01 to O-16 read against Blocki and Smearsoll, eprint 2025/1456 (the full PDF, sha256 13c3646e...). Reuse across template, trial, epoch, day, era, network and class object: answered by the paper's per-input soundness plus the layout. The lottery: two candidate rules FAIL with written counter-examples (re-roll through a red sink, about 1.3 x 10^6 draws per labelling at N = 2^24; free screening on chi alone); the replacement and the multi-instance, adaptive-input, constants and energy questions BLOCKED to the B4 theory lane and the node lane. Figures by tools/mhpow/b2/b2_figures.py on build-9. NOT RUN until the panel reads it; this lane writes no PASS."
},
"rows:mhpow-b3-gpu-feasibility": {
"requirement_id": "POW-06",
"decision": "NOT RUN",
"method": "GPU",
"cell": "rows:mhpow-b3-gpu-feasibility",
"manifest_sha": "bc6bfa75e",
"run_id": "mhpow-b3-20261009-01",
"evidence": "docs/analysis/mhpow/b3/README.md",
"in_progress": true,
"coverage": "partial: verifier time per proof for the Track B candidate at k = 64 on one CPU; no malformed-input or rate budget",
"release_identity": {
"commit": "bc6bfa75e",
"lockfile": "",
"binary": "",
"network_object": "",
"activation": "",
"profile_hashes": ""
},
"claim_impact": "none: no public figure moves; the Track B candidate is not proposed for activation",
"reviewer": "",
"at": "2026-10-09T10:15:09.175Z",
"note": "POW-01 (Track B candidate only, not the shipped v6): an independently written CPU reference (B1, Python) and its C port agree with the CUDA backend byte for byte on every checked instance at n = 8 to 24 on two cards. POW-06 (Track B candidate only): the C-port verifier's time per GPU proof at k = 64 is recorded per row; the proof is about 129 to 180 KB at k = 64 and k is not yet fixed by the theorem's constants (BLOCKED row in the README). The GPU feasibility verdict itself (the README's trap rows) is a research finding for the panel, not a registry case. | Track B B3 (R15-06, the GPU feasibility lane, 9 October 2026): GPU adaptation of the Blocki-Smearsoll TCC 2025 MTP/DRSample MHPoW (eprint 2025/1456, full PDF sha256 13c3646e...) without changing the function: CUDA labelling, Merkle commitment and proof creation, batched at 32, 128 and 512 MiB per instance with the card filled, on a rented RTX 5090 and RTX 4090 at stock clocks (no clock lock on rented pods), board power from nvidia-smi at 1 Hz with idle not subtracted. Correctness oracle: the B1 lane's reference encoding (tools/mhpow/b1 working copy on build-6 09:26Z, not landed) through a C port that reproduces B1's five known-answer fixtures byte for byte, then the GPU byte for byte on labels, every Merkle node, root and proof container, instance 0 equal to B1's own fixture, every GPU proof accepted; the known-failed test (DRSample's long edges deleted on the GPU) fires. A research candidate only: nothing activates, no comparison with the v6 work unit is made (the comparison contract is a BLOCKED row), no PASS is claimed. NOT RUN until the panel reads it."
}
}
},
@ -20873,6 +20918,8 @@
"manual_page": null,
"run_status": "NOT RUN",
"plan_status": "NOT RUN",
"run_id": "r15-track-b-20261009-01",
"evidence_path": "docs/analysis/mhpow/b4/README.md; docs/analysis/mhpow/b4/params.txt; docs/analysis/mhpow/b4/RUNS.md; tools/mhpow/b4/params.py; docs/analysis/mhpow/b2/README.md; docs/analysis/mhpow/b4/README.md; docs/analysis/mhpow/b4/params.txt; docs/analysis/mhpow/b4/RUNS.md; tools/mhpow/b4/params.py",
"updated": "2026-10-09T10:10:43.747Z",
"evidence_record": {
"requirement_id": "R15-07",
@ -20945,15 +20992,13 @@
"note": "BOUND (B4): no 1.5x certificate is reachable from the published constants; the generic route at most 0.151 of the honest prover's energy at log2 N = 22, the red-blue route losing at least 341x at rho 0.25 (docs/analysis/mhpow/b4/README.md, params.txt). FINDING (B2, obligation O-07): the two naive lottery rules FAIL with written counter-examples (the sink re-roll at log2 N + 1 calls, about 1.3 million draws per labelling at N = 2^24; free screening on chi alone), the replacement BLOCKED to B4 (B-T3) (docs/analysis/mhpow/b2/README.md). The package R15-07 (no invalid theorem composition) stays NOT RUN until the independent panel reads the composed statement; terms 2 and 3's amortisation are open theorems; L BLOCKED | the coordinator's order (10:4x UK, 9 October 2026): Track B's reproduction findings recorded as BOUND rows, NOT RUN, no pass or fail claimed for any package; every chip figure WITNESS or BOUND by the R15 suite rule"
}
},
"in_progress_since": "2026-10-09T10:10:43.656Z",
"approvals": {
"scope_approved": null,
"implementation_complete": null,
"evidence_reproduced": null,
"claim_authorised": null
},
"run_id": "r15-track-b-20261009-01",
"evidence_path": "docs/analysis/mhpow/b4/README.md; docs/analysis/mhpow/b4/params.txt; docs/analysis/mhpow/b4/RUNS.md; tools/mhpow/b4/params.py; docs/analysis/mhpow/b2/README.md; docs/analysis/mhpow/b4/README.md; docs/analysis/mhpow/b4/params.txt; docs/analysis/mhpow/b4/RUNS.md; tools/mhpow/b4/params.py",
"in_progress_since": "2026-10-09T10:10:43.656Z"
}
},
{
"id": "R15-08",

View file

@ -0,0 +1,43 @@
{
"run_id": "mhpow-b3-20261009-01",
"manifest_sha": "bc6bfa75e",
"evidence_dir": "docs/analysis/mhpow/b3",
"boxes": [
"vast:54994203",
"vast:54994221"
],
"method": "GPU",
"note": "Track B B3 (R15-06, the GPU feasibility lane, 9 October 2026): GPU adaptation of the Blocki-Smearsoll TCC 2025 MTP/DRSample MHPoW (eprint 2025/1456, full PDF sha256 13c3646e...) without changing the function: CUDA labelling, Merkle commitment and proof creation, batched at 32, 128 and 512 MiB per instance with the card filled, on a rented RTX 5090 and RTX 4090 at stock clocks (no clock lock on rented pods), board power from nvidia-smi at 1 Hz with idle not subtracted. Correctness oracle: the B1 lane's reference encoding (tools/mhpow/b1 working copy on build-6 09:26Z, not landed) through a C port that reproduces B1's five known-answer fixtures byte for byte, then the GPU byte for byte on labels, every Merkle node, root and proof container, instance 0 equal to B1's own fixture, every GPU proof accepted; the known-failed test (DRSample's long edges deleted on the GPU) fires. A research candidate only: nothing activates, no comparison with the v6 work unit is made (the comparison contract is a BLOCKED row), no PASS is claimed. NOT RUN until the panel reads it.",
"cells": [
{
"cell": "rows:mhpow-b3-gpu-feasibility",
"cases": [
"POW-01",
"POW-06"
],
"status": "NOT RUN",
"method": "GPU",
"evidence": "docs/analysis/mhpow/b3/README.md",
"note": "POW-01 (Track B candidate only, not the shipped v6): an independently written CPU reference (B1, Python) and its C port agree with the CUDA backend byte for byte on every checked instance at n = 8 to 24 on two cards. POW-06 (Track B candidate only): the C-port verifier's time per GPU proof at k = 64 is recorded per row; the proof is about 129 to 180 KB at k = 64 and k is not yet fixed by the theorem's constants (BLOCKED row in the README). The GPU feasibility verdict itself (the README's trap rows) is a research finding for the panel, not a registry case.",
"claim_impact": "none: no public figure moves; the Track B candidate is not proposed for activation",
"in_progress": true
}
],
"map_cell_requested": {
"rows:mhpow-b3-gpu-feasibility": {
"command": "tools/mhpow/b3/build.sh && tools/mhpow/b3/test_known_failed_b1.sh <b1-kat-dir> && tools/mhpow/b3/run_rows_b1.sh <card-label> <b1-kat-dir> (on a rented GPU pod; never the Mac); python3 tools/mhpow/b3/parse_rows.py <out-dirs>",
"box_class": "rented GPU pod (RTX 5090, RTX 4090), stock clocks",
"fixtures": [
"F0"
],
"cases": [
"POW-01",
"POW-06"
],
"coverage": {
"POW-01": "partial: the Track B research candidate's CUDA backend against an independent CPU reference (B1) only; nothing about the shipped v6 evaluator",
"POW-06": "partial: verifier time per proof for the Track B candidate at k = 64 on one CPU; no malformed-input or rate budget"
}
}
}
}

View file

@ -63,3 +63,6 @@ tools/mhpow/b1
# 9 October 2026: Track B B4 (R15-07), the theory lane: the composed accepted-proof statement, its arithmetic and runs
docs/analysis/mhpow/b4
tools/mhpow/b4
# 9 October 2026: the 1.5x programme Track B, the B3 GPU feasibility lane and its candidate 2 record (research)
docs/analysis/mhpow/b3
docs/analysis/mhpow/c2

View file

@ -913,6 +913,21 @@
"coverage": {
"R15-07": "partial: the statement, the obligations and the losses on published constants; the proof of terms 2 and 3, the amortisation and the panel's reading open"
}
},
"rows:mhpow-b3-gpu-feasibility": {
"command": "tools/mhpow/b3/build.sh && tools/mhpow/b3/test_known_failed_b1.sh <b1-kat-dir> && tools/mhpow/b3/run_rows_b1.sh <card-label> <b1-kat-dir> (on a rented GPU pod; never the Mac); python3 tools/mhpow/b3/parse_rows.py <out-dirs>",
"box_class": "rented GPU pod (RTX 5090, RTX 4090), stock clocks",
"fixtures": [
"F0"
],
"cases": [
"POW-01",
"POW-06"
],
"coverage": {
"POW-01": "partial: the Track B research candidate's CUDA backend against an independent CPU reference (B1) only; nothing about the shipped v6 evaluator",
"POW-06": "partial: verifier time per proof for the Track B candidate at k = 64 on one CPU; no malformed-input or rate budget"
}
}
},
"not_run": {

161
tools/mhpow/b3/b1enc_spec.h Normal file
View file

@ -0,0 +1,161 @@
/*
* b1enc_spec.h - a C port of the B1 lane's reference encoding (R15-05, tools/mhpow/b1/{params,drsample,mtp}.py,
* read from build-6:/srv/builds/mhpow-b1/src at 09:26Z 9 Oct 2026) of the Blocki-Smearsoll MTP/DRSample MHPoW.
* Every byte is B1's: BLAKE2b-256 unkeyed, lambda = 256; one-byte tags L/M/C/G; u64 little-endian integers;
* l_v = H('L' || chi || u64 v || parents' labels ascending) (node 1: no parents, node 2: (1), v >= 3: (v-r, v-1))
* inner = H('M' || chi || left || right), the paper's LSB-first leaf order (leaf index = sum x_j 2^(j-1), x_1 at the root)
* c_i = H('C' || chi || u64 i || tau) read little-endian, mod N (i = 1..k), node c_i + 1
* graph = ABH17 Alg. 1 with draws H('G' || GRAPH_SEED || u64 v || which || u64 ctr)[0..8) LE, rejection sampled,
* g' in [1, bitlen v] (which = 1), g = min(v-1, 2^g'), r in [max(ceil(g/2), 2), g] (which = 2)
* proof = "B1MTPDR1" | n u8 | k u32le | tau | per challenge: label | n siblings root-first | parent count u8 |
* per parent: label | n siblings
* This port is the GPU harness's oracle; it is itself checked against B1's known-answer fixtures (kat-n04..n20:
* graph parents sha256, labels sha256, tau, proof sha256) by cpu_ref_b1 kat before any GPU row counts.
*/
#ifndef B1ENC_SPEC_H
#define B1ENC_SPEC_H
#include <stdint.h>
#include <string.h>
#include <stdlib.h>
#include "b3p1_spec.h" /* SHA-256 (fixture digests only) */
static const uint64_t b2_IV[8] = {0x6a09e667f3bcc908ULL, 0xbb67ae8584caa73bULL, 0x3c6ef372fe94f82bULL, 0xa54ff53a5f1d36f1ULL,
0x510e527fade682d1ULL, 0x9b05688c2b3e6c1fULL, 0x1f83d9abfb41bd6bULL, 0x5be0cd19137e2179ULL};
static const uint8_t b2_S[12][16] = {
{0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15},{14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3},{11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4},
{7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8},{9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13},{2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9},
{12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11},{13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10},{6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5},
{10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0},{0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15},{14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3}};
#define B2_R(x, n) (((x) >> (n)) | ((x) << (64 - (n))))
#define B2_G(a, b, c, d, x, y) do { a = a + b + (x); d = B2_R(d ^ a, 32); c = c + d; b = B2_R(b ^ c, 24); \
a = a + b + (y); d = B2_R(d ^ a, 16); c = c + d; b = B2_R(b ^ c, 63); } while (0)
/* h: 8 words, m: 16 LE words, t: byte counter after this block, last: final block flag */
static void b2_compress(uint64_t h[8], const uint64_t m[16], uint64_t t, int last) {
uint64_t v[16];
for (int i = 0; i < 8; i++) { v[i] = h[i]; v[i + 8] = b2_IV[i]; }
v[12] ^= t; if (last) v[14] = ~v[14];
for (int r = 0; r < 12; r++) {
const uint8_t *s = b2_S[r];
B2_G(v[0], v[4], v[8], v[12], m[s[0]], m[s[1]]); B2_G(v[1], v[5], v[9], v[13], m[s[2]], m[s[3]]);
B2_G(v[2], v[6], v[10], v[14], m[s[4]], m[s[5]]); B2_G(v[3], v[7], v[11], v[15], m[s[6]], m[s[7]]);
B2_G(v[0], v[5], v[10], v[15], m[s[8]], m[s[9]]); B2_G(v[1], v[6], v[11], v[12], m[s[10]], m[s[11]]);
B2_G(v[2], v[7], v[8], v[13], m[s[12]], m[s[13]]); B2_G(v[3], v[4], v[9], v[14], m[s[14]], m[s[15]]);
}
for (int i = 0; i < 8; i++) h[i] ^= v[i] ^ v[i + 8];
}
/* BLAKE2b-256 unkeyed of any message */
static void b2_256(const uint8_t *msg, size_t len, uint8_t out[32]) {
uint64_t h[8]; memcpy(h, b2_IV, 64); h[0] ^= 0x01010020ULL;
uint64_t m[16]; size_t off = 0;
while (len - off > 128) { memcpy(m, msg + off, 128); off += 128; b2_compress(h, m, off, 0); }
uint8_t blk[128]; memset(blk, 0, 128); memcpy(blk, msg + off, len - off); memcpy(m, blk, 128);
b2_compress(h, m, len, 1);
memcpy(out, h, 32); /* little-endian host (x86-64) */
}
/* ---------------- B1 constants ---------------- */
static uint8_t b1_graph_seed[32];
static void b1_init(void) { const char *s = "igneum/mhpow/b1/drsample-graph-seed/v1"; b2_256((const uint8_t *)s, strlen(s), b1_graph_seed); }
static inline void b1_u64(uint8_t *p, uint64_t x) { memcpy(p, &x, 8); }
static inline uint64_t b1_rd64(const uint8_t *p) { uint64_t x; memcpy(&x, p, 8); return x; }
static uint64_t b1_uniform(uint64_t lo, uint64_t hi, uint64_t v, uint8_t which) {
uint64_t m = hi - lo + 1; if (m == 1) return lo;
/* limit = 2^64 - (2^64 mod m), computed in 64 bits; x < limit accepted */
uint64_t rem = (uint64_t)((((unsigned __int128)1) << 64) % m);
for (uint64_t ctr = 0;; ctr++) {
uint8_t q[1 + 32 + 8 + 1 + 8], d[32]; q[0] = 'G'; memcpy(q + 1, b1_graph_seed, 32); b1_u64(q + 33, v); q[41] = which; b1_u64(q + 42, ctr);
b2_256(q, sizeof q, d); uint64_t x = b1_rd64(d);
if (rem == 0 || x < (uint64_t)(0 - rem)) return lo + x % m;
}
}
static inline int b1_bitlen(uint64_t v) { int r = 0; while (v) { v >>= 1; r++; } return r; }
/* far[v] = v - r for v >= 3, 0 otherwise */
static uint32_t b1_far(uint64_t v) {
if (v < 3) return 0;
uint64_t gp = b1_uniform(1, (uint64_t)b1_bitlen(v), v, 1);
uint64_t g = (gp >= 63 || (1ULL << gp) > v - 1) ? v - 1 : (1ULL << gp);
uint64_t lo = (g + 1) / 2; if (lo < 2) lo = 2;
return (uint32_t)(v - b1_uniform(lo, g, v, 2));
}
/* ---------------- labels, tree, challenges ---------------- */
static void b1_label(const uint8_t chi[32], uint64_t v, const uint8_t *pa, const uint8_t *pb, uint8_t out[32]) {
uint8_t m[105]; size_t L = 0; m[L++] = 'L'; memcpy(m + L, chi, 32); L += 32; b1_u64(m + L, v); L += 8;
if (pa) { memcpy(m + L, pa, 32); L += 32; } if (pb) { memcpy(m + L, pb, 32); L += 32; }
b2_256(m, L, out);
}
static void b1_label_all(const uint8_t chi[32], uint64_t N, const uint32_t *far, uint8_t *lab) {
b1_label(chi, 1, NULL, NULL, lab + 32);
if (N >= 2) b1_label(chi, 2, lab + 32, NULL, lab + 64);
for (uint64_t v = 3; v <= N; v++) b1_label(chi, v, lab + 32 * (uint64_t)far[v], lab + 32 * (v - 1), lab + 32 * v);
}
static void b1_node(const uint8_t chi[32], const uint8_t *l, const uint8_t *r, uint8_t out[32]) {
uint8_t m[97]; m[0] = 'M'; memcpy(m + 1, chi, 32); memcpy(m + 33, l, 32); memcpy(m + 65, r, 32); b2_256(m, 97, out);
}
/* same index rule as b3p1_spec.h: depth d node id = sum_{i<=d} x_i 2^(i-1); tree[(2^d-1)+id] for d < n */
static void b1_merkle(const uint8_t chi[32], int n, const uint8_t *lab, uint8_t *tree) {
for (int d = n - 1; d >= 0; d--) {
uint64_t cnt = 1ULL << d;
for (uint64_t id = 0; id < cnt; id++) {
const uint8_t *l = (d == n - 1) ? lab + 32 * (id + 1) : tree + 32 * ((2 * cnt - 1) + id);
const uint8_t *r = (d == n - 1) ? lab + 32 * (id + cnt + 1) : tree + 32 * ((2 * cnt - 1) + id + cnt);
b1_node(chi, l, r, tree + 32 * ((cnt - 1) + id));
}
}
}
static const uint8_t *b1_tnode(int n, const uint8_t *lab, const uint8_t *tree, int d, uint64_t id) {
return d == n ? lab + 32 * (id + 1) : tree + 32 * (((1ULL << d) - 1) + id);
}
static uint64_t b1_challenge(const uint8_t chi[32], uint64_t i, const uint8_t tau[32], uint64_t N) {
uint8_t m[73], h[32]; m[0] = 'C'; memcpy(m + 1, chi, 32); b1_u64(m + 33, i); memcpy(m + 41, tau, 32); b2_256(m, 73, h);
return b1_rd64(h) & (N - 1);
}
static int b1_parents(uint64_t v, const uint32_t *far, uint64_t ps[2]) {
if (v == 1) return 0; if (v == 2) { ps[0] = 1; return 1; } ps[0] = far[v]; ps[1] = v - 1; return 2;
}
static size_t b1_proof_max(int n, int k) { return 8 + 1 + 4 + 32 + (size_t)k * (1 + 3 * 32 * (size_t)(n + 1)); }
static size_t b1_prove(const uint8_t chi[32], int n, int k, const uint32_t *far, const uint8_t *lab, const uint8_t *tree, uint8_t *o) {
uint64_t N = 1ULL << n; size_t L = 0; const uint8_t *tau = tree;
memcpy(o, "B1MTPDR1", 8); L = 8; o[L++] = (uint8_t)n; uint32_t kk = (uint32_t)k; memcpy(o + L, &kk, 4); L += 4; memcpy(o + L, tau, 32); L += 32;
for (int i = 1; i <= k; i++) {
uint64_t c = b1_challenge(chi, (uint64_t)i, tau, N), v = c + 1, ps[2]; int np = b1_parents(v, far, ps);
uint64_t which[3] = {v, ps[0], ps[1]};
for (int p = 0; p <= np; p++) {
if (p == 1) o[L++] = (uint8_t)np;
uint64_t x = which[p] - 1; memcpy(o + L, lab + 32 * which[p], 32); L += 32;
for (int j = 1; j <= n; j++) { uint64_t sid = (x & ((1ULL << j) - 1)) ^ (1ULL << (j - 1)); memcpy(o + L, b1_tnode(n, lab, tree, j, sid), 32); L += 32; }
}
if (np == 0) o[L++] = 0;
}
return L;
}
static int b1_open_ok(const uint8_t chi[32], int n, const uint8_t *tau, uint64_t x, const uint8_t *leaf, const uint8_t *sib) {
uint8_t cur[32], nx[32]; memcpy(cur, leaf, 32);
for (int j = n; j >= 1; j--) { if (((x >> (j - 1)) & 1) == 0) b1_node(chi, cur, sib + 32 * (j - 1), nx); else b1_node(chi, sib + 32 * (j - 1), cur, nx); memcpy(cur, nx, 32); }
return memcmp(cur, tau, 32) == 0;
}
/* the verifier, B1's check order: container, challenges, parent set, Merkle openings, local consistency */
static int b1_verify(const uint8_t chi[32], int n, int k, const uint32_t *far, const uint8_t *p, size_t len) {
uint64_t N = 1ULL << n; size_t o = 45; uint32_t kk;
if (len < 45 || memcmp(p, "B1MTPDR1", 8) || p[8] != n) return 0; memcpy(&kk, p + 9, 4); if ((int)kk != k) return 0;
const uint8_t *tau = p + 13; const size_t seg = 32 * (size_t)(n + 1);
for (int i = 1; i <= k; i++) {
uint64_t c = b1_challenge(chi, (uint64_t)i, tau, N), v = c + 1, ps[2]; int np = b1_parents(v, far, ps);
if (o + seg + 1 > len) return 0; const uint8_t *nd = p + o; o += seg;
if (p[o++] != np) return 0; if (o + np * seg > len) return 0;
const uint8_t *pp[2] = {NULL, NULL}; for (int q = 0; q < np; q++) { pp[q] = p + o; o += seg; }
if (!b1_open_ok(chi, n, tau, v - 1, nd, nd + 32)) return 0;
for (int q = 0; q < np; q++) if (!b1_open_ok(chi, n, tau, ps[q] - 1, pp[q], pp[q] + 32)) return 0;
uint8_t h[32]; b1_label(chi, v, np >= 1 ? pp[0] : NULL, np >= 2 ? pp[1] : NULL, h);
if (memcmp(h, nd, 32)) return 0;
}
return o == len;
}
/* instance inputs: the KAT chi of B1 (H('B1-fixture' || 'kat' || u64 n)) for instance 0; B3 batch chis for j >= 1 */
static void b1_kat_chi(int n, uint8_t chi[32]) { uint8_t m[21]; memcpy(m, "B1-fixture", 10); memcpy(m + 10, "kat", 3); b1_u64(m + 13, (uint64_t)n); b2_256(m, 21, chi); }
static void b1_batch_chi(int n, uint64_t j, uint8_t chi[32]) {
if (j == 0) { b1_kat_chi(n, chi); return; }
uint8_t m[8 + 16]; memcpy(m, "B3-batch", 8); b1_u64(m + 8, (uint64_t)n); b1_u64(m + 16, j); b2_256(m, 24, chi);
}
#endif

View file

@ -0,0 +1,133 @@
/*
* b3_fast_cpu.h - the CPU's best honest sequential path for the same B3P1 function:
* SHA-256 by the x86 SHA extensions (sha_ni) when the CPU has them, word-level
* message assembly, no change to any byte the spec hashes. selftest() compares
* every fast path against the portable spec (b3p1_spec.h) before a row counts.
*/
#ifndef B3_FAST_CPU_H
#define B3_FAST_CPU_H
#include "b3p1_spec.h"
#include <stdio.h>
#if defined(__x86_64__)
#include <immintrin.h>
#include <cpuid.h>
#endif
typedef void (*b3_cmp_fn)(uint32_t st[8], const uint32_t w[16]);
static void b3_cmp_portable(uint32_t st[8], const uint32_t w16[16]) {
uint8_t blk[64];
for (int i = 0; i < 16; i++) { blk[4*i]=w16[i]>>24; blk[4*i+1]=w16[i]>>16; blk[4*i+2]=w16[i]>>8; blk[4*i+3]=w16[i]; }
b3_compress(st, blk);
}
#if defined(__x86_64__)
__attribute__((target("sha,sse4.1,ssse3")))
static void b3_cmp_shani(uint32_t st[8], const uint32_t w16[16]) {
__m128i S0, S1, TMP, MSG, M[4], ABEF, CDGH;
TMP = _mm_loadu_si128((const __m128i *)&st[0]);
S1 = _mm_loadu_si128((const __m128i *)&st[4]);
TMP = _mm_shuffle_epi32(TMP, 0xB1);
S1 = _mm_shuffle_epi32(S1, 0x1B);
S0 = _mm_alignr_epi8(TMP, S1, 8);
S1 = _mm_blend_epi16(S1, TMP, 0xF0);
ABEF = S0; CDGH = S1;
for (int i = 0; i < 4; i++) M[i] = _mm_loadu_si128((const __m128i *)&w16[4*i]); /* already host-order words */
for (int g = 0; g < 16; g++) {
__m128i W;
if (g < 4) W = M[g];
else {
__m128i a = M[(g) & 3], b = M[(g+1) & 3], c = M[(g+2) & 3], d = M[(g+3) & 3];
/* a = W[g-4], b = W[g-3], c = W[g-2], d = W[g-1] */
__m128i t = _mm_sha256msg1_epu32(a, b);
t = _mm_add_epi32(t, _mm_alignr_epi8(d, c, 4));
W = _mm_sha256msg2_epu32(t, d);
M[g & 3] = W;
}
MSG = _mm_add_epi32(W, _mm_loadu_si128((const __m128i *)&b3_K[4*g]));
S1 = _mm_sha256rnds2_epu32(S1, S0, MSG);
MSG = _mm_shuffle_epi32(MSG, 0x0E);
S0 = _mm_sha256rnds2_epu32(S0, S1, MSG);
}
S0 = _mm_add_epi32(S0, ABEF); S1 = _mm_add_epi32(S1, CDGH);
TMP = _mm_shuffle_epi32(S0, 0x1B);
S1 = _mm_shuffle_epi32(S1, 0xB1);
S0 = _mm_blend_epi16(TMP, S1, 0xF0);
S1 = _mm_alignr_epi8(S1, TMP, 8);
_mm_storeu_si128((__m128i *)&st[0], S0);
_mm_storeu_si128((__m128i *)&st[4], S1);
}
static int b3_has_shani(void) {
unsigned a, b, c, d;
if (!__get_cpuid_count(7, 0, &a, &b, &c, &d)) return 0;
return (b >> 29) & 1;
}
#endif
/* words of a digest stored as 8 host-order uint32 (the SHA state words) */
static inline void b3_w2b(const uint32_t w[8], uint8_t b[32]) { for (int i = 0; i < 8; i++) { b[4*i]=w[i]>>24; b[4*i+1]=w[i]>>16; b[4*i+2]=w[i]>>8; b[4*i+3]=w[i]; } }
static inline void b3_b2w(const uint8_t b[32], uint32_t w[8]) { for (int i = 0; i < 8; i++) w[i] = ((uint32_t)b[4*i]<<24)|((uint32_t)b[4*i+1]<<16)|((uint32_t)b[4*i+2]<<8)|b[4*i+3]; }
static inline uint32_t b3_bswap(uint32_t x) { return (x>>24)|((x>>8)&0xff00)|((x<<8)&0xff0000)|(x<<24); }
/* label pass in word form: L is (N+1)*8 words; chiw = chi as 8 words */
static void b3_fast_label_all(b3_cmp_fn cmp, const uint32_t chiw[8], uint64_t N, const uint32_t *far, uint32_t *L) {
uint32_t w[16], st[8];
/* v = 1: 40 bytes, one block */
for (int i = 0; i < 8; i++) w[i] = chiw[i];
w[8] = b3_bswap(1); w[9] = 0; w[10] = 0x80000000u; for (int i = 11; i < 15; i++) w[i] = 0; w[15] = 320;
memcpy(st, b3_IV, 32); cmp(st, w); memcpy(L + 8, st, 32);
if (N >= 2) { /* v = 2: 72 bytes */
for (int i = 0; i < 8; i++) w[i] = chiw[i];
w[8] = b3_bswap(2); w[9] = 0; for (int i = 0; i < 6; i++) w[10+i] = L[8+i];
memcpy(st, b3_IV, 32); cmp(st, w);
w[0] = L[8+6]; w[1] = L[8+7]; w[2] = 0x80000000u; for (int i = 3; i < 15; i++) w[i] = 0; w[15] = 576;
cmp(st, w); memcpy(L + 16, st, 32);
}
for (uint64_t v = 3; v <= N; v++) { /* 104 bytes: chi | le64 v | l_far | l_{v-1} */
const uint32_t *pf = L + 8 * (uint64_t)far[v], *pp = L + 8 * (v - 1);
for (int i = 0; i < 8; i++) w[i] = chiw[i];
w[8] = b3_bswap((uint32_t)v); w[9] = b3_bswap((uint32_t)(v >> 32));
for (int i = 0; i < 6; i++) w[10+i] = pf[i];
memcpy(st, b3_IV, 32); cmp(st, w);
w[0] = pf[6]; w[1] = pf[7]; for (int i = 0; i < 8; i++) w[2+i] = pp[i];
w[10] = 0x80000000u; w[11] = w[12] = w[13] = w[14] = 0; w[15] = 832;
cmp(st, w); memcpy(L + 8 * v, st, 32);
}
}
static void b3_fast_node(b3_cmp_fn cmp, const uint32_t chiw[8], const uint32_t *l, const uint32_t *r, uint32_t out[8]) {
uint32_t w[16], st[8];
for (int i = 0; i < 8; i++) { w[i] = chiw[i]; w[8+i] = l[i]; }
memcpy(st, b3_IV, 32); cmp(st, w);
for (int i = 0; i < 8; i++) w[i] = r[i];
w[8] = 0x80000000u; for (int i = 9; i < 15; i++) w[i] = 0; w[15] = 768;
cmp(st, w); memcpy(out, st, 32);
}
/* tree words: (2^n - 1)*8, same index rule as the spec */
static void b3_fast_merkle(b3_cmp_fn cmp, const uint32_t chiw[8], int n, const uint32_t *L, uint32_t *T) {
for (int d = n - 1; d >= 0; d--) {
uint64_t cnt = 1ull << d;
for (uint64_t id = 0; id < cnt; id++) {
const uint32_t *l, *r;
if (d == n - 1) { l = L + 8 * (id + 1); r = L + 8 * (id + cnt + 1); }
else { l = T + 8 * ((2 * cnt - 1) + id); r = T + 8 * ((2 * cnt - 1) + id + cnt); }
b3_fast_node(cmp, chiw, l, r, T + 8 * ((cnt - 1) + id));
}
}
}
/* compare fast paths with the spec on a small graph; returns 0 on byte identity */
static int b3_fast_selftest(b3_cmp_fn cmp, int n) {
uint64_t N = 1ull << n; uint8_t chi[32]; b3_chi(7, 3, chi);
uint32_t *far = (uint32_t *)calloc(N + 1, 4); for (uint64_t v = 0; v <= N; v++) far[v] = b3_drsample_far(N, v);
uint8_t *lab = (uint8_t *)calloc(N + 1, 32), *tree = (uint8_t *)calloc(N, 32);
b3_label_all(chi, N, far, lab); b3_merkle(chi, n, lab, tree);
uint32_t chiw[8]; b3_b2w(chi, chiw);
uint32_t *L = (uint32_t *)calloc(N + 1, 32), *T = (uint32_t *)calloc(N, 32);
b3_fast_label_all(cmp, chiw, N, far, L); b3_fast_merkle(cmp, chiw, n, L, T);
int bad = 0; uint8_t b[32];
for (uint64_t v = 1; v <= N; v++) { b3_w2b(L + 8 * v, b); if (memcmp(b, lab + 32 * v, 32)) { bad++; } }
for (uint64_t i = 0; i + 1 < N; i++) { b3_w2b(T + 8 * i, b); if (memcmp(b, tree + 32 * i, 32)) { bad++; } }
free(far); free(lab); free(tree); free(L); free(T);
return bad;
}
#endif

459
tools/mhpow/b3/b3_gpu.cu Normal file
View file

@ -0,0 +1,459 @@
// b3_gpu.cu - B3 lane (R15-06): GPU labelling, Merkle commitment and proof creation for the
// B3P1 encoding of the Blocki-Smearsoll MTP/DRSample MHPoW, with the spec-path CPU oracle inside.
//
// Representation and scheduling changes ONLY. The DAG (far parent from the host's DRSample table,
// near parent v-1), the hash (SHA-256), the bytes hashed (b3p1_spec.h) and the challenge and proof
// shape are the spec's. What changes:
// * many instances (different chi) in flight, one graph shared by all (the graph is data-independent);
// * labels held as 8 host-order SHA state words (the digest's big-endian words: no byte is changed,
// only where it sits); layout SOA = instance-interleaved 16-byte halves, (row*2+h)*B + inst, so a
// warp's 32 instances read one contiguous 512-byte run per half; AOS = instance-major rows (ablation);
// * k1: one thread per instance, the far parent's label prefetched one node ahead;
// * k2: two lanes per instance (cooperative): the far parent's first compression block
// (chi | le64 v | l_far[0..23]) does not depend on l_{v-1} (DRSample's far parent is <= v-2), so
// lane A computes node v+1's first-block midstate while lane B finishes node v's second block;
// the per-label critical path falls from two compressions to one. Same bytes, same hashes.
// Build: nvcc -O3 -std=c++17 -gencode arch=compute_89,code=sm_89 -gencode arch=compute_120,code=sm_120
// -Xcompiler -fopenmp -o b3_gpu b3_gpu.cu
#include "b3p1_spec.h"
#include "b3_fast_cpu.h"
#include <cuda_runtime.h>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <vector>
#include <string>
#include <chrono>
#include <omp.h>
#define CK(x) do { cudaError_t e_ = (x); if (e_ != cudaSuccess) { fprintf(stderr, "CUDA %s at %s:%d\n", cudaGetErrorString(e_), __FILE__, __LINE__); exit(3); } } while (0)
__constant__ uint32_t dK[64];
__constant__ uint32_t dIV[8];
__device__ __forceinline__ uint32_t rr(uint32_t x, int n) { return __funnelshift_r(x, x, n); }
__device__ __forceinline__ uint32_t bsw(uint32_t x) { return __byte_perm(x, 0, 0x0123); }
// SHA-256 compression, 16-word rolling schedule, fully unrolled; w is consumed.
__device__ __forceinline__ void dcmp(uint32_t st[8], uint32_t w[16]) {
uint32_t a = st[0], b = st[1], c = st[2], d = st[3], e = st[4], f = st[5], g = st[6], h = st[7];
#pragma unroll
for (int i = 0; i < 64; i++) {
uint32_t wi;
if (i < 16) wi = w[i];
else {
uint32_t w15 = w[(i + 1) & 15], w2 = w[(i + 14) & 15];
uint32_t s0 = rr(w15, 7) ^ rr(w15, 18) ^ (w15 >> 3);
uint32_t s1 = rr(w2, 17) ^ rr(w2, 19) ^ (w2 >> 10);
wi = w[i & 15] = w[i & 15] + s0 + w[(i + 9) & 15] + s1;
}
uint32_t t1 = h + (rr(e, 6) ^ rr(e, 11) ^ rr(e, 25)) + ((e & f) ^ (~e & g)) + dK[i] + wi;
uint32_t t2 = (rr(a, 2) ^ rr(a, 13) ^ rr(a, 22)) + ((a & b) ^ (a & c) ^ (b & c));
h = g; g = f; f = e; e = d + t1; d = c; c = b; b = a; a = t1 + t2;
}
st[0] += a; st[1] += b; st[2] += c; st[3] += d; st[4] += e; st[5] += f; st[6] += g; st[7] += h;
}
template <bool SOA> __device__ __forceinline__ uint64_t ix(uint64_t row, int h, uint64_t inst, uint64_t B, uint64_t rows) {
return SOA ? ((row * 2 + h) * B + inst) : ((inst * rows + row) * 2 + h);
}
__device__ __forceinline__ void ld8(const uint4 *p0, const uint4 *p1, uint32_t o[8]) {
uint4 a = *p0, b = *p1; o[0] = a.x; o[1] = a.y; o[2] = a.z; o[3] = a.w; o[4] = b.x; o[5] = b.y; o[6] = b.z; o[7] = b.w;
}
__device__ __forceinline__ void st8(uint4 *p0, uint4 *p1, const uint32_t s[8]) {
*p0 = make_uint4(s[0], s[1], s[2], s[3]); *p1 = make_uint4(s[4], s[5], s[6], s[7]);
}
// node 1 and node 2 (shared prologue)
__device__ __forceinline__ void first_two(const uint32_t c[8], uint32_t l1[8], uint32_t l2[8]) {
uint32_t w[16];
#pragma unroll
for (int i = 0; i < 8; i++) w[i] = c[i];
w[8] = bsw(1); w[9] = 0; w[10] = 0x80000000u; w[11] = w[12] = w[13] = w[14] = 0; w[15] = 320;
#pragma unroll
for (int i = 0; i < 8; i++) l1[i] = dIV[i];
dcmp(l1, w);
#pragma unroll
for (int i = 0; i < 8; i++) w[i] = c[i];
w[8] = bsw(2); w[9] = 0;
#pragma unroll
for (int i = 0; i < 6; i++) w[10 + i] = l1[i];
#pragma unroll
for (int i = 0; i < 8; i++) l2[i] = dIV[i];
dcmp(l2, w);
w[0] = l1[6]; w[1] = l1[7]; w[2] = 0x80000000u;
#pragma unroll
for (int i = 3; i < 15; i++) w[i] = 0;
w[15] = 576;
dcmp(l2, w);
}
// k1: one thread per instance
template <bool SOA>
__global__ void k_label1(const uint32_t *__restrict__ chi, const uint32_t *__restrict__ far, uint64_t N, uint4 *L, uint64_t B) {
uint64_t inst = (uint64_t)blockIdx.x * blockDim.x + threadIdx.x;
if (inst >= B) return;
const uint64_t rows = N + 1;
uint32_t c[8], l1[8], prev[8], w[16], st[8];
#pragma unroll
for (int i = 0; i < 8; i++) c[i] = chi[inst * 8 + i];
first_two(c, l1, prev);
st8(&L[ix<SOA>(1, 0, inst, B, rows)], &L[ix<SOA>(1, 1, inst, B, rows)], l1);
st8(&L[ix<SOA>(2, 0, inst, B, rows)], &L[ix<SOA>(2, 1, inst, B, rows)], prev);
if (N < 3) return;
uint32_t f = far[3];
uint4 fa = L[ix<SOA>(f, 0, inst, B, rows)], fb = L[ix<SOA>(f, 1, inst, B, rows)];
for (uint64_t v = 3; v <= N; v++) {
uint4 na = fa, nb = fb;
if (v + 1 <= N) { uint32_t nf = __ldg(&far[v + 1]); na = L[ix<SOA>(nf, 0, inst, B, rows)]; nb = L[ix<SOA>(nf, 1, inst, B, rows)]; }
#pragma unroll
for (int i = 0; i < 8; i++) w[i] = c[i];
w[8] = bsw((uint32_t)v); w[9] = bsw((uint32_t)(v >> 32));
w[10] = fa.x; w[11] = fa.y; w[12] = fa.z; w[13] = fa.w; w[14] = fb.x; w[15] = fb.y;
#pragma unroll
for (int i = 0; i < 8; i++) st[i] = dIV[i];
dcmp(st, w);
w[0] = fb.z; w[1] = fb.w;
#pragma unroll
for (int i = 0; i < 8; i++) w[2 + i] = prev[i];
w[10] = 0x80000000u; w[11] = w[12] = w[13] = w[14] = 0; w[15] = 832;
dcmp(st, w);
st8(&L[ix<SOA>(v, 0, inst, B, rows)], &L[ix<SOA>(v, 1, inst, B, rows)], st);
#pragma unroll
for (int i = 0; i < 8; i++) prev[i] = st[i];
fa = na; fb = nb;
}
}
// k2: two lanes per instance; lane A (even) = next node's first-block midstate, lane B (odd) = this node's final block.
template <bool SOA>
__global__ void k_label2(const uint32_t *__restrict__ chi, const uint32_t *__restrict__ far, uint64_t N, uint4 *L, uint64_t B) {
uint64_t gt = (uint64_t)blockIdx.x * blockDim.x + threadIdx.x;
uint64_t inst = gt >> 1; const int isB = (int)(gt & 1);
const bool live = inst < B; if (!live) inst = B - 1; // every lane takes part in the shuffles; dead lanes never store
const uint64_t rows = N + 1; const unsigned M = 0xffffffffu;
uint32_t c[8], l1[8], prev[8], prev2[8], w[16], st[8], mid[8];
#pragma unroll
for (int i = 0; i < 8; i++) c[i] = chi[inst * 8 + i];
first_two(c, l1, prev);
#pragma unroll
for (int i = 0; i < 8; i++) prev2[i] = l1[i];
if (isB && live) {
st8(&L[ix<SOA>(1, 0, inst, B, rows)], &L[ix<SOA>(1, 1, inst, B, rows)], l1);
st8(&L[ix<SOA>(2, 0, inst, B, rows)], &L[ix<SOA>(2, 1, inst, B, rows)], prev);
}
if (N < 3) return;
// node 3's far parent is node 1 by the edge rule (g = 2, r = 2); both lanes hold l1. Midstate of node 3:
#pragma unroll
for (int i = 0; i < 8; i++) w[i] = c[i];
w[8] = bsw(3); w[9] = 0;
#pragma unroll
for (int i = 0; i < 6; i++) w[10 + i] = l1[i];
#pragma unroll
for (int i = 0; i < 8; i++) mid[i] = dIV[i];
dcmp(mid, w);
uint32_t f6 = l1[6], f7 = l1[7]; // B's: far label words 6,7 of the node it finishes next
uint32_t nf6 = 0, nf7 = 0; // A's: far label words 6,7 of node v+1
uint4 pa = make_uint4(0, 0, 0, 0), pb = pa; uint32_t pidx = 0xffffffffu; // A's prefetch of l_{far[v+1]} when far[v+1] <= v-2
__syncwarp(M);
for (uint64_t v = 3; v <= N; v++) {
// A: block 0 of node v+1 (far[v+1] <= v-1)
uint32_t lf[8];
uint64_t u = v + 1; uint32_t fu = (u <= N) ? __ldg(&far[u]) : 1;
if (!isB) {
if (fu == v - 1) {
#pragma unroll
for (int i = 0; i < 8; i++) lf[i] = prev[i];
} else if (fu == v - 2) {
#pragma unroll
for (int i = 0; i < 8; i++) lf[i] = prev2[i];
} else if (fu == pidx) {
lf[0] = pa.x; lf[1] = pa.y; lf[2] = pa.z; lf[3] = pa.w; lf[4] = pb.x; lf[5] = pb.y; lf[6] = pb.z; lf[7] = pb.w;
} else {
uint4 a = __ldcg(&L[ix<SOA>(fu, 0, inst, B, rows)]), b = __ldcg(&L[ix<SOA>(fu, 1, inst, B, rows)]);
lf[0] = a.x; lf[1] = a.y; lf[2] = a.z; lf[3] = a.w; lf[4] = b.x; lf[5] = b.y; lf[6] = b.z; lf[7] = b.w;
}
// prefetch for the next step: far[v+2] if it is <= v-2 (stored and fenced at least one step ago)
uint64_t u2 = v + 2;
if (u2 <= N) {
uint32_t f2 = __ldg(&far[u2]);
if (f2 + 2 <= v) { pa = __ldcg(&L[ix<SOA>(f2, 0, inst, B, rows)]); pb = __ldcg(&L[ix<SOA>(f2, 1, inst, B, rows)]); pidx = f2; }
else pidx = 0xffffffffu;
}
#pragma unroll
for (int i = 0; i < 8; i++) w[i] = c[i];
w[8] = bsw((uint32_t)u); w[9] = bsw((uint32_t)(u >> 32));
#pragma unroll
for (int i = 0; i < 6; i++) w[10 + i] = lf[i];
#pragma unroll
for (int i = 0; i < 8; i++) st[i] = dIV[i];
nf6 = lf[6]; nf7 = lf[7];
} else {
w[0] = f6; w[1] = f7;
#pragma unroll
for (int i = 0; i < 8; i++) w[2 + i] = prev[i];
w[10] = 0x80000000u; w[11] = w[12] = w[13] = w[14] = 0; w[15] = 832;
#pragma unroll
for (int i = 0; i < 8; i++) st[i] = mid[i];
}
__syncwarp(M); // reconverge A and B before the shared compression
dcmp(st, w); // the one uniform compression of the step
if (isB && live) st8(&L[ix<SOA>(v, 0, inst, B, rows)], &L[ix<SOA>(v, 1, inst, B, rows)], st);
__threadfence_block();
__syncwarp(M);
uint32_t x[8];
#pragma unroll
for (int i = 0; i < 8; i++) x[i] = __shfl_xor_sync(M, st[i], 1);
uint32_t e6 = __shfl_xor_sync(M, nf6, 1), e7 = __shfl_xor_sync(M, nf7, 1);
if (!isB) { // A receives l_v
#pragma unroll
for (int i = 0; i < 8; i++) { prev2[i] = prev[i]; prev[i] = x[i]; }
} else { // B receives mid_{v+1} and the far words; keeps l_v
#pragma unroll
for (int i = 0; i < 8; i++) { prev2[i] = prev[i]; prev[i] = st[i]; mid[i] = x[i]; }
f6 = e6; f7 = e7;
}
}
}
// Merkle level d (paper bit order): T[(cnt-1)+id] = H(chi | left | right), left/right = level d+1 nodes id and id+cnt
template <bool SOA>
__global__ void k_tree(int d, int n, const uint32_t *__restrict__ chi, const uint4 *L, uint4 *T, uint64_t B, uint64_t N) {
uint64_t t = (uint64_t)blockIdx.x * blockDim.x + threadIdx.x; uint64_t cnt = 1ull << d;
if (t >= cnt * B) return;
uint64_t inst = t % B, id = t / B; const uint64_t lrows = N + 1, trows = N;
uint32_t l[8], r[8], w[16], st[8];
if (d == n - 1) {
ld8(&L[ix<SOA>(id + 1, 0, inst, B, lrows)], &L[ix<SOA>(id + 1, 1, inst, B, lrows)], l);
ld8(&L[ix<SOA>(id + cnt + 1, 0, inst, B, lrows)], &L[ix<SOA>(id + cnt + 1, 1, inst, B, lrows)], r);
} else {
uint64_t base = 2 * cnt - 1;
ld8(&T[ix<SOA>(base + id, 0, inst, B, trows)], &T[ix<SOA>(base + id, 1, inst, B, trows)], l);
ld8(&T[ix<SOA>(base + id + cnt, 0, inst, B, trows)], &T[ix<SOA>(base + id + cnt, 1, inst, B, trows)], r);
}
#pragma unroll
for (int i = 0; i < 8; i++) { w[i] = chi[inst * 8 + i]; w[8 + i] = l[i]; st[i] = dIV[i]; }
dcmp(st, w);
#pragma unroll
for (int i = 0; i < 8; i++) w[i] = r[i];
w[8] = 0x80000000u; w[9] = w[10] = w[11] = w[12] = w[13] = w[14] = 0; w[15] = 768;
dcmp(st, w);
st8(&T[ix<SOA>((cnt - 1) + id, 0, inst, B, trows)], &T[ix<SOA>((cnt - 1) + id, 1, inst, B, trows)], st);
}
// proof: thread per (inst, challenge); slot = 3 segments of (1+n) digests, written as digest BYTES (big-endian words)
template <bool SOA>
__global__ void k_prove(int n, int k, const uint32_t *__restrict__ chi, const uint32_t *__restrict__ far, const uint4 *L, const uint4 *T,
uint64_t B, uint64_t N, uint32_t *out, uint8_t *np_out) {
uint64_t t = (uint64_t)blockIdx.x * blockDim.x + threadIdx.x;
if (t >= (uint64_t)k * B) return;
uint64_t inst = t / k; int i = (int)(t % k) + 1; const uint64_t lrows = N + 1, trows = N;
uint32_t root[8], w[16], st[8];
ld8(&T[ix<SOA>(0, 0, inst, B, trows)], &T[ix<SOA>(0, 1, inst, B, trows)], root);
#pragma unroll
for (int q = 0; q < 8; q++) { w[q] = chi[inst * 8 + q]; st[q] = dIV[q]; }
w[8] = bsw((uint32_t)i); w[9] = 0;
#pragma unroll
for (int q = 0; q < 6; q++) w[10 + q] = root[q];
dcmp(st, w);
w[0] = root[6]; w[1] = root[7]; w[2] = 0x80000000u;
#pragma unroll
for (int q = 3; q < 15; q++) w[q] = 0;
w[15] = 576;
dcmp(st, w);
// first 8 digest bytes little-endian = bswap(st0) | bswap(st1) << 32
uint64_t c = ((uint64_t)bsw(st[0]) | ((uint64_t)bsw(st[1]) << 32)) & (N - 1);
uint64_t v = c + 1; uint64_t ps[3]; int np = 0; ps[np++] = v;
if (v == 2) ps[np++] = 1; else if (v >= 3) { ps[np++] = far[v]; ps[np++] = v - 1; }
np_out[inst * k + (i - 1)] = (uint8_t)np;
const uint64_t seg = (uint64_t)(1 + n) * 8, slot = 3 * seg;
uint32_t *o = out + (inst * k + (i - 1)) * slot;
for (int p = 0; p < np; p++) {
uint64_t x = ps[p] - 1; uint32_t d8[8];
ld8(&L[ix<SOA>(ps[p], 0, inst, B, lrows)], &L[ix<SOA>(ps[p], 1, inst, B, lrows)], d8);
for (int q = 0; q < 8; q++) o[p * seg + q] = bsw(d8[q]);
for (int j = 1; j <= n; j++) {
uint64_t sid = (x & ((1ull << j) - 1)) ^ (1ull << (j - 1));
if (j == n) ld8(&L[ix<SOA>(sid + 1, 0, inst, B, lrows)], &L[ix<SOA>(sid + 1, 1, inst, B, lrows)], d8);
else { uint64_t r = ((1ull << j) - 1) + sid; ld8(&T[ix<SOA>(r, 0, inst, B, trows)], &T[ix<SOA>(r, 1, inst, B, trows)], d8); }
for (int q = 0; q < 8; q++) o[p * seg + 8 * j + q] = bsw(d8[q]);
}
}
}
static double wall_ms() { return std::chrono::duration<double, std::milli>(std::chrono::system_clock::now().time_since_epoch()).count(); }
struct Opt { int n = 20; long B = 0; bool soa = true; int kern = 1; int passes = 1; int k = 64; long check = 2; uint64_t seed = 1; bool wrong_edge = false;
double min_label_s = 0; std::string tag = "row"; double reserve_gib = 1.0; };
int main(int argc, char **argv) {
Opt o;
for (int a = 1; a < argc; a++) {
std::string s = argv[a]; auto nx = [&]() { return std::string(argv[++a]); };
if (s == "--n") o.n = std::stoi(nx()); else if (s == "--B") o.B = std::stol(nx()); else if (s == "--layout") o.soa = nx() == "soa";
else if (s == "--kernel") o.kern = std::stoi(nx()); else if (s == "--passes") o.passes = std::stoi(nx()); else if (s == "--k") o.k = std::stoi(nx());
else if (s == "--check") o.check = std::stol(nx()); else if (s == "--seed") o.seed = std::stoull(nx()); else if (s == "--wrong-edge") o.wrong_edge = true;
else if (s == "--min-label-s") o.min_label_s = std::stod(nx()); else if (s == "--tag") o.tag = nx(); else if (s == "--reserve-gib") o.reserve_gib = std::stod(nx());
else { fprintf(stderr, "unknown arg %s\n", s.c_str()); return 2; }
}
const int n = o.n; const uint64_t N = 1ull << n;
cudaDeviceProp prop; CK(cudaGetDeviceProperties(&prop, 0));
CK(cudaMemcpyToSymbol(dK, b3_K, sizeof b3_K)); CK(cudaMemcpyToSymbol(dIV, b3_IV, sizeof b3_IV));
// state construction 1: the graph (DRSample far table, the spec function, host threads)
double tg0 = wall_ms();
std::vector<uint32_t> far(N + 1);
#pragma omp parallel for schedule(static)
for (long long v = 0; v <= (long long)N; v++) far[v] = b3_drsample_far(N, (uint64_t)v);
std::vector<uint32_t> far_dev = far;
if (o.wrong_edge) for (uint64_t v = 3; v <= N; v++) far_dev[v] = (uint32_t)(v - 2); // KNOWN-FAILED: the edge rule changed
double t_graph = (wall_ms() - tg0) / 1e3;
// instances in flight: labels (N+1) + tree (N) digests + one proof slot per challenge
const uint64_t slotw = 3ull * (1 + n) * 8;
const uint64_t per_inst = (N + 1) * 32 + N * 32 + (uint64_t)o.k * slotw * 4 + o.k + 32;
size_t fr, tot; CK(cudaMemGetInfo(&fr, &tot));
uint64_t fixed = (N + 1) * 4 + (uint64_t)(o.reserve_gib * (1ull << 30));
uint64_t Bmax = fr > fixed ? (fr - fixed) / per_inst : 0;
uint64_t B = o.B > 0 ? (uint64_t)o.B : Bmax;
if (B == 0 || B > Bmax) { fprintf(stderr, "B=%llu exceeds Bmax=%llu (free %.2f GiB)\n", (unsigned long long)B, (unsigned long long)Bmax, fr / 1073741824.0); return 4; }
double ts0 = wall_ms();
uint4 *dL, *dT; uint32_t *dfar, *dchi, *dproof; uint8_t *dnp;
CK(cudaMalloc(&dL, (N + 1) * 32 * B)); CK(cudaMalloc(&dT, N * 32 * B)); CK(cudaMalloc(&dfar, (N + 1) * 4));
CK(cudaMalloc(&dchi, B * 32)); CK(cudaMalloc(&dproof, B * o.k * slotw * 4)); CK(cudaMalloc(&dnp, B * o.k));
std::vector<uint32_t> chiw(B * 8); std::vector<uint8_t> chib(B * 32);
for (uint64_t j = 0; j < B; j++) { b3_chi(o.seed, j, &chib[32 * j]); b3_b2w(&chib[32 * j], &chiw[8 * j]); }
CK(cudaMemcpy(dfar, far_dev.data(), (N + 1) * 4, cudaMemcpyHostToDevice));
CK(cudaMemcpy(dchi, chiw.data(), B * 32, cudaMemcpyHostToDevice));
CK(cudaDeviceSynchronize());
double t_state_alloc = (wall_ms() - ts0) / 1e3;
cudaEvent_t e0, e1; CK(cudaEventCreate(&e0)); CK(cudaEventCreate(&e1));
const int TPB = 128;
// labelling passes (each pass recomputes every label of every instance: identical output)
std::vector<double> pass_s; double lw0 = wall_ms(), lw1 = lw0;
for (int p = 0; p < o.passes || (lw1 - lw0) / 1e3 < o.min_label_s; p++) {
CK(cudaEventRecord(e0));
if (o.kern == 1) {
dim3 g((unsigned)((B + TPB - 1) / TPB));
if (o.soa) k_label1<true><<<g, TPB>>>(dchi, dfar, N, dL, B); else k_label1<false><<<g, TPB>>>(dchi, dfar, N, dL, B);
} else {
uint64_t th = 2 * B; dim3 g((unsigned)((th + TPB - 1) / TPB));
if (o.soa) k_label2<true><<<g, TPB>>>(dchi, dfar, N, dL, B); else k_label2<false><<<g, TPB>>>(dchi, dfar, N, dL, B);
}
CK(cudaGetLastError()); CK(cudaEventRecord(e1)); CK(cudaEventSynchronize(e1));
float ms; CK(cudaEventElapsedTime(&ms, e0, e1)); pass_s.push_back(ms / 1e3); lw1 = wall_ms();
if (p > 100000) break;
}
// commitment
CK(cudaEventRecord(e0));
for (int d = n - 1; d >= 0; d--) {
uint64_t th = (1ull << d) * B; dim3 g((unsigned)((th + 255) / 256));
if (o.soa) k_tree<true><<<g, 256>>>(d, n, dchi, dL, dT, B, N); else k_tree<false><<<g, 256>>>(d, n, dchi, dL, dT, B, N);
}
CK(cudaGetLastError()); CK(cudaEventRecord(e1)); CK(cudaEventSynchronize(e1));
float ms_tree; CK(cudaEventElapsedTime(&ms_tree, e0, e1));
// proof creation: challenges + openings on the device, copy home, compact to the spec's byte layout
double tp0 = wall_ms();
{
uint64_t th = (uint64_t)o.k * B; dim3 g((unsigned)((th + 127) / 128));
if (o.soa) k_prove<true><<<g, 128>>>(n, o.k, dchi, dfar, dL, dT, B, N, dproof, dnp);
else k_prove<false><<<g, 128>>>(n, o.k, dchi, dfar, dL, dT, B, N, dproof, dnp);
CK(cudaGetLastError()); CK(cudaDeviceSynchronize());
}
std::vector<uint32_t> hproof(B * o.k * slotw); std::vector<uint8_t> hnp(B * o.k);
CK(cudaMemcpy(hproof.data(), dproof, hproof.size() * 4, cudaMemcpyDeviceToHost));
CK(cudaMemcpy(hnp.data(), dnp, hnp.size(), cudaMemcpyDeviceToHost));
std::vector<std::vector<uint8_t>> proofs(B);
const uint64_t segb = (uint64_t)(1 + n) * 32;
#pragma omp parallel for schedule(static)
for (long long j = 0; j < (long long)B; j++) {
std::vector<uint8_t> &P = proofs[j]; P.reserve(32 + (size_t)o.k * 3 * segb);
const uint8_t *s0 = (const uint8_t *)&hproof[((uint64_t)j * o.k) * slotw];
// root = the device tree's node 0, as bytes: it is also the first 32 bytes of nothing in the slot, so read it from T below
P.resize(32);
for (int i = 0; i < o.k; i++) {
const uint8_t *s = s0 + (uint64_t)i * slotw * 4; int np = hnp[(uint64_t)j * o.k + i];
P.insert(P.end(), s, s + np * segb);
}
}
// roots
std::vector<uint32_t> rootw(B * 8);
{
std::vector<uint4> tmp(o.soa ? 2 * B : 2);
if (o.soa) { CK(cudaMemcpy(tmp.data(), dT, 2 * B * 16, cudaMemcpyDeviceToHost));
for (uint64_t j = 0; j < B; j++) { uint4 a = tmp[j], b = tmp[B + j]; uint32_t r[8] = {a.x, a.y, a.z, a.w, b.x, b.y, b.z, b.w}; memcpy(&rootw[8 * j], r, 32); } }
else for (uint64_t j = 0; j < B; j++) { CK(cudaMemcpy(tmp.data(), dT + (j * N) * 2, 32, cudaMemcpyDeviceToHost));
uint32_t r[8] = {tmp[0].x, tmp[0].y, tmp[0].z, tmp[0].w, tmp[1].x, tmp[1].y, tmp[1].z, tmp[1].w}; memcpy(&rootw[8 * j], r, 32); }
}
for (uint64_t j = 0; j < B; j++) b3_w2b(&rootw[8 * j], proofs[j].data());
double t_prove = (wall_ms() - tp0) / 1e3;
// verification of EVERY GPU proof by the spec verifier (true DRSample graph)
double tv0 = wall_ms(); long accepted = 0;
#pragma omp parallel for reduction(+ : accepted) schedule(dynamic, 1)
for (long long j = 0; j < (long long)B; j++) accepted += b3_verify(&chib[32 * j], n, o.k, far.data(), proofs[j].data(), proofs[j].size());
double t_verify_all = (wall_ms() - tv0) / 1e3;
// oracle: full byte identity of labels, tree, root and proof for `check` instances against the spec path (portable SHA-256)
std::vector<uint64_t> chk;
uint64_t C = o.check < 0 ? B : std::min<uint64_t>((uint64_t)o.check, B);
for (uint64_t q = 0; q < C; q++) chk.push_back(C == 1 ? 0 : (q * (B - 1)) / (C - 1));
long lab_bad_inst = 0, tree_bad_inst = 0, root_bad = 0, proof_bad = 0;
double tc0 = wall_ms();
if (C) {
std::vector<uint4> hL, hT;
if (o.soa) { // one bulk copy home, then a host gather per checked instance
hL.resize(2 * (N + 1) * B); hT.resize(2 * N * B);
CK(cudaMemcpy(hL.data(), dL, hL.size() * 16, cudaMemcpyDeviceToHost));
CK(cudaMemcpy(hT.data(), dT, hT.size() * 16, cudaMemcpyDeviceToHost));
}
for (uint64_t q = 0; q < C; q++) {
uint64_t j = chk[q];
std::vector<uint32_t> Lw((N + 1) * 8), Tw(N * 8);
if (o.soa) {
#pragma omp parallel for schedule(static)
for (long long r = 0; r < (long long)(2 * (N + 1)); r++) memcpy(&Lw[4 * r], &hL[(uint64_t)r * B + j], 16);
#pragma omp parallel for schedule(static)
for (long long r = 0; r < (long long)(2 * N); r++) memcpy(&Tw[4 * r], &hT[(uint64_t)r * B + j], 16);
} else {
CK(cudaMemcpy(Lw.data(), (const char *)dL + j * (N + 1) * 32, (N + 1) * 32, cudaMemcpyDeviceToHost));
CK(cudaMemcpy(Tw.data(), (const char *)dT + j * N * 32, N * 32, cudaMemcpyDeviceToHost));
}
std::vector<uint8_t> lab((N + 1) * 32), tree(N * 32);
b3_label_all(&chib[32 * j], N, far.data(), lab.data());
b3_merkle(&chib[32 * j], n, lab.data(), tree.data());
long lb = 0, tb = 0; uint8_t b[32];
#pragma omp parallel for reduction(+ : lb) schedule(static)
for (long long v = 1; v <= (long long)N; v++) { uint8_t bb[32]; b3_w2b(&Lw[8 * v], bb); lb += memcmp(bb, &lab[32 * v], 32) != 0; }
#pragma omp parallel for reduction(+ : tb) schedule(static)
for (long long i = 0; i < (long long)N - 1; i++) { uint8_t bb[32]; b3_w2b(&Tw[8 * i], bb); tb += memcmp(bb, &tree[32 * i], 32) != 0; }
b3_w2b(&rootw[8 * j], b); root_bad += memcmp(b, &tree[0], 32) != 0;
std::vector<uint8_t> P(b3_proof_bytes_max(n, o.k)); size_t pl = b3_prove(&chib[32 * j], n, o.k, far.data(), lab.data(), tree.data(), tree.data(), P.data());
proof_bad += (pl != proofs[j].size() || memcmp(P.data(), proofs[j].data(), pl) != 0);
lab_bad_inst += lb != 0; tree_bad_inst += tb != 0;
if (lb || tb) fprintf(stderr, "oracle: instance %llu labels_bad=%ld tree_bad=%ld\n", (unsigned long long)j, lb, tb);
}
}
double t_check = (wall_ms() - tc0) / 1e3;
bool oracle_ok = C > 0 && lab_bad_inst == 0 && tree_bad_inst == 0 && root_bad == 0 && proof_bad == 0 && accepted == (long)B;
// label pass statistics: skip the first pass when there are several (warm-up)
double sum = 0; int cnt = 0;
for (size_t p = (pass_s.size() > 1 ? 1 : 0); p < pass_s.size(); p++) { sum += pass_s[p]; cnt++; }
double label_s = sum / cnt;
double lps = (double)N * B / label_s;
printf("{\"tag\":\"%s\",\"gpu\":\"%s\",\"sm\":\"%d.%d\",\"sms\":%d,\"encoding\":\"B3P1\",\"n\":%d,\"N\":%llu,\"inst_MiB\":%.1f,\"B\":%llu,\"Bmax\":%llu,"
"\"layout\":\"%s\",\"kernel\":\"k%d\",\"k\":%d,\"wrong_edge\":%d,\"passes\":%zu,\"graph_s\":%.4f,\"state_alloc_s\":%.4f,"
"\"label_s_per_pass\":%.6f,\"labels_per_s\":%.1f,\"labels_per_s_per_inst\":%.1f,\"ns_per_label_per_inst\":%.2f,"
"\"merkle_s\":%.6f,\"prove_s\":%.6f,\"verify_all_s\":%.4f,\"accepted\":%ld,\"checked\":%llu,\"lab_bad_inst\":%ld,\"tree_bad_inst\":%ld,"
"\"root_bad\":%ld,\"proof_bad\":%ld,\"check_s\":%.2f,\"oracle\":\"%s\",\"label_window_unix_ms\":[%.0f,%.0f],\"free_gib\":%.2f,\"per_inst_MiB\":%.1f}\n",
o.tag.c_str(), prop.name, prop.major, prop.minor, prop.multiProcessorCount, n, (unsigned long long)N, N * 32.0 / 1048576.0,
(unsigned long long)B, (unsigned long long)Bmax, o.soa ? "soa" : "aos", o.kern, o.k, (int)o.wrong_edge, pass_s.size(), t_graph, t_state_alloc,
label_s, lps, lps / B, 1e9 / (lps / B), ms_tree / 1e3, t_prove, t_verify_all, accepted, (unsigned long long)C, lab_bad_inst, tree_bad_inst,
root_bad, proof_bad, t_check, oracle_ok ? "IDENTICAL" : "MISMATCH", lw0, lw1, fr / 1073741824.0, per_inst / 1048576.0);
fflush(stdout);
return oracle_ok ? 0 : 1;
}

337
tools/mhpow/b3/b3_gpu_b1.cu Normal file
View file

@ -0,0 +1,337 @@
// b3_gpu_b1.cu - B3 lane (R15-06): GPU labelling, Merkle commitment and proof creation for the B1 lane's reference
// encoding (b1enc_spec.h: BLAKE2b-256, tags L/M/C/G, u64 LE, B1's derandomised DRSample, B1's proof container), with the
// C-port oracle inside. The C port reproduces B1's known-answer fixtures byte for byte (cpu_ref_b1 kat); instance 0 of every
// batch is B1's own KAT input chi = H('B1-fixture' || 'kat' || u64 n), so its labels and root are compared with the fixture.
//
// Representation and scheduling changes ONLY: the graph (far parent from the host's B1 DRSample table, near parent v-1), the
// hash, every byte hashed, the challenge rule and the proof container are B1's. What changes:
// * many instances (different chi) in flight; one graph shared by all (it is data-independent and fixed a priori);
// * labels held as 4 little-endian u64 words (the BLAKE2b output words; the digest's bytes in order);
// * SOA: instance-interleaved 16-byte halves ((row*2+h)*B + inst) so a warp's instances read one contiguous run;
// AOS: instance-major rows (ablation);
// * k1: one thread per instance, the far parent's label (always <= v-2) prefetched one node ahead, l_{v-1} kept in registers.
// No cooperative split of one label exists in this encoding: the whole 105-byte label message is ONE BLAKE2b block, so the
// per-label critical path is one compression whatever the lane count (see the README; the SHA-256 reading B3P1 has two
// blocks and its first block is independent of l_{v-1}, which is what b3_gpu.cu's k2 exploits).
// Build: nvcc -O3 -std=c++17 -gencode arch=compute_89,code=sm_89 -gencode arch=compute_120,code=sm_120 \
// -Xcompiler -fopenmp -o b3_gpu_b1 b3_gpu_b1.cu
#include "b1enc_spec.h"
#include <cuda_runtime.h>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <vector>
#include <string>
#include <chrono>
#include <omp.h>
#define CK(x) do { cudaError_t e_ = (x); if (e_ != cudaSuccess) { fprintf(stderr, "CUDA %s at %s:%d\n", cudaGetErrorString(e_), __FILE__, __LINE__); exit(3); } } while (0)
__constant__ uint64_t dIV2[8];
__device__ __forceinline__ uint64_t r64(uint64_t x, int n) { return (x >> n) | (x << (64 - n)); }
#define DG(a, b, c, d, x, y) { a = a + b + (x); d = r64(d ^ a, 32); c = c + d; b = r64(b ^ c, 24); a = a + b + (y); d = r64(d ^ a, 16); c = c + d; b = r64(b ^ c, 63); }
// one BLAKE2b-256 block (the last and only one): returns the 4 output words
__device__ __forceinline__ void b2blk(const uint64_t m[16], uint64_t t, uint64_t o[4]) {
uint64_t v[16];
#pragma unroll
for (int i = 0; i < 8; i++) { v[i] = dIV2[i]; v[i + 8] = dIV2[i]; }
v[0] ^= 0x01010020ULL;
v[12] ^= t; v[14] = ~v[14];
const uint64_t h0 = v[0], h1 = v[1], h2 = v[2], h3 = v[3];
#pragma unroll
for (int r = 0; r < 12; r++) {
// sigma indices are compile-time after unrolling: use a constexpr table in registers
constexpr uint8_t S[12][16] = {
{0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15},{14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3},{11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4},
{7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8},{9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13},{2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9},
{12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11},{13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10},{6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5},
{10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0},{0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15},{14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3}};
DG(v[0], v[4], v[8], v[12], m[S[r][0]], m[S[r][1]]);
DG(v[1], v[5], v[9], v[13], m[S[r][2]], m[S[r][3]]);
DG(v[2], v[6], v[10], v[14], m[S[r][4]], m[S[r][5]]);
DG(v[3], v[7], v[11], v[15], m[S[r][6]], m[S[r][7]]);
DG(v[0], v[5], v[10], v[15], m[S[r][8]], m[S[r][9]]);
DG(v[1], v[6], v[11], v[12], m[S[r][10]], m[S[r][11]]);
DG(v[2], v[7], v[8], v[13], m[S[r][12]], m[S[r][13]]);
DG(v[3], v[4], v[9], v[14], m[S[r][14]], m[S[r][15]]);
}
o[0] = h0 ^ v[0] ^ v[8]; o[1] = h1 ^ v[1] ^ v[9]; o[2] = h2 ^ v[2] ^ v[10]; o[3] = h3 ^ v[3] ^ v[11];
}
// message = tag byte || NF u64 fields, little-endian: m[0] = tag | F0<<8, m[q] = F[q-1]>>56 | F[q]<<8, m[NF] = F[NF-1]>>56
template <int NF> __device__ __forceinline__ void pack(uint8_t tag, const uint64_t F[NF], uint64_t m[16]) {
m[0] = (uint64_t)tag | (F[0] << 8);
#pragma unroll
for (int q = 1; q < NF; q++) m[q] = (F[q - 1] >> 56) | (F[q] << 8);
m[NF] = F[NF - 1] >> 56;
#pragma unroll
for (int q = NF + 1; q < 16; q++) m[q] = 0;
}
template <bool SOA> __device__ __forceinline__ uint64_t ix(uint64_t row, int h, uint64_t inst, uint64_t B, uint64_t rows) {
return SOA ? ((row * 2 + h) * B + inst) : ((inst * rows + row) * 2 + h);
}
__device__ __forceinline__ void ld4(const uint4 *p0, const uint4 *p1, uint64_t o[4]) {
uint4 a = *p0, b = *p1;
o[0] = ((uint64_t)a.y << 32) | a.x; o[1] = ((uint64_t)a.w << 32) | a.z; o[2] = ((uint64_t)b.y << 32) | b.x; o[3] = ((uint64_t)b.w << 32) | b.z;
}
__device__ __forceinline__ void st4(uint4 *p0, uint4 *p1, const uint64_t s[4]) {
*p0 = make_uint4((uint32_t)s[0], (uint32_t)(s[0] >> 32), (uint32_t)s[1], (uint32_t)(s[1] >> 32));
*p1 = make_uint4((uint32_t)s[2], (uint32_t)(s[2] >> 32), (uint32_t)s[3], (uint32_t)(s[3] >> 32));
}
__device__ __forceinline__ void u4to(const uint4 a, const uint4 b, uint64_t o[4]) {
o[0] = ((uint64_t)a.y << 32) | a.x; o[1] = ((uint64_t)a.w << 32) | a.z; o[2] = ((uint64_t)b.y << 32) | b.x; o[3] = ((uint64_t)b.w << 32) | b.z;
}
template <bool SOA>
__global__ void k_label1(const uint64_t *__restrict__ chi, const uint32_t *__restrict__ far, uint64_t N, uint4 *L, uint64_t B) {
uint64_t inst = (uint64_t)blockIdx.x * blockDim.x + threadIdx.x;
if (inst >= B) return;
const uint64_t rows = N + 1;
uint64_t m[16], prev[4], o[4];
uint64_t F[13];
#pragma unroll
for (int i = 0; i < 4; i++) F[i] = chi[inst * 4 + i];
{ // node 1: 'L' | chi | u64 1 (41 bytes)
uint64_t G[5] = {F[0], F[1], F[2], F[3], 1};
pack<5>('L', G, m); b2blk(m, 41, o);
st4(&L[ix<SOA>(1, 0, inst, B, rows)], &L[ix<SOA>(1, 1, inst, B, rows)], o);
if (N < 2) return;
uint64_t G2[9] = {F[0], F[1], F[2], F[3], 2, o[0], o[1], o[2], o[3]};
pack<9>('L', G2, m); b2blk(m, 73, prev);
st4(&L[ix<SOA>(2, 0, inst, B, rows)], &L[ix<SOA>(2, 1, inst, B, rows)], prev);
}
if (N < 3) return;
uint32_t f = far[3];
uint4 fa = L[ix<SOA>(f, 0, inst, B, rows)], fb = L[ix<SOA>(f, 1, inst, B, rows)];
for (uint64_t v = 3; v <= N; v++) {
uint4 na = fa, nb = fb;
if (v + 1 <= N) { uint32_t nf = __ldg(&far[v + 1]); na = L[ix<SOA>(nf, 0, inst, B, rows)]; nb = L[ix<SOA>(nf, 1, inst, B, rows)]; }
uint64_t fl[4]; u4to(fa, fb, fl);
F[4] = v; F[5] = fl[0]; F[6] = fl[1]; F[7] = fl[2]; F[8] = fl[3]; F[9] = prev[0]; F[10] = prev[1]; F[11] = prev[2]; F[12] = prev[3];
pack<13>('L', F, m);
b2blk(m, 105, prev);
st4(&L[ix<SOA>(v, 0, inst, B, rows)], &L[ix<SOA>(v, 1, inst, B, rows)], prev);
fa = na; fb = nb;
}
}
template <bool SOA>
__global__ void k_tree(int d, int n, const uint64_t *__restrict__ chi, const uint4 *L, uint4 *T, uint64_t B, uint64_t N) {
uint64_t t = (uint64_t)blockIdx.x * blockDim.x + threadIdx.x; uint64_t cnt = 1ull << d;
if (t >= cnt * B) return;
uint64_t inst = t % B, id = t / B; const uint64_t lrows = N + 1, trows = N;
uint64_t l[4], r[4], m[16], o[4];
if (d == n - 1) {
ld4(&L[ix<SOA>(id + 1, 0, inst, B, lrows)], &L[ix<SOA>(id + 1, 1, inst, B, lrows)], l);
ld4(&L[ix<SOA>(id + cnt + 1, 0, inst, B, lrows)], &L[ix<SOA>(id + cnt + 1, 1, inst, B, lrows)], r);
} else {
uint64_t base = 2 * cnt - 1;
ld4(&T[ix<SOA>(base + id, 0, inst, B, trows)], &T[ix<SOA>(base + id, 1, inst, B, trows)], l);
ld4(&T[ix<SOA>(base + id + cnt, 0, inst, B, trows)], &T[ix<SOA>(base + id + cnt, 1, inst, B, trows)], r);
}
uint64_t F[12] = {chi[inst * 4], chi[inst * 4 + 1], chi[inst * 4 + 2], chi[inst * 4 + 3], l[0], l[1], l[2], l[3], r[0], r[1], r[2], r[3]};
pack<12>('M', F, m); b2blk(m, 97, o);
st4(&T[ix<SOA>((cnt - 1) + id, 0, inst, B, trows)], &T[ix<SOA>((cnt - 1) + id, 1, inst, B, trows)], o);
}
// proof: thread per (inst, challenge); slot = 3 openings of (1+n) digests as bytes (LE u64 words = the digest bytes)
template <bool SOA>
__global__ void k_prove(int n, int k, const uint64_t *__restrict__ chi, const uint32_t *__restrict__ far, const uint4 *L, const uint4 *T,
uint64_t B, uint64_t N, uint64_t *out, uint8_t *np_out) {
uint64_t t = (uint64_t)blockIdx.x * blockDim.x + threadIdx.x;
if (t >= (uint64_t)k * B) return;
uint64_t inst = t / k; int i = (int)(t % k) + 1; const uint64_t lrows = N + 1, trows = N;
uint64_t tau[4], m[16], o[4];
ld4(&T[ix<SOA>(0, 0, inst, B, trows)], &T[ix<SOA>(0, 1, inst, B, trows)], tau);
uint64_t F[9] = {chi[inst * 4], chi[inst * 4 + 1], chi[inst * 4 + 2], chi[inst * 4 + 3], (uint64_t)i, tau[0], tau[1], tau[2], tau[3]};
pack<9>('C', F, m); b2blk(m, 73, o);
uint64_t c = o[0] & (N - 1), v = c + 1; uint64_t ps[3]; int np = 0; ps[0] = v;
if (v == 2) { ps[1] = 1; np = 1; } else if (v >= 3) { ps[1] = far[v]; ps[2] = v - 1; np = 2; }
np_out[inst * k + (i - 1)] = (uint8_t)np;
const uint64_t seg = (uint64_t)(1 + n) * 4, slot = 3 * seg;
uint64_t *op = out + (inst * k + (i - 1)) * slot;
for (int p = 0; p <= np; p++) {
uint64_t x = ps[p] - 1, d4[4];
ld4(&L[ix<SOA>(ps[p], 0, inst, B, lrows)], &L[ix<SOA>(ps[p], 1, inst, B, lrows)], d4);
for (int q = 0; q < 4; q++) op[p * seg + q] = d4[q];
for (int j = 1; j <= n; j++) {
uint64_t sid = (x & ((1ull << j) - 1)) ^ (1ull << (j - 1));
if (j == n) ld4(&L[ix<SOA>(sid + 1, 0, inst, B, lrows)], &L[ix<SOA>(sid + 1, 1, inst, B, lrows)], d4);
else { uint64_t rr = ((1ull << j) - 1) + sid; ld4(&T[ix<SOA>(rr, 0, inst, B, trows)], &T[ix<SOA>(rr, 1, inst, B, trows)], d4); }
for (int q = 0; q < 4; q++) op[p * seg + 4 * j + q] = d4[q];
}
}
}
static double wall_ms() { return std::chrono::duration<double, std::milli>(std::chrono::system_clock::now().time_since_epoch()).count(); }
static void hexs(const uint8_t *b, int n, char *o) { for (int i = 0; i < n; i++) sprintf(o + 2 * i, "%02x", b[i]); o[2 * n] = 0; }
struct Opt { int n = 20; long B = 0; bool soa = true; int passes = 1; int k = 64; long check = 2; bool wrong_edge = false;
double min_label_s = 0; std::string tag = "row"; double reserve_gib = 1.0; int tpb = 128; std::string kat_dir; };
int main(int argc, char **argv) {
Opt o;
for (int a = 1; a < argc; a++) {
std::string s = argv[a]; auto nx = [&]() { return std::string(argv[++a]); };
if (s == "--n") o.n = std::stoi(nx()); else if (s == "--B") o.B = std::stol(nx()); else if (s == "--layout") o.soa = nx() == "soa";
else if (s == "--passes") o.passes = std::stoi(nx()); else if (s == "--k") o.k = std::stoi(nx());
else if (s == "--check") o.check = std::stol(nx()); else if (s == "--wrong-edge") o.wrong_edge = true;
else if (s == "--min-label-s") o.min_label_s = std::stod(nx()); else if (s == "--tag") o.tag = nx(); else if (s == "--reserve-gib") o.reserve_gib = std::stod(nx());
else if (s == "--tpb") o.tpb = std::stoi(nx()); else if (s == "--kat-dir") o.kat_dir = nx();
else { fprintf(stderr, "unknown arg %s\n", s.c_str()); return 2; }
}
b1_init();
const int n = o.n; const uint64_t N = 1ull << n;
cudaDeviceProp prop; CK(cudaGetDeviceProperties(&prop, 0));
CK(cudaMemcpyToSymbol(dIV2, b2_IV, sizeof b2_IV));
double tg0 = wall_ms();
std::vector<uint32_t> far(N + 1);
#pragma omp parallel for schedule(static, 4096)
for (long long v = 0; v <= (long long)N; v++) far[v] = b1_far((uint64_t)v);
std::vector<uint32_t> far_dev = far;
if (o.wrong_edge) for (uint64_t v = 3; v <= N; v++) far_dev[v] = (uint32_t)(v - 2); // KNOWN-FAILED: DRSample's long edges deleted
double t_graph = (wall_ms() - tg0) / 1e3;
const uint64_t slotw = 3ull * (1 + n) * 4; // u64 words per challenge slot
const uint64_t per_inst = (N + 1) * 32 + N * 32 + (uint64_t)o.k * slotw * 8 + o.k + 32;
size_t fr, tot; CK(cudaMemGetInfo(&fr, &tot));
uint64_t fixed = (N + 1) * 4 + (uint64_t)(o.reserve_gib * (1ull << 30));
uint64_t Bmax = fr > fixed ? (fr - fixed) / per_inst : 0;
uint64_t B = o.B > 0 ? (uint64_t)o.B : Bmax;
if (B == 0 || B > Bmax) { fprintf(stderr, "B=%llu exceeds Bmax=%llu\n", (unsigned long long)B, (unsigned long long)Bmax); return 4; }
double ts0 = wall_ms();
uint4 *dL, *dT; uint32_t *dfar; uint64_t *dchi, *dproof; uint8_t *dnp;
CK(cudaMalloc(&dL, (N + 1) * 32 * B)); CK(cudaMalloc(&dT, N * 32 * B)); CK(cudaMalloc(&dfar, (N + 1) * 4));
CK(cudaMalloc(&dchi, B * 32)); CK(cudaMalloc(&dproof, B * o.k * slotw * 8)); CK(cudaMalloc(&dnp, B * o.k));
std::vector<uint8_t> chib(B * 32);
for (uint64_t j = 0; j < B; j++) b1_batch_chi(n, j, &chib[32 * j]);
CK(cudaMemcpy(dfar, far_dev.data(), (N + 1) * 4, cudaMemcpyHostToDevice));
CK(cudaMemcpy(dchi, chib.data(), B * 32, cudaMemcpyHostToDevice)); // LE u64 words = the chi bytes in order
CK(cudaDeviceSynchronize());
double t_state_alloc = (wall_ms() - ts0) / 1e3;
cudaEvent_t e0, e1; CK(cudaEventCreate(&e0)); CK(cudaEventCreate(&e1));
const int TPB = o.tpb;
std::vector<double> pass_s; double lw0 = wall_ms(), lw1 = lw0;
for (int p = 0; p < o.passes || (lw1 - lw0) / 1e3 < o.min_label_s; p++) {
CK(cudaEventRecord(e0));
dim3 g((unsigned)((B + TPB - 1) / TPB));
if (o.soa) k_label1<true><<<g, TPB>>>(dchi, dfar, N, dL, B); else k_label1<false><<<g, TPB>>>(dchi, dfar, N, dL, B);
CK(cudaGetLastError()); CK(cudaEventRecord(e1)); CK(cudaEventSynchronize(e1));
float ms; CK(cudaEventElapsedTime(&ms, e0, e1)); pass_s.push_back(ms / 1e3); lw1 = wall_ms();
if (p > 100000) break;
}
CK(cudaEventRecord(e0));
for (int d = n - 1; d >= 0; d--) {
uint64_t th = (1ull << d) * B; dim3 g((unsigned)((th + 255) / 256));
if (o.soa) k_tree<true><<<g, 256>>>(d, n, dchi, dL, dT, B, N); else k_tree<false><<<g, 256>>>(d, n, dchi, dL, dT, B, N);
}
CK(cudaGetLastError()); CK(cudaEventRecord(e1)); CK(cudaEventSynchronize(e1));
float ms_tree; CK(cudaEventElapsedTime(&ms_tree, e0, e1));
// proof creation: challenges and openings on the device, home, B1 container
double tp0 = wall_ms();
{
uint64_t th = (uint64_t)o.k * B; dim3 g((unsigned)((th + 127) / 128));
if (o.soa) k_prove<true><<<g, 128>>>(n, o.k, dchi, dfar, dL, dT, B, N, dproof, dnp);
else k_prove<false><<<g, 128>>>(n, o.k, dchi, dfar, dL, dT, B, N, dproof, dnp);
CK(cudaGetLastError()); CK(cudaDeviceSynchronize());
}
std::vector<uint64_t> hproof(B * o.k * slotw); std::vector<uint8_t> hnp(B * o.k);
CK(cudaMemcpy(hproof.data(), dproof, hproof.size() * 8, cudaMemcpyDeviceToHost));
CK(cudaMemcpy(hnp.data(), dnp, hnp.size(), cudaMemcpyDeviceToHost));
std::vector<uint32_t> taur(B * 8);
if (o.soa) { std::vector<uint4> tmp(2 * B); CK(cudaMemcpy(tmp.data(), dT, 2 * B * 16, cudaMemcpyDeviceToHost));
for (uint64_t j = 0; j < B; j++) { memcpy(&taur[8 * j], &tmp[j], 16); memcpy(&taur[8 * j + 4], &tmp[B + j], 16); } }
else for (uint64_t j = 0; j < B; j++) CK(cudaMemcpy(&taur[8 * j], (const char *)dT + j * N * 32, 32, cudaMemcpyDeviceToHost));
std::vector<std::vector<uint8_t>> proofs(B);
const uint64_t segb = (uint64_t)(1 + n) * 32;
#pragma omp parallel for schedule(static)
for (long long j = 0; j < (long long)B; j++) {
std::vector<uint8_t> &P = proofs[j]; P.reserve(45 + (size_t)o.k * (1 + 3 * segb));
const uint8_t hdr[8] = {'B', '1', 'M', 'T', 'P', 'D', 'R', '1'}; P.insert(P.end(), hdr, hdr + 8); P.push_back((uint8_t)n);
uint32_t kk = (uint32_t)o.k; P.insert(P.end(), (uint8_t *)&kk, (uint8_t *)&kk + 4);
P.insert(P.end(), (uint8_t *)&taur[8 * j], (uint8_t *)&taur[8 * j] + 32);
for (int i = 0; i < o.k; i++) {
const uint8_t *s = (const uint8_t *)&hproof[((uint64_t)j * o.k + i) * slotw]; int np = hnp[(uint64_t)j * o.k + i];
P.insert(P.end(), s, s + segb); P.push_back((uint8_t)np); P.insert(P.end(), s + segb, s + (1 + np) * segb);
}
}
double t_prove = (wall_ms() - tp0) / 1e3;
// every GPU proof through the C-port verifier (B1's checks, the TRUE graph)
double tv0 = wall_ms(); long accepted = 0;
#pragma omp parallel for reduction(+ : accepted) schedule(dynamic, 1)
for (long long j = 0; j < (long long)B; j++) accepted += b1_verify(&chib[32 * j], n, o.k, far.data(), proofs[j].data(), proofs[j].size());
double t_verify_all = (wall_ms() - tv0) / 1e3;
// oracle: full byte identity (labels, every tree node, root, proof) for `check` instances against the C port; instance 0
// (B1's KAT chi) also against B1's own fixture digests when --kat-dir names them and n is a KAT size
std::vector<uint64_t> chk;
uint64_t C = o.check < 0 ? B : std::min<uint64_t>((uint64_t)o.check, B);
for (uint64_t q = 0; q < C; q++) chk.push_back(C == 1 ? 0 : (q * (B - 1)) / (C - 1));
long lab_bad = 0, tree_bad = 0, root_bad = 0, proof_bad = 0; int kat_cmp = -1;
double tc0 = wall_ms();
if (C) {
std::vector<uint4> hL, hT;
if (o.soa) { hL.resize(2 * (N + 1) * B); hT.resize(2 * N * B);
CK(cudaMemcpy(hL.data(), dL, hL.size() * 16, cudaMemcpyDeviceToHost)); CK(cudaMemcpy(hT.data(), dT, hT.size() * 16, cudaMemcpyDeviceToHost)); }
for (uint64_t q = 0; q < C; q++) {
uint64_t j = chk[q];
std::vector<uint8_t> Lg((N + 1) * 32), Tg(N * 32);
if (o.soa) {
#pragma omp parallel for schedule(static)
for (long long r = 0; r < (long long)(2 * (N + 1)); r++) memcpy(&Lg[16 * r], &hL[(uint64_t)r * B + j], 16);
#pragma omp parallel for schedule(static)
for (long long r = 0; r < (long long)(2 * N); r++) memcpy(&Tg[16 * r], &hT[(uint64_t)r * B + j], 16);
} else {
CK(cudaMemcpy(Lg.data(), (const char *)dL + j * (N + 1) * 32, (N + 1) * 32, cudaMemcpyDeviceToHost));
CK(cudaMemcpy(Tg.data(), (const char *)dT + j * N * 32, N * 32, cudaMemcpyDeviceToHost));
}
std::vector<uint8_t> lab((N + 1) * 32), tree(N * 32);
b1_label_all(&chib[32 * j], N, far.data(), lab.data());
b1_merkle(&chib[32 * j], n, lab.data(), tree.data());
long lb = 0, tb = 0;
#pragma omp parallel for reduction(+ : lb) schedule(static)
for (long long v = 1; v <= (long long)N; v++) lb += memcmp(&Lg[32 * v], &lab[32 * v], 32) != 0;
#pragma omp parallel for reduction(+ : tb) schedule(static)
for (long long i = 0; i < (long long)N - 1; i++) tb += memcmp(&Tg[32 * i], &tree[32 * i], 32) != 0;
root_bad += memcmp(&taur[8 * j], &tree[0], 32) != 0;
std::vector<uint8_t> P(b1_proof_max(n, o.k)); size_t pl = b1_prove(&chib[32 * j], n, o.k, far.data(), lab.data(), tree.data(), P.data());
proof_bad += (pl != proofs[j].size() || memcmp(P.data(), proofs[j].data(), pl) != 0);
lab_bad += lb != 0; tree_bad += tb != 0;
if (lb || tb) fprintf(stderr, "oracle: instance %llu labels_bad=%ld tree_bad=%ld\n", (unsigned long long)j, lb, tb);
if (j == 0 && !o.kat_dir.empty() && (n == 4 || n == 8 || n == 12 || n == 16 || n == 20)) {
// B1's fixture: labels_concat_sha256 and tau of kat-nNN.json, computed here from the GPU's own instance-0 bytes
char path[512]; snprintf(path, sizeof path, "%s/kat-n%02d.json", o.kat_dir.c_str(), n);
FILE *f = fopen(path, "rb"); std::string js;
if (f) { char buf[65536]; size_t r; while ((r = fread(buf, 1, sizeof buf, f)) > 0) js.append(buf, r); fclose(f); }
uint8_t dl[32]; b3_sha256(&Lg[32], 32 * N, dl); char hl[65], ht[65]; hexs(dl, 32, hl); hexs((const uint8_t *)&taur[0], 32, ht);
kat_cmp = (!js.empty() && js.find(std::string("\"labels_concat_sha256\": \"") + hl + "\"") != std::string::npos &&
js.find(std::string("\"tau\": \"") + ht + "\"") != std::string::npos) ? 1 : 0;
}
}
}
double t_check = (wall_ms() - tc0) / 1e3;
bool oracle_ok = C > 0 && lab_bad == 0 && tree_bad == 0 && root_bad == 0 && proof_bad == 0 && accepted == (long)B && kat_cmp != 0;
double sum = 0; int cnt = 0;
for (size_t p = (pass_s.size() > 1 ? 1 : 0); p < pass_s.size(); p++) { sum += pass_s[p]; cnt++; }
double label_s = sum / cnt, lps = (double)N * B / label_s;
printf("{\"tag\":\"%s\",\"gpu\":\"%s\",\"sm\":\"%d.%d\",\"sms\":%d,\"encoding\":\"B1\",\"n\":%d,\"N\":%llu,\"inst_MiB\":%.1f,\"B\":%llu,\"Bmax\":%llu,"
"\"layout\":\"%s\",\"kernel\":\"k1\",\"tpb\":%d,\"k\":%d,\"wrong_edge\":%d,\"passes\":%zu,\"graph_s\":%.4f,\"state_alloc_s\":%.4f,"
"\"label_s_per_pass\":%.6f,\"labels_per_s\":%.1f,\"labels_per_s_per_inst\":%.1f,\"ns_per_label_per_inst\":%.2f,"
"\"merkle_s\":%.6f,\"prove_s\":%.6f,\"verify_all_s\":%.4f,\"accepted\":%ld,\"checked\":%llu,\"lab_bad_inst\":%ld,\"tree_bad_inst\":%ld,"
"\"root_bad\":%ld,\"proof_bad\":%ld,\"b1_kat_instance0\":%d,\"check_s\":%.2f,\"oracle\":\"%s\",\"label_window_unix_ms\":[%.0f,%.0f],\"free_gib\":%.2f,\"per_inst_MiB\":%.1f,\"proof_bytes_inst0\":%zu}\n",
o.tag.c_str(), prop.name, prop.major, prop.minor, prop.multiProcessorCount, n, (unsigned long long)N, N * 32.0 / 1048576.0,
(unsigned long long)B, (unsigned long long)Bmax, o.soa ? "soa" : "aos", TPB, o.k, (int)o.wrong_edge, pass_s.size(), t_graph, t_state_alloc,
label_s, lps, lps / B, 1e9 / (lps / B), ms_tree / 1e3, t_prove, t_verify_all, accepted, (unsigned long long)C, lab_bad, tree_bad,
root_bad, proof_bad, kat_cmp, t_check, oracle_ok ? "IDENTICAL" : "MISMATCH", lw0, lw1, fr / 1073741824.0, per_inst / 1048576.0, proofs[0].size());
fflush(stdout);
return oracle_ok ? 0 : 1;
}

224
tools/mhpow/b3/b3p1_spec.h Normal file
View file

@ -0,0 +1,224 @@
/*
* b3p1_spec.h - the B3 lane's PROVISIONAL byte encoding of the Blocki-Smearsoll
* MTP/DRSample memory-hard proof of work (TCC 2025, eprint 2025/1456, full PDF
* sha256 13c3646e7d85c1aa58a92914582caab5798d90cf2a3cad33e58d81d49c1d31db),
* host side (C99). Used by cpu_ref.c (the sequential CPU reference) and by the
* host half of b3_gpu.cu (the oracle inside the GPU harness).
*
* STATUS: the paper fixes the construction abstractly, not its bytes. The B1
* lane (R15-05) owns the exact reference encoding (hash, lambda, integer
* encoding, domain tags, the DRSample sampler's randomness). Until B1's
* known-answer fixtures exist, this file is the B3 lane's literal reading of
* the paper ("B3P1"), and every GPU row is checked byte for byte against THIS
* reference only. The swap to B1's encoding touches this header and the
* device mirror in b3_gpu.cu (b3d_* functions), nothing else.
*
* What is taken from the paper verbatim (section 3.2 and 2.2):
* - nodes 1..N, N = 2^n, topological order, parents listed ascending;
* - l_1 = H(chi, 1); l_v = H(chi, v, l_{v1}, ..., l_{vk}) with v1 < ... < vk;
* - Merkle: tau_x = l_{1+bin(x)} for x in {0,1}^n, bin(x) = sum x_i 2^(i-1)
* (x_1 is the LEAST significant bit), tau_v = H(chi, tau_{v||0}, tau_{v||1}),
* root tau = H(chi, tau_0, tau_1);
* - challenge i in [1,k]: c_i = H(chi, i, tau) mod N, challenged node c_i + 1;
* - proof: tau and, per challenge, the label of c_i + 1 with its Merkle reveal
* and every parent's label with its reveal;
* - verifier: recompute challenges, check every reveal against tau, check
* local consistency of every challenged node.
* What is from ABH17 (Alwen, Blocki, Harsha, CCS 2017, eprint 2017/443,
* Algorithm 1 DRSample): node 2 has the single parent 1; node v >= 3 has
* parents v-1 and v-r with g' <- [1, floor(log2 v) + 1], g = min(v-1, 2^g'),
* r <- [max(g/2, 2), g] (so v-r <= v-2: the far parent is never v-1).
* B3P1 choices (provisional, B1 replaces them): H = SHA-256, lambda = 256;
* chi is 32 bytes; integers v and i are 8-byte little-endian; the challenge
* integer is the hash's first 8 bytes little-endian, mod N; the DRSample coins
* for node v are SHA-256("B3P1-DRSample" || le64(N) || le64(v)), u0 = bytes
* 0..7 LE picks g' = 1 + u0 mod (floor(log2 v)+1), u1 = bytes 8..15 LE picks
* r = lo + u1 mod (g - lo + 1) (a 2^-50-level modulo bias, stated, not hidden).
*/
#ifndef B3P1_SPEC_H
#define B3P1_SPEC_H
#include <stdint.h>
#include <string.h>
#include <stdlib.h>
#define B3P1_LAMBDA_BYTES 32
#define B3P1_CHI_BYTES 32
#define B3P1_ENCODING_ID "B3P1 (provisional, B3 lane reading of eprint 2025/1456 s3.2 + ABH17 Alg.1; SHA-256, lambda=256, le64 integers)"
/* ---------------- portable SHA-256 ---------------- */
static const uint32_t b3_K[64] = {
0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5,0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5,
0xd807aa98,0x12835b01,0x243185be,0x550c7dc3,0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174,
0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc,0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da,
0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7,0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967,
0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13,0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85,
0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3,0xd192e819,0xd6990624,0xf40e3585,0x106aa070,
0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5,0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3,
0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208,0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2};
static const uint32_t b3_IV[8] = {0x6a09e667,0xbb67ae85,0x3c6ef372,0xa54ff53a,0x510e527f,0x9b05688c,0x1f83d9ab,0x5be0cd19};
#define B3_ROR(x,n) (((x) >> (n)) | ((x) << (32-(n))))
static void b3_compress(uint32_t st[8], const uint8_t blk[64]) {
uint32_t w[64], a,b,c,d,e,f,g,h;
for (int i = 0; i < 16; i++) w[i] = ((uint32_t)blk[4*i]<<24)|((uint32_t)blk[4*i+1]<<16)|((uint32_t)blk[4*i+2]<<8)|blk[4*i+3];
for (int i = 16; i < 64; i++) {
uint32_t s0 = B3_ROR(w[i-15],7)^B3_ROR(w[i-15],18)^(w[i-15]>>3);
uint32_t s1 = B3_ROR(w[i-2],17)^B3_ROR(w[i-2],19)^(w[i-2]>>10);
w[i] = w[i-16]+s0+w[i-7]+s1;
}
a=st[0];b=st[1];c=st[2];d=st[3];e=st[4];f=st[5];g=st[6];h=st[7];
for (int i = 0; i < 64; i++) {
uint32_t t1 = h + (B3_ROR(e,6)^B3_ROR(e,11)^B3_ROR(e,25)) + ((e&f)^(~e&g)) + b3_K[i] + w[i];
uint32_t t2 = (B3_ROR(a,2)^B3_ROR(a,13)^B3_ROR(a,22)) + ((a&b)^(a&c)^(b&c));
h=g; g=f; f=e; e=d+t1; d=c; c=b; b=a; a=t1+t2;
}
st[0]+=a;st[1]+=b;st[2]+=c;st[3]+=d;st[4]+=e;st[5]+=f;st[6]+=g;st[7]+=h;
}
/* one-shot SHA-256 of a message of any length */
static void b3_sha256(const uint8_t *msg, size_t len, uint8_t out[32]) {
uint32_t st[8]; memcpy(st, b3_IV, sizeof st);
size_t off = 0;
while (len - off >= 64) { b3_compress(st, msg + off); off += 64; }
uint8_t tail[128]; memset(tail, 0, sizeof tail);
size_t rem = len - off; memcpy(tail, msg + off, rem); tail[rem] = 0x80;
size_t tl = (rem + 9 <= 64) ? 64 : 128;
uint64_t bits = (uint64_t)len * 8;
for (int i = 0; i < 8; i++) tail[tl-1-i] = (uint8_t)(bits >> (8*i));
b3_compress(st, tail); if (tl == 128) b3_compress(st, tail + 64);
for (int i = 0; i < 8; i++) { out[4*i]=st[i]>>24; out[4*i+1]=st[i]>>16; out[4*i+2]=st[i]>>8; out[4*i+3]=st[i]; }
}
#define b3_sha256_big b3_sha256
static inline void b3_le64(uint8_t *p, uint64_t x) { for (int i = 0; i < 8; i++) p[i] = (uint8_t)(x >> (8*i)); }
static inline uint64_t b3_rd64(const uint8_t *p) { uint64_t x = 0; for (int i = 7; i >= 0; i--) x = (x << 8) | p[i]; return x; }
static inline int b3_floorlog2(uint64_t v) { int r = -1; while (v) { v >>= 1; r++; } return r; }
/* ---------------- DRSample (ABH17 Algorithm 1), deterministic coins ---------------- */
/* far[v] = v - r for v >= 3 (1-based node ids); far[1] = far[2] = 0 (no far parent). */
static uint32_t b3_drsample_far(uint64_t N, uint64_t v) {
if (v < 3) return 0;
uint8_t m[13 + 16], h[32];
memcpy(m, "B3P1-DRSample", 13); b3_le64(m + 13, N); b3_le64(m + 21, v);
b3_sha256(m, sizeof m, h);
uint64_t u0 = b3_rd64(h), u1 = b3_rd64(h + 8);
uint64_t gp = 1 + u0 % (uint64_t)(b3_floorlog2(v) + 1);
uint64_t g = (gp >= 63) ? (v - 1) : ((1ull << gp) < (v - 1) ? (1ull << gp) : (v - 1));
uint64_t lo = g / 2 < 2 ? 2 : g / 2;
uint64_t r = lo + u1 % (g - lo + 1);
return (uint32_t)(v - r);
}
/* ---------------- labelling (the paper's l_v) ---------------- */
/* labels: (N+1) * 32 bytes, index 1..N used; far: N+1 entries. */
static void b3_label_msg(const uint8_t chi[32], uint64_t v, const uint8_t *pa, const uint8_t *pb, uint8_t *msg, size_t *len) {
memcpy(msg, chi, 32); b3_le64(msg + 32, v); size_t L = 40;
if (pa) { memcpy(msg + L, pa, 32); L += 32; }
if (pb) { memcpy(msg + L, pb, 32); L += 32; }
*len = L;
}
static void b3_label_all(const uint8_t chi[32], uint64_t N, const uint32_t *far, uint8_t *labels) {
uint8_t msg[104]; size_t L;
b3_label_msg(chi, 1, NULL, NULL, msg, &L); b3_sha256(msg, L, labels + 32);
if (N >= 2) { b3_label_msg(chi, 2, labels + 32, NULL, msg, &L); b3_sha256(msg, L, labels + 64); }
for (uint64_t v = 3; v <= N; v++) {
b3_label_msg(chi, v, labels + 32 * (uint64_t)far[v], labels + 32 * (v - 1), msg, &L);
b3_sha256(msg, L, labels + 32 * v);
}
}
static int b3_local_ok(const uint8_t chi[32], uint64_t v, const uint32_t *far, const uint8_t *lv, const uint8_t *lfar, const uint8_t *lprev) {
uint8_t msg[104], h[32]; size_t L;
if (v == 1) b3_label_msg(chi, 1, NULL, NULL, msg, &L);
else if (v == 2) b3_label_msg(chi, 2, lprev, NULL, msg, &L);
else b3_label_msg(chi, v, lfar, lprev, msg, &L);
(void)far; b3_sha256(msg, L, h); return memcmp(h, lv, 32) == 0;
}
/* ---------------- Merkle tree, the paper's bit order ---------------- */
/* tree level d (0..n) has 2^d nodes; node id at depth d = sum_{i<=d} x_i 2^(i-1).
* children of (d,id): (d+1,id) and (d+1,id+2^d). Leaves (d=n): leaf id -> label id+1.
* Storage: tree[(2^d - 1) + id] for d < n (internal, 2^n - 1 nodes); leaves read from labels. */
static void b3_node_hash(const uint8_t chi[32], const uint8_t *l, const uint8_t *r, uint8_t out[32]) {
uint8_t m[96]; memcpy(m, chi, 32); memcpy(m + 32, l, 32); memcpy(m + 64, r, 32); b3_sha256(m, 96, out);
}
static void b3_merkle(const uint8_t chi[32], int n, const uint8_t *labels, uint8_t *tree) {
for (int d = n - 1; d >= 0; d--) {
uint64_t cnt = 1ull << d;
for (uint64_t id = 0; id < cnt; id++) {
const uint8_t *L, *R;
if (d == n - 1) { L = labels + 32 * (id + 1); R = labels + 32 * (id + cnt + 1); }
else { L = tree + 32 * ((2 * cnt - 1) + id); R = tree + 32 * ((2 * cnt - 1) + id + cnt); }
b3_node_hash(chi, L, R, tree + 32 * ((cnt - 1) + id));
}
}
}
static const uint8_t *b3_tree_node(int n, const uint8_t *labels, const uint8_t *tree, int d, uint64_t id) {
if (d == n) return labels + 32 * (id + 1);
return tree + 32 * (((1ull << d) - 1) + id);
}
/* reveal of leaf x (0-based leaf id = label id - 1): siblings at depths 1..n, sibling at depth j
* is the node whose prefix is x_1..x_{j-1} followed by the flipped x_j. */
static void b3_reveal(int n, const uint8_t *labels, const uint8_t *tree, uint64_t x, uint8_t *sib /* n*32 */) {
for (int j = 1; j <= n; j++) {
uint64_t mask = (1ull << j) - 1, pre = x & mask;
uint64_t sid = pre ^ (1ull << (j - 1));
memcpy(sib + 32 * (j - 1), b3_tree_node(n, labels, tree, j, sid), 32);
}
}
static int b3_reveal_ok(const uint8_t chi[32], int n, const uint8_t root[32], uint64_t x, const uint8_t leaf[32], const uint8_t *sib) {
uint8_t cur[32], nx[32]; memcpy(cur, leaf, 32);
for (int j = n; j >= 1; j--) {
int bit = (x >> (j - 1)) & 1;
if (bit == 0) b3_node_hash(chi, cur, sib + 32 * (j - 1), nx); else b3_node_hash(chi, sib + 32 * (j - 1), cur, nx);
memcpy(cur, nx, 32);
}
return memcmp(cur, root, 32) == 0;
}
/* ---------------- challenges and proof ---------------- */
static uint64_t b3_challenge(const uint8_t chi[32], uint64_t i, const uint8_t root[32], uint64_t N) {
uint8_t m[72], h[32]; memcpy(m, chi, 32); b3_le64(m + 32, i); memcpy(m + 40, root, 32);
b3_sha256(m, 72, h); return b3_rd64(h) & (N - 1);
}
/* proof layout (bytes): root(32) || for i in 1..k: [ label(c_i+1) 32 | sib n*32 | for each parent p ascending: label 32 | sib n*32 ]
* the parent count is a function of the node (1 for node 2, 2 for v >= 3, 0 for node 1). */
static size_t b3_proof_bytes_max(int n, int k) { return 32 + (size_t)k * 3 * (32 + 32 * (size_t)n); }
static size_t b3_prove(const uint8_t chi[32], int n, int k, const uint32_t *far, const uint8_t *labels, const uint8_t *tree, const uint8_t root[32], uint8_t *out) {
uint64_t N = 1ull << n; size_t o = 0;
memcpy(out, root, 32); o = 32;
for (int i = 1; i <= k; i++) {
uint64_t c = b3_challenge(chi, (uint64_t)i, root, N), v = c + 1;
memcpy(out + o, labels + 32 * v, 32); o += 32; b3_reveal(n, labels, tree, v - 1, out + o); o += 32 * (size_t)n;
uint64_t ps[2]; int np = 0;
if (v == 2) ps[np++] = 1; else if (v >= 3) { ps[np++] = far[v]; ps[np++] = v - 1; }
for (int p = 0; p < np; p++) { memcpy(out + o, labels + 32 * ps[p], 32); o += 32; b3_reveal(n, labels, tree, ps[p] - 1, out + o); o += 32 * (size_t)n; }
}
return o;
}
static int b3_verify(const uint8_t chi[32], int n, int k, const uint32_t *far, const uint8_t *proof, size_t len) {
uint64_t N = 1ull << n; size_t o = 32; const uint8_t *root = proof;
for (int i = 1; i <= k; i++) {
uint64_t c = b3_challenge(chi, (uint64_t)i, root, N), v = c + 1;
uint64_t ps[2]; int np = 0;
if (v == 2) ps[np++] = 1; else if (v >= 3) { ps[np++] = far[v]; ps[np++] = v - 1; }
if (o + (1 + np) * (32 + 32 * (size_t)n) > len) return 0;
const uint8_t *lv = proof + o; if (!b3_reveal_ok(chi, n, root, v - 1, lv, lv + 32)) return 0; o += 32 + 32 * (size_t)n;
const uint8_t *lp[2] = {NULL, NULL};
for (int p = 0; p < np; p++) { lp[p] = proof + o; if (!b3_reveal_ok(chi, n, root, ps[p] - 1, lp[p], lp[p] + 32)) return 0; o += 32 + 32 * (size_t)n; }
int ok;
if (v == 1) ok = b3_local_ok(chi, 1, far, lv, NULL, NULL);
else if (v == 2) ok = b3_local_ok(chi, 2, far, lv, NULL, lp[0]);
else ok = b3_local_ok(chi, v, far, lv, lp[0], lp[1]);
if (!ok) return 0;
}
return o == len;
}
/* instance input: chi_j = SHA-256("B3P1-chi" || le64(seed) || le64(j)) */
static void b3_chi(uint64_t seed, uint64_t j, uint8_t chi[32]) {
uint8_t m[8 + 16]; memcpy(m, "B3P1-chi", 8); b3_le64(m + 8, seed); b3_le64(m + 16, j); b3_sha256(m, sizeof m, chi);
}
#endif

15
tools/mhpow/b3/build.sh Executable file
View file

@ -0,0 +1,15 @@
#!/usr/bin/env bash
# build.sh - compile the B3 CPU reference and GPU harness on a rented pod (never on the Mac).
set -euo pipefail
cd "$(dirname "$0")"
export PATH=/usr/local/cuda/bin:$PATH
gcc -O3 -march=x86-64-v3 -Wall -Wno-unused-function -o cpu_ref cpu_ref.c -lpthread
nvcc -O3 -std=c++17 -gencode arch=compute_89,code=sm_89 -gencode arch=compute_120,code=sm_120 \
-Xcompiler -fopenmp,-march=x86-64-v3,-Wno-unused-function -o b3_gpu b3_gpu.cu 2>&1 | grep -v 'warning #550\|uint64_t N = 1ull\|^ *\^$' || true
gcc -O3 -march=x86-64-v3 -Wall -Wno-unused-function -Wno-misleading-indentation -o cpu_ref_b1 cpu_ref_b1.c -lpthread
nvcc -O3 -std=c++17 -gencode arch=compute_89,code=sm_89 -gencode arch=compute_120,code=sm_120 \
-Xcompiler -fopenmp,-march=x86-64-v3,-Wno-unused-function,-Wno-misleading-indentation -o b3_gpu_b1 b3_gpu_b1.cu 2>&1 | grep -v 'warning #550\|uint64_t N = 1ull\|^ *\^$' || true
test -x b3_gpu && test -x cpu_ref && test -x b3_gpu_b1 && test -x cpu_ref_b1
sha256sum b3p1_spec.h b3_fast_cpu.h cpu_ref.c b3_gpu.cu | sha256sum | cut -c1-16 > SRC_ID
sha256sum b3p1_spec.h b1enc_spec.h cpu_ref_b1.c b3_gpu_b1.cu | sha256sum | cut -c1-16 > SRC_ID_B1
echo "built: B3P1 src $(cat SRC_ID), B1 src $(cat SRC_ID_B1)"

105
tools/mhpow/b3/cpu_ref.c Normal file
View file

@ -0,0 +1,105 @@
/*
* cpu_ref.c - B3 lane's sequential CPU reference for the B3P1 encoding of the
* Blocki-Smearsoll MTP/DRSample MHPoW (see b3p1_spec.h for every byte).
*
* cpu_ref selftest fast paths vs the spec (n = 12), exit 1 on any byte mismatch
* cpu_ref fixture <n> <seed> <j> <k> spec path: JSON with chi, labels digest, root, proof digest, verify
* cpu_ref time <n> <seed> <k> <threads> fast path: sequential time per instance on this CPU (one instance
* per thread, threads run concurrently; threads=1 is THE sequential row)
*
* Build: gcc -O3 -march=x86-64-v3 -o cpu_ref cpu_ref.c -lpthread
*/
#include "b3_fast_cpu.h"
#include <stdio.h>
#include <pthread.h>
#include <time.h>
static double now_s(void) { struct timespec t; clock_gettime(CLOCK_MONOTONIC, &t); return t.tv_sec + t.tv_nsec * 1e-9; }
static void hex(const uint8_t *b, int n, char *o) { for (int i = 0; i < n; i++) sprintf(o + 2 * i, "%02x", b[i]); }
static b3_cmp_fn pick(const char **name) {
#if defined(__x86_64__)
if (b3_has_shani()) { *name = "sha_ni"; return b3_cmp_shani; }
#endif
*name = "portable"; return b3_cmp_portable;
}
static int do_fixture(int n, uint64_t seed, uint64_t j, int k) {
uint64_t N = 1ull << n; uint8_t chi[32]; b3_chi(seed, j, chi);
uint32_t *far = calloc(N + 1, 4); for (uint64_t v = 0; v <= N; v++) far[v] = b3_drsample_far(N, v);
uint8_t *lab = calloc(N + 1, 32), *tree = calloc(N, 32);
b3_label_all(chi, N, far, lab); b3_merkle(chi, n, lab, tree);
uint8_t ld[32], fd[32], pd[32], root[32]; memcpy(root, tree, 32);
b3_sha256_big(lab + 32, 32 * N, ld);
b3_sha256_big((uint8_t *)far, 4 * (N + 1), fd);
uint8_t *proof = malloc(b3_proof_bytes_max(n, k)); size_t pl = b3_prove(chi, n, k, far, lab, tree, root, proof);
b3_sha256_big(proof, pl, pd);
int ok = b3_verify(chi, n, k, far, proof, pl);
char h1[65], h2[65], h3[65], h4[65], h5[65], h6[65];
hex(chi, 32, h1); hex(ld, 32, h2); hex(root, 32, h3); hex(pd, 32, h4); hex(fd, 32, h5); hex(lab + 32 * N, 32, h6);
printf("{\"encoding\":\"%s\",\"n\":%d,\"N\":%llu,\"seed\":%llu,\"j\":%llu,\"k\":%d,\"chi\":\"%s\",\"far_le32_sha256\":\"%s\","
"\"labels_sha256\":\"%s\",\"label_N\":\"%s\",\"root\":\"%s\",\"proof_bytes\":%zu,\"proof_sha256\":\"%s\",\"verify\":%d}\n",
B3P1_ENCODING_ID, n, (unsigned long long)N, (unsigned long long)seed, (unsigned long long)j, k, h1, h5, h2, h6, h3, pl, h4, ok);
return ok ? 0 : 1;
}
typedef struct { int n, k; uint64_t seed, j; const uint32_t *far; b3_cmp_fn cmp; double t_label, t_merkle, t_prove, t_verify; int ok; } job_t;
static void *run_one(void *arg) {
job_t *J = arg; uint64_t N = 1ull << J->n; uint8_t chi[32]; b3_chi(J->seed, J->j, chi); uint32_t chiw[8]; b3_b2w(chi, chiw);
uint32_t *L = malloc((N + 1) * 32), *T = malloc(N * 32);
double t0 = now_s(); b3_fast_label_all(J->cmp, chiw, N, J->far, L);
double t1 = now_s(); b3_fast_merkle(J->cmp, chiw, J->n, L, T);
double t2 = now_s();
/* proof creation on the spec's byte path from the fast state (bytes converted per opened node only) */
uint8_t root[32]; b3_w2b(T, root);
size_t cap = b3_proof_bytes_max(J->n, J->k); uint8_t *proof = malloc(cap); size_t o = 32; memcpy(proof, root, 32);
for (int i = 1; i <= J->k; i++) {
uint64_t c = b3_challenge(chi, (uint64_t)i, root, N), v = c + 1; uint64_t ps[3]; int np = 0; ps[np++] = v;
if (v == 2) ps[np++] = 1; else if (v >= 3) { ps[np++] = J->far[v]; ps[np++] = v - 1; }
for (int p = 0; p < np; p++) {
uint64_t x = ps[p] - 1; b3_w2b(L + 8 * ps[p], proof + o); o += 32;
for (int jj = 1; jj <= J->n; jj++) {
uint64_t sid = (x & ((1ull << jj) - 1)) ^ (1ull << (jj - 1));
const uint32_t *w = (jj == J->n) ? L + 8 * (sid + 1) : T + 8 * (((1ull << jj) - 1) + sid);
b3_w2b(w, proof + o); o += 32;
}
}
}
double t3 = now_s(); J->ok = b3_verify(chi, J->n, J->k, J->far, proof, o); double t4 = now_s();
J->t_label = t1 - t0; J->t_merkle = t2 - t1; J->t_prove = t3 - t2; J->t_verify = t4 - t3;
free(L); free(T); free(proof); return NULL;
}
static int do_time(int n, uint64_t seed, int k, int threads) {
const char *nm; b3_cmp_fn cmp = pick(&nm);
uint64_t N = 1ull << n; double tg0 = now_s();
uint32_t *far = malloc((N + 1) * 4); for (uint64_t v = 0; v <= N; v++) far[v] = b3_drsample_far(N, v);
double tg = now_s() - tg0;
job_t *J = calloc(threads, sizeof *J); pthread_t *th = calloc(threads, sizeof *th);
double w0 = now_s();
for (int t = 0; t < threads; t++) { J[t] = (job_t){ .n = n, .k = k, .seed = seed, .j = (uint64_t)t, .far = far, .cmp = cmp }; pthread_create(&th[t], NULL, run_one, &J[t]); }
for (int t = 0; t < threads; t++) pthread_join(th[t], NULL);
double wall = now_s() - w0; int okc = 0; double sl = 0, sm = 0, sp = 0, sv = 0;
for (int t = 0; t < threads; t++) { okc += J[t].ok; sl += J[t].t_label; sm += J[t].t_merkle; sp += J[t].t_prove; sv += J[t].t_verify; }
printf("{\"mode\":\"cpu_time\",\"sha\":\"%s\",\"n\":%d,\"N\":%llu,\"k\":%d,\"threads\":%d,\"graph_s_single_thread\":%.4f,"
"\"label_s_mean\":%.4f,\"merkle_s_mean\":%.4f,\"prove_s_mean\":%.6f,\"verify_s_mean\":%.6f,\"wall_s\":%.4f,"
"\"labels_per_s_per_instance\":%.1f,\"labels_per_s_all\":%.1f,\"accepted\":%d}\n",
nm, n, (unsigned long long)N, k, threads, tg, sl / threads, sm / threads, sp / threads, sv / threads, wall,
N / (sl / threads), (double)N * threads / wall, okc);
return okc == threads ? 0 : 1;
}
int main(int argc, char **argv) {
if (argc >= 2 && !strcmp(argv[1], "selftest")) {
const char *nm; b3_cmp_fn cmp = pick(&nm);
int b1 = b3_fast_selftest(b3_cmp_portable, 12), b2 = b3_fast_selftest(cmp, 12);
uint8_t h[32]; char hx[65]; b3_sha256((const uint8_t *)"abc", 3, h); hex(h, 32, hx);
int kat = strcmp(hx, "ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad") != 0;
printf("{\"mode\":\"selftest\",\"sha\":\"%s\",\"sha256_abc_kat_fail\":%d,\"portable_words_mismatch\":%d,\"fast_mismatch\":%d}\n", nm, kat, b1, b2);
return (kat || b1 || b2) ? 1 : 0;
}
if (argc >= 6 && !strcmp(argv[1], "fixture")) return do_fixture(atoi(argv[2]), strtoull(argv[3], 0, 10), strtoull(argv[4], 0, 10), atoi(argv[5]));
if (argc >= 6 && !strcmp(argv[1], "time")) return do_time(atoi(argv[2]), strtoull(argv[3], 0, 10), atoi(argv[4]), atoi(argv[5]));
fprintf(stderr, "usage: cpu_ref selftest | fixture n seed j k | time n seed k threads\n"); return 2;
}

View file

@ -0,0 +1,77 @@
/*
* cpu_ref_b1.c - B3's C port of the B1 reference encoding (b1enc_spec.h): the known-answer check against B1's
* fixtures, and the sequential CPU timing on the pod's own CPU.
* cpu_ref_b1 kat <b1-out-dir> compare n = 4, 8, 12, 16, 20 with B1's kat-nNN.json (and .proof.bin); exit 1 on any difference
* cpu_ref_b1 time <n> <k> <threads> one instance per thread (threads = 1 is the sequential row)
* Build: gcc -O3 -march=x86-64-v3 -o cpu_ref_b1 cpu_ref_b1.c -lpthread
*/
#include "b1enc_spec.h"
#include <stdio.h>
#include <pthread.h>
#include <time.h>
static double now_s(void) { struct timespec t; clock_gettime(CLOCK_MONOTONIC, &t); return t.tv_sec + t.tv_nsec * 1e-9; }
static void hex(const uint8_t *b, int n, char *o) { for (int i = 0; i < n; i++) sprintf(o + 2 * i, "%02x", b[i]); o[2 * n] = 0; }
static char *slurp(const char *p, size_t *len) { FILE *f = fopen(p, "rb"); if (!f) return NULL; fseek(f, 0, SEEK_END); long L = ftell(f); fseek(f, 0, SEEK_SET);
char *b = malloc(L + 1); if (fread(b, 1, L, f) != (size_t)L) { fclose(f); free(b); return NULL; } b[L] = 0; fclose(f); if (len) *len = L; return b; }
static int jget(const char *js, const char *key, char *out, size_t cap) { /* "key": "value" or "key": number */
char pat[128]; snprintf(pat, sizeof pat, "\"%s\":", key); const char *p = strstr(js, pat); if (!p) return 0; p += strlen(pat);
while (*p == ' ') p++; size_t i = 0; if (*p == '"') { p++; while (*p && *p != '"' && i + 1 < cap) out[i++] = *p++; } else { while (*p && *p != ',' && *p != '\n' && *p != '}' && i + 1 < cap) out[i++] = *p++; }
out[i] = 0; return 1; }
static int kat(const char *dir) {
int ns[5] = {4, 8, 12, 16, 20}, ks[5] = {8, 64, 64, 64, 64}, bad = 0;
for (int t = 0; t < 5; t++) {
int n = ns[t], k = ks[t]; uint64_t N = 1ULL << n; char path[512]; snprintf(path, sizeof path, "%s/kat-n%02d.json", dir, n);
char *js = slurp(path, NULL); if (!js) { printf("{\"kat\":%d,\"verdict\":\"MISSING %s\"}\n", n, path); bad++; continue; }
uint8_t chi[32]; b1_kat_chi(n, chi);
uint32_t *far = malloc((N + 1) * 4); for (uint64_t v = 0; v <= N; v++) far[v] = b1_far(v);
uint8_t *gb = malloc(16 * N); size_t gl = 0;
for (uint64_t v = 1; v <= N; v++) { uint64_t ps[2]; int np = b1_parents(v, far, ps); for (int q = 0; q < np; q++) { b1_u64(gb + gl, ps[q]); gl += 8; } }
uint8_t *lab = malloc((N + 1) * 32), *tree = malloc(N * 32); b1_label_all(chi, N, far, lab); b1_merkle(chi, n, lab, tree);
uint8_t *pf = malloc(b1_proof_max(n, k)); size_t pl = b1_prove(chi, n, k, far, lab, tree, pf);
uint8_t d1[32], d2[32], d3[32]; b3_sha256(gb, gl, d1); b3_sha256(lab + 32, 32 * N, d2); b3_sha256(pf, pl, d3);
char h0[65], h1[65], h2[65], h3[65], h4[65], e0[80], e1[80], e2[80], e3[80], e4[80], epl[32];
hex(chi, 32, h0); hex(d1, 32, h1); hex(d2, 32, h2); hex(tree, 32, h3); hex(d3, 32, h4);
jget(js, "chi", e0, 80); jget(js, "graph_parents_u64le_sha256", e1, 80); jget(js, "labels_concat_sha256", e2, 80); jget(js, "tau", e3, 80); jget(js, "proof_sha256", e4, 80); jget(js, "proof_bytes", epl, 32);
int ok = !strcmp(h0, e0) && !strcmp(h1, e1) && !strcmp(h2, e2) && !strcmp(h3, e3) && !strcmp(h4, e4) && (size_t)atol(epl) == pl;
int vok = b1_verify(chi, n, k, far, pf, pl);
snprintf(path, sizeof path, "%s/kat-n%02d.proof.bin", dir, n); size_t bl = 0; char *pb = slurp(path, &bl);
int bin_ok = pb && bl == pl && !memcmp(pb, pf, pl);
printf("{\"kat\":%d,\"chi\":%d,\"graph\":%d,\"labels\":%d,\"tau\":%d,\"proof_sha\":%d,\"proof_bin\":%d,\"verify\":%d,\"verdict\":\"%s\"}\n", n,
!strcmp(h0, e0), !strcmp(h1, e1), !strcmp(h2, e2), !strcmp(h3, e3), !strcmp(h4, e4), bin_ok, vok, (ok && vok && bin_ok) ? "IDENTICAL" : "MISMATCH");
bad += !(ok && vok && bin_ok); free(js); free(far); free(gb); free(lab); free(tree); free(pf); free(pb);
}
return bad ? 1 : 0;
}
typedef struct { int n, k; uint64_t j; const uint32_t *far; double tl, tm, tp, tv; int ok; } job_t;
static void *one(void *a) {
job_t *J = a; uint64_t N = 1ULL << J->n; uint8_t chi[32]; b1_batch_chi(J->n, J->j, chi);
uint8_t *lab = malloc((N + 1) * 32), *tree = malloc(N * 32), *pf = malloc(b1_proof_max(J->n, J->k));
double t0 = now_s(); b1_label_all(chi, N, J->far, lab); double t1 = now_s(); b1_merkle(chi, J->n, lab, tree); double t2 = now_s();
size_t pl = b1_prove(chi, J->n, J->k, J->far, lab, tree, pf); double t3 = now_s(); J->ok = b1_verify(chi, J->n, J->k, J->far, pf, pl); double t4 = now_s();
J->tl = t1 - t0; J->tm = t2 - t1; J->tp = t3 - t2; J->tv = t4 - t3; free(lab); free(tree); free(pf); return NULL;
}
static int timing(int n, int k, int threads) {
uint64_t N = 1ULL << n; double g0 = now_s(); uint32_t *far = malloc((N + 1) * 4); for (uint64_t v = 0; v <= N; v++) far[v] = b1_far(v); double tg = now_s() - g0;
job_t *J = calloc(threads, sizeof *J); pthread_t *th = calloc(threads, sizeof *th); double w0 = now_s();
for (int t = 0; t < threads; t++) { J[t] = (job_t){.n = n, .k = k, .j = (uint64_t)t, .far = far}; pthread_create(&th[t], NULL, one, &J[t]); }
for (int t = 0; t < threads; t++) pthread_join(th[t], NULL);
double wall = now_s() - w0, sl = 0, sm = 0, sp = 0, sv = 0; int okc = 0;
for (int t = 0; t < threads; t++) { sl += J[t].tl; sm += J[t].tm; sp += J[t].tp; sv += J[t].tv; okc += J[t].ok; }
printf("{\"mode\":\"cpu_time\",\"encoding\":\"B1\",\"impl\":\"C port, portable BLAKE2b\",\"n\":%d,\"N\":%llu,\"k\":%d,\"threads\":%d,\"graph_s_single_thread\":%.3f,"
"\"label_s_mean\":%.4f,\"merkle_s_mean\":%.4f,\"prove_s_mean\":%.6f,\"verify_s_mean\":%.6f,\"wall_s\":%.3f,\"labels_per_s_per_instance\":%.1f,"
"\"labels_per_s_all\":%.1f,\"accepted\":%d}\n", n, (unsigned long long)N, k, threads, tg, sl / threads, sm / threads, sp / threads, sv / threads, wall,
N / (sl / threads), (double)N * threads / wall, okc);
return okc == threads ? 0 : 1;
}
int main(int argc, char **argv) {
b1_init();
uint8_t h[32]; char hx[65]; b2_256((const uint8_t *)"abc", 3, h); hex(h, 32, hx);
if (strcmp(hx, "bddd813c634239723171ef3fee98579b94964e3bb1cb3e427262c8c068d52319")) { printf("{\"blake2b_256_abc_kat\":\"FAIL\",\"got\":\"%s\"}\n", hx); return 1; }
if (argc >= 3 && !strcmp(argv[1], "kat")) return kat(argv[2]);
if (argc >= 5 && !strcmp(argv[1], "time")) return timing(atoi(argv[2]), atoi(argv[3]), atoi(argv[4]));
fprintf(stderr, "usage: cpu_ref_b1 kat <dir> | time n k threads\n"); return 2;
}

View file

@ -0,0 +1,113 @@
#!/usr/bin/env python3
"""make_readme.py - fills docs/analysis/mhpow/b3/README.src.md into README.md from the raw rows (every figure code-generated).
cd docs/analysis/mhpow/b3 && python3 ../../../../tools/mhpow/b3/make_readme.py
Reads rows/<card>-b1 (B1 encoding) and rows/<card>-r1 (B3P1 control) through parse_rows.py, rows/*/known-failed*.log.
"""
import io, json, math, os, sys, contextlib, glob
HERE = os.path.dirname(os.path.abspath(__file__))
sys.path.insert(0, HERE)
import parse_rows # noqa: E402
ROWS = 'rows'
B1 = [d for d in ('rtx5090-b1', 'rtx4090-b1') if os.path.isdir(os.path.join(ROWS, d))]
P1 = [d for d in ('rtx5090-r1', 'rtx4090-r1') if os.path.isdir(os.path.join(ROWS, d))]
def tables(dirs):
buf = io.StringIO()
argv = sys.argv
sys.argv = ['parse_rows.py'] + [os.path.join(ROWS, d) for d in dirs]
with contextlib.redirect_stdout(buf):
parse_rows.main()
sys.argv = argv
return buf.getvalue().strip()
def cards(dirs):
return [parse_rows.card(os.path.join(ROWS, d)) for d in dirs]
def short(gpu):
return gpu.replace('NVIDIA GeForce ', '')
def meaning(cs):
out = []
for c in cs:
g = short(c['gpu'])
seq = {x['n']: x for x in c['cpu'] if x['threads'] == 1}
mains = {r['n']: r for r in c['rows'] if r['tag'].startswith('main')}
for r in c['rows']:
t = r['tag']; cpu = seq.get(r['n']); cr = cpu['labels_per_s_per_instance'] if cpu else None
eq = r['labels_per_s'] / cr if cr else None
nj = r['nJ_per_label']
if t.startswith('main'):
if eq is None:
s = 'no CPU row at this size'
elif eq < 16:
s = f'a 16-core desktop CPU out-labels the whole card (the card equals {eq:.1f} CPU threads): principally CPU-friendly, the plan\'s rejection case'
elif eq < 64:
s = f'the card equals {eq:.0f} CPU threads, so a 64-core server CPU out-labels it: no GPU advantage, principally CPU-friendly'
else:
s = f'the card equals {eq:.0f} CPU threads'
out.append(f"- {g}, {t}: {r['B']} instances of {r['inst_MiB']:.0f} MiB label {r['labels_per_s']/1e6:,.1f} M per second at {r['mean_board_W']:.0f} W board"
f"{'' if nj is None else f' ({nj:,.0f} nJ per label)'}; one instance takes {r['gpu_instance_latency_s']:.2f} s on the GPU against {r['cpu_seq_instance_s']:.2f} s on one CPU thread; {s}.")
elif t.startswith('ladder'):
m = mains.get(r['n'])
out.append(f"- {g}, {t}: {r['B']} instance(s) in flight label {r['labels_per_s']/1e6:,.2f} M per second at {r['mean_board_W']:.0f} W, about {r['B']} times one thread's {1e3/r['ns_per_label_per_inst']:.2f} M; throughput is linear in instances and the board draws nearly the same power at 1 as at {m['B'] if m else 'max'}, so the joules per label fall only by filling memory with instances (the trap, measured).")
elif t.startswith('diag'):
out.append(f"- {g}, {t} (not a B3 size): {r['inst_MiB']:.2f} MiB per instance lets {r['B']} instances fill the card ({r['mean_board_W']:.0f} W, {r['labels_per_s']/1e9:,.2f} G labels per second, {'-' if nj is None else f'{nj:,.0f}'} nJ per label); an instance this small ({2*r['inst_MiB']:.2f} MiB with its tree) fits in a specialist's on-die SRAM, which is the other side of the trap.")
elif t.startswith('abl'):
m = mains.get(r['n'])
d = (r['labels_per_s'] / m['labels_per_s'] - 1) * 100 if m else 0
what = 'instance-major (AOS) layout' if 'aos' in t else '32-thread blocks (one warp per block, spread over more SMs)'
out.append(f"- {g}, {t}: the {what} changes the card's labels per second by {d:+.1f} percent against the SOA main row; layout is not the lever, the dependency chain is.")
return '\n'.join(out)
def oracle(cs):
lines = ['| card | encoding | rows | rows IDENTICAL | instances byte-checked | GPU proofs accepted by the verifier | instance 0 = B1 fixture at n = 20 | C port = B1 KATs (n = 4..20) | known-failed test |', '|---|---|---|---|---|---|---|---|---|']
for d, c in zip(B1, cs):
rs = c['rows']; ident = sum(r['oracle'] == 'IDENTICAL' for r in rs)
acc = sum(r['accepted'] for r in rs); tot = sum(r['B'] for r in rs); chk = sum(r['checked'] for r in rs)
k20 = [r['b1_kat_instance0'] for r in rs if r['n'] == 20]
meta = open(os.path.join(ROWS, d, 'meta.txt')).read()
kats = meta.count('"verdict":"IDENTICAL"')
kf = ''
for p in glob.glob(os.path.join(ROWS, d, 'known-failed*.log')):
t = open(p).read()
kf = 'PASS' if 'RESULT test_known_failed_b1 PASS' in t else 'FAIL'
lines.append(f"| {short(c['gpu'])} | B1 | {len(rs)} | {ident} | {chk} | {acc} of {tot} | {'yes' if k20 and all(x == 1 for x in k20) else 'no'} ({len(k20)} rows) | {kats} of 5 | {kf or 'not logged'} |")
return '\n'.join(lines)
def tiers(cs):
# derived from the measured per-instance B1 rate on the 4090 (the slower card's figure is used for every tier)
c = next((x for x in cs if '4090' in x['gpu']), cs[0])
ns = sum(r['ns_per_label_per_inst'] for r in c['rows'] if r['tag'].startswith('main')) / max(1, sum(1 for r in c['rows'] if r['tag'].startswith('main')))
cpu = {x['n']: x['labels_per_s_per_instance'] for x in c['cpu'] if x['threads'] == 1}
lines = ['Derived, not measured, except the 24 and 32 GB rows above: instances = (card memory - 1.5 GB reserve) / (labels + tree + proof slot), labels per second = instances / one thread\'s measured time per label (' + f'{ns:,.0f}' + ' ns, the 4090 B1 main rows); "CPU threads" divides by the 4090 pod\'s one-thread C-port rate at the same size.', '',
'| card memory | 32 MiB: instances, M labels/s, = CPU threads | 128 MiB | 512 MiB |', '|---|---|---|---|']
for gb in (8, 12, 16, 24, 32):
cells = []
for n in (20, 22, 24):
N = 1 << n; per = (2 * N + 1) * 32 + 64 * 3 * (n + 1) * 32 + 64 + 32
inst = max(0, int((gb - 1.5) * (1 << 30) // per))
lps = inst / (ns * 1e-9)
cr = cpu.get(n)
cells.append(f"{inst}, {lps/1e6:,.1f} M, {lps/cr:,.1f}" if cr else f"{inst}, {lps/1e6:,.1f} M, -")
lines.append(f"| {gb} GB | " + ' | '.join(cells) + ' |')
eqs = {}
for gb in (8, 24, 32):
for n in (20, 24):
N = 1 << n; per = (2 * N + 1) * 32 + 64 * 3 * (n + 1) * 32 + 64 + 32
inst = max(0, int((gb - 1.5) * (1 << 30) // per)); eqs[(gb, n)] = inst / (ns * 1e-9) / cpu[n] if cpu.get(n) else float('nan')
lines += ['', f'What it means per tier: a home miner with one 8 GB card at 32 MiB per instance labels about as fast as {eqs[(8,20)]:.0f} CPU threads, at 512 MiB as fast as {eqs[(8,24)]:.1f} of one CPU thread; one 24 or 32 GB card equals {eqs[(24,20)]:.0f} to {eqs[(32,20)]:.0f} CPU threads at 32 MiB and {eqs[(24,24)]:.1f} to {eqs[(32,24)]:.1f} at 512 MiB (one-thread kernel; the measured rows above add the board\'s own figures); a rig scales linearly with cards and so does a server CPU with cores. A pool user sees the same per-card rate. Windows and Linux run the same CUDA kernel (measured on Linux only); AMD, Intel and Apple GPUs have no kernel here (the per-thread chain argument applies to them unchanged: one instance per lane, instances capped by memory). What this lane does about it: the B3 sizes are reported as failing the plan\'s GPU-competitiveness gate; the only GPU-favourable regime measured is instances under 2 MiB, which hands the specialist an SRAM-resident design (rows diag-n12 to n16), so B3 asks B1, B2 and B4 for a construction whose per-label work is memory-bound rather than hash-bound before any further GPU tuning.']
return '\n'.join(lines)
def main():
src = open('README.src.md').read()
b1c = cards(B1)
out = src.replace('<<B1_TABLES>>', tables(B1)).replace('<<B3P1_TABLES>>', tables(P1) if P1 else '(not run)')
out = out.replace('<<MEANING>>', meaning(b1c)).replace('<<ORACLE>>', oracle(b1c)).replace('<<TIERS>>', tiers(b1c))
open('README.md', 'w').write(out)
print('README.md written,', len(out), 'bytes')
if __name__ == '__main__':
main()

View file

@ -0,0 +1,89 @@
#!/usr/bin/env python3
"""parse_rows.py <out-dir> [<out-dir> ...] - the B3 rows tables from the pods' raw files.
Reads, per card directory: rows.jsonl (b3_gpu lines), power.csv (nvidia-smi 1 Hz board power),
idle.json (the 30 s idle window), cpu.jsonl (cpu_ref on the pod's own CPU), meta.txt.
Board power is integrated sample-and-hold over each row's labelling window; idle is NOT subtracted.
Prints markdown tables (the README's figures are this script's output, verbatim) and writes
summary.json beside the first directory's parent.
"""
import json, sys, os, datetime
def load_power(path):
s = []
for line in open(path):
p = [x.strip() for x in line.split(',')]
if len(p) < 8:
continue
try:
t = datetime.datetime.strptime(p[0], '%Y/%m/%d %H:%M:%S.%f').replace(tzinfo=datetime.timezone.utc).timestamp() * 1000
s.append((t, float(p[1]), float(p[2]), float(p[4]), float(p[6])))
except ValueError:
pass
return s
def integrate(samples, t0, t1):
"""sample-and-hold energy (J) and sample count over [t0, t1] ms"""
e, n, util, clk = 0.0, 0, [], []
for i, (t, w, u, c, m) in enumerate(samples):
tn = samples[i + 1][0] if i + 1 < len(samples) else t + 1000
a, b = max(t, t0), min(tn, t1)
if b > a:
e += w * (b - a) / 1000.0
if t0 <= t <= t1:
n += 1; util.append(u); clk.append(c)
return e, n, (sum(util) / len(util) if util else 0), (sum(clk) / len(clk) if clk else 0)
def card(d):
rows = [json.loads(l) for l in open(os.path.join(d, 'rows.jsonl')) if l.startswith('{')]
cpu = [json.loads(l) for l in open(os.path.join(d, 'cpu.jsonl'))] if os.path.exists(os.path.join(d, 'cpu.jsonl')) else []
pw = load_power(os.path.join(d, 'power.csv'))
idle = json.load(open(os.path.join(d, 'idle.json')))['idle_window_unix_ms']
ie, inn, _, _ = integrate(pw, idle[0], idle[1])
meta = open(os.path.join(d, 'meta.txt')).read()
cpu_model = next((l.split(':', 1)[1].strip() for l in meta.splitlines() if l.startswith('model name')), '?')
cgroup = next((l for l in meta.splitlines() if 'cgroup_cpus' in l), '')
seq = {c['n']: c for c in cpu if c['threads'] == 1}
allc = {c['n']: c for c in cpu if c['threads'] > 1}
out = []
for r in rows:
t0, t1 = r['label_window_unix_ms']
e, ns, util, clk = integrate(pw, t0, t1)
labels = r['N'] * r['B'] * r['passes']
win = (t1 - t0) / 1000.0
c1 = seq.get(r['n'])
o = dict(r)
o.update({
'window_s': win, 'power_samples': ns, 'mean_board_W': e / win if win > 0 else 0, 'gpu_util_pct': util, 'sm_clock_MHz': clk,
'nJ_per_label': (e / labels * 1e9) if ns >= 5 else None,
'J_per_instance_labelling': (e / (r['B'] * r['passes'])) if ns >= 5 else None,
'cpu_seq_labels_per_s': c1['labels_per_s_per_instance'] if c1 else None,
'cpu_seq_instance_s': (c1['label_s_mean'] + c1['merkle_s_mean'] + c1['prove_s_mean']) if c1 else None,
'gpu_instance_latency_s': r['label_s_per_pass'] + r['merkle_s'] + r['prove_s'],
'cpu_core_equiv': (r['labels_per_s'] / c1['labels_per_s_per_instance']) if c1 else None,
})
out.append(o)
return {'dir': d, 'gpu': rows[0]['gpu'] if rows else '?', 'cpu_model': cpu_model, 'cgroup': cgroup,
'idle_W': ie / ((idle[1] - idle[0]) / 1000.0), 'idle_samples': inn, 'rows': out, 'cpu': cpu, 'cpu_all': allc}
def f(x, p=1):
return '-' if x is None else (f'{x:,.{p}f}')
def main():
cards = [card(d) for d in sys.argv[1:]]
for c in cards:
print(f"\n#### {c['gpu']} (rented pod, stock clocks; host CPU {c['cpu_model']}, {c['cgroup'].strip()}); idle board power {c['idle_W']:.1f} W over {c['idle_samples']} samples (not subtracted)\n")
print('| row | MiB per instance | instances in flight | kernel, layout | label pass per batch (s) | labels/s, card | ns per label, per instance | board W (mean) | nJ per label | J per instance (labels) | commit per batch (s) | proof per batch (s) | GPU instance latency (s) | CPU sequential instance (s) | card = N one-thread CPU instances | oracle | accepted proofs |')
print('|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|')
for r in c['rows']:
print(f"| {r['tag']} | {r['inst_MiB']:.1f} | {r['B']} of {r['Bmax']} | {r['kernel']}, {r['layout']} | {r['label_s_per_pass']:.3f} | {f(r['labels_per_s']/1e6,1)} M | {r['ns_per_label_per_inst']:,.0f} | {r['mean_board_W']:.0f} | {f(r['nJ_per_label'],1)} | {f(r['J_per_instance_labelling'],2)} | {r['merkle_s']:.4f} | {r['prove_s']:.4f} | {r['gpu_instance_latency_s']:.2f} | {f(r['cpu_seq_instance_s'],2)} | {f(r['cpu_core_equiv'],1)} | {r['oracle']} ({r['checked']} checked) | {r['accepted']} of {r['B']} |")
enc = c['rows'][0].get('encoding', '?') if c['rows'] else '?'
print('\nCPU reference on the same pod (' + ('cpu_ref_b1: the C port of B1, portable scalar BLAKE2b, byte-identical to B1\'s fixtures; a SIMD BLAKE2b would be faster, so this CPU figure is a floor for the CPU' if enc == 'B1' else 'cpu_ref: sha_ni SHA-256, byte-identical to the B3P1 spec by selftest') + '):\n')
print('| n | MiB | threads | label s per instance | Merkle s | proof s | verify s | labels/s per instance | instance labels per wall second, whole prover, all threads | accepted |')
print('|---|---|---|---|---|---|---|---|---|---|')
for x in c['cpu']:
print(f"| {x['n']} | {x['N']*32/1048576:.0f} | {x['threads']} | {x['label_s_mean']:.3f} | {x['merkle_s_mean']:.3f} | {x['prove_s_mean']:.5f} | {x['verify_s_mean']:.5f} | {x['labels_per_s_per_instance']/1e6:.2f} M | {x['labels_per_s_all']/1e6:.1f} M | {x['accepted']} of {x['threads']} |")
json.dump(cards, open(os.path.join(os.path.dirname(os.path.abspath(sys.argv[1])), 'summary-' + os.path.basename(os.path.abspath(sys.argv[1])) + '.json'), 'w'), indent=1, default=str)
if __name__ == '__main__':
main()

44
tools/mhpow/b3/run_rows.sh Executable file
View file

@ -0,0 +1,44 @@
#!/usr/bin/env bash
# run_rows.sh <card-label> - the B3 rows on one rented pod, stock clocks. Writes /root/b3/out/<label>/.
# Power: nvidia-smi board power at 1 Hz for the whole run (idle NOT subtracted), integrated per labelling window
# by parse_rows.py. Each row's correctness gate is the in-harness spec oracle (byte identity + every proof verified).
set -uo pipefail
LABEL=${1:?label}; SRC=$(cd "$(dirname "$0")" && pwd); OUT=/root/b3/out/$LABEL; mkdir -p "$OUT" /root/b3/pids
CPUQ=$(awk '{printf "%d", $1/$2}' /sys/fs/cgroup/cpu.max 2>/dev/null || nproc)
export OMP_NUM_THREADS=$CPUQ
{
echo "label=$LABEL"; echo "src_id=$(cat "$SRC/SRC_ID")"; date -u +%FT%TZ
grep -m1 'model name' /proc/cpuinfo; echo "nproc=$(nproc) cgroup_cpus=$CPUQ"; cat /proc/loadavg
nvidia-smi --query-gpu=name,driver_version,vbios_version,power.limit,power.default_limit,clocks.max.sm,clocks.max.mem,memory.total,pcie.link.gen.current,pcie.link.width.current --format=csv
/usr/local/cuda/bin/nvcc --version | tail -1
} > "$OUT/meta.txt" 2>&1
nvidia-smi --query-gpu=timestamp,power.draw,utilization.gpu,utilization.memory,clocks.sm,clocks.mem,memory.used,temperature.gpu --format=csv,noheader,nounits -lms 1000 > "$OUT/power.csv" &
echo "$! $(date -u +%FT%TZ) b3-smi-$LABEL" > /root/b3/pids/smi.pid
sleep 30 # idle baseline in the power log (reported, never subtracted)
echo "{\"idle_window_unix_ms\":[$(( ($(date +%s) - 30) * 1000 )),$(( $(date +%s) * 1000 ))]}" > "$OUT/idle.json"
R="$OUT/rows.jsonl"; : > /dev/null
row() { "$SRC/b3_gpu" "$@" >> "$R" 2>> "$OUT/stderr.log"; echo "row rc=$? $*" >> "$OUT/progress.log"; }
# main rows: the three B3 sizes, card filled, both kernels, SOA
for n in 20 22 24; do
row --n $n --kernel 1 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n$n-k1
row --n $n --kernel 2 --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n$n-k2
done
# layout ablation at 32 MiB
row --n 20 --kernel 1 --layout aos --min-label-s 20 --check 2 --k 64 --tag abl-n20-k1-aos
# the under-utilisation ladder at 32 MiB per instance: instances in flight 1, 32, 128 (and max above)
for b in 1 32 128; do
row --n 20 --B $b --kernel 2 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B$b-k2
row --n 20 --B $b --kernel 1 --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B$b-k1
done
# diagnostic sizes (NOT B3 sizes): where does the card fill? 512 KiB, 2 MiB, 8 MiB per instance
for n in 14 16 18; do
row --n $n --kernel 1 --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n$n-k1
done
# the CPU reference on this pod's own CPU: the sequential row (1 thread) per size, and the all-quota diagnostic
for n in 20 22 24; do
"$SRC/cpu_ref" time $n 1 64 1 >> "$OUT/cpu.jsonl"
done
for n in 20 22; do "$SRC/cpu_ref" time $n 1 64 "$CPUQ" >> "$OUT/cpu.jsonl"; done
cat /proc/loadavg >> "$OUT/meta.txt"
kill "$(cut -d' ' -f1 /root/b3/pids/smi.pid)"; rm -f /root/b3/pids/smi.pid
echo "DONE $(date -u +%FT%TZ)" >> "$OUT/progress.log"

32
tools/mhpow/b3/run_rows_b1.sh Executable file
View file

@ -0,0 +1,32 @@
#!/usr/bin/env bash
# run_rows_b1.sh <card-label> <b1-kat-dir> - the B3 rows for the B1 reference encoding on one rented pod, stock clocks.
# Writes /root/b3/out/<label>/. Board power: nvidia-smi 1 Hz for the whole run, idle NOT subtracted (parse_rows.py integrates).
# Each row's correctness gate: the in-harness oracle (C port of B1, itself equal to B1's fixtures) + every proof verified.
set -uo pipefail
LABEL=${1:?label}; KAT=${2:?kat dir}; SRC=$(cd "$(dirname "$0")" && pwd); OUT=/root/b3/out/$LABEL; mkdir -p "$OUT" /root/b3/pids
CPUQ=$(awk '{printf "%d", $1/$2}' /sys/fs/cgroup/cpu.max 2>/dev/null || nproc)
export OMP_NUM_THREADS=$CPUQ
{
echo "label=$LABEL"; echo "encoding=B1 (tools/mhpow/b1 at build-6 09:26Z: params.py d47b8ff5, drsample.py 4169a5fc, mtp.py c0feed31)"
echo "src_id_b1=$(cat "$SRC/SRC_ID_B1")"; date -u +%FT%TZ
grep -m1 'model name' /proc/cpuinfo; echo "nproc=$(nproc --all) cgroup_cpus=$CPUQ"; cat /proc/loadavg
nvidia-smi --query-gpu=name,driver_version,vbios_version,power.limit,power.default_limit,clocks.max.sm,clocks.max.mem,memory.total,pcie.link.gen.current,pcie.link.width.current --format=csv
/usr/local/cuda/bin/nvcc --version | tail -1
"$SRC/cpu_ref_b1" kat "$KAT"
} > "$OUT/meta.txt" 2>&1
nvidia-smi --query-gpu=timestamp,power.draw,utilization.gpu,utilization.memory,clocks.sm,clocks.mem,memory.used,temperature.gpu --format=csv,noheader,nounits -lms 1000 > "$OUT/power.csv" &
echo "$! $(date -u +%FT%TZ) b3-smi-$LABEL" > /root/b3/pids/smi-b1.pid
sleep 30
echo "{\"idle_window_unix_ms\":[$(( ($(date +%s) - 30) * 1000 )),$(( $(date +%s) * 1000 ))]}" > "$OUT/idle.json"
R="$OUT/rows.jsonl"
row() { "$SRC/b3_gpu_b1" --kat-dir "$KAT" "$@" >> "$R" 2>> "$OUT/stderr.log"; echo "row rc=$? $*" >> "$OUT/progress.log"; }
for n in 20 22 24; do row --n $n --layout soa --min-label-s 20 --check 2 --k 64 --tag main-n$n; done
row --n 20 --layout aos --min-label-s 20 --check 2 --k 64 --tag abl-n20-aos
row --n 20 --layout soa --min-label-s 20 --check 2 --k 64 --tpb 32 --tag abl-n20-tpb32
for b in 1 32 128; do row --n 20 --B $b --layout soa --min-label-s 10 --check 1 --k 64 --tag ladder-n20-B$b; done
for n in 12 14 16 18; do row --n $n --layout soa --min-label-s 20 --check 2 --k 64 --tag diag-n$n; done
for n in 20 22 24; do "$SRC/cpu_ref_b1" time $n 64 1 >> "$OUT/cpu.jsonl"; done
for n in 20 22; do "$SRC/cpu_ref_b1" time $n 64 "$CPUQ" >> "$OUT/cpu.jsonl"; done
cat /proc/loadavg >> "$OUT/meta.txt"
kill "$(cut -d' ' -f1 /root/b3/pids/smi-b1.pid)"; rm -f /root/b3/pids/smi-b1.pid
echo "DONE $(date -u +%FT%TZ)" >> "$OUT/progress.log"

View file

@ -0,0 +1,22 @@
#!/usr/bin/env bash
# test_known_failed.sh - the oracle must fire on a known-failed GPU variant and stay quiet on the known-finished one.
# known-failed : --wrong-edge (the GPU uses far(v) = v-2, i.e. DRSample's long edges deleted: "a faster graph with
# the old proof"); the spec oracle must report MISMATCH and the harness must exit 1.
# known-finished: the same run without the flag must report IDENTICAL and exit 0.
# cpu selftest : the CPU fast path (sha_ni) must be byte-identical to the spec path.
# Exit 0 only when all three behave as stated.
set -uo pipefail
cd "$(dirname "$0")"
export OMP_NUM_THREADS=${OMP_NUM_THREADS:-16}
fail=0
./cpu_ref selftest; [ $? -eq 0 ] && echo "CASE cpu_selftest PASS" || { echo "CASE cpu_selftest FAIL"; fail=1; }
out=$(./b3_gpu --n 12 --B 96 --k 32 --check 4 --wrong-edge --tag known-failed 2>/dev/null); rc=$?
echo "$out"
if [ $rc -eq 1 ] && echo "$out" | grep -q '"oracle":"MISMATCH"' && echo "$out" | grep -q '"accepted":0,'; then echo "CASE known_failed_wrong_edge PASS (oracle fired: MISMATCH, 0 proofs accepted, exit 1)"; else echo "CASE known_failed_wrong_edge FAIL (rc=$rc)"; fail=1; fi
for kern in 1 2; do
out=$(./b3_gpu --n 12 --B 96 --k 32 --check 4 --kernel $kern --tag known-finished-k$kern 2>/dev/null); rc=$?
echo "$out"
if [ $rc -eq 0 ] && echo "$out" | grep -q '"oracle":"IDENTICAL"'; then echo "CASE known_finished_k$kern PASS"; else echo "CASE known_finished_k$kern FAIL (rc=$rc)"; fail=1; fi
done
[ $fail -eq 0 ] && echo "RESULT test_known_failed PASS" || echo "RESULT test_known_failed FAIL"
exit $fail

View file

@ -0,0 +1,19 @@
#!/usr/bin/env bash
# test_known_failed_b1.sh <b1-kat-dir> - the B1-encoding oracle chain must fire on a known-failed case and pass a known-finished one.
# kat : the C port reproduces B1's five known-answer fixtures (graph, labels, tau, proof bytes) byte for byte;
# known-failed : --wrong-edge (GPU graph far(v) = v-2, DRSample's long edges deleted: a faster graph that keeps the old
# proof) must give MISMATCH, 0 accepted proofs and exit 1;
# known-finished : the same batch without the flag must be IDENTICAL, instance 0 equal to B1's own fixture, exit 0.
set -uo pipefail
cd "$(dirname "$0")"; KAT=${1:?b1 kat dir}
export OMP_NUM_THREADS=${OMP_NUM_THREADS:-16}
fail=0
./cpu_ref_b1 kat "$KAT"; [ $? -eq 0 ] && echo "CASE b1_kat_port PASS" || { echo "CASE b1_kat_port FAIL"; fail=1; }
out=$(./b3_gpu_b1 --n 12 --B 96 --k 64 --check 4 --wrong-edge --kat-dir "$KAT" --tag known-failed-b1 2>/dev/null); rc=$?; echo "$out"
if [ $rc -eq 1 ] && echo "$out" | grep -q '"oracle":"MISMATCH"' && echo "$out" | grep -q '"accepted":0,'; then echo "CASE known_failed_wrong_edge_b1 PASS (oracle fired)"; else echo "CASE known_failed_wrong_edge_b1 FAIL (rc=$rc)"; fail=1; fi
for n in 8 12 16; do
out=$(./b3_gpu_b1 --n $n --B 96 --k 64 --check 4 --kat-dir "$KAT" --tag known-finished-b1-n$n 2>/dev/null); rc=$?; echo "$out"
if [ $rc -eq 0 ] && echo "$out" | grep -q '"oracle":"IDENTICAL"' && echo "$out" | grep -q '"b1_kat_instance0":1,'; then echo "CASE known_finished_b1_n$n PASS"; else echo "CASE known_finished_b1_n$n FAIL (rc=$rc)"; fail=1; fi
done
[ $fail -eq 0 ] && echo "RESULT test_known_failed_b1 PASS" || echo "RESULT test_known_failed_b1 FAIL"
exit $fail

19
tools/mhpow/c2/c2_gpu_row.sh Executable file
View file

@ -0,0 +1,19 @@
#!/usr/bin/env bash
# c2_gpu_row.sh <out-dir> <worker> <control-pack> <chi-pack> [batches] - candidate 2's first GPU row: the frozen class v6 kernel
# (the kit's own worker, NVRTC over the pack's kernel text, the pack's self-test gating the row) on the chi-keyed pack against
# the day pack, a same-session pair, stock clocks (a rented container cannot lock), board power by nvidia-smi at 1 Hz, idle not
# subtracted. The hash lane's GPU row recipe (build-1:/srv/artefacts/1p5x/gpu-row-recipe.md) with --batches lowered for the clock.
set -u
OUT=${1:?out}; W=${2:?worker}; CTRL=${3:?control pack}; CHI=${4:?chi pack}; NB=${5:-100}
mkdir -p "$OUT"; echo "$$ $(date -u +%FT%TZ) b3-c2-gpu-row" > /root/b3/pids/c2-gpu.pid
echo "RESULT start $(date -u +%FT%TZ) $(nvidia-smi --query-gpu=name,driver_version --format=csv,noheader -i 0) worker=$(sha256sum "$W" | cut -c1-16)" | tee "$OUT/row.log"
for P in "$CTRL" "$CHI" "$CTRL" "$CHI"; do
N=$(basename "$P"); i=$((${i:-0}+1))
nvidia-smi -i 0 --query-gpu=timestamp,power.draw,clocks.sm,clocks.mem,temperature.gpu,utilization.gpu --format=csv,noheader,nounits -lms 1000 > "$OUT/samples-$i-$N.csv" &
SP=$!; sleep 2
T0=$(date +%s.%N); "$W" --bench --pack "$P" --batches "$NB" --batch-log2 24 --block-warps 1 --device 0 > "$OUT/bench-$i-$N.log" 2>&1; RC=$?; T1=$(date +%s.%N)
kill "$SP"; wait "$SP" 2>/dev/null
echo "RESULT run=$i pack=$N rc=$RC wall_s=$(python3 -c "print(round($T1-$T0,2))") $(grep -E 'mhs=|MH/s' "$OUT/bench-$i-$N.log" | tail -1)" | tee -a "$OUT/row.log"
grep -iE "self-test|check|fingerprint|prepare|cache|dataset|built|ms" "$OUT/bench-$i-$N.log" | head -12 | sed "s/^/ $i $N | /" | tee -a "$OUT/row.log"
done
rm -f /root/b3/pids/c2-gpu.pid; echo "RESULT end $(date -u +%FT%TZ)" | tee -a "$OUT/row.log"

View file

@ -0,0 +1,14 @@
[package]
name = "mhpow-c2-ref"
version = "0.1.0"
edition = "2021"
description = "Track B candidate 2 (research): fresh-state class v6 labels under the MTP commitment; CPU reference and verifier over the frozen igneum-pow"
publish = false
[workspace]
[dependencies]
igneum-pow = { path = "../../../../igneum-pow" }
[profile.release]
opt-level = 3

View file

@ -0,0 +1,224 @@
//! Candidate 2 (Track B, research only; nothing activates): the MTP framework of [BS25] section 3.2 in the B1
//! lane's encoding (BLAKE2b-256, one-byte tags, u64 LE, B1's LSB-first Merkle order, c_i = H('C'|chi|i|tau) mod N),
//! with the label function replaced by the frozen class v6 hash over a per-trial dataset keyed by chi:
//! l_0 = H('L' | chi | u64 0)
//! h_v = hash_warp(P6, nonce = u32le(l_{v-1}[0..4]), D(chi)) (32 lanes x u64, the frozen interpreter)
//! l_v = H('L' | chi | u64 v | l_{v-1} | h_v as 32 LE u64) v = 1..N
//! P6 = the frozen generator 6 program (ProgramClass::V6) from a fixed public epoch and era seed; D(chi) = the
//! class v6 dataset of 2^log2 words keyed by chi (mode "mh": the 256 MiB-cache memory-hard construction,
//! chain_dataset(chi); mode "closed": the six-operation closed form keyed by chi). The graph is a PATH (each label's
//! only parent is l_{v-1}): the README's hole H2. Proof container "C2MTPV61" | n u8 | k u32le | tau | per challenge:
//! label | n siblings | parent count u8 (0 or 1) | parent label | n siblings.
//! c2ref kat <n> <mode> <log2> JSON: chi, labels sha, tau, proof sha, verify
//! c2ref row <n> <mode> <log2> <k> the honest row: times, RSS, proof bytes, items per label, verifier cost
//! c2ref neg <n> <mode> <log2> <k> the known-failed cases (each must be REFUSED)
use igneum_pow::blake2b::blake2b_256 as h256;
use igneum_pow::generator::{Program, ProgramClass, LANES};
use igneum_pow::verify::{interpret_warp, DatasetMode, DatasetSource, Epoch};
use std::time::Instant;
const D: usize = 32;
fn u64le(x: u64) -> [u8; 8] { x.to_le_bytes() }
fn program() -> Program {
let es = h256(&[b"igneum/mhpow/c2/epoch-seed/v1"]);
let er = h256(&[b"igneum/mhpow/c2/era-seed/v1"]);
Epoch::chain_program(&es, Some(&er), ProgramClass::V6, "mhpow-c2")
}
fn dataset(chi: &[u8; 32], mode: &str, log2: u32) -> DatasetSource {
match mode {
"mh" => {
// class v6 items are keyed by the window's state leaves (the '+state' layer); C2's fresh state is
// chi itself: root = block = chi, no records (one leaf, the empty record's digest under chi)
let mut ds = Epoch::chain_dataset_day(chi, ProgramClass::V6, 0, log2);
ds.key_bytes = chi.to_vec();
let leaves = igneum_pow::state::StateLeaves::build(*chi, *chi, 0, &[], log2);
ds.with_leaves(std::sync::Arc::new(leaves))
}
"closed" => {
let key = igneum_pow::seed::seed_words_from_bytes(chi);
let shape = igneum_pow::memhard::Shape::for_class_day(&ProgramClass::V6.load_class(), 0);
DatasetSource::from_key_shape(key, DatasetMode::ClosedForm, log2, shape)
}
_ => panic!("mode mh|closed"),
}
}
struct Ctx { p: Program, ds: DatasetSource, chi: [u8; 32], items: u64 }
impl Ctx {
fn step(&mut self, v: u64, prev: &[u8; 32]) -> [u8; 32] {
let nonce = u32::from_le_bytes([prev[0], prev[1], prev[2], prev[3]]);
let w = interpret_warp(&self.p, nonce, &self.ds);
self.items += w.items_derived as u64;
let mut hb = [0u8; 8 * LANES];
for (i, x) in w.hashes.iter().enumerate() { hb[8 * i..8 * i + 8].copy_from_slice(&x.to_le_bytes()); }
h256(&[b"L", &self.chi, &u64le(v), prev, &hb])
}
}
fn label0(chi: &[u8; 32]) -> [u8; 32] { h256(&[b"L", chi, &u64le(0)]) }
fn bitrev(mut x: u64, n: u32) -> u64 { let mut r = 0; for _ in 0..n { r = (r << 1) | (x & 1); x >>= 1; } r }
struct Tree { levels: Vec<Vec<[u8; 32]>> }
impl Tree {
fn new(chi: &[u8; 32], labels: &[[u8; 32]], n: u32) -> Tree {
let nn = 1u64 << n;
let leaves: Vec<[u8; 32]> = (0..nn).map(|p| labels[(bitrev(p, n) + 1) as usize]).collect();
let mut levels = vec![leaves];
for _ in 0..n {
let cur = levels.last().unwrap();
let nx: Vec<[u8; 32]> = (0..cur.len() / 2).map(|q| h256(&[b"M", chi, &cur[2 * q], &cur[2 * q + 1]])).collect();
levels.push(nx);
}
levels.reverse();
Tree { levels }
}
fn root(&self) -> [u8; 32] { self.levels[0][0] }
fn reveal(&self, leaf: u64, n: u32) -> Vec<[u8; 32]> {
let p = bitrev(leaf, n);
(1..=n).map(|j| self.levels[j as usize][((p >> (n - j)) ^ 1) as usize]).collect()
}
}
fn mt_check(chi: &[u8; 32], leaf_index: u64, leaf: &[u8; 32], path: &[[u8; 32]], tau: &[u8; 32], n: u32) -> bool {
let mut s = *leaf;
for j in (1..=n).rev() {
let bit = (leaf_index >> (j - 1)) & 1;
let sib = &path[(j - 1) as usize];
s = if bit == 0 { h256(&[b"M", chi, &s, sib]) } else { h256(&[b"M", chi, sib, &s]) };
}
&s == tau
}
fn challenges(chi: &[u8; 32], tau: &[u8; 32], k: u32, n: u32) -> Vec<u64> {
(1..=k as u64).map(|i| { let d = h256(&[b"C", chi, &u64le(i), tau]); u64::from_le_bytes(d[0..8].try_into().unwrap()) & ((1u64 << n) - 1) }).collect()
}
fn prove(chi: &[u8; 32], labels: &[[u8; 32]], tree: &Tree, n: u32, k: u32) -> Vec<u8> {
let tau = tree.root();
let mut o = b"C2MTPV61".to_vec(); o.push(n as u8); o.extend_from_slice(&k.to_le_bytes()); o.extend_from_slice(&tau);
for c in challenges(chi, &tau, k, n) {
let v = c + 1;
o.extend_from_slice(&labels[v as usize]); for s in tree.reveal(c, n) { o.extend_from_slice(&s); }
if v >= 2 { o.push(1); o.extend_from_slice(&labels[(v - 1) as usize]); for s in tree.reveal(v - 2, n) { o.extend_from_slice(&s); } } else { o.push(0); }
}
o
}
/// The verifier, [BS25] Verify steps 1 to 4 in order: container, challenges, Merkle openings at derived positions,
/// local consistency (the class v6 hash recomputed over D(chi) at the parent's nonce). Returns Err(check name).
fn verify(cx: &mut Ctx, n: u32, k: u32, b: &[u8]) -> Result<(), String> {
let chi = cx.chi;
if b.len() < 45 || &b[0..8] != b"C2MTPV61" || b[8] as u32 != n || u32::from_le_bytes(b[9..13].try_into().unwrap()) != k { return Err("check_0_container".into()); }
let tau: [u8; 32] = b[13..45].try_into().unwrap();
let mut off = 45usize;
let seg = D * (n as usize + 1);
let take = |off: &mut usize, m: usize| -> Result<&[u8], String> { if *off + m > b.len() { return Err("check_0_container".into()); } let s = &b[*off..*off + m]; *off += m; Ok(s) };
let cs = challenges(&chi, &tau, k, n);
let mut items = Vec::new();
for c in cs.iter() {
let v = c + 1;
let nd = take(&mut off, seg)?.to_vec();
let cnt = take(&mut off, 1)?[0];
let want = if v >= 2 { 1 } else { 0 };
if cnt != want { return Err("check_2a_parent_set".into()); }
let par = if cnt == 1 { Some(take(&mut off, seg)?.to_vec()) } else { None };
items.push((v, nd, par));
}
if off != b.len() { return Err("check_0_container".into()); }
for (v, nd, par) in items.iter() {
let lab: [u8; 32] = nd[0..32].try_into().unwrap();
let path: Vec<[u8; 32]> = nd[32..].chunks(32).map(|x| x.try_into().unwrap()).collect();
if !mt_check(&chi, v - 1, &lab, &path, &tau, n) { return Err(format!("check_2b_merkle_openings node {v}")); }
if let Some(p) = par {
let pl: [u8; 32] = p[0..32].try_into().unwrap();
let pp: Vec<[u8; 32]> = p[32..].chunks(32).map(|x| x.try_into().unwrap()).collect();
if !mt_check(&chi, v - 2, &pl, &pp, &tau, n) { return Err(format!("check_2b_merkle_openings parent of {v}")); }
}
}
for (v, nd, par) in items.iter() {
let lab: [u8; 32] = nd[0..32].try_into().unwrap();
let prev = match par { Some(p) => p[0..32].try_into().unwrap(), None => [0u8; 32] };
let want = if *v == 1 { cx.step(1, &label0(&chi)) } else { cx.step(*v, &prev) };
if want != lab { return Err(format!("check_3_local_consistency node {v}")); }
}
Ok(())
}
fn sha256hex(b: &[u8]) -> String {
use std::process::{Command, Stdio}; use std::io::Write;
let mut ch = Command::new("sha256sum").stdin(Stdio::piped()).stdout(Stdio::piped()).spawn().unwrap();
ch.stdin.as_mut().unwrap().write_all(b).unwrap(); drop(ch.stdin.take());
String::from_utf8(ch.wait_with_output().unwrap().stdout).unwrap()[0..64].to_string()
}
fn hex(b: &[u8]) -> String { b.iter().map(|x| format!("{x:02x}")).collect() }
fn rss_kb() -> u64 { std::fs::read_to_string("/proc/self/status").ok().and_then(|s| s.lines().find(|l| l.starts_with("VmHWM")).map(|l| l.split_whitespace().nth(1).unwrap().parse().unwrap())).unwrap_or(0) }
fn kat_chi(n: u32, mode: &str, log2: u32) -> [u8; 32] { h256(&[b"C2-fixture", mode.as_bytes(), &u64le(n as u64), &u64le(log2 as u64)]) }
fn main() {
let a: Vec<String> = std::env::args().collect();
if a[1] == "statefile" {
// c2ref statefile <n> <mode> <log2> <out>: the KAT chi of (n, mode, log2) and its IGSD1 state stream (root = block = chi,
// no records), for igneum-pow export --day-hex <chi> --state <out> (the GPU row's chi-keyed pack)
let n: u32 = a[2].parse().unwrap(); let log2: u32 = a[4].parse().unwrap(); let chi = kat_chi(n, &a[3], log2);
let st = igneum_pow::state::StateStream { number: 0, block: chi, root: chi, records: vec![] };
std::fs::write(&a[5], st.encode()).unwrap(); println!("{}", hex(&chi)); return;
}
let cmd = a[1].as_str(); let n: u32 = a[2].parse().unwrap(); let mode = a[3].clone(); let log2: u32 = a[4].parse().unwrap();
let k: u32 = if a.len() > 5 { a[5].parse().unwrap() } else { 16 };
let nn = 1u64 << n;
let chi = kat_chi(n, &mode, log2);
let t0 = Instant::now();
let p = program();
let t_prog = t0.elapsed().as_secs_f64();
let t1 = Instant::now();
let ds = dataset(&chi, &mode, log2);
let t_ds = t1.elapsed().as_secs_f64();
let loads: usize = p.instrs.iter().filter(|i| format!("{:?}", i.op).contains("Load")).count();
let mut cx = Ctx { p, ds, chi, items: 0 };
let t2 = Instant::now();
let mut labels = vec![[0u8; 32]; (nn + 1) as usize];
let mut prev = label0(&chi);
for v in 1..=nn { let l = cx.step(v, &prev); labels[v as usize] = l; prev = l; }
let t_lab = t2.elapsed().as_secs_f64();
let items_honest = cx.items;
let t3 = Instant::now(); let tree = Tree::new(&chi, &labels, n); let t_tree = t3.elapsed().as_secs_f64();
let t4 = Instant::now(); let pf = prove(&chi, &labels, &tree, n, k); let t_prove = t4.elapsed().as_secs_f64();
let t5 = Instant::now(); let vr = verify(&mut cx, n, k, &pf); let t_ver = t5.elapsed().as_secs_f64();
let mut all = Vec::with_capacity((nn * 32) as usize); for v in 1..=nn { all.extend_from_slice(&labels[v as usize]); }
match cmd {
"kat" | "row" => {
println!("{{\"c2\":\"{cmd}\",\"mode\":\"{mode}\",\"n\":{n},\"N\":{nn},\"dataset_log2_words\":{log2},\"dataset_bytes\":{},\"k\":{k},\"chi\":\"{}\",\"labels_sha256\":\"{}\",\"tau\":\"{}\",\"proof_bytes\":{},\"proof_sha256\":\"{}\",\"verify\":\"{}\",\
\"program_s\":{t_prog:.4},\"dataset_setup_s\":{t_ds:.4},\"label_s\":{t_lab:.4},\"label_s_per_label\":{:.6},\"merkle_s\":{t_tree:.5},\"prove_s\":{t_prove:.5},\"verify_s\":{t_ver:.4},\
\"items_derived_per_label\":{:.1},\"load_sites_per_program\":{loads},\"lanes\":{LANES},\"peak_rss_kb\":{}}}",
4u64 << log2, hex(&chi), sha256hex(&all), hex(&tree.root()), pf.len(), sha256hex(&pf), match &vr { Ok(_) => "accept".to_string(), Err(e) => e.clone() },
t_lab / nn as f64, items_honest as f64 / nn as f64, rss_kb());
if vr.is_err() { std::process::exit(1); }
}
"neg" => {
// known-failed cases: each must be refused by the named check
let mut fails = 0;
let mut run = |name: &str, b: Vec<u8>, cx: &mut Ctx| { let r = verify(cx, n, k, &b); let ok = r.is_err(); if !ok { fails += 1; } println!("{{\"neg\":\"{name}\",\"refused\":{ok},\"by\":\"{}\"}}", r.err().unwrap_or_default()); };
let mut b = pf.clone(); b[45] ^= 1; run("flip_challenged_label", b, &mut cx);
let mut b = pf.clone(); let l = b.len(); b[l - 1] ^= 1; run("flip_last_sibling", b, &mut cx);
let mut b = pf.clone(); b.pop(); run("truncate", b, &mut cx);
// a prover who skips the class v6 hash: labels from a wrong dataset key (another chi), committed honestly
let chi2 = h256(&[b"other"]); let ds2 = dataset(&chi2, &mode, log2);
let mut cx2 = Ctx { p: program(), ds: ds2, chi, items: 0 };
let mut lab2 = vec![[0u8; 32]; (nn + 1) as usize]; let mut pv = label0(&chi);
for v in 1..=nn { let l = cx2.step(v, &pv); lab2[v as usize] = l; pv = l; }
let t2 = Tree::new(&chi, &lab2, n); run("wrong_dataset_key", prove(&chi, &lab2, &t2, n, k), &mut cx);
// red nodes: every label after the first challenge-free half replaced by H(garbage), committed honestly
let mut lab3 = labels.clone(); for v in (nn / 2)..=nn { lab3[v as usize] = h256(&[b"red", &u64le(v)]); }
let t3 = Tree::new(&chi, &lab3, n); run("half_red_labels", prove(&chi, &lab3, &t3, n, k), &mut cx);
println!("{{\"neg_result\":\"{}\"}}", if fails == 0 { "PASS" } else { "FAIL" });
if fails > 0 { std::process::exit(1); }
}
_ => panic!("cmd"),
}
}

16
tools/mhpow/c2/run_c2.sh Executable file
View file

@ -0,0 +1,16 @@
#!/usr/bin/env bash
# run_c2.sh <root> - candidate 2's CPU reference rows on a pod or box (never the Mac). <root> holds igneum-pow at the frozen tree
# 1a938abe4 (fingerprint 5f4d6dc6...b6f, checked first) and tools/mhpow/c2/ref. Writes <root>/out/{kat,neg,rows}.jsonl.
set -uo pipefail
R=${1:?root}; cd "$R" || exit 1
FP=$(cd igneum-pow && find src -type f | LC_ALL=C sort | xargs sha256sum | sha256sum | cut -d' ' -f1)
[ "$FP" = 5f4d6dc6199294db89042171004e6420c1e5791e716d4b39b73d375818c10b6f ] || { echo "REFUSED: igneum-pow is not the frozen tree ($FP)"; exit 3; }
mkdir -p out /root/b3/pids; echo "$$ $(date -u +%FT%TZ) b3-c2-cpu" > /root/b3/pids/c2.pid
(cd tools/mhpow/c2/ref && cargo build --release) || exit 4
B=tools/mhpow/c2/ref/target/release/mhpow-c2-ref
: > out/kat.jsonl; for m in closed mh; do for l in 20 28; do $B kat 4 $m $l 16 >> out/kat.jsonl; done; done
: > out/neg.jsonl; fail=0; for m in closed mh; do $B neg 4 $m 28 16 >> out/neg.jsonl || fail=1; done
: > out/rows.jsonl; for m in closed mh; do $B row 8 $m 28 64 >> out/rows.jsonl; done
rm -f /root/b3/pids/c2.pid
[ $fail -eq 0 ] && echo "RESULT c2 known-failed cases PASS (every case refused)" || echo "RESULT c2 known-failed cases FAIL"
exit $fail