Les outils conformes à l'environnement Facteur de traitement parallèle répartissent et réalisent les opérations sur plusieurs processus.
Un grand nombre d’ordinateurs modernes incluent des processeurs à plusieurs cœurs. Le fait de répartir une opération de géotraitement sur plusieurs processus permet d’optimiser les performances en tirant parti de plusieurs cœurs. Les avantages en termes de performances du traitement parallèle varient selon les outils utilisés.
Remarques sur l'utilisation
- La valeur de cet environnement détermine le nombre de processus logiques sur lesquels un outil répartit son opération. Ces processus logiques sont divisés entre les cœurs matériels intégrés dans l’ordinateur. Le nombre de cœurs matériels ne change pas en fonction de ce paramètre.
- Chaque outil qui respecte cet environnement comporte une valeur par défaut intégrée pour le nombre de processus logiques en fonction d’un ordinateur donné. Vous pouvez changer cette valeur en fonction de vos données, de votre opération et des ressources disponibles.
- Si vous indiquez une valeur de pourcentage (à l'aide du symbole %), le nombre de processus utilisés est le pourcentage spécifié du nombre de noyaux de l'ordinateur, arrondi à l'entier le plus proche. Par exemple, sur une machine à 4 cœurs, si vous définissez 50 %, cela signifie que l’opération sera répartie sur 2 traitements (50% * 4 = 2). Si vous définissez 66 %, cela signifie que l’opération sera répartie sur 3 traitements (66 % * 4 = 2,64, arrondi à 3) et si vous définissez 100 %, cela signifie que l’opération sera répartie sur 4 traitements (100% * 4 = 4).
- En cas de géotraitement avec une base de données SQL Server Express, vous devez limiter le nombre de processus parallèles à deux.
SQL Server Express autorise un maximum de trois connexions à la fois. Chaque unité centrale de traitement nécessite une connexion au serveur. En outre, le logiciel qui exécute l’outil, tel que ArcGIS Desktop, est pris en compte dans le nombre total de processus de connexion, ce qui ne laisse que deux processus de connexion pour le traitement parallèle.
- Si vous spécifiez plus de processus que votre ordinateur ne contient de cœurs, les performances risquent de connaître une dégradation. En effet, plusieurs processus entreront en concurrence pour utiliser les ressources d'un seul cœur. Pour spécifier l’environnement de façon à éviter cette concurrence, vous pouvez soit utiliser une valeur de pourcentage inférieure à 100 %, soit un nombre de processus inférieur au nombre de cœurs de votre ordinateur.
Cependant, pour les cas où tous vos traitements sont liés en mode d’E/S à un disque ou à une connexion de base de données d’entreprise, vous pouvez améliorer les performances en spécifiant plus de traitements que vous n’avez de cœurs. Par exemple, l’outil Ajouter des rasters à la mosaïque est lié en mode d’E/S lorsque votre mosaïque est stockée dans une base de données d’entreprise. De même, l’outil Générer les aperçus est principalement lié en mode d’E/S au disque. Vous pouvez utiliser plus de processus que votre ordinateur ne comporte de cœurs en spécifiant soit une valeur de pourcentage supérieure à 100 %, soit un nombre de processus supérieur au nombre de cœurs de votre ordinateur. Par exemple, si votre ordinateur possède 4 cœurs, indiquez 8 ou 200 % pour répartir les opérations sur 8 processus.
- L’environnement Facteur de traitement parallèle n’est pas pris en charge dans Background Geoprocessing (64 bits).
Syntaxe de la boîte de dialogue
Facteur de traitement parallèle : nombre de processus sur lesquels un outil va répartir son opération.
- Vide : permet à l'outil de déterminer le nombre de processus à utiliser. Il s’agit de l’option par défaut.
- 0 : permet de ne pas répartir les opérations sur plusieurs processus.
- n : permet d'utiliser le nombre spécifié de processus.
- n % : permet de calculer le nombre de processus à l'aide du pourcentage spécifié : Nombre de processus = Nombre de cœurs système * n / 100.
Syntaxe de script
arcpy.env.parallelProcessingFactor = string
Paramètre | Explication |
---|---|
chaîne vide | Permet à l'outil de déterminer le nombre de processus à utiliser. Il s’agit de l’option par défaut. |
0 | Permet de ne pas répartir les opérations sur plusieurs processus. |
n | Permet d'utiliser le nombre spécifié de processus. |
n % | Permet de calculer le nombre de processus à l'aide du pourcentage spécifié : Nombre de processus = Nombre de noyaux système * n / 100. |
Exemple de script
import arcpy
# Use half of the cores on the machine
arcpy.env.parallelProcessingFactor = "50%"