Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can we use this method to projector QMC? #13

Open
liuzhaochen opened this issue Jan 21, 2020 · 3 comments
Open

Can we use this method to projector QMC? #13

liuzhaochen opened this issue Jan 21, 2020 · 3 comments

Comments

@liuzhaochen
Copy link

Hi crstnbr!
Thanks for your excellent code and your benchmark for different methods. I am a newcomer to QMC. Recently I am studying the Projector QMC. I wonder if it is possible to use your method in PQMC? And I noticed you just submitted a paper on arXiv about monte carlo calculation. Did you perform the calculation with julia? How's the performance of julia on DQMC calculation?

Best Wishes

@carstenbauer
Copy link
Owner

Hi @liuzhaochen,

I'm happy to hear that you find the code useful!

I wonder if it is possible to use your method in PQMC?

Certainly! The meaning of the slice matrices B is different in PQMC but you need to perform numerical stabilization as well.

And I noticed you just submitted a paper on arXiv about monte carlo calculation. Did you perform the calculation with julia? How's the performance of julia on DQMC calculation?

Yes, 90% of the computations have been performed in Julia - an extensive effort taking up millions of CPU hours (an O(3) quantum critical metal is a super hard problem). The performance of julia was great. You certainly have to optimize your code, but then you achieve similar performance as with Fortran or C++ (I compared to both).

I will publish the actual code that I used for these simulations later this years (probably in summer). You can find a simplified version in MonteCarlo.jl (in particular you should check out ffreyer's fork/branches.

All the best,
Carsten

@liuzhaochen
Copy link
Author

Thanks for your reply. I have organized my code about hubbard model successfully. Looking forward for your code in the furture. Is it possible to speed up matrix operation parallelly? It seems I can only use one worker in one Markov chain.

Best Wishes

@carstenbauer
Copy link
Owner

You can use LinearAlgebra.BLAS.set_num_thread for threading matrix multiplications within BLAS/LAPACK. Also note that while MCMC isn't really parallelizable you can run multiple simulations with different seeds in parallel (trivial parallelization).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants