carstenbauer / MonteCarlo.jl

Classical and quantum Monte Carlo simulations in Julia
https://carstenbauer.github.io/MonteCarlo.jl/dev/
Other
185 stars 18 forks source link

Breaking changes (new lattice, measurement fixes, more) #165

Closed ffreyer closed 1 year ago

ffreyer commented 2 years ago

Main Goals of this pr are now:

And since the lattice changes will most likely be breaking I'll get some other breaking stuff done.

General changes/TODO:

ffreyer commented 2 years ago

JLD2.load seems to be about 30% faster than loading things on demand for a 4MB file.

ffreyer commented 2 years ago

Maybe I should add serialize to BinningAnalysis

ffreyer commented 2 years ago

The last two commits are performance tweaks for measurements/EachLocalQuadByDistance. For a 4x4 lattice with 4 sites per unit cell the sweep timing stayed consistent at ~0.013s. During measurements the timings with every measurement are:

This leaves the time per iteration of the lattice iterator for pairing susceptibilities at around 7ns if I'm not mistaken. Explicitly optimizing loop order for a given kernel can still give better performance here, but I'm not sure if that's worth it.