Outils d'analyse statique du code binaire

Calcul du pire temps d'exécution (WCET)

Outil : TimingProfiler

Cet outil permet d'obtenir un WCET approximatif au cours des phases initiales du développement de logiciels, exclusivement par analyse statique du code binaire.

Elle repose sur l'exploration de tous les chemins d'exécution possibles pour une tâche ou un programme et sur un calcul approximatif des temps d'exécution des instructions pour cette architecture de processeur.

La marge d'erreur du calcul du WCET est trop importante pour être considérée comme une preuve de la certification de cet objectif, mais elle permet d'identifier d'emblée les points critiques et les goulets d'étranglement au niveau de la tâche.

Cela permet de contrôler les durées d'exécution au fur et à mesure du développement du code source et d'éviter les problèmes de dernière minute lors du calcul formel du WCET.

Il vous permet également de visualiser des graphiques sur les appels de fonction et le contrôle de flux. Avec le plug-in ValueAnalyzer, vous pouvez également surveiller l'utilisation des variables (lectures et écritures).

Toutes ces fonctionnalités sont fournies sans qu'il soit nécessaire d'utiliser la carte de développement ou tout autre outil de programmation.

Il n'est pas non plus nécessaire de procéder à une configuration complexe. Il est très facile à utiliser dès le début du développement et peut être intégré dans des environnements d'intégration continue, et des mesures de performance peuvent être obtenues sur chaque version de n'importe quelle partie du code source.

Familles de processeurs et compilateurs pris en charge

  • Compilateur ARM
  • Compilateur GCC
  • Diab C ou Ada
  • Green Hills C/C++ ou Ada
  • IAR
  • Keil ARM
  • HighTec LLVM/Clang
  • Tâches
  • Texas Instruments
  • CompCert (INRIA, AbsInt)
  • Diab C
  • Green Hills C/C
  • Compilateur GCC
  • Diab C
  • Green Hills C/C++ ou Ada
  • HighTec GCC
  • Tâches
  • Compilateur Code Warrior
  • Compilateur GCC
  • GNAT Pro C++ ou Ada
  • Diab C ou Ada
  • Green Hills C/C++ ou Ada
  • HighTec GCC
  • Keil ARM
  • CompCert (INRIA, AbsInt)

Autres transformateurs

  • ERC32
  • Leon2, Leon3/4
  • x86
  • MIPS32
  • Nios II
  • Renesas RX, SuperH
  • C16x, ST10
  • C28x
  • C33
  • dsPIC33E
  • FR81S
  • HCS 12
  • M68K
  • x86
  • MCS 51
  • MCS 251
  • MSP430
  • S12Z

S'abonner à notre lettre d'information