1. Frontier parallelism
worker ไม่ได้ลองครบทั้ง 25 ช่อง แต่รับหนึ่ง state แล้วไล่เฉพาะบิตใน legal-move mask ที่ precompute ไว้ โดย core v ผูกกับช่อง v และรับ state ที่มี endpoint อยู่ช่องนั้น จากนั้นส่ง child state ตรงไปยัง core ของช่องปลายทาง
source = endpointCore
available = KNIGHT[source] & ~visited
while (available) {
next = popLeastBit(available)
emit(visited | bit(next), next)
}2. Dead-end pruning
ถ้า partial path ไม่มี feasible move ก่อนเยี่ยมครบ 25 ช่อง กิ่งนั้นไม่มีทางเป็น tour จึงทิ้งได้ทันที เป็น exact pruning ไม่ใช่การเดาด้วย heuristic
if (depth < 24 && available == 0)
discard(state)
else
write(nextFrontier)3. Global synchronization
PBFS ทำทุก state ที่ depth d ให้เสร็จก่อนเริ่ม depth d+1 เมื่อถึง depth 24 ระบบเก็บทุก state ที่เยี่ยมครบ 25 ช่อง แล้วคลี่ multiplicity ของ state ที่รวมกันกลับเป็น complete open tours ทุกเส้น
expand(frontier[d]) in parallel
prefix-sum child counts
barrier()
frontier[d + 1] = children