Skip to content

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

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

Request: load balance in ABACUS #5889

Closed
14 tasks
kirk0830 opened this issue Feb 8, 2025 · 3 comments
Closed
14 tasks

Request: load balance in ABACUS #5889

kirk0830 opened this issue Feb 8, 2025 · 3 comments
Labels
Features Needed The features are indeed needed, and developers should have sophisticated knowledge

Comments

@kirk0830
Copy link
Collaborator

kirk0830 commented Feb 8, 2025

Background

as mentioned by @QuantumMisaka for times, if the system to simulate is highly heterogeneous, he observe it is better to rotate the axis that is the norm of vacuum layer along y instead of z (the most common choice). I tested and find there will be 100% improvement in performance:
vacuum along z

Image

vacuum along y

Image

Describe the solution you'd like

I guess there must be some algorithm is poorly load-balanced, the manual rotation on system actually means balancing by human...
However, for those users do not know about this feature, they may doubt about performance of ABACUS.
I suggest do the automatic load balance, in this case, the simplest solution would be a rotation on system by ABACUS its own.

Task list only for developers

  • Notice possible changes of behavior
  • Explain the changes of codes in core modules of ESolver, HSolver, ElecState, Hamilt, Operator or Psi

Notice Possible Changes of Behavior (Reminder only for developers)

No response

Notice any changes of core modules (Reminder only for developers)

No response

Notice Possible Changes of Core Modules (Reminder only for developers)

No response

Additional Context

No response

Task list for Issue attackers (only for developers)

  • Review and understand the proposed feature and its importance.
  • Research on the existing solutions and relevant research articles/resources.
  • Discuss with the team to evaluate the feasibility of implementing the feature.
  • Create a design document outlining the proposed solution and implementation details.
  • Get feedback from the team on the design document.
  • Develop the feature following the agreed design.
  • Write unit tests and integration tests for the feature.
  • Update the documentation to include the new feature.
  • Perform code review and address any issues.
  • Merge the feature into the main branch.
  • Monitor for any issues or bugs reported by users after the feature is released.
  • Address any issues or bugs reported by users and continuously improve the feature.
@Cstandardlib
Copy link
Collaborator

@dzzz2001

@dzzz2001
Copy link
Collaborator

PR #5898 may solve this issue.

@mohanchen mohanchen added the Features Needed The features are indeed needed, and developers should have sophisticated knowledge label Feb 14, 2025
@mohanchen
Copy link
Collaborator

It's not totally realted to #5898, but we will try to fix this in future. I will move this to discussion.

@deepmodeling deepmodeling locked and limited conversation to collaborators Feb 18, 2025
@mohanchen mohanchen converted this issue into discussion #5904 Feb 18, 2025

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Labels
Features Needed The features are indeed needed, and developers should have sophisticated knowledge
Projects
None yet
Development

No branches or pull requests

4 participants