> Tech > L’automatisation au moyen de ARGOPT(*YES)

L’automatisation au moyen de ARGOPT(*YES)

Tech - Par Renaud ROSSET - Publié le 13 octobre 2014
email

Dans la version 6.1, IBM proposait un nouveau choix aux développeurs désireux d’utiliser l’optimisation d’arguments.

L’automatisation au moyen de ARGOPT(*YES)

ARGOPT(*YES)

Au lieu de disséminer des directives #pragma dans votre code, vous pouvez simplement préciser, au moment du liage, votre souhait de voir l’optimisation d’arguments utilisée à chaque occasion. Pour cela, ajoutez simplement ARGOPT(*YES) à la commande CRTPGM ou CRTSRVPGM, et tout votre programme sera passé au crible pour détecter les occasions d’utiliser l’optimisation d’arguments.

C’est bien plus facile, non ? Et comme cette méthode ne demande aucun changement du code source, elle vaut pour tout votre code ILE, pas seulement sur C et C++. Ce pourrait être votre solution favorite dans la plupart des cas.

Sachez toutefois qu’elle présente quelques inconvénients. Tout d’abord, le liage du programme prendra plus de temps. Quand vous spécifiez ARGOPT(*YES), les appels de procédure dans les modules de tous vos programmes doivent être analysés. Et, s’il y a des occasions d’optimisation d’arguments dans un module, celui-ci sera re-traité dans le but de changer les références aux pointeurs d’espace en références aux adresses d’espace. Comme pour le profilage de programmes, vous devriez opter pour l’usage de ARGOPT(*YES)ARGOPT(*YES) plus tard dans le cycle de développement, une fois que l’application est stable.
L’analyse automatique a aussi quelques limites. Vous ne pouvez pas être sûr que l’analyseur détecte tous les appels vers les procédures qui peuvent être appelées indirectement par des pointeurs de procédures. De tels appels incluent  des appels de méthodes virtuelles en C++. S’il y a des appels de procédures indirects dans vos programmes, vous pouvez encore utiliser ARGOPT(*YES) pour faire le gros du travail, mais il faudra ajouter des directives #pragma argopt pour appliquer tout le bénéfice aux appels indirects.

Enfin, ARGOPT(*YES) n’est disponible qu’à partir de la version 6.1. Avec une version antérieure, #pragma argopt est la seule possibilité.

Téléchargez cette ressource

État des lieux de la réponse à incident de cybersécurité

État des lieux de la réponse à incident de cybersécurité

Les experts de Palo Alto Networks, Unit 42 et Forrester Research livrent dans ce webinaire exclusif leurs éclairages et stratégies en matière de réponses aux incidents. Bénéficiez d'un panorama complet du paysage actuel de la réponse aux incidents et de sa relation avec la continuité de l'activité, des défis auxquels font face les entreprises et des tendances majeures qui modèlent ce domaine. Un état des lieux précieux pour les décideurs et professionnels IT.

Tech - Par Renaud ROSSET - Publié le 13 octobre 2014