-
Hi, I have some questions about using
I'm finding the bubble correction is very slow and uses a lot of memory even for a FCC cubic system. For example using a Do you have any other tips for using the bubble correction? |
Beta Was this translation helpful? Give feedback.
Replies: 6 comments 2 replies
-
As you noticed, calculation of the bubble free energy is computationally demanding. It is much more expensive than calculation of the imaginary part of the bubble self-energy, which is necessary for computing thermal conductivity. Regarding the large RAM requirement, the code first prepares all necessary temperature-dependent information (e.g., phonon frequencies, polarization vectors) on a uniform k-grid (specified in the I have some suggestions that might help. RAM requirementThis issue may be avoided by reducing the temperature points of an SCPH calculation and k-point density. Please try
Tips
ConvergenceSince the bubble free energy is usually much smaller than the QHA or SCP terms, I think (SCP term with a dense k point) + (Bubble correction with a coarse k point) give a reasonably converged value of the total free energy. For example, using In my experience, the convergence of the bubble free energy tends to be faster than that of the thermal conductivity. |
Beta Was this translation helpful? Give feedback.
-
Thank you very much for the suggestions. I hadn't realised that the bubble correction was more expensive than calculating the imaginary part of the self-energy. But it is good to hear that convergence is faster for the bubble correction. The tips on mining the RAM requirement and performing a subset of temperatures are very useful. I am trying them on my system now. I also wonder if the bubble correction is a smooth function with temperature, in that case I can interpolate it to a denser temperature mesh – I will give this a go. Thank you for developing this fantastic code. The features are very impressive! |
Beta Was this translation helpful? Give feedback.
-
Can I also ask, have you benchmarked different parallelisation strategies for the bubble correction? For example, is it best to combine openMP threads with MPI processes. Or just stick to MPI only? |
Beta Was this translation helpful? Give feedback.
-
I haven't done a performance check, but I think a pure MPI run is more efficient in terms of wall time. |
Beta Was this translation helpful? Give feedback.
-
Hi, I am also trying to calculate the bubble self-energy (so continuing in this discussion thread). I used the effective second-order harmonic force constants from the SCPH calculations and the third order force constants to evaluate the bubble-self energy (following the previous discussion with Dr. Tadano). But I am not using FE_BUBBLE = 1, or -D_FE_BUBBLE tags as discussed above. To make sure could you please see my input file below and let me know if I need any corrections? &general &scph &cell 50.00 # factor in Bohr unit / &kpoint &analysis and mode_TA12.in looks as Best, |
Beta Was this translation helpful? Give feedback.
-
By the way @ttadano, I ended up doing a parallelism check on a supercomputer. I tested the SCPH and Bubble routines separately. I was trying to understand how to balance the number of MPI processes and OMP_NUM_THREADS. The supercomputer has 40 cores per node and can use hyper-threading. I ran test calculations on 80 cores (2 nodes), with and without hyper-threading. I set OMP_NUM_THREADS to the values shown on the plots and set the MPI processes to 80 / OMP_NUM_THREADS for non-hyper-threading and 160 / OMP_NUM_THREADS with hyper-threading. The results show that:
So it seems like the best performance is gained by running the SCPH part with FE_BUBBLE=0 using large number of threads. And then turning on FE_BUBBLE=1 and restart from the dynmat and use OMP_NUM_THREADS=4 to obtain the thermal properties. |
Beta Was this translation helpful? Give feedback.
&kpoint
section.KMESH_SCPH
is used only in the main iterative loop of an SCPH calculation. All post process calculations are performed with the k point information in the&kpoint
section.As you noticed, calculation of the bubble free energy is computationally demanding. It is much more expensive than calculation of the imaginary part of the bubble self-energy, which is necessary for computing thermal conductivity.
Regarding the large RAM requirement, the code first prepares all necessary temperature-dependent information (e.g., phonon frequencies, polarization vectors) on a uniform…