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

combine parallel-do in qeq_initialize(), get_hsh(), get_gradient() in QEq #4

Closed
KenichiNomura opened this issue Dec 30, 2016 · 2 comments

Comments

@KenichiNomura
Copy link
Member

fork-joining every QEq loop will incur too much overhead. change the three $omp parallel-dos into one $omp parallel at the beginning of QEq and three $omp do for each function.

@kuangluvasuka
Copy link

Two functions, qeq_initialize() and get_gradient(), that are outside the DO loop (line 95) can be combined in a single parallel directive. There are two EXIT statements in the DO loop (line 111 and 112), but OMP doesn't allow EXIT or RETURN occur within a parallel directive.

@KenichiNomura
Copy link
Member Author

Yes, that's a good point. Another limitation in OpenMP.. Since the multithreading comm and comp strategy seems not ready for production use according to the conversation with Nick, we would not ned to pursue this issue at this moment.

KenichiNomura added a commit that referenced this issue Jul 9, 2019
remove example #3 and move #4->#3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants