Résumé | Cet article décrit une réalisation parallèle développée dans le but d'améliorer la rapidité de l'algorithme itératif du point le plus rapproché. Lors de chaque itération, les calculs de correspondance sont distribués parmi les ressources processeurs. À la fin de chaque itération, les résultats du calcul visant à déterminer la correspondance sont renvoyés à un processeur central, et la transformation actuelle est calculée. Nous avons mis au point un certain nombre de techniques additionnelles pour améliorer cette méthode de base. Le calcul des sommes partielles à l'intérieur de chaque ressource distribuée a rendu inutile de renvoyer les valeurs de correspondance au processeur central, ce qui a permis de réduire le nombre de communications et, par conséquent, le temps de traitement. En distribuant les points de façon aléatoire parmi les ressources processeurs, nous avons obtenu un meilleur équilibrage de la charge, ce qui a encore accéléré le processus. Nous avons également constaté que le fait d'amincir l'image en retirant un certain pourcentage de points choisis de façon aléatoire n'améliorait pas les performances, mesurées par la croissance de l'erreur quadratique moyenne avec le temps. La méthode a été mise en oeuvre et testée sur une grappe de la classe Beowulf constituée de 22 noeuds. Pour une grande image, on a obtenu une amélioration linéaire des performances pour jusqu'à 16 processeurs, alors que pour une petite image, cette amélioration s'est maintenue pour jusqu'à huit processeurs. |
---|