Maestro Technologies - Logiciel intelligent de gestion pour l’industrie de la construction.

Maestro*Liaison  Octobre 2009

Retour au centre de nouvelles
Dans ce bulletin :

Comprendre la performance de votre PC

Si vous êtes comme moi, vous avez probablement l’impression que plus le temps passe, plus la puissance des ordinateurs augmente et plus vous attendez longtemps pour que celui-ci réagisse à vos commandes. N’y a-t-il pas quelque chose de paradoxal à ce que votre super Pentium Quad-Core avec 8 gigs de RAM prenne 10 minutes à se mettre en marche, alors que votre vieux 80386 fonctionnant avec Windows 3.1 démarrait presque instantanément? Plusieurs facteurs ont un impact direct sur la performance et les connaître peut aider à mieux comprendre.

Paradoxe
Comment expliquer qu’avec des machines toujours plus puissantes, on ait l’impression que les ordinateurs sont toujours plus lents? Même si la loi de Moore (voir l’article L’évolution des processeurs) a prévu correctement l’évolution de la puissance des machines, il est un point sur lequel elle ne disait mot, à savoir que cette puissance serait toujours anticipée et utilisée par les programmeurs et que la capacité de ceux-ci d’imaginer des solutions toujours plus complexes, donc nécessitant une capacité de traitement toujours plus grande, progresserait encore plus rapidement que la puissance de l’équipement.

Pour leur défense, il faut dire que cela s’est en général traduit par une augmentation exponentielle de la qualité des logiciels et de leurs interfaces visuelles. Même si à peu près personne ne l’utilise à sa pleine capacité, personne ne voudrait aujourd’hui abandonner Excel et retourner à l’époque des tableurs électroniques pour DOS (1).

Complexité
Revenons à notre exemple du début, où on comparait la vitesse de démarrage d’un 80386 sous Windows 3.1 et celle d’un QuadCore avec Vista. Une telle comparaison est évidemment très injuste, car les possibilités offertes par les systèmes d’exploitation modernes n’ont rien à voir avec ce qu’on avait à notre disposition il y a 20 ans. Des améliorations majeures ont été apportées aux interfaces usager, mais aussi dans l’intégration des différents logiciels entre eux ainsi que dans les fonctionnalités de mises à niveau automatique. Plusieurs programmes roulent désormais en permanence sur chaque ordinateur, juste pour s’assurer que celui-ci fonctionne correctement. Par exemple, au moment où j’écris ce texte, 86 processus distincts tournent sur mon poste. Certains gèrent l’affichage sur mes deux écrans, d’autres s’assurent qu’aucun virus n’essaie de m’infecter, l’un d’eux me fournit de la musique et plusieurs vérifient régulièrement s’il ne serait pas temps d’installer une correction sur d’autres programmes. Tout cela en plus des applications principales que j’ai démarrées moi-même (traitement de texte, courriels, tableur, etc.)

Chacun de ces programmes a évidemment été conçu pour s’exécuter de la manière la plus efficace possible, mais en bout de ligne, si le concepteur a eu à choisir entre une meilleure performance et une fonctionnalité « accrocheuse », il est probable qu’il a privilégié cette dernière, marketing oblige.

Aucun logiciel n’échappe à cette course vers la complexité. Les utilisateurs de longue date de maestro* savent qu’ils ne peuvent comparer la version la plus récente avec celle qu’ils utilisaient il y a 10 ans. La tendance est au développement d’applications de plus en plus complexes et de plus en plus intégrées, qui traitent des volumes de données toujours plus élevés, de façon à répondre à des besoins toujours plus pointus. Par exemple, dans maestro*, la consultation des projets contenait 4 onglets à l’origine, alors qu’elle en compte maintenant 22. Et malgré cela, on nous dit encore régulièrement qu’il y manque quelque chose!

Volume
L’autre facteur important qui influe sur la performance d’un programme provient du volume de transactions qu’il faut traiter. Quand un programme doit parcourir une base de données contenant plusieurs millions de transactions avant de pouvoir présenter le résultat escompté, il serait utopique d’imaginer qu’il puisse le faire instantanément. Dans la conception d’un logiciel, c’est l’un des points qui n’est parfois pas évident au départ, mais dont on se rend compte avec le temps. Il arrive fréquemment que les utilisateurs inventent de nouveaux usages aux fonctions présentes, ce qui entraine l’explosion du volume de données générées. Heureusement, il est habituellement possible de remédier à ces situations, en restructurant la base de données, en ajoutant des index ou supprimant des données obsolètes. Mais il importe que nous soyons mis au courant de ces situations, car elles n’apparaissent souvent que chez certains utilisateurs.

Diagnostic
Lorsque vous constatez une perte de performance sur un poste particulier, l’une des choses faciles à vérifier se trouve dans le gestionnaire de tâches de Windows. Pour y accéder, vous devez enfoncer simultanément les touches Ctrl + Alt + Suppr. Cet outil peut vous fournir plusieurs informations intéressantes, telles que la liste des processus qui sont actuellement exécutés sur votre ordinateur, ainsi qu’un graphique de l’utilisation du processeur et de la mémoire :

Portez attention aux valeurs encadrées en rouge. Si rien n’est en cours d’exécution sur votre poste de travail et que cet indicateur montre une valeur élevée, il est probable que certains programmes tournent en permanence et consomment des ressources au détriment d’autres applications (vous pourrez en voir la liste dans l’onglet Processus).

Vérifiez également la mémoire utilisée par rapport à la mémoire totale disponible. Si les deux chiffres sont trop rapprochés, il est probable que le système doive transférer certaines données en mémoire sur le disque. Ce processus est extrêmement long et influera énormément sur la performance.

Futur
La course à la complexité n’est pas prête de s’arrêter. Tant du côté matériel que du côté logiciel, chacun invente de nouvelles méthodes pour déjouer les obstacles rencontrés. Pour contourner les limitations physiques de la matière, on parle déjà de gravures à 18 nanomètres (2), de puces tridimensionnelles et du transport d’informations par des photons plutôt que par des électrons. Tout cela entraînera inévitablement une augmentation significative des performances des processeurs de données. Mais gageons que les pressions dirigées sur les développeurs de logiciels feront en sorte que ceux-ci réussiront toujours à avoir besoin d’un rendement plus élevé que ce que les machines pourront leur fournir...

Michel Fisette

Références :

(1) http://www.boingboing.net/2003/04/08/the-secret-history-o.html
(2) http://www.tgdaily.com/content/view/42874/135/

Archives

Événements récents

  • Embauche d’un nouveau représentant des ventes établi à Calgary
    le 25 juin 2009
  • Tournoi de golf ACRGTQ
    le 19 août 2009
  • Lancement officiel du nouveau site WEB de Maestro
    le 31 août 2009

Nouveaux clients

Joignez-vous à nous

Établie depuis 1989, Maestro Technologies conçoit des logiciels destinés à l’industrie de la construction et de la fabrication. Nous sommes présentement à la recherche de candidats intéressés à faire carrière au sein de notre équipe.

Consultez notre section carrières

Quoi de neuf ?