Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe TesterMemoryAllocatorV3

Allocateur pour tester les arguments. Plus de détails...

+ Graphe d'héritage de TesterMemoryAllocatorV3:
+ Graphe de collaboration de TesterMemoryAllocatorV3:

Fonctions membres publiques

bool hasRealloc (MemoryAllocationArgs args) const override
 Indique si l'allocateur supporte la sémantique de realloc.
 
AllocatedMemoryInfo allocate (MemoryAllocationArgs args, Int64 new_size) override
 Alloue de la mémoire pour new_size octets et retourne le pointeur.
 
AllocatedMemoryInfo reallocate (MemoryAllocationArgs args, AllocatedMemoryInfo current_ptr, Int64 new_size) override
 Réalloue de la mémoire pour new_size octets et retourne le pointeur.
 
void deallocate (MemoryAllocationArgs args, AllocatedMemoryInfo ptr) override
 Libère la mémoire dont l'adresse de base est ptr.
 
Int64 adjustedCapacity (MemoryAllocationArgs args, Int64 wanted_capacity, Int64 element_size) const override
 Ajuste la capacité suivant la taille d'élément.
 
size_t guarantedAlignment (MemoryAllocationArgs args) const override
 Valeur de l'alignement garanti par l'allocateur.
 
void notifyMemoryArgsChanged (MemoryAllocationArgs old_args, MemoryAllocationArgs new_args, AllocatedMemoryInfo ptr) override
 Notifie du changement des arguments spécifiques à l'instance.
 
- Fonctions membres publiques hérités de Arccore::IMemoryAllocator
virtual ~IMemoryAllocator ()=default
 Détruit l'allocateur.
 
virtual void copyMemory (MemoryAllocationArgs args, AllocatedMemoryInfo destination, AllocatedMemoryInfo source)
 Copie la mémoire entre deux zones.
 

Fonctions membres privées statiques

static void _checkValid (MemoryAllocationArgs args)
 

Attributs privés

DefaultMemoryAllocator3 m_default_allocator
 

Description détaillée

Allocateur pour tester les arguments.

Permet de vérifier qu'on a bien appelé avec les bons arguments. On ne doit l'appeler qu'avec args.memoryLocationHint() qui vaut eMemoryLocationHint::None or eMemoryLocationHint::HostAndDeviceMostlyRead

Définition à la ligne 859 du fichier TestArray.cc.

Documentation des fonctions membres

◆ _checkValid()

static void TesterMemoryAllocatorV3::_checkValid ( MemoryAllocationArgs  args)
inlinestaticprivate

Définition à la ligne 910 du fichier TestArray.cc.

◆ adjustedCapacity()

Int64 TesterMemoryAllocatorV3::adjustedCapacity ( MemoryAllocationArgs  args,
Int64  wanted_capacity,
Int64  element_size 
) const
inlineoverridevirtual

Ajuste la capacité suivant la taille d'élément.

Cette méthode est utilisée pour éventuellement modifié le nombre d'éléments alloués suivant leur taille. Cela permet par exemple pour les allocateurs alignés de garantir que le nombre d'éléments alloués est un multiple de cet alignement.

Implémente Arccore::IMemoryAllocator3.

Définition à la ligne 884 du fichier TestArray.cc.

Références Arccore::DefaultMemoryAllocator3::adjustedCapacity().

◆ allocate()

AllocatedMemoryInfo TesterMemoryAllocatorV3::allocate ( MemoryAllocationArgs  args,
Int64  new_size 
)
inlineoverridevirtual

Alloue de la mémoire pour new_size octets et retourne le pointeur.

La sémantique est équivalent à malloc():

  • new_size peut valoir zéro et dans ce cas le pointeur retourné est soit nul, soit une valeur spécifique
  • le pointeur retourné peut être nul si la mémoire n'a pas pu être allouée.

Implémente Arccore::IMemoryAllocator3.

Définition à la ligne 869 du fichier TestArray.cc.

Références Arccore::DefaultMemoryAllocator3::allocate().

◆ deallocate()

void TesterMemoryAllocatorV3::deallocate ( MemoryAllocationArgs  args,
AllocatedMemoryInfo  ptr 
)
inlineoverridevirtual

Libère la mémoire dont l'adresse de base est ptr.

Le pointeur ptr doit avoir été alloué via l'appel à allocate() ou reallocate() de cette instance.

La sémantique de cette méthode équivalente à free() et donc ptr peut être nul auquel cas aucune opération n'est effectuée.

Implémente Arccore::IMemoryAllocator3.

Définition à la ligne 879 du fichier TestArray.cc.

Références Arccore::DefaultMemoryAllocator3::deallocate().

◆ guarantedAlignment()

size_t TesterMemoryAllocatorV3::guarantedAlignment ( MemoryAllocationArgs  args) const
inlineoverridevirtual

Valeur de l'alignement garanti par l'allocateur.

Cette méthode permet de s'assurer qu'un allocateur a un alignement suffisant pour certaines opérations comme la vectorisation par exemple.

S'il n'y a aucune garantie, retourne 0.

Implémente Arccore::IMemoryAllocator3.

Définition à la ligne 889 du fichier TestArray.cc.

Références Arccore::DefaultMemoryAllocator3::guarantedAlignment().

◆ hasRealloc()

bool TesterMemoryAllocatorV3::hasRealloc ( MemoryAllocationArgs  ) const
inlineoverridevirtual

Indique si l'allocateur supporte la sémantique de realloc.

Les allocateurs par défaut du C (malloc/realloc/free) supportent évidemment le realloc mais ce n'est pas forcément le cas des allocateurs spécifiques avec alignement mémoire (comme par exemple posix_memalign).

Réimplémentée à partir de Arccore::IMemoryAllocator3.

Définition à la ligne 864 du fichier TestArray.cc.

Références Arccore::DefaultMemoryAllocator3::hasRealloc().

◆ notifyMemoryArgsChanged()

void TesterMemoryAllocatorV3::notifyMemoryArgsChanged ( MemoryAllocationArgs  old_args,
MemoryAllocationArgs  new_args,
AllocatedMemoryInfo  ptr 
)
inlineoverridevirtual

Notifie du changement des arguments spécifiques à l'instance.

Paramètres
ptrzone mémoire allouée
old_argsancienne valeur des arguments
new_argsnouvelle valeur des arguments

Réimplémentée à partir de Arccore::IMemoryAllocator.

Définition à la ligne 895 du fichier TestArray.cc.

Références Arccore::IMemoryAllocator::notifyMemoryArgsChanged(), et Arccore::AllocatedMemoryInfo::size().

◆ reallocate()

AllocatedMemoryInfo TesterMemoryAllocatorV3::reallocate ( MemoryAllocationArgs  args,
AllocatedMemoryInfo  current_ptr,
Int64  new_size 
)
inlineoverridevirtual

Réalloue de la mémoire pour new_size octets et retourne le pointeur.

Le pointeur current_ptr doit avoir été alloué via l'appel à allocate() ou reallocate() de cette instance.

La sémantique de cette méthode est équivalente à realloc():

  • current_ptr peut-être nul auquel cas cet appel est équivalent à allocate().
  • le pointeur retourné peut être nul si la mémoire n'a pas pu être allouée.

Implémente Arccore::IMemoryAllocator3.

Définition à la ligne 874 du fichier TestArray.cc.

Références Arccore::DefaultMemoryAllocator3::reallocate().

Documentation des données membres

◆ m_default_allocator

DefaultMemoryAllocator3 TesterMemoryAllocatorV3::m_default_allocator
private

Définition à la ligne 906 du fichier TestArray.cc.


La documentation de cette classe a été générée à partir du fichier suivant :