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

Loadbalance pr3 #88

Open
wants to merge 76 commits into
base: dev
Choose a base branch
from
Open

Conversation

131131yhx
Copy link

New feature(s):

  1. Split the run_queue into one queue per hart.
  2. Add loadbalance crate (with some modifications in scheduler crate) with a Zircon style implementation.
  3. Support automatically choice of hart to run for each new tasks.
  4. Support thread steal mechanism between different harts.
  5. Add new task called unbalance. It has many unbalance payloads to run, simulating real world parallel apps like SpMV.
    Achievement(s):
  6. The thread steal mechanism speed up by 10% in task unbalance. Moreover, current version is slightly faster than single run_queue even with only 4 cores in unbalance task.
  7. The high concurrence of I/O thread wake up simulation obtains more than 50% time reduction on SMP=8 ACCEL=y compared to single run queue

@equation314
Copy link
Member

Is this PR still active? Please fix conflicts.

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.

3 participants