Author Topic: parallelization and ATK  (Read 2346 times)

0 Members and 1 Guest are viewing this topic.

Offline sathyajit

  • Heavy QuantumATK user
  • ***
  • Posts: 31
  • Country: in
  • Reputation: 0
    • View Profile
parallelization and ATK
« on: January 12, 2016, 11:22 »
Hi,

I want to understand parallelism in ATK , so can you please tell me the levels of parallelization implemented ?

For ex.
If N is the group of all processors
how to specify (or rather how do these parameters vary when we pass N as an argument to mpirun ?)
Processors that can then be divided into different "images", each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.
Each image can be subpartitioned into "pools", each taking care of a group of k-points.
Bands: each pool is subpartitioned into "band groups", each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions)
Orbitals: orbitals in the LCAO set

Also is there a way to account for the amount of memory per thread ? I see messages from the simulation in ATK 2015.1 about real space sampling etc.

Hoping for a detailed clarification !

Thanks
Sathyajit
« Last Edit: January 12, 2016, 11:27 by sathyajit »

Offline Pieter Vancraeyveld

  • Regular QuantumATK user
  • **
  • Posts: 22
  • Country: dk
  • Reputation: 1
    • View Profile
Re: parallelization and ATK
« Reply #1 on: January 14, 2016, 10:12 »
Dear Sathyajit,

You are correct to assume that ATK has several levels of parallelism. It is however rather difficult to give you a comprehensive overview as it depends on the configuration (bulk, device or NEB), the types of analysis and finally the chosen options/algorithms.

If you can share a script for a representative calculation, it will be easier to provide you with the information you need.

Offline zhangguangping

  • QuantumATK Guru
  • ****
  • Posts: 187
  • Country: cn
  • Reputation: 2
    • View Profile
Re: parallelization and ATK
« Reply #2 on: April 18, 2016, 16:44 »
Dear Pieter,

As pointed out here http://quantumwise.com/documents/tutorials/latest/ParallelGuide/index.html/chap.strategy.html, the FFT solver can take benifit of the MKL threading. Can the FFT solver take the advantage of MPI parallelization? As I know, MKL can threading as well as paralling over MPI.

Thanks very much.

With best regards,

Guangping

Offline Pieter Vancraeyveld

  • Regular QuantumATK user
  • **
  • Posts: 22
  • Country: dk
  • Reputation: 1
    • View Profile
Re: parallelization and ATK
« Reply #3 on: April 19, 2016, 08:56 »
Dear Guangping,

ATK's FastFourierSolver and FastFourier2DSolver can indeed benefit from OpenMP threading, but do no take advantage of MPI parallelization. Many other components in ATK are however both OpenMP and MPI parallel.

If you share a script of an example calculation I would be happy to go over the parallelization potential of the different steps in the calculation.

Best regards,
Pieter

Offline zhangguangping

  • QuantumATK Guru
  • ****
  • Posts: 187
  • Country: cn
  • Reputation: 2
    • View Profile
Re: parallelization and ATK
« Reply #4 on: April 19, 2016, 09:06 »
Dear Pieter,

Thanks very much for your reply. I now just learn something about ATK before I really use it. So, if possible and needed, I would turn to you for the help.

Also, I find the forum a very good place to find some solutions to my question by using search function. However, I find I can not collect the topics for later usage if I find them useful. The NOTIFY function may can do this, but I can not give a note for each notify, so that I can quick recongnize what this topic I collect it for.

With best regards.

/Guangping
« Last Edit: April 19, 2016, 09:11 by zhangguangping »