Espace de nom pour les fonctions dépendant de la plateforme. Plus de détails...
Fonctions | |
void | platformInitialize () |
Initialisations spécifiques à une platforme. | |
void | platformTerminate () |
Routines de fin de programme spécifiques à une platforme. | |
ISymbolizerService * | getSymbolizerService () |
Service utilisé pour obtenir des informations sur les symboles du code source. | |
ISymbolizerService * | setSymbolizerService (ISymbolizerService *service) |
Positionne le service pour obtenir des informations sur les symboles du code source. | |
IProcessorAffinityService * | getProcessorAffinityService () |
Service utilisé pour la gestion de l'affinité des processeurs. | |
IProcessorAffinityService * | setProcessorAffinityService (IProcessorAffinityService *service) |
Positionne le service utilisé pour la gestion de l'affinité des processeurs. | |
IProfilingService * | getProfilingService () |
Service utilisé pour obtenir pour obtenir des informations de profiling. | |
IProfilingService * | setProfilingService (IProfilingService *service) |
Positionne le service utilisé pour obtenir des informations de profiling. | |
IOnlineDebuggerService * | getOnlineDebuggerService () |
Service utilisé pour obtenir la mise en place d'une architecture en ligne de debug. | |
IOnlineDebuggerService * | setOnlineDebuggerService (IOnlineDebuggerService *service) |
Positionne le service a utiliser pour l'architecture en ligne de debug. | |
IThreadImplementation * | getThreadImplementationService () |
Service utilisé pour gérer les threads. | |
IThreadImplementation * | setThreadImplementationService (IThreadImplementation *service) |
Positionne le service utilisé pour gérer les threads. | |
IDynamicLibraryLoader * | getDynamicLibraryLoader () |
Service utilisé pour charger dynamiquement des bibliothèques. | |
IDynamicLibraryLoader * | setDynamicLibraryLoader (IDynamicLibraryLoader *idll) |
Positionne le service utilisé pour charger dynamiquement des bibliothèques. | |
IPerformanceCounterService * | setPerformanceCounterService (IPerformanceCounterService *service) |
Positionne le service utilisé pour gérer les compteurs interne du processeur. | |
IPerformanceCounterService * | getPerformanceCounterService () |
Service utilisé pour obtenir pour obtenir les compteurs interne du processeur. | |
void | resetAlarmTimer (Integer nb_second) |
Remet à timer d'alarme à nb_second. | |
bool | hasDotNETRuntime () |
Vrai si le code s'exécute avec le runtime .NET. | |
void | setHasDotNETRuntime (bool v) |
Positionne si le code s'exécute avec le runtime .NET. | |
void | callDotNETGarbageCollector () |
Appelle le Garbage Collector de '.Net' s'il est disponible. | |
ARCANE_DEPRECATED_REASON ("Y2024: Use MemoryUtils::getDefaultDataAllocator() instead.") IMemoryAllocator *getAcceleratorHostMemoryAllocator() | |
Allocateur spécifique pour les accélérateurs. | |
ARCANE_DEPRECATED_REASON ("Y2024: This method is internal to Arcane") IMemoryAllocator *setAcceleratorHostMemoryAllocator(IMemoryAllocator *a) | |
Positionne l'allocateur spécifique pour les accélérateurs. | |
IMemoryAllocator * | getDefaultDataAllocator () |
Allocateur par défaut pour les données. | |
ARCANE_DEPRECATED_REASON ("Y2024: This method is internal to Arcane. Use methods from MemoryUtils instead.") IMemoryRessourceMng *getDataMemoryRessourceMng() | |
Gestionnaire de ressource mémoire pour les données. | |
bool | readAllFile (StringView filename, bool is_binary, ByteArray &out_bytes) |
Lit le contenu d'un fichier et le conserve dans out_bytes. | |
bool | readAllFile (StringView filename, bool is_binary, Array< std::byte > &out_bytes) |
Lit le contenu d'un fichier et le conserve dans out_bytes. | |
String | getExeFullPath () |
Retourne le nom complet avec le chemin de l'exécutable. | |
Int64 | getRealTimeNS () |
Temps horloge en nano-secondes. | |
String | getLoadedSharedLibraryFullPath (const String &dll_name) |
Retourne le chemin complet d'une bibliothèque dynamique chargée. | |
void | fillCommandLineArguments (StringList &arg_list) |
Remplit arg_list avec les arguments de la ligne de commande. | |
Int64 | getPageSize () |
Taille des pages du système hôte en octets. | |
String | getGDBStack () |
Récupère la pile d'appel via gdb. | |
String | getLLDBStack () |
Récupère la pile d'appel via lldb. | |
Espace de nom pour les fonctions dépendant de la plateforme.
Cet espace de nom contient toutes les fonctions dépendant de la plateforme.
Positionne l'allocateur spécifique pour les accélérateurs.
Positionne le gestionnaire de ressource mémoire pour les données.
Retourne l'ancien allocateur utilisé. L'allocateur spécifié doit rester valide durant toute la durée de vie de l'application.
Le gestionnaire doit rester valide durant toute l'exécution du programme.
Retourne l'ancien gestionnaire.
Arcane::platform::ARCANE_DEPRECATED_REASON | ( | "Y2024: This method is internal to Arcane. Use methods from MemoryUtils instead." | ) |
Gestionnaire de ressource mémoire pour les données.
Il est garanti que l'alignement est au moins celui retourné par AlignedMemoryAllocator::Simd().
Arcane::platform::ARCANE_DEPRECATED_REASON | ( | "Y2024: Use MemoryUtils::getDefaultDataAllocator() instead." | ) |
Allocateur spécifique pour les accélérateurs.
void Arcane::platform::callDotNETGarbageCollector | ( | ) |
Appelle le Garbage Collector de '.Net' s'il est disponible.
Définition à la ligne 603 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
void Arcane::platform::fillCommandLineArguments | ( | StringList & | arg_list | ) |
Remplit arg_list avec les arguments de la ligne de commande.
Cette fonction remplit arg_list avec les arguments utilisés dans l'appel à main().
Actuellement cette méthode ne fonctionne que sous Linux. Pour les autres plateforme elle retourne une liste vide.
Définition à la ligne 464 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
IMemoryAllocator * Arcane::platform::getDefaultDataAllocator | ( | ) |
Allocateur par défaut pour les données.
Cette allocateur utilise celui getAcceleratorHostMemoryAllocator() s'il est disponible, sinon il utilise un allocateur aligné.
Il est garanti que l'allocateur retourné permettra d'utiliser la donnée sur accélerateur si cela est disponible.
Il est garanti que l'alignement est au moins celui retourné par AlignedMemoryAllocator::Simd().
Définition à la ligne 240 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Références Arcane::MemoryUtils::getDefaultDataAllocator().
IDynamicLibraryLoader * Arcane::platform::getDynamicLibraryLoader | ( | ) |
Service utilisé pour charger dynamiquement des bibliothèques.
Peut retourner nullptr
si le chargement dynamique n'est pas disponible.
Définition à la ligne 162 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::ArcaneMain::_checkAutoDetectAccelerator(), Arcane::ArcaneMain::arcaneFinalize(), et Arcane::Application::build().
String Arcane::platform::getExeFullPath | ( | ) |
Retourne le nom complet avec le chemin de l'exécutable.
Définition à la ligne 399 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::ArcaneLauncher::getExeDirectory().
String Arcane::platform::getGDBStack | ( | ) |
Récupère la pile d'appel via gdb.
Cette méthode ne fonctionne que sous Linux et si GDB est installé. Dans les autres cas c'est la chaîne nulle qui est retournée.
Cette méthode appelle la commande std::system() pour lancer gbd qui doit se trouver dans le PATH. Comme gdb charge ensuite les symboles de debug la commande peut être assez longue à s'exécuter.
Définition à la ligne 554 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
String Arcane::platform::getLLDBStack | ( | ) |
Récupère la pile d'appel via lldb.
Cette méthode est similaire à getGDBStack() mais utilise 'lldb' pour récupérer la pile d'appel. Si dotnet-sos
est installé, cela permet aussi de récupérer les informations sur les méthodes du runtime 'dotnet'.
Définition à la ligne 573 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Retourne le chemin complet d'une bibliothèque dynamique chargée.
Retourne le chemin complet de la bibliothèque dynamique de nom dll_name. dll_name doit contenir juste le nom de la bibliothèque sans les extensions spécifiques à la plateforme. Par exemple, sous Linux, il ne faut pas mettre 'libtoto.so' mais juste 'toto'.
Retourne une chaîne nulle si le chemin complet ne peut par être déterminé.
Définition à la ligne 424 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
IOnlineDebuggerService * Arcane::platform::getOnlineDebuggerService | ( | ) |
Service utilisé pour obtenir la mise en place d'une architecture en ligne de debug.
Peut retourner nul si aucun service n'est disponible.
Définition à la ligne 122 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::Application::initialize(), et Arcane::ModuleMaster::timeLoopBegin().
Int64 Arcane::platform::getPageSize | ( | ) |
Taille des pages du système hôte en octets.
Définition à la ligne 518 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
IPerformanceCounterService * Arcane::platform::getPerformanceCounterService | ( | ) |
Service utilisé pour obtenir pour obtenir les compteurs interne du processeur.
Peut retourner nul si aucun service n'est disponible.
Définition à la ligne 202 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::Application::~Application().
IProcessorAffinityService * Arcane::platform::getProcessorAffinityService | ( | ) |
Service utilisé pour la gestion de l'affinité des processeurs.
Peut retourner nul si aucun service n'est disponible.
Définition à la ligne 182 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::SubDomain::_printCPUAffinity(), Arcane::Application::initialize(), et Arcane::Application::~Application().
IProfilingService * Arcane::platform::getProfilingService | ( | ) |
Service utilisé pour obtenir pour obtenir des informations de profiling.
Peut retourner nul si aucun service n'est disponible.
Définition à la ligne 142 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::TimeLoopMng::doComputeLoop(), Arcane::CodeService::initCase(), Arcane::SubDomain::readOrReloadMeshes(), et Arcane::Application::~Application().
Int64 Arcane::platform::getRealTimeNS | ( | ) |
Temps horloge en nano-secondes.
Définition à la ligne 505 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
ISymbolizerService * Arcane::platform::getSymbolizerService | ( | ) |
Service utilisé pour obtenir des informations sur les symboles du code source.
Peut retourner nul si aucun service n'est disponible.
Définition à la ligne 102 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::Application::initialize(), Arcane::LibUnwindStackTraceService::stackTrace(), et Arcane::Application::~Application().
IThreadImplementation * Arcane::platform::getThreadImplementationService | ( | ) |
Service utilisé pour gérer les threads.
Peut retourner nul si aucun service n'est disponible.
Définition à la ligne 267 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::arcaneCurrentThread(), et Arcane::Application::~Application().
bool Arcane::platform::hasDotNETRuntime | ( | ) |
Vrai si le code s'exécute avec le runtime .NET.
Définition à la ligne 384 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::ArcaneMain::run().
void Arcane::platform::platformInitialize | ( | ) |
Initialisations spécifiques à une platforme.
Cette routine est appelé lors de l'initialisation de l'architecture. Elle permet d'effectuer certains traitements qui dépendent de la plateforme
Définition à la ligne 307 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Références Arccore::Platform::platformInitialize().
Référencé par Arcane::ArcaneMain::arcaneInitialize().
void Arcane::platform::platformTerminate | ( | ) |
Routines de fin de programme spécifiques à une platforme.
Cette routine est appelé juste avant de quitter le programme.
Définition à la ligne 316 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Références Arccore::Platform::platformTerminate().
Référencé par Arcane::ArcaneMain::arcaneFinalize().
bool Arcane::platform::readAllFile | ( | StringView | filename, |
bool | is_binary, | ||
Array< std::byte > & | out_bytes | ||
) |
Lit le contenu d'un fichier et le conserve dans out_bytes.
Lit le fichier de nom filename et remplit out_bytes avec le contenu de ce fichier. Si is_binary est vrai, le fichier est ouvert en mode binaire. Sinon il est ouvert en mode texte.
true | en cas d'erreur |
false | sinon. |
Définition à la ligne 374 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
bool Arcane::platform::readAllFile | ( | StringView | filename, |
bool | is_binary, | ||
ByteArray & | out_bytes | ||
) |
Lit le contenu d'un fichier et le conserve dans out_bytes.
Lit le fichier de nom filename et remplit out_bytes avec le contenu de ce fichier. Si is_binary est vrai, le fichier est ouvert en mode binaire. Sinon il est ouvert en mode texte.
true | en cas d'erreur |
false | sinon. |
Définition à la ligne 365 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::IOMng::localRead().
void Arcane::platform::resetAlarmTimer | ( | Integer | nb_second | ) |
Remet à timer d'alarme à nb_second.
Le timer déclenchera un signal (SIGALRM) au bout de nb_second.
Définition à la ligne 285 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
IDynamicLibraryLoader * Arcane::platform::setDynamicLibraryLoader | ( | IDynamicLibraryLoader * | idll | ) |
Positionne le service utilisé pour charger dynamiquement des bibliothèques.
Retourne l'ancien service utilisé.
Définition à la ligne 171 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::ArcaneMain::arcaneFinalize().
Positionne si le code s'exécute avec le runtime .NET.
Cette fonction ne peut être positionnée qu'au démarrage du calcul avant arcaneInitialize().
Définition à la ligne 390 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::ArcaneMain::setHasDotNETRuntime().
IOnlineDebuggerService * Arcane::platform::setOnlineDebuggerService | ( | IOnlineDebuggerService * | service | ) |
Positionne le service a utiliser pour l'architecture en ligne de debug.
Retourne l'ancien service utilisé.
Définition à la ligne 131 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::Application::build().
IPerformanceCounterService * Arcane::platform::setPerformanceCounterService | ( | IPerformanceCounterService * | service | ) |
Positionne le service utilisé pour gérer les compteurs interne du processeur.
Retourne l'ancien service utilisé.
Définition à la ligne 211 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::Application::~Application().
IProcessorAffinityService * Arcane::platform::setProcessorAffinityService | ( | IProcessorAffinityService * | service | ) |
Positionne le service utilisé pour la gestion de l'affinité des processeurs.
Retourne l'ancien service utilisé.
Définition à la ligne 191 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::Application::build(), et Arcane::Application::~Application().
IProfilingService * Arcane::platform::setProfilingService | ( | IProfilingService * | service | ) |
Positionne le service utilisé pour obtenir des informations de profiling.
Retourne l'ancien service utilisé.
Définition à la ligne 151 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::Application::build(), et Arcane::Application::~Application().
ISymbolizerService * Arcane::platform::setSymbolizerService | ( | ISymbolizerService * | service | ) |
Positionne le service pour obtenir des informations sur les symboles du code source.
Retourne l'ancien service utilisé.
Définition à la ligne 111 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::Application::build(), et Arcane::Application::~Application().
IThreadImplementation * Arcane::platform::setThreadImplementationService | ( | IThreadImplementation * | service | ) |
Positionne le service utilisé pour gérer les threads.
Retourne l'ancien service utilisé.
Définition à la ligne 276 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Référencé par Arcane::Application::Application(), Arcane::Application::build(), et Arcane::Application::~Application().
IDynamicLibraryLoader* Arcane::platform::global_dynamic_library_loader = nullptr |
Définition à la ligne 94 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
Définition à la ligne 96 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
IOnlineDebuggerService* Arcane::platform::global_online_debugger_service = nullptr |
Définition à la ligne 90 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
IPerformanceCounterService* Arcane::platform::global_performance_counter_service = nullptr |
Définition à la ligne 95 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
IProcessorAffinityService* Arcane::platform::global_processor_affinity_service = nullptr |
Définition à la ligne 93 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
IProfilingService* Arcane::platform::global_profiling_service = nullptr |
Définition à la ligne 92 du fichier arcane/src/arcane/utils/PlatformUtils.cc.
ISymbolizerService* Arcane::platform::global_symbolizer_service = nullptr |
Définition à la ligne 91 du fichier arcane/src/arcane/utils/PlatformUtils.cc.