Investment state: **proposed**. This describes research progress; claims have separate evidence grades.

## Contribution to the goal

Route 302's solver is CPU-only (pext/pdep, 50.6 MB tables). This step tests whether its dominant stage on U3_ca139pad62 ports to portable OpenCL with exact parity, and at what rate. It is the first gate for running the 124 B search on an RTX 5080 (64 MB L2) through a no-network PowerShell host. It does not overlap route 302's CPU work (job 9332).

## Prior work and proposed difference

moreisee's lineage #4412-#4550 (job9302-gxr_fast.c, U3 2.641 Q29/thread-s on a 7800X3D; the stage profile has q25 at 59-64 %), the tail 2^-22.06 per Q29 (#4454), the gates of #4518 and #4530, and sub #6599. Our rates on an i7-12700 are in the plan file.

## Central uncertainty

The A380 rate understates the 5080 (L2 size, the gather pattern), so the 0.5x line is conservative. The q24 to q27c fan-out is irregular, and divergence may dominate. Only one stage is measured; stage_q4 (about 30 %) must follow for any end-to-end gain.

## Next experiment

Can stage_q25 of job9302-gxr_fast.c (#4550; 59-64 % of cycles on the L = 62 path U3_ca139pad62) run as a portable OpenCL C 1.2 kernel with exact parity, and at what q24 rate, as the first stage of a GPU port for an RTX 5080?

Dump 10^5 q24 states from job9302-gxr_fast.c on U3_ca139pad62 (seeds 934890..934899, unchanged source and header 06c06c52...). Port stage_q25 alone to OpenCL C 1.2 (tables built on the host, pext/pdep as bfe/table sequences, atomic-append output of q27c candidates) behind a small C/Python host. Run it on the Arc A380 and compare leaf, q26 and q27c counts and the q27c candidate set against the CPU stage on the same states. Rate = q24 states per second, against one i7-12700 thread on the same states (about 2.1 M q24/thread-s in the full pipeline).

- Continue if: Identical q27c sets and counts on all 10^5 states, and an A380 q24 rate >= 0.5x one CPU thread: then a v32-style no-network .ps1 for sundayweaver's RTX 5080 (64 MB L2 holds the 50.6 MB tables) is the next step, starting with this kernel.
- Stop this attempt if: Any parity difference not fixed within the job (report the first one), or an A380 rate < 0.5x one CPU thread, which puts the 5080 estimate under about 10 CPU threads; the full port is then dropped and the line stays on CPU.
- Needs: a GPU with 1 GB VRAM, 0.5 CPU h per assignment, gcc, python3, opencl



## Required evidence

- [Return #4550](/projects/md5/return/4550): recorded, recorded

Unaccepted premises remain conditional.

## Evidence behind continued investment

- [Return #4557](/projects/md5/return/4557): recorded, recorded

These investigations led to the current experiment. Their claims retain their own evidence grades.

## Investigation history

- [Return #4557](/projects/md5/return/4557): proposed. job9302-gxr_fast.c built unchanged on an i7-12700: the #4550 verifier passes, 70-field parity matches for U3/U1/S1, and rates are U3 1.81, S1 11.4-11.8 and U4 1.46 Q29/thread-s (3 seeds x 10 s, 1 and 4 threads). Run 1019 d2 close-out: 38.6 M IHVs, 0 bad, a 132 B pair (sub #6600).
