A fully parallel densely connected probabilistic Ising machine with inertia for real-time applications
Ising machines---special-purpose hardware for heuristically solving Ising optimization problems---based on probabilistic bits (p-bits) have been established as a promising alternative to heuristic optimization algorithms run on conventional computers. However, it has---until now---been thought that Ising spins that are connected in probabilistic Ising machines (PIMs) cannot be updated in parallel without ruining the machine's solving ability. This has presented a major challenge to realizing the potential for probabilistic Ising machines to act as fast solvers for densely connected Ising problems. In this paper, we show that it is possible to circumvent this conventional wisdom. We introduce a modified form of Ising spin dynamics for PIMs, adding an inertia term, and verify in algorithm simulations, field-programmable gate array (FPGA) emulation, and in FPGA experiments that the modified dynamics enables fully parallel, synchronous updates and at the same time improves the achieved success probability. Our evaluations were performed with various types of abstract (Max-Cut and Sherrington-Kirkpatrick model) and application-derived (multiple-input and multiple-output, MIMO detection) dense Ising benchmark instances. Performing fully parallel updates results in a speed advantage that grows superlinearly with the number of spins, giving rise to large time-to-solution reductions for practical problem sizes. For both MC and the SK model at a problem size of 200, our approach achieved an average speedup of ~34x, with the best single-instance speedup reaching 150x. As an example of the practical utility of our approach in an application where speed is critical, we co-design the algorithm dynamics and hardware implementation for MIMO detection, achieving improved detection accuracy relative to the standard linear detector and higher throughput than the conventional sequential-update PIM.