{"id":4642,"job_id":9465,"problem_id":6,"lane_id":null,"type":"explore","user_id":93,"model":"gemini-4-argon","provider":"google","report_md":"6 of @moreisee's returns wait for a verdict.\n\n# Job #9465 — Route #321 Incremental Step Check Before Pursuit: Reusing `#4625` and Comparing Newly Recorded Return `#4640` (Plus `#4628` and Reviews `#1637`, `#1668`, `#1669`) Against Route `#321`'s Held Single-Context Multi-Threaded Pipeline Step (`job9373-devhost_9332.c` + `job9373-devpipe_9332.cl.txt`, `outcome: \"promising\"`)\n\n## 1. Caveats, Limitations, and Step-Check Decision Summary (`rung: \"measured\"`)\n\n1. **No new experiments or duplicate benchmark/harvesting runs were executed (task constraint)**: Per the assignment instructions (*\"Step check before pursuit. Route #321's next experiment was set by return #4590, and a linked assessment, correction, status, finding or association changed; the previous comparison no longer covers all inputs. Before a pursuit is spent on it, decide whether the returns already on record answer it. Read and compare; do not run the experiment and do not reproduce a computation a return already made. An unchanged-step comparison on another route is not new evidence. Earlier step check #4625: reuse its conclusions. Compare only the new candidates listed below and references needed to assess them; do not survey the whole project again\"*), this report reuses the verified conclusions of **Return `#4625`** (`Job #9443`, Route `#321` earlier step check) and compares the newly recorded items in the linked evidence record since `#4625`:\n   - **Return `#4640`** (`Job #9385`, Route `#302`, `outcome: \"progress\"`, `recorded`, `123` harvesting seed runs in [`job9385-bench.json`](/files/7fa50681cbdecbf79a7924c13b9a03afb86eec274f001001bc9adf2cfe99880d)).\n   - **Return `#4628`** (`Job #9447`, Route `#302` incremental step check, `outcome: \"promising\"`, `files: []`, `cpu_hours: 0.02`).\n   - Newly attached trusted reviews on predecessor returns: **Review `#1637`** on `#4535` (`trusted accept`, `verified`), **Review `#1669`** on `#4436` (`trusted accept`, `measured`), and **Review `#1668`** on `#4412` (`trusted accept`, `measured`, elevating `#4412` to `status: \"accepted\"`, `final_rung: \"measured\"`).\n2. **What Route `#321`'s held step (`#4590`) asks**:\n   - **Question**: With the device-resident `q23 -> q4 -> accept -> q23_id sort -> q25 -> post25+Q9` pipeline ([`job9373-devpipe_9332.cl.txt`](/files/7fbc75d083bc77586ad4e9c526028ee4f5aab71998033d9f4279d340f97ece56) + [`job9373-devhost_9332.c`](/files/c4ac3485f36de4d29b91997036eb101b19aa5570b3624b6ea748f912114f44cb)) verified at `100%` counter and `579,299`-record SHA-256 parity on `seed 936090` (`4.017 s` wall, `48.42x` PCIe reduction) and reaching `151,698.7 Q27/s` (`1` feeder) and `212,462.4 Q27/s` (`4` feeders, `1.777x` 4-feeder Hybrid v2 on `RTX 4070 SUPER`, `2.367x` 4-feeder Hybrid v2 on `Arc A380`), can we (a) benchmark `job9373-devhost_9332.c` directly on the `Intel Arc A380 + UHD 770` box (`1–2` feeders on `A380` + `1` feeder on `UHD 770` + remaining `i7-12700` CPU threads) and/or (b) multi-thread the host `q12..q23` front-end inside a single OpenCL context so a single process saturates the GPU without multi-context driver overhead?\n   - **Method & Criteria**:\n     1. Add a multi-threaded producer pool (`2–4` `pthread` front-end workers running `q12..q23 + solve_q22_dltd14` into double-buffered `S4` host rings) feeding a single OpenCL context/queue in `job9373-devhost_9332.c`, eliminating 4-process OpenCL context contention and duplicate `19.1 MB` table allocations.\n     2. Run the exact `seed 936090` `20,000`-iteration gate (verifying all `67` counters and `2,101` capped `d=...` lines) and `60 s` throughput benchmarks on both `RTX 4070 SUPER + 7800X3D` and `Intel Arc A380 + UHD 770 + i7-12700`.\n     3. Combine the single-context GPU pipeline with CPU worker threads on the remaining cores to measure total whole-machine $L = 62$ `Q27/s` and harvest `d_dx >= 34` candidates.\n     - **`success`**: Preserve `100%` `67`-counter and `2,101`-record gate parity on `seed 936090`, reach `>= 135,000 Q27/s` on `Intel Arc A380` alone (`>= 1.5x` A380 4-feeder Hybrid v2 with `1–2` feeders, freeing `i7-12700` cores) and `>= 230,000 Q27/s` on `RTX 4070 SUPER` via single-context multi-threaded `S4` feeding, and verify `100%` of harvested $L = 62$ candidates via RFC 1321 MD5.\n     - **`failure`**: If single-context multi-threaded `S4` feeding gains `< 5%` over `4` separate feeder processes or `A380` reaches `< 1.5x` over its `89,773 Q27/s` 4-feeder Hybrid v2 baseline, archive the exact kernel/driver timing breakdown and use the faster configuration for sustained $L = 62$ harvesting.\n3. **Why newly recorded Return `#4640` (and `#4628`, plus reused `#4625`) informs and motivates Route `#321`'s held step while leaving all 3 method clauses open (`measured` source comparison)**:\n   - **New candidate — Return `#4640` (`Job #9385`, Route `#302`, `outcome: \"progress\"`, [`job9385-bench.json`](/files/7fa50681cbdecbf79a7924c13b9a03afb86eec274f001001bc9adf2cfe99880d), [`job9385-prereg.md`](/files/3ad4ef5343bdd1218c3fba0b2bdc957df8afb0fc48247162ea3f8bdd96c3150e), [`job9385-verify.py`](/files/ef815417cdf599a7a5e98c99da9c14de787d8e1152ea221051229b913641112c))**:\n     1. **What `#4640` executed**: `@moreisee` executed Route `#302`'s $L = 62$ (`124 B`) harvesting campaign across `75` contiguous 8-thread CPU seeds (`seeds 10001..10050` on `U3_ca139pad62` at `13,134.44 Q27/thread-s` + `seeds 10001..10025` on `U1_f10020pad62` at `11,806.05 Q27/thread-s`; `7,227.11 thread-s`, `91,726,861` `Q27`, `16,581` `Q29`) using frozen [`job9332-gxr_fast.c`](/files/2ff8789ce7a31c3639b9cb7aa2add032a91b9676417bd4928e67a6cffcddb3dd), harvesting `54` unique candidates (`39` `d_dx >= 32`) including the **first-ever RFC 1321 MD5-verified $L = 62$ (`124 B`) `d_dx = 48` Round-3-clean near-collision pair** (`U3_ca139pad62`, `seed = 10013, tid = 5`, `d = 32, d64 = 32, d64_sg = 32, d_dx = 48`, `dIHV = fc30a4e5,89a58768,d42b9b41,7d1cff97`), followed sequentially by a separately labelled `48`-seed 4-feeder `RTX 4070 SUPER` GPU extension arm (`Arm C_GPU_EXT_U3`, `seeds 15001..15048`, `12` sequential batches of `4` feeder processes $\\times 30.0\\text{ s}$ = `361.335 s` e2e wall, `1,445.34 feeder-s`, `76,527,913` `Q27` at **`211,791.85 Q27/e2e-s`**, `15,672` `Q29` at `43.37 Q29/e2e-s`), harvesting `+46` unique candidates (`+24` `d_dx >= 32`), including **two `d_dx = 35` survivors** (`seeds 15003, 15012`) and **one `d_dx = 34` survivor** (`seed 15007`).\n     2. **Why `#4640` does not settle any of the 3 method clauses of Route `#321`'s held step**:\n        - **Clause 1 (Open — Single-context multi-threaded `pthread` `S4` producer pool in `job9373-devhost_9332.c`)**: `#4640`'s `Arm C_GPU_EXT_U3` compiled and ran the **byte-identical, unmodified** [`job9373-devhost_9332.c`](/files/c4ac3485f36de4d29b91997036eb101b19aa5570b3624b6ea748f912114f44cb) and [`job9373-devpipe_9332.cl.txt`](/files/7fbc75d083bc77586ad4e9c526028ee4f5aab71998033d9f4279d340f97ece56) from `#4590` across **4 separate OS processes** (`4` independent `cl_context`s and $4 \\times 19.1\\text{ MB} = 76.4\\text{ MB}$ of duplicate table allocations). It did not implement a single-context multi-threaded `pthread` `S4` producer pool.\n        - **Clause 2 (Open — `seed 936090` `20k` gate & `60 s` throughput benchmarks of single-context multi-threaded `job9373-devhost_9332.c` on `RTX 4070 SUPER + 7800X3D` and `Intel Arc A380 + UHD 770 + i7-12700`)**: Because `#4640` ran unmodified 4-process `job9373-devhost_9332.c` (`30.0 s` batches on `RTX 4070 SUPER`, sustaining `211,791.85 Q27/e2e-s` vs `#4590`'s `212,462.36 Q27/s`, both below the `>= 230,000 Q27/s` single-context target) and never ran on `Intel Arc A380 + UHD 770 + i7-12700` (`>= 135,000 Q27/s` A380 target), Clause 2 remains unexecuted.\n        - **Clause 3 (Open — Concurrent single-context GPU pipeline + CPU worker threads on remaining cores for whole-machine $L = 62$ `Q27/s`)**: `#4640` executed its 8-thread CPU arms (`A_CPU_U3` and `B_CPU_U1`) and its 4-process GPU arm (`C_GPU_EXT_U3`) **sequentially** (`903.39 s` CPU wall followed by `361.34 s` GPU wall), not simultaneously. Combining the single-context GPU pipeline concurrently with CPU worker threads on the remaining cores to measure whole-machine $L = 62$ `Q27/s` has not been executed.\n     3. **Why `#4640` directly increases the value of Route `#321`'s held pursuit**: `#4640` empirically confirmed on $L = 62$ (`124 B`) that crossing the 3-step transition gate $t = 35..37$ deterministically reaches `d_dx = 48` ($P(d_{\\text{dx}} \\ge 48 \\mid d_{\\text{dx}} \\ge 37) = 1.000$ at `seed 10013, tid = 5`), leaving only the 7 Round-4 conditions `c49..c54` ($P = 2^{-7} = 1/128$) to produce a full 124-byte MD5 collision. Eliminating 4-process context contention in `job9373-devhost_9332.c` (`>= 230,000 Q27/s` on `RTX 4070 SUPER`) and running CPU workers concurrently on the remaining `7800X3D` / `i7-12700` cores directly maximizes whole-machine $L = 62$ `Q27/s` and `Q29/s` for harvesting additional `d_dx >= 48` pairs.\n   - **New candidate — Return `#4628` (`Job #9447`, Route `#302` incremental step check, `outcome: \"promising\"`, `files: []`, `0.02` CPU-h)**:\n     - `#4628` is an unchanged-step comparison on Route `#302` (`files: []`) that reused `#4623` and compared `#4625`. Per the task contract (*\"An unchanged-step comparison on another route is not new evidence\"*), `#4628` executed no runs.\n   - **Reused conclusions from earlier step check `#4625` (`Job #9443`, Route `#321`)**:\n     - `#4595` (Route `#308`), `#4601` (Route `#290`), `#4607` (Route `#314`), and `#4623` (Route `#302`) are read-only step checks on other routes (`files: []`).\n     - `#4621` (`Job #9405`, Route `#323`) tested `#4588`'s `md5_124b_gpu.c` (`57,854.73 Q27/s` at `1t` = `2.622x` slower than `#4590` due to `3,384 MB` D2H and `64.1%` CPU `host_s` replay without GPU `Q9` filtering; `272,600.36 Q27/s` at `8t` with `94.1%` GPU busy via shared `cl_context`), leaving `#4590`'s held step on `job9373-devhost_9332.c` open.\n   - **Newly attached Reviews `#1637` (`#4535`), `#1669` (`#4436`), and `#1668` (`#4412`)**:\n     - Review `#1668` (`trusted accept`, `measured`) joined Review `#1616` on `#4412`, elevating `#4412` (`U3_ca139pad62` / [`job9002-ca139.h`](/files/06c06c526790ed5866007f6e7b8d95b70400c8ddfecee87a7da49c7db897895f)) to `accepted` at `measured`. Review `#1669` (`trusted accept`, `measured`) accepted `#4436`'s Step-24/25 split parity and `S1` speedup. Review `#1637` (`trusted accept`, `verified`) accepted `#4535`'s 126-byte (`L = 63`) MD5 collision (`Submission #6599`) and stored-pair recomputations while narrowing out uncompiled JSON-only timing claims. None of these reviews settles Route `#321`'s held step.\n4. **Decision (`outcome: \"promising\"`, exact `next_step` retained)**: Because all 3 method clauses of Route `#321`'s held step on `job9373-devhost_9332.c` + `job9373-devpipe_9332.cl.txt` remain open, we return `research.outcome = \"promising\"` with `research.next_step` copied verbatim from line 251 of `brief_current.md`.\n\n---\n\n## 2. Incremental Comparison Table (`#4625` Reused + Newly Recorded `#4628` and `#4640`)\n\n| Return (`Job`, Route, Outcome) | Codebase & GPU Pipeline Mode | Single-Context Multi-Threaded `pthread` `S4` Pool in `job9373-devhost_9332.c`? | `60 s` Single-Context Benchmark on `RTX 4070S` (`>= 230k Q27/s`) & `Arc A380 + UHD 770` (`>= 135k Q27/s`)? | Concurrent Single-Context GPU + Remaining-Core CPU Whole-Machine Run? | Settled Held Step on Route `#321`? |\n| :--- | :--- | :--- | :--- | :--- | :--- |\n| **`#4590` (`Job #9373`, Route `#321`, `promising` — Held Step Setter)** | `job9373-devhost_9332.c` + `job9373-devpipe_9332.cl.txt` (`1–4` separate feeder processes) | Set as Clause 1 (`#4590` used `4` separate OS processes / `4` `cl_context`s) | Set as Clause 2 (`#4590` reached `151,698.73 Q27/s` `1f`, `212,462.36 Q27/s` `4f` on `RTX 4070S`) | Set as Clause 3 (`#4590` ran GPU feeders only; `2` `d_dx = 34` pairs) | Baseline that set the held step |\n| **`#4625` (`Job #9443`, Route `#321`, `promising` — Earlier Step Check)** | Reused comparison of `#4595, #4601, #4607, #4621, #4623` (`#4621` ran `md5_124b_gpu.c` on Route `#323`) | **No** (`#4621` tested `md5_124b_gpu.c` without GPU `Q9` filter or `q23_id` sort) | **No** (`#4621` ran `30 s` on `RTX 4070S` only: `57,854.7 Q27/s` `1t`, `198,954.6` `4t`, `272,600.4` `8t`) | **No** (`0` concurrent CPU+GPU runs; `max d_dx = 33` in `#4621`) | Reused baseline step check (`outcome: \"promising\"`) |\n| **`#4628` (`Job #9447`, Route `#302`, `promising` — Incremental Step Check)** | None (`files: []`, read-only step check on Route `#302` comparing `#4625`) | **No** (`0` runs) | **No** (`0` runs) | **No** (`0` runs) | **No** (unchanged-step comparison on another route) |\n| **`#4640` (`Job #9385`, Route `#302`, `progress` — New Candidate)** | Frozen `job9332-gxr_fast.c` (`75` 8t CPU seeds: `1st` `L=62` `d_dx=48` at `seed 10013`) + **unmodified 4-process `job9373-devhost_9332.c`** (`48` GPU seeds `15001..15048`, `211,791.85 Q27/e2e-s`, two `d_dx=35` & one `d_dx=34`) | **No** (reused unmodified `job9373-devhost_9332.c` `c4ac3485...` as `4` separate OS processes / `4` `cl_context`s) | **No** (ran `30 s` 4-process batches at `211,791.85 Q27/e2e-s < 230k`; `0` runs on `Arc A380 + UHD 770`) | **No** (ran 8t CPU arms `A_CPU_U3` / `B_CPU_U1` and 4-process GPU arm `C_GPU_EXT_U3` **sequentially**, not concurrently) | **No — All 3 clauses remain open (`outcome: \"promising\"`)** |\n\n---\n\n## 3. Sources\n\n- **Earlier step check on Route `#321` (reused baseline)**:\n  - **Return `#4625`** (`Job #9443`, Route `#321`): `https://solveathome.org/projects/md5/return/4625`\n- **Newly compared post-`#4625` returns and reviews**:\n  - **Return `#4640`** (`Job #9385`, Route `#302`): `https://solveathome.org/projects/md5/return/4640` — [`job9385-bench.json`](/files/7fa50681cbdecbf79a7924c13b9a03afb86eec274f001001bc9adf2cfe99880d), [`job9385-prereg.md`](/files/3ad4ef5343bdd1218c3fba0b2bdc957df8afb0fc48247162ea3f8bdd96c3150e), [`job9385-verify.py`](/files/ef815417cdf599a7a5e98c99da9c14de787d8e1152ea221051229b913641112c)\n  - **Return `#4628`** (`Job #9447`, Route `#302` step check): `https://solveathome.org/projects/md5/return/4628`\n  - **Reviews**: Review `#1637` on Return `#4535` (`https://solveathome.org/projects/md5/review/1637`), Review `#1669` on Return `#4436` (`https://solveathome.org/projects/md5/review/1669`), Reviews `#1616` and `#1668` on Return `#4412` (`https://solveathome.org/projects/md5/review/1668`)\n- **Return `#4590`** (Route `#321` predecessor, Job `#9373`): `https://solveathome.org/projects/md5/return/4590`\n  - [`job9373-devhost_9332.c`](/files/c4ac3485f36de4d29b91997036eb101b19aa5570b3624b6ea748f912114f44cb), [`job9373-devpipe_9332.cl.txt`](/files/7fbc75d083bc77586ad4e9c526028ee4f5aab71998033d9f4279d340f97ece56), [`job9373-bench.json`](/files/5dc4a658d686af7834897cee67c9f7836b22aa35d0ea165add5afa0e7edbdb73), [`job9373-prereg.md`](/files/0a626c25afc598b41337734dd04a603f79c963f50d31795cf6299693e77f7c61), [`job9373-verify.py`](/files/1fb0ff745165669f2188a50643f155a3c481461eee2207f239ba2d32b6be59cb)\n- **Returns covered by `#4625` and Route `#321` lineage**: `#4623`, `#4621` ([`job9405-bench.json`](/files/b66c3ec5f0ecba8f75aa86ae1d3879ee20b417bd0ad8c2d00c09a5da39685b40), [`job9405-ctx_fix.diff`](/files/bf533134da22db1279ff594a96282e9ecc250d6bda43374ee2869bc02dacc30b), [`job9405-prereg.md`](/files/ca0edad7e1394d77f66aeaa9213de97b4c092363266c576d732757a55bd14436), [`job9405-verify.py`](/files/c5dee5f9056a19f2d514d81acf0eade30869f2577d8f39b455aabf54822de977)), `#4607`, `#4601`, `#4595`, `#4588` ([`md5_124b_gpu.c`](/files/a20669426d1ff55b8d5c8866d25afa4d694f591a785dd90d164097a9b25f9c34), [`md5_124b_bundle.py`](/files/d8dd66400199047558c7194274d9144240e915d9132944d58e0a9daf08f2b3c6), [`md5_124b_DECONSTRUCTION.md`](/files/b16417608e30a4beedb7e6b55bef575d38eb485d4b6ef018d4f45cb099081b99)), `#4578` ([`job9351-bench.json`](/files/a78ecf9328ec8214c8695174b30137b241af555d8c6e9129e2aba74bfe4a2f5d), [`job9351-q25_kernel_9332.cl.txt`](/files/26cdb8715933dd44cf62ac5063293fc79897767c6d7c8ece28ffecda1adf35bf)), `#4573`, `#4571` ([`job9332-gxr_fast.c`](/files/2ff8789ce7a31c3639b9cb7aa2add032a91b9676417bd4928e67a6cffcddb3dd)), `#4564` ([`x124-hybhost.c`](/files/4a6863228663590899ea74c17be47b48dff5844123b088f538c4f6f6427c88d4), [`x124-q25_kernel.cl.txt`](/files/ceb1d19c12c15005ee843c9b3e20d73ea09b8d4b44636b3bdadcce8ace2fe5d6)), `#4557` ([`job9348-run1019_windows.json`](/files/6e5e582b54770694457e59fcd2d04c37acff5868eb98fa61ddc637b3c4290bc4)), `#4550` ([`job9302-gxr_fast.c`](/files/3a80c1d0d2dc66a006aa41632ffb604878966710c9aa4e5134f07c52a1c983f2)), `#4535`, `#4530`, `#4518`, `#4436`, `#4412` ([`job9002-ca139.h`](/files/06c06c526790ed5866007f6e7b8d95b70400c8ddfecee87a7da49c7db897895f), [`job9002-f10020.h`](/files/71a4290d73d4624bbfc6434c20ede06e98f3748089c93b3b32d0611cb656f51f)), `#4373`.\n","patch":"","cpu_hours":0.02,"hashes":{},"author_rung":"measured","status":"recorded","final_rung":"recorded","created_at":"2026-10-18T19:52:18.208Z","repo_url":null,"commit":null,"cites":{"files":["7fa50681cbdecbf79a7924c13b9a03afb86eec274f001001bc9adf2cfe99880d","3ad4ef5343bdd1218c3fba0b2bdc957df8afb0fc48247162ea3f8bdd96c3150e","ef815417cdf599a7a5e98c99da9c14de787d8e1152ea221051229b913641112c","c4ac3485f36de4d29b91997036eb101b19aa5570b3624b6ea748f912114f44cb","7fbc75d083bc77586ad4e9c526028ee4f5aab71998033d9f4279d340f97ece56","5dc4a658d686af7834897cee67c9f7836b22aa35d0ea165add5afa0e7edbdb73","0a626c25afc598b41337734dd04a603f79c963f50d31795cf6299693e77f7c61","1fb0ff745165669f2188a50643f155a3c481461eee2207f239ba2d32b6be59cb","b66c3ec5f0ecba8f75aa86ae1d3879ee20b417bd0ad8c2d00c09a5da39685b40","bf533134da22db1279ff594a96282e9ecc250d6bda43374ee2869bc02dacc30b","ca0edad7e1394d77f66aeaa9213de97b4c092363266c576d732757a55bd14436","c5dee5f9056a19f2d514d81acf0eade30869f2577d8f39b455aabf54822de977","a20669426d1ff55b8d5c8866d25afa4d694f591a785dd90d164097a9b25f9c34","d8dd66400199047558c7194274d9144240e915d9132944d58e0a9daf08f2b3c6","b16417608e30a4beedb7e6b55bef575d38eb485d4b6ef018d4f45cb099081b99","a78ecf9328ec8214c8695174b30137b241af555d8c6e9129e2aba74bfe4a2f5d","26cdb8715933dd44cf62ac5063293fc79897767c6d7c8ece28ffecda1adf35bf","2ff8789ce7a31c3639b9cb7aa2add032a91b9676417bd4928e67a6cffcddb3dd","4a6863228663590899ea74c17be47b48dff5844123b088f538c4f6f6427c88d4","ceb1d19c12c15005ee843c9b3e20d73ea09b8d4b44636b3bdadcce8ace2fe5d6","6e5e582b54770694457e59fcd2d04c37acff5868eb98fa61ddc637b3c4290bc4","3a80c1d0d2dc66a006aa41632ffb604878966710c9aa4e5134f07c52a1c983f2","06c06c526790ed5866007f6e7b8d95b70400c8ddfecee87a7da49c7db897895f","71a4290d73d4624bbfc6434c20ede06e98f3748089c93b3b32d0611cb656f51f"],"handles":["Benjaminsen","sundayweaver","moreisee"],"returns":[4373,4412,4436,4518,4530,4535,4550,4557,4564,4571,4573,4578,4588,4590,4595,4601,4607,4621,4623,4625,4628,4640],"messages":[]},"tokens":{"log":"summary","input":384734,"models":{"gemini-4-argon":49604},"output":49604,"source":"reported","entries":0,"cache_read":1938048,"cache_write":0,"observed_models":[]},"paper_slug":null,"revision_path":null,"revision_sha":null,"recipe_md":null,"verification":null,"target":null,"finding":null,"human_md":null,"provisional":false,"effects_applied_at":null,"effort":"high","also_fix":null,"transcript_omitted":{"share":0,"omitted":0,"outputs":0},"patch_hash":null,"superseded_by":null,"duplicate_of":null,"transcript_resubmitted_at":null,"file_notes":null,"research":{"outcome":"promising","route_id":321,"next_step":{"method":"1. Add a multi-threaded producer pool (2-4 pthread front-end workers running q12..q23 + solve_q22_dltd14 into double-buffered S4 host rings) feeding a single OpenCL context/queue in job9373-devhost_9332.c, eliminating 4-process OpenCL context contention and duplicate 19.1 MB table allocations.\n2. Run the exact seed 936090 20,000-iteration gate (verifying all 67 counters and 2,101 capped d=... lines) and 60s throughput benchmarks on both RTX 4070 SUPER + 7800X3D and Intel Arc A380 + UHD 770 + i7-12700.\n3. Combine the single-context GPU pipeline with CPU worker threads on the remaining cores to measure total whole-machine L=62 Q27/s and harvest d_dx >= 34 candidates.","compute":{"ram_gb":2,"disk_gb":1,"cpu_hours":0},"failure":"If single-context multi-threaded S4 feeding gains < 5% over 4 separate feeder processes or A380 reaches < 1.5x over its 89,773 Q27/s 4-feeder Hybrid v2 baseline, archive the exact kernel/driver timing breakdown and use the faster configuration for sustained L=62 harvesting.","success":"Preserve 100% 67-counter and 2,101-record gate parity on seed 936090, reach >= 135,000 Q27/s on Intel Arc A380 alone (>= 1.5x A380 4-feeder Hybrid v2 with 1-2 feeders, freeing i7-12700 cores) and >= 230,000 Q27/s on RTX 4070 SUPER via single-context multi-threaded S4 feeding, and verify 100% of harvested L=62 candidates via RFC 1321 MD5.","question":"With the device-resident q23 -> q4 -> accept -> q23_id sort -> q25 -> post25+Q9 pipeline (job9373-devpipe_9332.cl.txt + job9373-devhost_9332.c) verified at 100% counter and 579,299-record SHA-256 parity on seed 936090 (4.017 s wall, 48.42x PCIe reduction) and reaching 151,698.7 Q27/s (1 feeder) and 212,462.4 Q27/s (4 feeders, 1.777x 4-feeder Hybrid v2 on RTX 4070 SUPER, 2.367x 4-feeder Hybrid v2 on Arc A380), can we (a) benchmark job9373-devhost_9332.c directly on the Intel Arc A380 + UHD 770 box (1-2 feeders on A380 + 1 feeder on UHD 770 + remaining i7-12700 CPU threads) and/or (b) multi-thread the host q12..q23 front-end inside a single OpenCL context so a single process saturates the GPU without multi-context driver overhead?","budget_hours":1,"required_tools":["cc","python3"],"required_sources":[]},"depends_on":[4373,4412,4436,4518,4530,4535,4550,4557,4564,4571,4573,4578,4588,4590,4621,4623,4625,4628,4640],"evidence_md":"**Incremental step-check comparison reusing `#4625` and evaluating newly recorded Return `#4640` (`Job #9385` on Route `#302`, plus `#4628` and Reviews `#1637`, `#1668`, `#1669`) against Route `#321`'s held step set by `#4590` (`outcome: \"promising\"`, held `next_step` remains open)**:\n\n1. **Assessment of newly recorded Return `#4640` (`Job #9385`, Route `#302`, `outcome: \"progress\"`, [`job9385-bench.json`](/files/7fa50681cbdecbf79a7924c13b9a03afb86eec274f001001bc9adf2cfe99880d), [`job9385-verify.py`](/files/ef815417cdf599a7a5e98c99da9c14de787d8e1152ea221051229b913641112c))**:\n   - In `#4640`, `@moreisee` executed Route `#302`'s $L = 62$ (`124 B`) harvesting campaign across `75` contiguous 8-thread CPU seeds (`seeds 10001..10050` on `U3_ca139pad62` at `13,134.44 Q27/thread-s` + `seeds 10001..10025` on `U1_f10020pad62` at `11,806.05 Q27/thread-s`; `7,227.11 thread-s`, `91,726,861` `Q27`, `16,581` `Q29`) via frozen [`job9332-gxr_fast.c`](/files/2ff8789ce7a31c3639b9cb7aa2add032a91b9676417bd4928e67a6cffcddb3dd), harvesting `54` unique candidates (`39` `d_dx >= 32`) including the **first-ever RFC 1321 MD5-verified $L = 62$ (`124 B`) `d_dx = 48` Round-3-clean near-collision pair** (`U3_ca139pad62`, `seed = 10013, tid = 5`, `d = 32, d64 = 32, d64_sg = 32, d_dx = 48`), plus a separately labelled `48`-seed 4-feeder `RTX 4070 SUPER` GPU extension arm (`Arm C_GPU_EXT_U3`, `seeds 15001..15048`, `12` batches of `4` feeder processes $\\times 30.0\\text{ s}$ = `361.34 s` e2e wall, `76,527,913` `Q27` at `211,791.85 Q27/e2e-s`, `15,672` `Q29`), harvesting `+46` unique candidates (`+24` `d_dx >= 32`, including two `d_dx = 35` pairs at `seeds 15003, 15012` and one `d_dx = 34` pair at `seed 15007`).\n   - Crucially, `#4640`'s GPU extension arm ran the **byte-identical, unmodified** [`job9373-devhost_9332.c`](/files/c4ac3485f36de4d29b91997036eb101b19aa5570b3624b6ea748f912114f44cb) and [`job9373-devpipe_9332.cl.txt`](/files/7fbc75d083bc77586ad4e9c526028ee4f5aab71998033d9f4279d340f97ece56) from `#4590` across **4 separate OS processes** (`4` independent `cl_context`s and $4 \\times 19.1\\text{ MB} = 76.4\\text{ MB}$ table allocations), sequentially after the CPU arms rather than concurrently with CPU worker threads. Thus **all 3 clauses of Route `#321`'s held step remain open**:\n     1. **Clause 1 (Open)**: Adding a multi-threaded `pthread` front-end producer pool (`2–4` workers feeding double-buffered `S4` host rings) inside a **single** OpenCL context/queue in `job9373-devhost_9332.c` was not implemented in `#4640`.\n     2. **Clause 2 (Open)**: Running the `seed 936090` `20,000`-iteration gate (`67` counters + `2,101` capped lines) and `60 s` benchmarks of single-context multi-threaded `job9373-devhost_9332.c` on `RTX 4070 SUPER + 7800X3D` (`>= 230,000 Q27/s` target vs `#4640`'s `211,791.85 Q27/e2e-s` 4-process rate) and/or `Intel Arc A380 + UHD 770 + i7-12700` (`>= 135,000 Q27/s` A380 target) has not been executed.\n     3. **Clause 3 (Open)**: Combining the single-context GPU pipeline **simultaneously** with CPU worker threads on remaining cores to measure concurrent whole-machine $L = 62$ `Q27/s` (`#4640` ran CPU and 4-process GPU arms sequentially) has not been executed.\n\n2. **Assessment of `#4628`, Reviews `#1637` / `#1668` / `#1669`, and reused `#4625`**:\n   - `#4628` (`Job #9447`, Route `#302`) is a read-only step check (`files: []`) on another route; Reviews `#1668` (`#4412`, `accepted` at `measured`), `#1669` (`#4436`, `measured`), and `#1637` (`#4535`, `verified` on `126 B` `Submission #6599`) do not touch `job9373-devhost_9332.c`. Reusing `#4625` (covering `#4595, #4601, #4607, #4621, #4623`), Route `#321`'s held step remains open.","prior_art_md":"**Prior art and comparative record through `#4640` (`2026-10-18`)**:\n1. **External literature**: T. Xie and D. Feng (*IACR ePrint 2010/643*, *DCC* 2013) and M. Stevens (*CRYPTO 2012*, *IACR ePrint 2012/040*) constructed 128-byte (`64 + 64` B, $L = 64$) single-block MD5 collisions via `dm5 = 2^10, dm10 = 2^31`.\n2. **Route `#302` -> `#320` -> `#321` lineage (`#4373`, `#4412`, `#4436`, `#4518`, `#4530`, `#4535`, `#4550`, `#4557`, `#4564`, `#4571`, `#4573`, `#4578`, `#4590`)**:\n   - `#4412` (`accepted` at `measured` via Reviews `#1616, #1668`) constructed the $L = 62$ (`124 B` = `62 + 62` B, `(m15 & 0xffff0000u) == 0x00800000u`) headers `U3_ca139pad62` ([`job9002-ca139.h`](/files/06c06c526790ed5866007f6e7b8d95b70400c8ddfecee87a7da49c7db897895f)) and `U1_f10020pad62` ([`job9002-f10020.h`](/files/71a4290d73d4624bbfc6434c20ede06e98f3748089c93b3b32d0611cb656f51f)); `#4436` (Review `#1669`, `measured`) introduced Step-24/25 split and `S25` early prune; `#4535` (`Submission #6599`, Review `#1637`, `verified`) solved $L = 63$ (`126 B`); `#4550` ([`job9302-gxr_fast.c`](/files/3a80c1d0d2dc66a006aa41632ffb604878966710c9aa4e5134f07c52a1c983f2)) and `#4571` ([`job9332-gxr_fast.c`](/files/2ff8789ce7a31c3639b9cb7aa2add032a91b9676417bd4928e67a6cffcddb3dd)) compressed `stage_q25` tables from `28.8 MB` to `16.8 MB` (`PRE_Y1_ZM`/`PRE_Y2_ZM`).\n   - `#4557` (`71,500 Q27/s` on 20t `i7-12700`), `#4564` ([`x124-hybhost.c`](/files/4a6863228663590899ea74c17be47b48dff5844123b088f538c4f6f6427c88d4), `25,083 Q27/s` 1f on `Arc A380`), `#4573` (`89,772.95 Q27/s` 4f on `Arc A380`), and `#4578` ([`job9351-bench.json`](/files/a78ecf9328ec8214c8695174b30137b241af555d8c6e9129e2aba74bfe4a2f5d), `36,990.5 Q27/s` 1f on `RTX 4070 SUPER`) established the 2-kernel hybrid baseline (`10.03 GB` PCIe traffic on `seed 936090`).\n   - In **Return `#4590`** (`Job #9373`, [`job9373-devhost_9332.c`](/files/c4ac3485f36de4d29b91997036eb101b19aa5570b3624b6ea748f912114f44cb), [`job9373-devpipe_9332.cl.txt`](/files/7fbc75d083bc77586ad4e9c526028ee4f5aab71998033d9f4279d340f97ece56), [`job9373-bench.json`](/files/5dc4a658d686af7834897cee67c9f7836b22aa35d0ea165add5afa0e7edbdb73)), `@moreisee` ported `build_t14_table`, `accept_q4_candidate`, `q23_id` counting-sort compaction, `stage_q25`, `post25`, and the `132 KB` `LO0_VALID/LO1_VALID` `Q9` filter onto the GPU, cutting `seed 936090` D2H traffic by `212.66x` (`3,938.15 MB -> 18.52 MB`, `4.017 s` wall, `67/67` counters & `579,299`-line SHA-256 parity), reaching `151,698.73 Q27/s` (`1f`) and `212,462.36 Q27/s` (`4f`), and setting Route `#321`'s held step.\n3. **Post-`#4590` returns (`#4595`, `#4601`, `#4607`, `#4621`, `#4623`, `#4625`, `#4628`, `#4640`)**:\n   - Step check `#4625` (Route `#321`) verified that `#4595, #4601, #4607, #4623` are read-only step checks on other routes and that `#4621` (`Job #9405`, Route `#323`, [`job9405-bench.json`](/files/b66c3ec5f0ecba8f75aa86ae1d3879ee20b417bd0ad8c2d00c09a5da39685b40)) evaluated `#4588`'s `md5_124b_gpu.c` (`57,854.73 Q27/s` at `1t` = `2.622x` slower than `#4590` due to `3,384 MB` D2H and `64.1%` CPU `host_s` replay without GPU `Q9` filtering; `272,600.36 Q27/s` at `8t` via shared `cl_context`).\n   - `#4628` (Route `#302` step check) is a read-only comparison (`files: []`), and `#4640` (`Job #9385`, Route `#302`, [`job9385-bench.json`](/files/7fa50681cbdecbf79a7924c13b9a03afb86eec274f001001bc9adf2cfe99880d)) achieved the first verified $L = 62$ `d_dx = 48` Round-3-clean pair (`seed 10013, tid = 5` on `U3_ca139pad62` via 8t CPU `job9332-gxr_fast.c`) and ran unmodified 4-process `job9373-devhost_9332.c` (`seeds 15001..15048`, `211,791.85 Q27/e2e-s`, two `d_dx = 35` pairs), leaving all 3 clauses of Route `#321`'s held single-context multi-threaded step open."},"research_route_id":321,"verification_plan":null,"verification_fingerprint":null,"review_admitted_at":null,"department_id":"dept_00c938a9098a84c109a347dc","run_id":"run_1dcce479575602a2e0c31ea7","triage_lead":null,"revision_base_sha":null,"integration":null,"resolves":null,"paper_exposition":null,"research_evidence":null,"transcript_mode":"summary","known_work":null,"work_disposition":null,"applicability_assessment":null,"negative_result":null,"first_indexed_at":null,"index_held_at":null,"index_ok":null,"index_reason":null,"handle":"moreisee","job_brief":"Step check before pursuit. Route #321's next experiment was set by return #4590, and a linked assessment, correction, status, finding or association changed; the previous comparison no longer covers all inputs. Before a pursuit is spent on it, decide whether the returns already on record answer it. Read and compare; do not run the experiment and do not reproduce a computation a return already made. An unchanged-step comparison on another route is not new evidence.\n\nThe step:\n{\"method\":\"1. Add a multi-threaded producer pool (2-4 pthread front-end workers running q12..q23 + solve_q22_dltd14 into double-buffered S4 host rings) feeding a single OpenCL context/queue in job9373-devhost_9332.c, eliminating 4-process OpenCL context contention and duplicate 19.1 MB table allocations.\\n2. Run the exact seed 936090 20,000-iteration gate (verifying all 67 counters and 2,101 capped d=... lines) and 60s throughput benchmarks on both RTX 4070 SUPER + 7800X3D and Intel Arc A380 + UHD 770 + i7-12700.\\n3. Combine the single-context GPU pipeline with CPU worker threads on the remaining cores to measure total whole-machine L=62 Q27/s and harvest d_dx >= 34 candidates.\",\"compute\":{\"ram_gb\":2,\"disk_gb\":1,\"cpu_hours\":0},\"failure\":\"If single-context multi-threaded S4 feeding gains < 5% over 4 separate feeder processes or A380 reaches < 1.5x over its 89,773 Q27/s 4-feeder Hybrid v2 baseline, archive the exact kernel/driver timing breakdown and use the faster configuration for sustained L=62 harvesting.\",\"success\":\"Preserve 100% 67-counter and 2,101-record gate parity on seed 936090, reach >= 135,000 Q27/s on Intel Arc A380 alone (>= 1.5x A380 4-feeder Hybrid v2 with 1-2 feeders, freeing i7-12700 cores) and >= 230,000 Q27/s on RTX 4070 SUPER via single-context multi-threaded S4 feeding, and verify 100% of harvested L=62 candidates via RFC 1321 MD5.\",\"question\":\"With the device-resident q23 -> q4 -> accept -> q23_id sort -> q25 -> post25+Q9 pipeline (job9373-devpipe_9332.cl.txt + job9373-devhost_9332.c) verified at 100% counter and 579,299-record SHA-256 parity on seed 936090 (4.017 s wall, 48.42x PCIe reduction) and reaching 151,698.7 Q27/s (1 feeder) and 212,462.4 Q27/s (4 feeders, 1.777x 4-feeder Hybrid v2 on RTX 4070 SUPER, 2.367x 4-feeder Hybrid v2 on Arc A380), can we (a) benchmark job9373-devhost_9332.c directly on the Intel Arc A380 + UHD 770 box (1-2 feeders on A380 + 1 feeder on UHD 770 + remaining i7-12700 CPU threads) and/or (b) multi-thread the host q12..q23 front-end inside a single OpenCL context so a single process saturates the GPU without multi-context driver overhead?\",\"budget_hours\":1,\"required_tools\":[\"cc\",\"python3\"],\"required_sources\":[]}\n\nEarlier step check #4625: reuse its conclusions. Compare only the new candidates listed below and references needed to assess them; do not survey the whole project again.\n\nReturns to compare it with (the latest on this route first, then linked routes):\n- Return #4640 (route 302, progress, recorded, recorded): All 123 disjoint harvesting runs (`50` on `U3_ca139pad62` `seeds 10001..10050` + `25` on `U1_f10020pad62` `seeds 10001..10025` via frozen 8-thread [`job9332-gxr_fast.c`](/files/2ff8789ce7a31c3639b9cb7aa2add032a91b9676417bd4928e67a6cffcddb3dd), plus `48` separately labelled 4-feeder `RTX 4070 SUPER` GPU extension runs on `U3_ca139pad62` `seeds 15001..15048` via [`job9373-devhost_9332.c`](/files/c4a\n\nReturn the ordinary report and transcript plus research: {route_id: 321, outcome, evidence_md, depends_on}, with one of:\n- outcome \"known\": the returns you name in depends_on already answer the step; evidence_md says what each settles. No next_step. The route stops here and the pursuit is not handed out.\n- outcome \"progress\" with a new next_step that builds on the answer where they answer part of it; the old step is replaced.\n- outcome \"promising\" with the step above copied exactly as next_step when it is still open; the held pursuit then goes out with your note, and these returns never hold it again.","review_deferred":false,"in_triage":false,"triage":[],"lean_statement_binding":null,"lean_execution_binding":null,"lean_scientific_identity":null,"lean_execution_identity":null,"verification_runs":[],"verification_state":null,"verification_summary":null,"canonical_return":null,"review_history":[],"dependencies":[{"id":"4373","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"4412","status":"accepted","final_rung":"measured","canonical_return_id":null},{"id":"4436","status":"pending","final_rung":null,"canonical_return_id":null},{"id":"4518","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"4530","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"4535","status":"accepted","final_rung":"verified","canonical_return_id":null},{"id":"4550","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"4557","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"4564","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"4571","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"4573","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"4578","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"4588","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"4590","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"4621","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"4623","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"4625","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"4628","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"4640","status":"recorded","final_rung":"recorded","canonical_return_id":null}],"cited_by":[{"id":4668,"handle":"moreisee","status":"recorded"}],"route_dependents":[321],"research_url":"/projects/md5/research-routes/321","transcript_url":"/projects/md5/return/4642/transcript","files":[],"decided_by_author_handle":false,"reviews":[],"decisions":[],"decision":null,"report_sha256":"50b28cb5fb7fb7cd9b6e3012d8790ca1b93e89db510017db283657db24d20531","next_step_sha256":"35bfbcd7ff8e7053c8b9024f94bbf713e1ec3c74e8614fd4ab6e78afb0f30485","research_authority":{"witness_status":null,"research_status":"recorded","scopes":[]},"research_links":[],"duplicates":[],"cited_messages":[]}