1.. _Which_Dynamic_Libraries_to_Use: 2 3Which Dynamic Libraries to Use 4============================== 5 6 7The template ``scalable_allocator<T>`` requires the |full_name| 8scalable memory allocator library as 9described in **Scalable Memory Allocator**. It does not require the 10oneTBB general library, and can be used independently of the rest of 11oneTBB. 12 13 14The templates ``tbb_allocator<T>`` and ``cache_aligned_allocator<T>`` 15use the scalable allocator library if it is present otherwise it reverts 16to using ``malloc`` and ``free``. Thus, you can use these templates even 17in applications that choose to omit the scalable memory allocator 18library. 19 20 21The rest of |full_name| can be used 22with or without the oneTBB scalable memory allocator library. 23 24 25.. container:: tablenoborder 26 27 28 .. list-table:: 29 :header-rows: 1 30 31 * - Template 32 - Requirements 33 - Notes 34 * - \ ``scalable_allocator<T>`` 35 - |full_name| scalable memory allocator library. See **Scalable Memory Allocator**. 36 - 37 * - \ ``tbb_allocator<T>`` \ ``cache_aligned_allocator<T>`` 38 - 39 - Uses the scalable allocator library if it is present, otherwise it reverts to using ``malloc`` and ``free``. 40 41 42 43