> Tech > LICOPT les options de code interne sous licence

LICOPT les options de code interne sous licence

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

Si vous voulez contrôler finement l'optimisation de vos applications, tournez-vous vers les options de code interne sous licence (Licensed Internal Code Options, LICOPT).

LICOPT les options de code interne sous licence

Si vous voulez contrôler finement l’optimisation de vos applications, tournez-vous vers les options de code interne sous licence (Licensed Internal Code Options, LICOPT).

Il est vrai que ces options ne sont pas toujours très claires et ne sont utiles qu’en de rares circonstances. Mais si vous essayez de tirer la quintessence des applications, vos efforts seront récompensés avec cette technique.

LICOPT

Les LICOPT vous permettent d’optimiser le traducteur pour activer, désactiver, restreindre ou régler un genre bien précis d’optimisation de code. Par exemple, certaines optimisations accélèrent l’exécution du code en en dupliquant une certaine partie pour agrandir son empreinte. Si vous tenez absolument à garder une petite empreinte de code, vous pouvez spécifier Compact LICOPT pour désactiver les optimisations qui sacrifient l’espace à la vitesse.

Les LICOPT peuvent être spécifiés sur presque toutes les commandes ILE CRT* et CHG*à l’aide du paramètre  LICOPT. Les LICOPT sont spécifiés comme une liste d’options séparées par des virgules, entre guillemets simples, comme ceci :

CRTCMOD MODULE(applib/mymod)
  LICOPT(‘Compact,FoldFloat,CodeGenTarget=Common’)

Cet exemple indique que les options suivantes s’appliqueront à ce module :

•    Génération de code compact (comme on vient de le voir)
•    Calcul d’expressions à virgule flottante comme 0,5 * 1,2 lors de la compilation
•    Génération de code destiné à tous les processeurs reconnus par la version courante

Quand vous spécifiez des LICOPT sur l’une des commandes CHG*, vous pouvez soit accepter le choix par défaut de remplacer la liste des LICOPT existante, soit choisir d’ajouter à cette liste. Dans ce cas, utilisez le mot-clé *ADD, comme ceci :

CHGPGM PGM(applib/mypgm)
   LICOPT(‘LoopUnrolling=0’, *ADD)

Ce code spécifie deux choses : que toutes les LICOPT existantes doivent rester en vigueur, et que l’optimisation de loop unrolling doit être désactivée. Vous trouverez la liste complète des LICOPT au chapitre 13 du manuel ILE Concepts.

Téléchargez cette ressource

Travail à distance – Guide complet pour les Directions IT et Métiers

Travail à distance – Guide complet pour les Directions IT et Métiers

Le travail à distance met à l'épreuve la maturité numérique des entreprises en termes de Cybersécurité, d'espace de travail, de bien-être des collaborateurs, de communication et gestion de projet à distance. Découvrez, dans ce nouveau Guide Kyocera, quels leviers activer prioritairement pour mettre en place des solutions de travail à domicile efficaces, pérennes et sécurisées.

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