Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice Michal Borovský Department of Theoretical Physics and Astrophysics, University of P. J. Šafárik in Košice, Slovakia 18th November 2015 Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 1/30
Collaboration Dr. Martin Weigel (Applied Mathematics Research Centre, Coventry University, UK) Dr. Lev Yu. Barash (Landau Institute for Theoretical Physics, Chernogolovka, Russia) Dr. Milan Žukovič (UPJŠ, Košice, Slovakia) Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 2/30
Outline 1 Population annealing 2 GPU realization of PA 3 Stacked triangular Ising antiferromagnet 4 Results 5 Conclusions and perspective Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 3/30
Outline 1 Population annealing 2 GPU realization of PA 3 Stacked triangular Ising antiferromagnet 4 Results 5 Conclusions and perspective Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 4/30
Population annealing (PA) Introduction K. Hukushima and Y. Iba, Population Annealing and Its Application to a Spin Glass, AIP Conf. Proc. 690, 200 (2003). suitable for systems with rough free energy surfaces (spin glasses, frustrated spin systems, complex biomolecular systems, etc.) used as an alternative to parallel tempering combination of simulated annealing, population algorithms and sequential Monte Carlo method provides a good estimate of free energy Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 5/30
Population annealing Algorithm initialize population of R K replicas at β K+1 = 0 for β k from β K to β 0 with step β = β k β k+1 partition function ratio: Q k = 1 R βk+1 R βk+1 j 1 exp [ βe j ] for all replicas do: normalize weights: τ j = 1 Q k exp [ βe j ] ) ] resampling: create N [(R βk / R βk+1 τ j copies of replica (N [a] - Poisson random variate with mean value a) calculate new size of a population R βk equilibrate replicas for θ k Monte Carlo sweeps calculate observables and the free energy: β k F (β k ) = ln Ω + k ln Q l l=k Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 6/30
Outline 1 Population annealing 2 GPU realization of PA 3 Stacked triangular Ising antiferromagnet 4 Results 5 Conclusions and perspective Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 7/30
CPU vs. GPU Performance comparison 10 4 GPUs NVIDIA Tesla (fp32) peak performance in GFLOPS 10 3 10 2 10 1 GPUs NVIDIA GeForce (fp32) GPUs NVIDIA Tesla (fp64) GPUs NVIDIA GeForce (fp64) CPUs Intel (fp32) CPUs Intel (fp64) 2004 2006 2008 2010 2012 2014 year rok CPU - Intel GPU - NVIDIA GeForce GPU - NVIDIA Tesla 2004 Pentium 4 570J (3.8GHz) 6800 GT - 2006 Core 2 Duo E6700 (2.66GHz) 7950 GT - 2008 Core 2 Quad Q9400 (2.66GHz) 9800 GT (112 CUDA cores @ 600MHz) C870 (128@600MHz) 2010 Core i7-980 (3.33GHz) GTX 480 (448@607MHz) C2070 (448@575MHz) 2012 Core i7-3770k (3.5GHz) GTX 680 (1536@1006MHz) K20 (2496@706MHz) 2013 - GTX 780 Ti (2880@875MHz) K40 (2880@705MHz) 2014 Core i7-4790k (4GHz) GTX Titan Z(5760@705MHz) K80 (4992@562MHz) GTX 980 (2048@1126MHz) Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 8/30
GPU CUDA architecture Schematic depiction M. Weigel, Journal of Computational Physics 231 (2012) 30643082 Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 9/30
CUDA program GPU program: Host code - ANSI C Device code - ANSI C extended by keywords for kernels (parallel functions) and data structures NVIDIA C compiler (nvcc) Program execution: THREAD (WARP) BLOCK GRID SIMT - single instruction multiple threads Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 10/30
Parallelizing the PA algorithm 2 levels of parallelism: over replicas (τ i, Q) 1 thread = 1 replica over spins of each replica (MC update,e,m) 1 block of threads - 8x8x8 block-wise coalesced array of spin values; 1 block = 1 replica use of parallel reduction algorithm for summing over replicas/spin values/local energy contributions parallel generation of long sequences of pseudo-random numbers - curand Philox 4x32 10 (p = 2 128 10 38 ) Boltzmann factor tabulation - texture memory Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 11/30
Outline 1 Population annealing 2 GPU realization of PA 3 Stacked triangular Ising antiferromagnet 4 Results 5 Conclusions and perspective Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 12/30
Stacked triangular Ising antiferromagnet Sublattice partition and hamiltonian J 1 J 2 H = J 1 S i S j J 2 S i S k Hamiltonian: i,j i,j Sublattice: - 1-2 - 3-4 - 5-6 S i = ±1... Ising spin variable J 1 < 0... antiferromagnetic intralayer (interchain) interaction J 2 < 0... antiferromagnetic interlayer (intrachain) interaction? Geometrical frustration: Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 13/30
Stacked triangular Ising antiferromagnet Kinetic freezing in a standard MCMC simulation R.R. Netz and A.N. Berker, Phys. Rev. Lett. 66, 377 (1991). E / N J 1 J 1 = J 2, 24x24x32 spins (L z = 32 layers), 10 5 MCMC sweeps (+20% for equilibration), o z = Lz ( 1) k S k, snapshot at k B T / J 1 = 0.01 0.5 1 1.5 E / N J 1 1.994 1.996 1.998 2 k=1 2.002 0 0.25 0.5 k T / J B 1 1.2 0.8 0.4 C / N k B intrachain staggered magnetization o z Spin orientation in selected chain 32 24 16 8 0 8 16 24 32 2 0 0 1 2 3 4 k T / J B 1 Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 14/30
Outline 1 Population annealing 2 GPU realization of PA 3 Stacked triangular Ising antiferromagnet 4 Results 5 Conclusions and perspective Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 15/30
MCMC and PA comparison GS energy and configuration J 1 = J 2, 24x24x32 spins (L z = 32 layers), snapshot at k B T / J 1 = 0.1 E / N J 1 1.993 1.994 1.995 1.996 1.997 1.998 MCMC simulation GS energy PA, R = 10 4, θ = 10 2, β = 0.01 PA, R = 10 4, θ = 10 2, β = 0.005 PA, R = 10 5, θ = 10 2, β = 0.005 intrachain staggered magnetization o z 32 24 16 8 0 8 1.999 16 24 2 32 0 0.1 0.2 0.3 0.4 0.5 k B T / J 1 Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 16/30
MCMC and PA comparison Family entropy W. Wang, J. Machta, and H. G. Katzgraber, Phys. Rev. E 92, 013303 (2015) Family entropy: S f = i ν i ln ν i ν i... fraction of the population with origin in the i-th replica e S f... effective number of surviving families equilibration requirement: e S f 100 (or S f 4.6) S f 9 8 7 6 5 4 3 2 1 PA, R = 10 4, θ = 10 2, β = 0.01 PA, R = 10 4, θ = 10 2, β = 0.005 PA, R = 10 5, θ = 10 2, β = 0.005 0 0 1 2 3 4 k B T / J 1 Number of unique GS configurations: 171 (0.171% of the population size, e S f = 3.7375) 23 (0.23%, e S f = 2.1845) 32 (0.32%, e S f = 1.5857) Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 17/30
PA algorithm performance Nvidia GTX Titan 24x24x32 R = 10 3 R = 10 4 R = 10 5 θ t SF [ns] t SF [ns] t SF [ns] 10 0 8.235 7.714 7.933 10 1 1.024 0.953 0.961 10 2 0.308 0.276 0.269 10 3 0.240 0.209 0.259 10 4 0.233 0.208 0.245 GPU memory used 17.62 MB 176.24 MB 1762.39 MB Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 18/30
Outline 1 Population annealing 2 GPU realization of PA 3 Stacked triangular Ising antiferromagnet 4 Results 5 Conclusions and perspective Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 19/30
Conclusions and perspective Conclusions: we created optimized parallel GPU program of the PA algorithm for the frustrated stacked triangular Ising antiferromagnet system reached GS (Wannier-like phase with antiferromagnetically ordered spin chains) even for relatively small R and θ equilibration criterion was not met in all simulations for a low-t region Perspective: choice of more effective high quality PRNG parallel resampling of replicas in the GPU global memory adaptive inverse temperature step β k - histogram overlap asynchronous multispin coding - bitwise operations multi-histogram reweighting Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 20/30
Thank you for your attention. Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 21/30
Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 22/30
Population annealing Weighted averaging J. Machta, Population annealing with weighted averages: A Monte Carlo method for rough free energy landscapes, Phys.Rev.E 82, 026704 (2010) for not sufficient values of parameters R k, β, θ k bias lets consider a set of the M independent runs of the algorithm with observables à r (β) and free energies F r (β) weighted averaging: Ā(β) = M à r (β)ω r (β), where ω r (β) = r=1 exp[ β F r (β)] M exp[ β F r (β)]. r=1 [ unbiased free energy: β F (β) = ln 1 M weighted averaging errors - bootstrapping M r=1 [ ] ] exp β F r (β) optimization - minimize Var( β F ) using the same computational resources Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 23/30
h > 0 GS configurations F ( ) h / J 1 8 Fi-(F-A) ( ) 6 4 Fi-A ( ) -1 J 2 / J 1 2 0 Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 24/30
h > 0 Enthalpy per spin E / N J 1 0.5 1 1.5 2 2.5 3 3.5 4 4.5 (c) 5 0 1 2 3 4 k B T / J 1 enthalpy per spin 0.5 1 1.5 2 2.5 3 3.5 h/ J 1 = 0 4 0 0.5 1 1.5 2 2.5 3 3.5 4 k T / J B 1 1 1.5 2 2.5 3 4 5 6 7 7.5 Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 25/30
h > 0 Heat capacity C / N k B 1.2 1 0.8 0.6 0.4 (d) C / N k B 1.2 1 0.8 0.6 0.4 h/ J 1 = 0 1 1.5 2 2.5 3 4 5 6 7 7.5 0.2 0 0 1 2 3 4 k B T / J 1 0.2 0 0 0.5 1 1.5 2 2.5 3 3.5 4 k T / J B 1 Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 26/30
h > 0 Total magnetization per spin m 1 0.8 0.6 0.4 (a) m 1 h/ J = 0 1 1 0.9 1.5 0.8 2 2.5 0.7 3 4 0.6 5 6 0.5 7 7.5 0.4 0.3 0.2 0 0 1 2 3 4 k T / J B 1 0.2 0.1 0 0 0.5 1 1.5 2 2.5 3 3.5 4 k T / J B 1 Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 27/30
h > 0 Magnetic susceptibility χ 1 0.8 0.6 0.4 (b) χ h/ J = 0 1 1 0.6 1.5 2 2.5 0.5 3 4 5 0.4 6 7 7.5 0.3 0.2 0 0 1 2 3 4 k B T / J 1 0.2 0.1 0 0 0.5 1 1.5 2 2.5 3 3.5 4 k T / J B 1 Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 28/30
h > 0 Ground state configurations h/ J 1 = 1 h/ J 1 = 4 o xy = 0.0061 (a) 32 24 16 o xy = 1 (b) o~ z = 1 [o z (A), oz (B), oz (C) ] = [ 7.6667, 20.3333, 27.3333] 8 0 8 16 24 32 o~ = 2/3 z [o z (A), oz (B), oz (C) ] = [ 32, 32, 0] h/ J 1 = 7 h/ J 1 = 7.5 o xy = 1 (c) 32 24 16 o xy = 1 (d) o~ = 1/2 z 8 0 8 o~ = 2/3 z (A) (B) (C) [o, oz, oz ] = [6, 24, 18] 24 z 32 16 [o z (A), oz (B), oz (C) ] = [12, 20, 32] Michal Borovský Population annealing study of the frustrated Ising antiferromagnet on the stacked triangular lattice 29/30
h > 0 Ground state configurations - degeneracy Michal Borovský 1 Population annealing study2of the frustrated Ising antiferromagnet 3 on the stacked triangular 4lattice 30/30