Ce panneau contient des options permettant d'améliorer et de mesurer
les performances de l'objet compilé.
Reportez-vous à Boîte de dialogue - Aide générale pour de plus amples informations sur les paramètres
*CMDDFT et l'aide des boutons.
- Activation de la collecte des performances
- Indique si le code de mesure des données de performance doit être généré
dans le module ou dans le programme. Les données obtenues peuvent être
utilisées par l'outil de performances du système pour définir le profil
des performances d'une application. L'ajout du code de mesure
des performances augmentera légèrement la taille des objets et peut affecter
les performances.
Vous pouvez sélectionner l'une des valeurs suivantes dans cette
zone :
- *CMDDFT
- Reportez-vous aux paramètres de collecte des performances définis
actuellement par défaut sur votre système.
- *PEP
- Les statistiques de performances sont collectées uniquement à
l'entrée et à la sortie de la procédure d'entrée du
programme. Choisissez cette valeur si vous souhaitez collecter des
informations de performances d'ordre général pour une application.
Ce support équivaut au support fourni précédemment par l'outil
TPST.
- *ENTRYEXIT *NONLEAF
- Les statistiques de performances sont collectées à l'entrée et à la
sortie de toutes les procédures du programme autres que les procédures
terminales (en fin de branche). La routine PEP de programme est
également incluse. Choisissez cette valeur si vous souhaitez collecter
des informations de performances relatives aux routines qui appellent
d'autres routines dans votre application.
- *ENTRYEXIT *ALLPRC
- Les statistiques de performances sont collectées à l'entrée et à la
sortie de toutes les procédures du programme, y compris les procédures
terminales (en fin de branche). La routine PEP de programme est
également incluse. Choisissez cette valeur si vous souhaitez collecter
des informations de performances relatives à toutes les routines, et si vous
savez que tous les programmes appelés par votre application ont également été
compilés avec les options de mesure de données de performances
*PEP, *ENTRYEXIT, ou *FULL. Si votre
application appelle d'autres programmes pour lesquels la mesure des
performances n'a pas été activée, l'outil de mesure des
performances imputera leur utilisation des ressources à votre
application. Il sera donc difficile de déterminer où les ressources
sont réellement utilisées.
- *FULL *NONLEAF
- Les statistiques de performances sont collectées à l'entrée et à la
sortie de toutes les procédures non terminales. Les statistiques sont
également collectées avant et après chaque appel d'une procédure
externe.
- *FULL *ALLPRC
- Les statistiques de performances sont collectées à l'entrée et à la
sortie de toutes les procédures du programme, y compris les procédures
terminales (en fin de branche). Les statistiques sont également
collectées avant et après chaque appel d'une procédure externe.
Choisissez cette valeur si votre application appelle d'autres programmes
qui n'ont pas été compilés avec les options de mesure de
données de performances *PEP, *ENTRYEXIT, or
*FULL. Cette valeur permet aux outils de performances de
distinguer les ressources utilisées par votre application de celles utilisées
par les programmes qu'elle appelle, même si ces programmes n'ont pas
été paramétrés pour la mesure des performances. Cette option est la la
plus coûteuse mais elle permet une analyse sélective de divers programmes dans
une application.
- Options de performances
-
- Calculs en virgule flottante
- Si cette case est cochée, le compilateur définit les attributs des calculs
en virgule flottante afin qu'ils correspondent à la sémantique
ANSI.
Si elle n'est pas cochée, aucun attribut de calcul
n'est défini. Utilisez cette option uniquement si votre programme
ne contient pas de calculs en virgule flottante.
- Chaînes en mémoire
- Si cette case est cochée, le compilateur peut placer des chaînes dans de
la mémoire en lecture seulement. Dans le cas contraire, les chaînes
doivent être placées dans la mémoire accessible en écriture.
- Options de mise en ligne
- Les options de ce groupe vous permettent de définir la manière dont le
compilateur tentera de mettre en ligne les appels de fonction. Mettre
en ligne une fonction élimine la pénalité système d'un appel et permet
d'obtenir une meilleure optimisation du programme. Les petites
fonctions appelées souvent sont de bons candidates pour la mise en
ligne.
- Mise en ligne
- Si cette case est cochée, le compilateur tentera de mettre en ligne les
fonctions dans l'unité de compilation. Cette option sera ignorée
si vous utilisez également la sélection Vue débogueur du panneau
des options de débogage pour demander une liste de la vue de débogage.
La sélection de cette case active également les contrôles suivants :
- Mise en ligne automatique
- Si cette case n'est pas cochée, seules les fonctions
marquées de manière explicite avec la directive #pragma inline sont
prises en compte pour la mise en ligne.
Si cette case est cochée, le module de mise en ligne détermine
automatiquement si une fonction doit être mise en ligne. Toutes les
fonctions satisfaisant aux limites de seuil spécifiées sont candidates à la
mise en ligne automatique, à l'exception de celles marquées explicitement
avec la directive #pragma noinline. Les deux contrôles
suivants définissent les limites de seuil :
- Taille maximale d'une fonction mise en ligne
- Spécifie la taille maximale d'une fonction candidate à la mise en
ligne automatique. Le module de mise en ligne mesure la taille en
Unités de code abstrait, proportionnelles en taille au code exécutable de la
fonction. Vous pouvez sélectionner l'une des valeurs suivantes
dans cette zone :
- *CMDDFT
- Utilise la taille maximale actuellement définie par défaut sur votre
système.
- 250
- Spécifie une taille de seuil de 250.
- *NOLIMIT
- Définit le seuil comme étant la taille maximale du programme.
- 1-65535
- Spécifie une taille de seuil de 1 à 65535.
- Taille maximale d'une fonction
- Spécifie la taille maximale relative que peut atteindre une fonction avant
que la mise en ligne automatique ne s'arrête.
- *CMDDFT
- Utilise la limite de taille maximale actuellement définie par défaut sur
votre système.
- *NOLIMIT
- Définit la limite comme étant la taille maximale du programme. Les
limites du système peuvent être rencontrées.
- 2000
- Spécifie une limite de taille de 2000.
- 1-65535
- Spécifie une limite de taille de 1 à 65535.
- Rapport du module de mise en ligne
- Si cette case est cochée, le module de mise en ligne génère un
rapport.
- *CMDDFT
- Un rapport du module de mise en ligne est généré en fonction de la
configuration du module de mise en ligne définie actuellement par défaut sur
votre système.
- *NO
- Aucun rapport de module de mise en ligne n'est généré.
- *YES
- Un rapport du module de mise en ligne est généré.
- Remarque :
- Pour afficher le rapport du module de mise en ligne, vous devez également
indiquer au compilateur de générer une liste de compilation. Pour cela,
cochez la case Options de liste source sur le panneau Liste des
options de compilation.
(C) Copyright IBM Corporation 1992, 2005. All Rights Reserved.