Lorsque vous activez les itérations en parallèle de la boucle For, vous pouvez ajuster ses performances par programmation en utilisant des instances parallèles P et des terminaux de taille du segment C. Dans la plupart des cas, les configurations par défaut des terminaux permettant d'obtenir les meilleures performances, une configuration par programmation est rarement nécessaire. Vous pouvez toutefois utiliser les instances en parallèle et les terminaux de taille de segment pour personnaliser une configuration autre que celle par défaut.

Utilisation d'instances en parallèle pour ajuster les performances

Une fois que vous avez activé les itérations en parallèle pour la boucle For, le terminal d'instances parallèles apparaît à l'intérieur de la boucle For. Câblez une valeur numérique au terminal d'instances parallèles pour configurer par programmation le nombre d'instances parallèles à exécuter. Au moment de la compilation, LabVIEW génère un nombre d'instances parallèles égal au minimum de la valeur fournie dans le champ Nombre d'instances parallèles de boucle générées de la boîte de dialogue Parallélisme des itérations de boucle For et la valeur câblée à l'entrée du terminal d'instances parallèles. Les processeurs exécutent simultanément des instances parallèles afin d'améliorer les performances.

Si vous ne câblez pas l'entrée du terminal d'instances parallèles, LabVIEW détecte automatiquement le nombre de processeurs logiques dans l'ordinateur et l'utilise comme valeur par défaut du terminal d'instances parallèles. Dans la plupart des cas, comme les performances optimales sont obtenues lorsque le nombre d'instances parallèles exécutées est égal au nombre de processeurs que possède l'ordinateur, vous devriez en général laisser l'entrée du terminal d'instances parallèles non câblée.

Si du code dans une boucle For effectue une opération d'attente, les performances optimales sont obtenues lorsque le nombre d'instances de la boucle exécutées est supérieur au nombre de processeurs logiques, ce qui est appelé 'surabonnement' (ou concurrence d'autres processus). Par exemple, si une instance parallèle de la boucle For attend d'acquérir des données de matériel externe, le surabonnement permet à un processeur d'exécuter une seconde instance en parallèle pendant le déroulement de la première. Lorsqu'une instance parallèle de la boucle For s'exécute en même temps que du code se caractérisant par des calculs intensifs, un sousabonnement, ou exécution d'un nombre d'instances de boucle inférieur au nombre de processeurs logiques, permettra d'obtenir les meilleures performances. Par exemple, si une boucle For et un sous-VI s'exécutent simultanément, le sousabonnement limite les ressources de traitement dédiées à la boucle For et réserve des ressources pour d'autres opérations.

Utilisation du terminal de taille du segment pour spécifier la planification d'une itération personnalisée

LabVIEW divise les itérations de boucle en segments. Lorsque les itérations parallèles sont activées, les processeurs exécutent plusieurs segments en même temps afin d'améliorer la vitesse d'exécution. Par défaut, LabVIEW planifie ces segments par taille, du plus grand au plus petit. L'exécution en premier des grands segments réduit la surcharge de temps, tandis que l'exécution des plus petits segments en dernier réduit l'oisiveté du processeur. Vous devriez configurer la taille du segment par programmation uniquement si la boucle For sera avantagée par une planification des itérations autre que celle par défaut, comme par exemple, une planification spécifiant l'exécution des petits segments avant celle des grands.

Une fois que vous avez activé les itérations parallèles de la boucle For, effectuez les étapes suivantes pour configurer par programmation la planification des itérations en utilisant le terminal de taille du segment :

  1. Cliquez avec le bouton droit sur la boucle For et sélectionnez Configurer le parallélisme des itérations. LabVIEW affiche alors la boîte de dialogue Parallélisme des itérations de boucle For.
  2. Dans la section Planification de partitionnement des itérations, sélectionnez Spécifier le partitionnement avec le terminal de taille du segment (C). Le terminal de taille du segment apparaît au-dessous du terminal d'instances parallèles.
  3. Câblez une valeur numérique ou un tableau de valeurs numériques au terminal de taille du segment.

Lorsque vous câblez une valeur numérique au terminal de taille du segment, la valeur spécifie le nombre d'itération à inclure dans chaque segment. Le câblage d'un tableau de valeurs numériques fournit un contrôle plus précis de la taille du segment. Chaque valeur du tableau spécifie le nombre d'itérations à inclure dans un segment, avec le premier segment commençant à l'indice 0.

Remarque Si vous câblez un tableau avec trop de tailles de segment, LabVIEW ignore les valeurs superflues. Si vous ne câblez pas suffisamment de tailles de segment, LabVIEW utilise le dernier élément du tableau pour déterminer la taille de tous les segments restants.