![]() |
Home | Libraries | People | FAQ | More |
These two tables compare sizeof(container) across major implementations and Boost.Container.
Table 7.2. sizeof comparison in 32/64 bit systems
|
Container |
Boost.Container |
libstdc++ (GCC) |
libc++ (Clang) |
Microsoft STL [a] |
|---|---|---|---|---|
|
|
12 / 24 |
12 / 24 |
12 / 24 |
12 / 24 |
|
|
16 / 32 |
40 / 80 |
24 / 48 |
20 / 40 |
|
|
12 / 24 |
12 / 24 |
12 / 24 |
8 / 16 |
|
|
16 / 32 |
24 / 48 |
12 / 24 |
8 / 16 |
|
|
12 / 24 |
24 / 32 |
12 / 24 |
24 / 32 |
|
[a]
Uses heap-allocated sentinels for [b]
Boost.Container has a SSO size option ( | ||||
This tables shows the number of characters (excluding the null terminator) that can be hold inline across major implementations and Boost.Container.
Table 7.3. SSO capacity for string
|
Mode |
Boost.Container [a] |
libstdc++ (GCC) |
libc++ (Clang) |
Microsoft STL |
|---|---|---|---|---|
|
32 bit |
10 |
15 |
10 |
15 |
|
64 bit |
22 |
15 |
22 |
15 |
[a]
Boost.Container has a SSO size selection (up to 127 characters)
option called | ||||
deque implementations are
based on a segmented array of blocks, and the block size is an important
parameter that affects performance. This table shows the block size in bytes
for deque implementations
across major implementations and Boost.Container.
Table 7.4. Deque Block Sizes
|
Implementation |
Block Size in bytes |
|---|---|
|
Boost.Container |
512 (32-bit) / 1024 (64-bit) [a] |
|
libstdc++ (GCC) |
512 |
|
libc++ (Clang) |
4096 |
|
Microsoft STL |
16 |
[a]
| |
Table 7.5. sizeof comparison between
Boost Containers (in bytes) This table shows the sizeof
value of Boost.Container containers in 32 and 64 bit systems. Note that these
values can be changed by configuration options (like stored_size)
so they are shown here for the default configuration.
|
Container |
32-bit |
64-bit |
|---|---|---|
|
|
12 |
24 |
|
|
16 |
32 |
|
|
16 |
32 |
|
|
12 |
24 |
|
|
20 |
40 |
|
|
12 |
24 |
|
|
8 |
16 |
|
|
16 |
32 |
|
|
12 |
24 |
|
|
12 |
24 |
[a]
| ||