Abstract

We present several efficient implementations of the simulated annealing algorithm for Ising spin glasses on sparse graphs. In particular, we provide a generic code for any choice of couplings, an optimised code for bipartite graphs, and highly optimised implementations using multi-spin coding for graphs with small maximum degree and discrete couplings with a finite range. The latter codes achieve up to 50 spin flips per nanosecond on modern Intel CPUs. We also compare the performance of the codes to that of the special purpose D-Wave devices built for solving such Ising spin glass problems. Program summaryProgram title: SimAn v1.0Catalogue identifier: AEVZ_v1_0Program summary URL:http://cpc.cs.qub.ac.uk/summaries/AEVZ_v1_0.htmlProgram obtainable from: CPC Program Library, Queen’s University, Belfast, N. IrelandLicensing provisions: GNU General Public License, version 3No. of lines in distributed program, including test data, etc.: 14999No. of bytes in distributed program, including test data, etc.: 26594Distribution format: tar.gzProgramming language: C++, OpenMP for parallelization.Computer: Any PC.Operating system: Linux/OS X/UNIX.Has the code been vectorised or parallelized?: Parallelized using OpenMP.RAM: Variable, from a few megabytes.Classification: 4.13, 6.5, 23.Nature of problem: Ising spin glass ground states on sparse graphs.Solution method: Simulated annealing.Running time: From milliseconds to seconds.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call