Skip to content

Vastly simplify and accelerate memory management. #192

Open
@mratsim

Description

@mratsim

For a fresh implementation of a threadpool for high-speed cryptography (https://github.com/mratsim/constantine/tree/1dfbb8b/constantine/platforms/threadpool), I found a new design for low overhead memory management:

  • We can make the Flowvar result channel intrusive to the task.

Assuming we have in a full message passing environment, this is equivalent to sending back the task to the waiter once it is finished hence we are compatible with one of Weave's design goal.

With this, we might be able to completely remove the memory folder and the 2 levels caching structure via memory pool + lookaside list. This might accelerate machine learning algorithm like GEMM / Matrix multiplication as those are very cache sensitive and our memory pool does trigger many page faults.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions