Cette section décrit l’utilisation de logiciels dont l’utilisation est soumise à la possession d’une licence.
Les logiciels Matlab© et COMSOL© sont les principaux concernés.
Status des licences
La commande lmstat
permet de connaitre les logiciels à licence disponibles sur le serveur de clacul, ainsi que le nombre de jeton de licence par logiciel et le nombre de jeton de licence en cours d’utilisation.
Certains logiciels possèdent des modules dont l’utilisation nécessite aussi une licence, comme les toolbox de Matlab©. Le nombre de jeton et le nombre de jeton en cours d’utilisation de ces modules sont aussi listés dans la réponse de la commande lmstat
.
Requête de jeton de licence.
Utilisation intéractive
Si vous utilisez un logiciel sous licence de manière interactive sur le noeud frontal, un jeton de licence est automatiquement utilisé. Cela signifie qu’une session interactive ne pourra fonctionner que s’il reste des jetons de licence encore disponibles. La commande lmstat
permet de vérifier cette information.
Utilisation via l’ordonnanceur de jobs
Pour lancer un job utilisant un logiciel sous licence, il faut préciser la requête d’un jeton de licence à l’ordonnanceur. Les jetons de licences étant considérés comme des consommables par l’ordonnanceur, cette requête se fait via l’option -l
des commande qsub
/ qalter
/ qresub
. Par exemple, pour utiliser matlab avec la toolbox « image processing » :
qsub [...] -l matlab=1,image_tbx=1
Plus de détails sont fournis dans la section dédiée de la documentation sur l’ordonnanceur UGE. On trouvera des exemples concrets de scripts de soumission impliquant un logiciel à jeton ici.
Un job utilisant un logiciel sous licence ne s’exécutera que si un jeton de licence est disponible. Dans le cas contraire, le job restera en attente jusqu’à ce qu’un jeton soit disponible.
Compilation
Certains logiciels fournissant leur propre langage de programmation fournissent également un compilateur. C’est le cas de Matlab©. Un tel compilateur permet de générer un binaire exécutable à partir d’un code écrit dans le langage fournit par le logiciel. Une fois compilé, un tel code n’à pas besoin de jeton de licence pour s’exécuter. Aussi, il est très avantageux pour tout le monde de compiler son code afin de libérer les jetons de licences.
Voir ici pour plus de détails sur la compilation d’un programme Matlab©.