Skip to content

Locality allocator for related Atoms #2756

Open
@linas

Description

@linas

Atoms are small, and the memory allocations for atoms are likely to be highly fragmented, all over RAM.

This will result in graph-crawls (pattern-searches) that have very high d-cache and d-tlb and pte misses. One way to minize some of this is the use HUGE PAGES (this works, and gives a 30% boost on the genomics datasets).

Another way would be to allocate atomspace atoms out of a different heap than "ordinary" allocations, and to use a locality-allocator for that heap. That is, it should work like the block-allocator for modern file-systems: nearby atoms should be allocated on the same page, and unrelated atoms should be allocated from distant pages. Do such allocators exist?

This is in reference to the email chain w/ Predrag Radović here

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions