Skip to content

Perf: Add OpenMP parallel for GintInfo::init_atoms_()#7443

Open
amnesi-ary wants to merge 2 commits into
deepmodeling:developfrom
amnesi-ary:perf/init_atoms
Open

Perf: Add OpenMP parallel for GintInfo::init_atoms_()#7443
amnesi-ary wants to merge 2 commits into
deepmodeling:developfrom
amnesi-ary:perf/init_atoms

Conversation

@amnesi-ary

Copy link
Copy Markdown

Reminder

  • Have you linked an issue with this pull request?
  • Have you added adequate unit tests and/or case tests for your pull request?
  • Have you noticed possible changes of behavior below or in the linked issue?
  • Have you explained the changes of codes in core modules of ESolver, HSolver, ElecState, Hamilt, Operator or Psi? (ignore if not applicable)

What's changed?

  • Split orbital copying from atom processing so per-atom work can run independently.
  • Switch atom traversal to iterate by global atom index using iat2it and iat2ia.
  • Added OpenMP parallelization with dynamic scheduling for the per-atom big-grid search.

Motivation:
Resolve the TODO in GintInfo::init_atoms_() by parallelizing the atom initialization path.

@amnesi-ary

Copy link
Copy Markdown
Author

label: project-learning

@mohanchen mohanchen requested a review from dzzz2001 June 7, 2026 02:38
@mohanchen mohanchen added the Refactor Refactor ABACUS codes label Jun 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

project_learning Refactor Refactor ABACUS codes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants