La dernière mise à jour (ou “release”) de Matlab est sortie, intégrant tous les développements effectués depuis le second semestre 2006, mais amenant également son lot de nouvelles fonctionnalités. Parmi celles-ci, on notera l'apparition de la “Distributed Computing Toolbox”, un outil à la fois puissant et simple d'utilisation qui rend possibles les calculs les plus exigeants en ressources matérielles.
Le logiciel Matlab de l'éditeur américain The Mathworks est utilisé par les scientifiques du monde entier pour la création ou le calcul d'algorithmes complexes, dans les nombreux domaines dans lesquels il propose des solutions : la recherche en mathématiques ou en mécanique, pour la simulation de phénomènes physiques et de systèmes électroniques, ou encore le traitement des signaux ou des images. Pour les calculs les plus complexes, et bien que la puissance des PC soit en permanente augmentation, les temps de traitements sont parfois si longs qu'ils en deviennent rédhibitoires. Et les scientifiques qui n'ont pas accès à des supercalculateurs n'ont d'autre choix que de reporter leurs calculs.
Grâce à l'outil “Distributed Computing Toolbox” intégré à la version R2007a (c'est-à-dire la mise à jour du premier semestre 2007), ces calculs fastidieux peuvent tirer parti des architectures multi ordinateurs, multiprocesseur et/ou multicœur. Il offre la possibilité de répartir les calculs sur des plateformes allant jusqu'à 16 entités. Cela offre des perspectives importantes, d'autant plus que le passage d'un calcul simple à un calcul réparti se fait par une simple case à cocher, dans les propriétés du logiciel.
Des performances dépendantes de l'architecture
Si l'ordinateur est équipé de plusieurs processeurs ou d'un processeur multicœur, Matlab utilise une technologie “multithread” qui accélère notablement toutes les opérations algébriques (opérations simples, fonctions racines, fonctions trigonométriques). L'exécution des algorithmes, quant à elle, ne pourra pas bénéficier d'une réelle accélération. En revanche, pour les applications qui peuvent bénéficier d'ordinateurs en réseau (alors appelés “clusters”), Matlab permet un gain réel en puissance de calcul. Son moteur “Distributed Computing Engine” effectue une séparation de l'ensemble du travail en tâches élémentaires, et affecte un calcul à chaque PC. Les gains sont conséquents par rapport à l'ancienne version, qui ne pouvait que lancer les calculs les uns à la suite des autres. Un planificateur (ou “scheduler”) se charge de la répartition entre les PC, et est capable d'affecter de nouvelles tâches à ceux qui ont terminé les premiers.
La nouvelle fonction fonctionne avec Matlab, Simulink, mais toutes les “tool-boxes” (boîtes à outils) développées séparément du logiciel de base. Elle permet aux scientifiques de travailler sur des matrices de plus en plus complexes, et également de se connecter depuis chez eux à un réseau d'entreprise pour faire du calcul distribué.