Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Ritwik_D_1
Beginner
76 Views

Documentation on Scalable Allocator

I am trying to find details about how the scalable allocator works. I found some material at:

http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.71.8289&rep=rep1&type=pdf

but this is a little outdated (2007). It would be good to have some updated resource which explains the data structures used and the memory size bins used in the current (or rather recent) implementation of the allocator. For memory allocations >8KB, does TBB request directly the OS virtual memory or has this been changed?

 

0 Kudos
3 Replies
76 Views

Unfortunately such text has not been written yet, while things are changed since 2007. Sources are here, but they are bad replacement to high-level overview.

As for objects >8KB, they are split from big “regions” (if less than 1 MB) or received directly from OS via mmap/VirtualAlloc, later they are subject to per-thread caching (up to 4 MB) at first, and then to global large object caching (up to 129 MB).

Ritwik_D_1
Beginner
76 Views

Can you please point me to the sources?

76 Views

Please find most recent: https://www.threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb44_20160526oss_src.tgz

Reply