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

Remove closure allocation in Chan #28

Merged
merged 2 commits into from
May 24, 2021

Conversation

ctk21
Copy link
Contributor

@ctk21 ctk21 commented May 19, 2021

This PR removes an unnecessary closure allocation in recv' and send' by factoring out the loop function in each and making recv'/send' recursive . It also adds a simple task_throughput test program which is quick and easy to see the impact of task changes.

For OCAMLRUNPARAM=v=0x400 task_throughput.exe 4, I see:

  • baseline: allocated_words: 3017378
  • this PR: allocated_words: 2725132

@ctk21 ctk21 force-pushed the ctk21/remove_closure_allocation_chan branch from cfc8c8f to e45a7aa Compare May 24, 2021 08:03
@ctk21
Copy link
Contributor Author

ctk21 commented May 24, 2021

(rebased to pick up #30 for the CI)

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.

None yet

2 participants