> Tech > POWER5 et POWER6 : Considérations spéciales

POWER5 et POWER6 : Considérations spéciales

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

Comme la génération de code adaptatif déclenche une conversion de vos objets programme et module seulement s'ils sont incompatibles, vous devez parfois intervenir pour que les programmes s'exécutent le plus rapidement possible.

POWER5 et POWER6 : Considérations spéciales

Par exemple, supposons que vous construisiez votre programme sur une plate-forme POWER5 et que vous le restauriez sur une plate-forme POWER6. Comme l’architecture est compatible en amont, votre programme fonctionne correctement en l’état. Par conséquent, il n’est pas converti. Mais il ne profite pas non plus des nouvelles fonctions POWER6. Ainsi, si votre programme utilise beaucoup les pointeurs, vous devez vous assurer que les fonctions POWER6 sont activées.

Si votre programme a des données de création observables, vous pouvez activer des fonctions spéciales simplement en forçant la re-création du programme ou du programme de service. Par exemple, vous pouvez voir le code suivant :

CHGPGM PGM(applib/mypgm) FRCCRT(*YES)

Par ailleurs, il y a deux moyens de forcer la conversion de votre programme pendant une restauration. Si c’est une opération ponctuelle, exécutez la commande RSTOBJ ou RSTLIB avec le paramètre FRCOBJCVN(*YES *ALL). S’il y a de nombreux programmes à convertir, il vaudra mieux mettre la valeur système QFRCCVNRST à 7, puis utiliser RSTOBJ ou RSTLIB autant de fois que nécessaire pour convertir tous les objets.

Vous pouvez aussi supplanter le comportement par défaut de la génération de code adaptatif. Supposons que vous développiez votre application sur la plate-forme POWER6, mais que vous vouliez la distribuer sur des serveurs utilisant POWER5. Pour éviter les coûts de conversion quand l’application est activée pour la première fois sur ces autres serveurs, vous pouvez utiliser le paramètre LICOPT pour obliger le traducteur à n’utiliser que les fonctions qui sont communes à tous les processeurs reconnus par la release cible. Par exemple, vous pouvez utiliser le code suivant :

CHGPGM PGM(applib/mypgm) FRCCRT(*YES)
   LICOPT(‘CodeGenTarget=Common’)

Et vous pouvez forcer la génération du code pour un processeur différent de celui sur lequel vous développez, mais seulement si le processeur cible est supporté par votre release du système d’exploitation. Par exemple, vous pouvez utiliser le code suivant :

CHGPGM PGM(applib/mypgm) FRCCRT(*YES)
   LICOPT(‘CodeGenTarget=Power7’)

Ce bref aperçu de la génération de code adaptatif est succinct. Pour plus d’informations, voir le 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