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

Qlgyro4tgyro #375

Merged
merged 13 commits into from
Jun 14, 2024
Merged

Qlgyro4tgyro #375

merged 13 commits into from
Jun 14, 2024

Conversation

bpatel2107
Copy link
Contributor

I think this the interface between QLGYRO and TGYRO in Fortran is now complete and can be merged into unstable!

@bpatel2107 bpatel2107 requested review from tomneiser and jmcclena May 20, 2024 09:51
@jcandy
Copy link
Member

jcandy commented May 20, 2024

@bpatel2107 there is a conflict with cgyro_write_restart.F90 (which no longer exists). Can you have a look?

@bpatel2107
Copy link
Contributor Author

@bpatel2107 there is a conflict with cgyro_write_restart.F90 (which no longer exists). Can you have a look?

I've merged master into this branch and removed that files now so should be good now. The issue I fixed in that file was fixed in master anyway .

@bpatel2107
Copy link
Contributor Author

There is a small issue that I haven't quite figured out yet but it is not always a problem. Currently QLGYRO runs CGYRO for multiple KY/PX0 and runs them asynchronously. We split the total number of MPI processes over the number of requested parallel runs (set by N_PARALLEL) in the input file. This is generally more efficient as different runs can take different times so it is best to split your MPI processes such that many individual CGYRO runs can be done whilst the longer CGYRO runs take place (usually the case with slow growing/stable points).

The issue I am facing is that sometimes 2 CGYRO runs will finish at the same time and both will attempt to look at the next (ky,px0) to run by looking at the out.qlgyro.status file. Usually that MPI process will modify to the file to "claim" that (ky,px0). However if they happens to access the file at the same time then both MPI processes (usually a group of them) will run the same (ky,px0) at the same time which leads to problems. This is particularly bad when restarting a QLGYRO run.

Does anyone know of a way to prevent this. Maybe there is a way to lock the out.qlgyro.status file so only one process can read it at a time.

@gmstaebler
Copy link
Member

I approve this

@jmcclena jmcclena self-requested a review June 12, 2024 18:05
@jcandy jcandy merged commit 53a314d into master Jun 14, 2024
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

Successfully merging this pull request may close these issues.

4 participants