12#ifndef ARCANE_UTILS_MEMORYUTILS_H
13#define ARCANE_UTILS_MEMORYUTILS_H
17#include "arcane/utils/MemoryRessource.h"
18#include "arcane/utils/MemoryView.h"
20#include "arccore/collections/MemoryAllocationArgs.h"
72extern "C++" ARCANE_UTILS_EXPORT IMemoryAllocator*
84extern "C++" ARCANE_UTILS_EXPORT MemoryAllocationOptions
97extern "C++" ARCANE_UTILS_EXPORT IMemoryAllocator*
108extern "C++" ARCANE_UTILS_EXPORT MemoryAllocationOptions
118extern "C++" ARCANE_DEPRECATED_REASON(
"Y2024: Use getDefaultDataAllocator() instead.")
119ARCANE_UTILS_EXPORT IMemoryAllocator*
135extern "C++" ARCANE_UTILS_EXPORT MemoryAllocationOptions
154 extern "C++" ARCANE_UTILS_EXPORT Int64
155 computeCapacity(Int64 size);
173template <
typename DataType>
inline Int32
177 Int64 s = array.largeSize();
181 array.reserve(impl::computeCapacity(
new_size));
196template <
typename DataType>
inline Int32
211extern "C++" ARCANE_UTILS_EXPORT
void
223 eMemoryResource
mem_type = eMemoryResource::Unknown;
231template <
typename DataType>
inline void
240template <
typename DataType>
inline void
File d'exécution pour un accélérateur.
Interface d'un allocateur pour la mémoire.
Référence à une instance.
Espace de noms pour les fonctions de gestion mémoire et des allocateurs.
IMemoryAllocator * getDeviceOrHostAllocator()
Retourne l'allocateur sur l'hôte ou sur le device.
MemoryAllocationOptions getAllocatorForMostlyReadOnlyData()
Allocateur par défaut pour les données essentiellement en lecture.
MemoryAllocationOptions getAllocationOptions(eMemoryResource mem_resource)
Allocation par défaut pour la ressource mem_resource.
IMemoryAllocator * getDefaultDataAllocator()
Allocateur par défaut pour les données.
eMemoryResource getMemoryResourceFromName(const String &name)
Retourne la ressource mémoire par son nom.
Int32 checkResizeArrayWithCapacity(Array< DataType > &array, Int64 new_size, bool force_resize)
Redimensionne un tableau en ajoutant une réserve de mémoire.
IMemoryAllocator * getAcceleratorHostMemoryAllocator()
Allocateur spécifique pour les accélérateurs.
IMemoryAllocator * getAllocator(eMemoryResource mem_resource)
Allocateur par défaut pour la ressource mem_resource.
eMemoryResource getDefaultDataMemoryResource()
Ressource mémoire utilisée par l'allocateur par défaut pour les données.
void copy(MutableMemoryView destination, eMemoryResource destination_mem, ConstMemoryView source, eMemoryResource source_mem, const RunQueue *queue=nullptr)
Copie de source vers destination en utilisant la file queue.
eMemoryResource
Liste des ressources mémoire disponibles.