vSMC
v3.0.0
Scalable Monte Carlo
|
Memory allocation with alignment requirement. More...
Classes | |
class | vsmc::AlignedMemorySTD |
Aligned memory using std::malloc and std::free More... | |
class | vsmc::AlignedMemorySYS |
Aligned memory using native system aligned memory allocation. More... | |
class | vsmc::AlignedMemoryTBB |
Aligned memory using Intel TBB scalable_aligned_malloc and scalable_aligned_free . More... | |
class | vsmc::Allocator< T, Alignment, Memory > |
Aligned allocator. More... | |
class | vsmc::Allocator< T, Alignment, Memory >::rebind< U > |
class | vsmc::Allocator< const void, Alignment, Memory > |
Aligned allocator specialization of const void More... | |
class | vsmc::Allocator< void, Alignment, Memory > |
Aligned allocator specialization of void More... | |
class | vsmc::Array< T, N, Alignment > |
std::array with proper alignment More... | |
Macros | |
#define | VSMC_DEFINE_NEW_DELETE(Class) |
Define class member new and delete using AlignedMemory. More... | |
Typedefs | |
using | vsmc::AlignedMemory = ::vsmc::AlignedMemoryTBB |
Default AlignedMemory type. More... | |
template<typename T , typename Alloc = Allocator<T>> | |
using | vsmc::Vector = std::vector< T, Alloc > |
std::vector with Allocator as default allocator More... | |
Functions | |
template<typename T1 , typename T2 , std::size_t Alignment, typename Memory > | |
bool | vsmc::operator!= (const Allocator< T1, Alignment, Memory > &, const Allocator< T2, Alignment, Memory > &) |
Comparision of two Allocator. More... | |
template<typename T1 , typename T2 , std::size_t Alignment, typename Memory > | |
bool | vsmc::operator== (const Allocator< T1, Alignment, Memory > &, const Allocator< T2, Alignment, Memory > &) |
Comparision of two Allocator. More... | |
Memory allocation with alignment requirement.
#define VSMC_DEFINE_NEW_DELETE | ( | Class | ) |
Define class member new
and delete
using AlignedMemory.
The behavior of the custom operator new
is sligtly different than the standard ones. There will be no new
handler called in the case of failure to allocate memroy. Another way to view this is that the class that uses these custom operator new
has its own new
handler which does exactly nothing.
Definition at line 90 of file aligned_memory.hpp.
using vsmc::AlignedMemory = typedef ::vsmc::AlignedMemoryTBB |
Default AlignedMemory type.
Definition at line 273 of file aligned_memory.hpp.
using vsmc::Vector = typedef std::vector<T, Alloc> |
std::vector with Allocator as default allocator
Definition at line 459 of file aligned_memory.hpp.
|
inline |
Comparision of two Allocator.
Definition at line 433 of file aligned_memory.hpp.
|
inline |
Comparision of two Allocator.
Definition at line 424 of file aligned_memory.hpp.