Les variables d'environnement suivantes permettent de modifier le comportement à l'exécution:
Variable | Description |
---|---|
ARCANE_PARALLEL_SERVICE (obsolète) | Nom du service utilisé pour gérer le parallélisme. Cette variable doit être positionnée si on souhaite un modèle d'exécution parallèle spécifique. Les valeurs possibles sont: Mpi ou Sequential . Le mode Mpi provoque l'appel à MPI_Init() et il faut donc que le programme soit lancé par le lanceur mpi de la plateforme (par exemple mpiexec , mpirun , prun , ...). Cette variable ne doit plus être utilisée car Arcane détecte automatiquement le lancement avec MPI. Si on souhaite surchargé le service de parallélisme, il faut le spécifier dans les arguments de la ligne de commande (voir arcanedoc_execution_launcher) |
ARCANE_CHECK | Si définie, ajoute des tests de vérification de la validité des opérations effectuées. Cela est utile si le code plante dans une méthode Arcane. Il est possible de relancer le code avec cette variable pour espérer détecter la cause de l'erreur. La version 'check' de Arcane inclut automatiquement ces tests ainsi que d'autres tests plus coûteux comme les débordements de tableau. |
ARCANE_PAUSE_ON_ERROR | Si définie, met le code en pause en cas d'erreur détectée par Arcane, comme une exception fatale ou un débordement de tableau. |
ARCANE_PROFILING | Nom du service utiliser pour avoir des informations de profiling. Positionner cette option active le profiling. Cela permet en fin d'exécution d'avoir les temps passés dans chaque fonction. Les deux valeurs supportées sont 'Papi' et 'Prof'. Pour 'Papi', la bibliothèque 'papi' doit avoir être installée et le noyau linux compatible. 'Prof' utilise les signaux du systeme. |
ARCANE_PROFILING_PERIOD | Nombre de cycles CPU entre deux échantillons de profiling. Cette variable n'est utilisée que si le profiling est actif avec 'Papi'. Une valeur correcte est 500000, ce qui sur une machine à 3Ghz fait environ 6000 évènements par seconde. |
ARCANE_PROFILING_ONLYFLOPS | Si vrai, utilise uniquement le profiling pour déterminer le nombre d'opérations flottantes effectuées. Il faut bien noter qu'il s'agit du nombre d'instructions et pas du nombre d'opérations. Sur certaines machines comme les Itaniums, une instruction peut effectuer deux opérations (multiplication+addition). Cette option n'est disponible que si le profiling est actif avec l'option 'Papi'. |
ARCANE_MESSAGE_PASSING_PROFILING | Permet d'activer le profiling interne pour les opérations de message passing. Les valeurs possibles sont:
|
ARCANE_REDIRECT_SIGNALS | Active (TRUE) ou désactive (FALSE) la redirection des signaux par Arcane. Cette redirection est active par défaut dans Arcane et permet d'afficher la pile d'appel notamment en cas de plantage. Neammoins, cela peut interférer avec d'autres bibliothèques et il est donc possible de désactiver la redirection des signaux. |
ARCANE_PARALLEL_OUTPUT | Active (TRUE) ou désactive (FALSE) les sorties listings de tous les sous-domaines en parallèle. Chaque sous-domaine écrira les informations de listing dans le fichier 'output#x' avec #x le numéro du sous-domaine. |
ARCANE_TRACE_VARIABLE_CREATION | Si définie, récupère la pile d'appel de chaque création de référence à une variable. Ces informations sont ensuite affichées en fin d'exécution afin de connaître les variables qui n'ont pas été désallouées. A noter que cela peut ralentir sensiblement une exécution. |
STDENV_VERIF, STDENV_VERIF_ENTRYPOINT, STDENV_VERIF_PATH, STDENV_VERIF_SKIP_GHOSTS | Voir la rubrique arcanedoc_debug_perf_compare_bittobit |
ARCANE_CHECK_MEMORY, ARCANE_CHECK_MEMORY_BLOCK_SIZE | Voir la rubrique arcanedoc_debug_perf_check_memory |
ARCANE_DATA_INIT_POLICY | Permet de spécifier la politique d'initialisation des variables. L'utilisation de cette variable revient à appeler la méthode Arcane::setGlobalDataInitialisationPolicy(). Les valeurs possibles sont:
|
ARCANE_TEST_CLEANUP_AFTER_RUN | Variable d'environnement permettant de supprimer les fichiers générés par chaque test. Variable utilisée par arcane_test_driver . |
ARCANE_LISTENER_TIMEOUT | todo |
ARCANE_GDB_STACK | todo |
ARCANE_ENABLE_NON_IO_MASTER_CURVES | Variable d'environnement permettant d'autoriser plusieurs processus à écrire des courbes. Avec l'API historique (Arcane::ITimeHistoryMng), tous les processus écrivent les courbes et avec les écrivains disponibles dans Arcane, ces processus écrivent dans le même fichier. Un écrivain personnalisé doit donc gérer cela. Avec les nouvelles APIs (Arcane::GlobalTimeHistoryAdder et Arcane::MeshTimeHistoryAdder), l'écriture de courbes par plusieurs processus est géré correctement. Cette variable d'environnement reste nécessaire pour activer cette fonctionnalité (pour l'instant). Voir la page arcanedoc_io_timehistory_howto |
ARCANE_ENABLE_ALL_REPLICATS_WRITE_CURVES | Variable d'environnement utile lors de l'utilisation de réplicats et permettant d'autoriser tous les processus à écrire des courbes. |
ARCANE_REPLACE_SYMBOLS_IN_DATASET | Variable d'environnement permettant d'activer le remplacement des symboles dans le jeu de données à partir des arguments de la ligne de commande. Voir la page arcanedoc_execution_commandlineargs |
ARCANE_PARTICLE_NO_UNIQUE_ID_MAP | Usage interne à Arcane |
ARCANE_OLD_EXCHANGE | Usage interne à Arcane |
ARCANE_OLD_VARIABLE_SYNC | Usage interne à Arcane |
ARCANE_CHANGE_OWNER_ON_INIT | Usage interne à Arcane |
ARCANE_NB_EXCHANGE | Usage interne à Arcane |
ARCANE_CHECK_EXCHANGE | Usage interne à Arcane |
ARCANE_DEBUG_TIED_INTERFACE | Usage interne à Arcane |
ARCANE_THREAD_IMPLEMENTATION | Usage interne à Arcane |
ARCANE_LISTENER_TIMEOUT | Usage interne à Arcane |
ARCANE_VERIF_PARALLEL | Usage interne à Arcane |
ARCANE_FORCE_PREPARE_DUMP | Usage interne à Arcane |
ARCANE_SERIALIZE_USE_DERIVED_TYPE | Usage interne à Arcane |
ARCANE_TRACE_MPI | Usage interne à Arcane |
ARCANE_PARALLEL_CHECK_SYNC | Usage interne à Arcane |
ARCANE_TRACE_FUNCTION | Usage interne à Arcane |