FPGA Hardware Acceleration of Monte Carlo Simulations for the Ising Model

A two-dimensional Ising model with nearest-neighbors ferromagnetic interactions is implemented in a Field Programmable Gate Array (FPGA) board. Extensive Monte Carlo simulations were carried out using an efficient hardware representation of individual spins and a combined global-local LFSR random number generator. Consistent results regarding the descriptive properties of magnetic systems, like energy, magnetization and susceptibility are obtained while a speed-up factor of approximately six times is achieved in comparison to previous FPGA-based published works and almost <inline-formula><tex-math notation="LaTeX">$10^4$</tex-math><alternatives> <inline-graphic xlink:type="simple" xlink:href="ortegazamorano-ieq1-2505725.gif"/></alternatives></inline-formula> times in comparison to a standard CPU simulation. A detailed description of the logic design used is given together with a careful analysis of the quality of the random number generator used. The obtained results confirm the potential of FPGAs for analyzing the statistical mechanics of magnetic systems.

[1]  G. Vichniac Simulating physics with cellular automata , 1984 .

[2]  Lothar Lilge,et al.  Fast, Power-Efficient Biophotonic Simulations for Cancer Treatment Using FPGAs , 2014, 2014 IEEE 22nd Annual International Symposium on Field-Programmable Custom Computing Machines.

[3]  Martin Greenberger,et al.  Random number generators , 1959, ACM National Meeting.

[4]  N. Goldenfeld Lectures On Phase Transitions And The Renormalization Group , 1972 .

[5]  W. P. Wolf,et al.  The Ising model and real magnetic materials , 2000 .

[6]  K. Hawick,et al.  3 D Lattice Monte Carlo Simulations on FPGAs , 2013 .

[7]  Makoto Matsumoto,et al.  SIMD-Oriented Fast Mersenne Twister: a 128-bit Pseudorandom Number Generator , 2008 .

[8]  Kurt Binder,et al.  A Guide to Monte Carlo Simulations in Statistical Physics: Frontmatter , 2009 .

[9]  James A Glazier,et al.  Viscous instabilities in flowing foams: a Cellular Potts Model approach. , 2006, Journal of statistical mechanics.

[10]  C. A. Lamas,et al.  Exotic disordered phases in the quantum J1-J2 model on the honeycomb lattice , 2013, 1301.2428.

[11]  M. A. Cayless Statistical Mechanics (2nd edn) , 1977 .

[12]  F. Y. Wu The Potts model , 1982 .

[13]  W. K. Hastings,et al.  Monte Carlo Sampling Methods Using Markov Chains and Their Applications , 1970 .

[14]  Eric Monmasson,et al.  FPGAs in Industrial Control Applications , 2011, IEEE Transactions on Industrial Informatics.

[15]  K. Binder,et al.  A Guide to Monte Carlo Simulations in Statistical Physics , 2000 .

[16]  Pierre L'Ecuyer,et al.  Tables of maximally equidistributed combined LFSR generators , 1999, Math. Comput..

[17]  N. Metropolis,et al.  The Monte Carlo method. , 1949 .

[18]  Raffaele Tripiccione,et al.  An FPGA-Based Supercomputer for Statistical Physics: The Weird Case of Janus , 2013 .

[19]  Cliburn Chan,et al.  Understanding GPU Programming for Statistical Computation: Studies in Massively Parallel Massive Mixtures , 2010, Journal of computational and graphical statistics : a joint publication of American Statistical Association, Institute of Mathematical Statistics, Interface Foundation of North America.

[20]  Christos-Savvas Bouganis,et al.  GPU Versus FPGA for High Productivity Computing , 2010, 2010 International Conference on Field Programmable Logic and Applications.

[21]  D. Stariolo,et al.  Nematic phase in the J(1)-J(2) square-lattice Ising model in an external field. , 2015, Physical review. E, Statistical, nonlinear, and soft matter physics.

[22]  Shawki Areibi,et al.  The Impact of Arithmetic Representation on Implementing MLP-BP on FPGAs: A Study , 2007, IEEE Transactions on Neural Networks.

[23]  Veljko M. Milutinovic,et al.  FPGA accelerator for floating-point matrix multiplication , 2012, IET Comput. Digit. Tech..

[24]  Nicola Nicolici,et al.  NoC-Based FPGA Acceleration for Monte Carlo Simulations with Applications to SPECT Imaging , 2013, IEEE Transactions on Computers.

[25]  Satoru Yamamoto,et al.  Multi-FPGA Accelerator for Scalable Stencil Computation with Constant Memory Bandwidth , 2014, IEEE Transactions on Parallel and Distributed Systems.

[26]  Sergio A Cannas,et al.  Interplay between coarsening and nucleation in an Ising model with dipolar interactions. , 2008, Physical review. E, Statistical, nonlinear, and soft matter physics.

[27]  Nicolás Wolovick,et al.  q-state Potts model metastability study using optimized GPU-based Monte Carlo algorithms , 2011, Comput. Phys. Commun..

[28]  Andrs Vajda Programming Many-Core Chips , 2011 .

[29]  L. Reichl A modern course in statistical physics , 1980 .

[30]  James A. Glazier,et al.  The kinetics of cellular patterns , 1992 .

[31]  Viktor K. Prasanna,et al.  A Scalable and Modular Architecture for High-Performance Packet Classification , 2014, IEEE Transactions on Parallel and Distributed Systems.

[32]  Denis Navarro,et al.  Janus: An FPGA-Based System for High-Performance Scientific Computing , 2007, Computing in Science & Engineering.

[33]  K. Binder,et al.  The Monte Carlo Method in Condensed Matter Physics , 1992 .

[34]  X. Zheng,et al.  Monte Carlo simulation of the Ising model on FPGA , 2013, J. Comput. Phys..

[35]  Elaine B. Barker,et al.  A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Applications , 2000 .

[36]  Joseph Zambreno,et al.  Design and Analysis of a Reconfigurable Platform for Frequent Pattern Mining , 2011, IEEE Transactions on Parallel and Distributed Systems.

[37]  William J. Hurd Efficient Generation of Statistically Good Pseudonoise by Linearly Interconnected Shift Registers , 1974, IEEE Transactions on Computers.

[38]  Akila Gothandaraman,et al.  Comparing Hardware Accelerators in Scientific Applications: A Case Study , 2011, IEEE Transactions on Parallel and Distributed Systems.

[39]  Glazier,et al.  Simulation of biological cell sorting using a two-dimensional extended Potts model. , 1992, Physical review letters.

[40]  Christopher Robert Cullinan,et al.  Computing Performance Benchmarks among CPU, GPU, and FPGA , 2012 .

[41]  K PrasannaViktor,et al.  A Scalable and Modular Architecture for High-Performance Packet Classification , 2014 .