Gromacs  2024.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Typedefs | Functions
alignedallocator.h File Reference
#include <cstddef>
#include "gromacs/utility/allocator.h"
+ Include dependency graph for alignedallocator.h:
+ This graph shows which files directly or indirectly include this file:

Description

Declares allocation policy classes and allocators that are used to make library containers compatible with alignment requirements of particular hardware, e.g. memory operations for SIMD or accelerators.

Author
Erik Lindahl erik..nosp@m.lind.nosp@m.ahl@g.nosp@m.mail.nosp@m..com
Mark Abraham mark..nosp@m.j.ab.nosp@m.raham.nosp@m.@gma.nosp@m.il.co.nosp@m.m

Classes

class  gmx::AlignedAllocationPolicy
 Policy class for configuring gmx::Allocator, to manage allocations of aligned memory for SIMD code. More...
 
class  gmx::PageAlignedAllocationPolicy
 Policy class for configuring gmx::Allocator, to manage allocations of page-aligned memory that can be locked for asynchronous transfer to GPU devices. More...
 

Typedefs

template<class T >
using gmx::AlignedAllocator = Allocator< T, AlignedAllocationPolicy >
 Aligned memory allocator. More...
 
template<class T >
using gmx::PageAlignedAllocator = Allocator< T, PageAlignedAllocationPolicy >
 PageAligned memory allocator. More...
 

Functions

std::size_t gmx::pageSize ()
 Return the memory page size on this system. More...