Intel® oneAPI Threading Building Blocks
Ask questions and share information about adding parallelism to your applications when using this threading library.

Memory limit for TBB scalable allocator

Ritwik_D_1
Beginner
711 Views

From the release notes of TBB 4.4 Update 6 I can see the following:

"For 64-bit platforms, quadrupled the worst-case limit on the amount
    of memory the Intel TBB allocator can handle."

What was the memory limit in the earlier versions of TBB?

0 Kudos
1 Solution
gaston-hillar
Valued Contributor I
711 Views

Hi Ritwid and Maxim,

The same code file within the source code included in tbb-4.4.5 release includes the following comment:

struct BackRefMaster {
/* A slab block can hold up to ~2K back pointers to slab blocks or large objects,
 * so it can address at least 32MB. The array of 64KB holds 8K pointers
 * to such blocks, addressing ~256 GB.
 */

So, addressing has been quadrupled and increased from ~256 GB to ~1TB.

 

View solution in original post

0 Kudos
4 Replies
Maksim_D_Intel
Employee
711 Views

Hello

According to comment in the file ( https://github.com/01org/tbb/blob/tbb_2017/src/tbbmalloc/backref.cpp#L63 ), the minimal guaranteed is a ~1TB in a current version for 64bit systems

0 Kudos
gaston-hillar
Valued Contributor I
711 Views

Hi Ritwik and Maxim,

The same code file within the source code included in tbb-4.4.6 release includes the same comment than Maksim mentions for the newest release.

0 Kudos
gaston-hillar
Valued Contributor I
712 Views

Hi Ritwid and Maxim,

The same code file within the source code included in tbb-4.4.5 release includes the following comment:

struct BackRefMaster {
/* A slab block can hold up to ~2K back pointers to slab blocks or large objects,
 * so it can address at least 32MB. The array of 64KB holds 8K pointers
 * to such blocks, addressing ~256 GB.
 */

So, addressing has been quadrupled and increased from ~256 GB to ~1TB.

 

0 Kudos
Ritwik_D_1
Beginner
711 Views

Thanks!

0 Kudos
Reply