19 #ifndef LIBMESH_THREADS_ALLOCATORS_H 20 #define LIBMESH_THREADS_ALLOCATORS_H 23 #include "libmesh/libmesh_config.h" 24 #include "libmesh/threads.h" 27 #ifdef LIBMESH_HAVE_TBB_API 28 # include "libmesh/ignore_warnings.h" 29 # include "tbb/scalable_allocator.h" 30 # include "libmesh/restore_warnings.h" 47 #ifdef LIBMESH_HAVE_TBB_API 86 #else //LIBMESH_HAVE_TBB_API 95 class scalable_allocator :
public std::allocator<T>
113 std::allocator<T>() {}
116 std::allocator<T>(a) {}
120 std::allocator<T>(a) {}
124 #endif // #ifdef LIBMESH_HAVE_TBB_API 130 #endif // LIBMESH_THREADS_ALLOCATORS_H scalable_allocator(const scalable_allocator< U > &a)
std::ptrdiff_t difference_type
scalable_allocator< U > other
scalable_allocator(const scalable_allocator &a)
The libMesh namespace provides an interface to certain functionality in the library.
Scalable allocator to be used in multithreaded code chunks which allocate a lot of dynamic memory...