Facteur de traitement parallèle (paramètre d'environnement)
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 noyaux. Le fait de répartir une opération de géotraitement sur plusieurs processus permet d'accélérer les performances en tirant parti de plusieurs noyaux. 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 sur lesquels un outil répartit son opération. Ces processus seront divisés entre les noyaux matériels (processeurs) intégrés dans l'ordinateur. Le nombre de noyaux 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 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 sera le pourcentage spécifié du nombre de noyaux de l'ordinateur, arrondi à l'entier le plus proche.. Par exemple, sur un ordinateur à 4 noyaux :
- Si vous définissez 50 %, cela signifie que l'opération sera répartie sur 2 processus (50 % * 4 = 2).
- Si vous définissez 66 %, cela signifie que l'opération sera répartie sur 3 processus (66 % * 4 = 2,64, arrondi à 3).
- Si vous définissez 100 %, cela signifie que l'opération sera répartie sur les 4 processus (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, par exemple ArcGIS for 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 noyaux, les performances risquent de connaître une dégradation. En effet, plusieurs processus entreront en concurrence pour utiliser les ressources d'un seul noyau. Pour spécifier le facteur de traitement parallèle de façon à éviter cette concurrence, vous pouvez utiliser une valeur de pourcentage inférieure à 100 % ou un nombre de processus inférieur au nombre de noyaux de votre ordinateur.
Cependant, pour les cas où tous vos processus 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 processus que vous n'avez de noyaux. 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 noyaux en spécifiant une valeur de pourcentage supérieure à 100 % ou un nombre de processus supérieur au nombre de noyaux de votre ordinateur. Par exemple, si votre ordinateur possède quatre noyaux, indiquez 8 ou 200 % pour répartir les opérations sur huit processus.
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 du paramètre 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.
Syntaxe de script
arcpy.env.parallelProcessingFactor = chaîne
Paramètres |
Explication |
---|---|
chaîne vide | Permet à l'outil de déterminer le nombre de processus à utiliser. Il s'agit du paramètre 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%"