> 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

Guide inmac wstore pour l’équipement IT de l’entreprise

Guide inmac wstore pour l’équipement IT de l’entreprise

Découvrez toutes nos actualités à travers des interviews, avis d'experts et témoignages clients et ainsi, retrouvez les dernières tendances et solutions IT autour de nos 4 univers produits : Poste de travail, Affichage et collaboration, Impression et capture et Infrastructure.

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