12#ifndef ARCANE_UTILS_PARALLELLOOPOPTIONS_H
13#define ARCANE_UTILS_PARALLELLOOPOPTIONS_H
18#include "arcane/utils/PropertyDeclarations.h"
85 , m_partitioner(Partitioner::Auto)
103 m_flags |= SF_MaxThread;
114 m_flags |= SF_GrainSize;
125 m_flags |= SF_Partitioner;
139 if (!hasPartitioner())
146 Int32 m_grain_size = 0;
148 Int32 m_max_thread = -1;
150 Partitioner m_partitioner = Partitioner::Auto;
152 unsigned int m_flags = 0;
Déclarations des types utilisés dans Arcane.
Options d'exécution d'une boucle parallèle en multi-thread.
bool hasPartitioner() const
Indique si grainSize() est positionné
Integer grainSize() const
Taille d'un intervalle d'itération.
Partitioner partitioner() const
Type du partitionneur.
void setPartitioner(Partitioner v)
Positionne le type du partitionneur.
bool hasGrainSize() const
Indique si grainSize() est positionné
void mergeUnsetValues(const ParallelLoopOptions &po)
Fusionne les valeurs non modifiées de l'instance par celles de po.
Int32 maxThread() const
Nombre maximal de threads autorisés.
bool hasMaxThread() const
Indique si maxThread() est positionné
void setGrainSize(Integer v)
Positionne la taille (approximative) d'un intervalle d'itération.
void setMaxThread(Integer v)
Positionne le nombre maximal de threads autorisé.
Partitioner
Type du partitionneur.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-