Ceci est une ancienne révision du document !
Matlab
Pour installer Matlab AMU
Aller sue le site : https://dirnum.univ-amu.fr/fr/logiciel-matlab et suivre les instructions décompresser le zip,
unzip -X -K matlab_R2024a_glnxa64.zip -d matlab_installer cd matlab_installer sudo ./install
Bugs d'installation connus
Impossible de saisir le mot de passe ou le login : changer de fenêtre et revenir dessus. La fenêtre reprend le focus sur le champ mot de passe ou login.
Erreur de démarrage
si matlab lancer depuis un terminal, l'erreur MESA-LOADER: failed to open iris
sudo cd /usr/local/MATLAB/R2024a/sys/os/glnxa64 sudo mv libstdc++.so.6 libstdc++.so.6.old sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 .
si matlab lancer depuis un terminal, l'erreur Failed to load module “canberra-gtk-module”
sudo apt-get install libcanberra-gtk* sudo ln -s /usr/lib/x86_64-linux-gnu/gtk-2.0/modules/libcanberra-gtk-module.so /usr/lib/
Les versions disponibles
pour faire court, liste des versions installées et disponibles:
module avail matlab
et pour chaque version, pour voir la date:
module help matlab/7.1.0
- Les 10 jetons de la licence 170472 ne sont utilisables qu'avec la version R14 de 2007 (7.1.0).
- Les 2 jetons de la licence 686749 sont utilisables pour toutes les versions depuis la 7.10
jetons | MATLAB Version | Toolboxes | Commandes pour choisir | Serveurs concernés |
---|---|---|---|---|
10 (pas de maintenance) 170472 | 7.1.0.183 (R14) Service Pack 3 | Compiler, Partial Differential Equation, Signal, Compiler | module unload matlab;module load matlab/7.1.0 | charybde, scylla, octopus |
1 (pas de maintenance) | 7.9.0.529 (R2009b) | Statistics | module unload matlab;module load matlab/7.9.0 | octopus uniquement |
2 (payé par AN, maintenance 2012) 686749 | 7.10.0.499 (R2010a) | Global Optimization, Optimization, Statistics, Compiler | module unload matlab;module load matlab/7.10.0 | charybde, scylla, octopus, pour les clients, voir |
id. | 8.1 (R2013a) | module purge matlab;module load matlab/8.1 | judith, holopherne, signal | |
2 (payé par optimisme, maintenance 2015) 1105012 | r2016b | Optimization_Toolbox, Distrib_Computing_Toolbox, Signal_Toolbox | module purge matlab module unload matlab module load matlab/r2016b | signal |
les fichiers d'installation, accessibles sur le réseau du laboratoire:
/net/fury/donnees/provisoire/logiciels/matlab/R2010a
/net/fury/donnees/provisoire/logiciels/matlab/R2011b
/net/fury/donnees/provisoire/logiciels/matlab/{download,download.1,download.2}
image ISO des 3 CDs
Détails sur les commandes
Lancer matlab sur charybde, (octopus n'est pas disponible en permanence, se renseigner avant de l'utiliser!)
[henry@charybde ~]$ module avail matlab -------------------- /local/apps/Modules/3.2.6/modulefiles --------------------- matlab/7.1.0 matlab/7.10.0 matlab/7.9.0
Cette commande montre les différentes versions disponibles
Attention, vérifier avec la commande lmstat (“lmstat -a”) qu'il reste un jeton de disponible
en batch:
matlab -nojvm -nodisplay < toto.m > sortie &
sur la version 2012 de matlab (7.14), ajouter:
matlab -nojvm -nodisplay -nodesktop < toto.m > sortie &
Lancer Matlab avec SGE
- il faut utiliser SGE qui permet de lancer de longs programmes et de recevoir un mail lorsque c'est termnié. Cela évite d'avoir à garder une fenêtre de terminal ouverte en permanence (utile pour lancer les commandes à distance)
- voici un exemple:
- se connecter sur octopus et créer un répertoire pour vos scripts matlab
mkdir sge-test-matlab cd sge-test-matlab
- dans le dossier sge-test-matlab, créer les 2 fichiers suivants, sge-test-matlab.sh et test-matlab.m
touch sge-test-matlab.sh test-matlab.m chmod u+x sge-test-matlab.sh
- le contenu du fichier sge-test-matlab.sh
#!/bin/bash # #$ -cwd #$ -S /bin/bash ##$ -o output ##$ -e output #$ -M gerard.henry@univ-amu.fr #$ -m be # . /etc/profile.d/modules.sh module purge matlab module load matlab/7.13 cd sge-test-matlab matlab -nodesktop -nodisplay -nojvm < test-matlab.m
- et le code du script matlab
disp 'matlab test ...' a=2 b=a+a disp ' ... all done.'
- tester le nouveau script shell, en lançant directement:
./sge-test-matlab.sh
- puis, lancez-le avec la commande qsub de SGE, depuis le répertoire du script:
qsub -q small ./sge-test-matlab.sh
- vous devriez recevoir un mail au lancement et à la fin de votre programme
- dans votre homedir, vous aurez 2 fichiers sge-test-matlab.eNNNN et sge-test-matlab.oNNNN qui contiennent respectivement les erreurs et les sorties de votre programme
- cet exemple est adapté de cette page
- continuer avec SGE sur cette Moyens pour le calcul scientifique au LATP, et si vous avez besoin de compiler matlab
Compiler matlab pour l'exécuter sur holopherne
- parce que holopherne ne dispose pas de matlab
- sur octopus, chosir matlab 7.10 ou 7.14
module unload matlab ; module load matlab/7.14
- lancer matlab et initialiser l'environnement de compilation avec la commande “mbuild setup”
- compiler votre script matlab (noter le passage des arguments pour empêcher l'affichage du desktop)
mcc -m -R -nojvm -R -nodisplay HLFVlinear.m
- recopier les 2 fichiers produit par mcc sur holopherne:
scp run_HLFVlinear.sh HLFVlinear holopherne:<dest/>
- sur holopherne, lancer votre programme en utilisant le script shell crée par mcc, et en donnant le chemin de la librairie matlab
./run_HLFVlinear.sh /opt/MATLAB/MATLAB_Compiler_Runtime/v717
- pour matlab/7.10.0, la lib est /opt/MATLAB/MATLAB_Compiler_Runtime/v713
disponibilité des versions (lmstat)
- Sur les serveurs, elle est donné par l'utilisation de la commande lmstat. Attention, cette commande est associée à la version de matlab, il faut donc charger la version avant de la lancer
- sur les postes clients, cela dépend du type de licence utilisée: serveur ou individuel
- en cas de problème, matlab affiche le nom du fichier de licence qu'il veut utiliser et qui contient le nom du serveur de licences. Penser à regarder le site https://www2/phplicensewatcher pour voir l'état du serveur de licences
version | commandes | résultat | serveur de licence |
---|---|---|---|
7.1.0 | module unload matlab; module load matlab/7.1.0; lmstat -a | indique au plus 10 jetons | reglisse |
7.9.0 | module unload matlab; module load matlab/7.9.0 | pas de lmstat, mais 1 seul jeton | N/A |
7.10.0 | module unload matlab; module load matlab/7.10.0; lmstat -a | indique au 2 plus jetons | nemo |
Les boîtes à outils matlab
Version | Toolbox | Jetons | Aide |
---|---|---|---|
7.1.0 | Compiler | 1 | What should I do before trying to compile? |
PDE_Toolbox | 6 | ||
Signal_Toolbox | 4 | ||
7.9.0 | n.d. | n.d. | |
7.10.0 | Compiler | 5 | http://www.mathworks.fr/help/releases/R2010a/toolbox/compiler/ |
Boite a outils stixbox
18 jan 08 stixbox sur slatp pour matlab 7
slatp, shrek
Installé dans la version 6 de matlab (celle par défaut):
slatp:~# cd /usr/local/matlab6/ slatp:/usr/local/matlab6# mkdir /usr/local/matlab6/local slatp:/usr/local/matlab6# mv /tmp/stixbox/stixbox* /usr/local/matlab6/local/ slatp:/usr/local/matlab6# mv /tmp/stixbox/install/startup.m toolbox/local/
on ajoute dans le fichier
slatp:/usr/local/matlab6# vi toolbox/local/pathdef.m ... matlabroot,'/local/stixbox:',... ...
Lancement
slatp:~> matlab -nodisplay < M A T L A B > Copyright 1984-2002 The MathWorks, Inc. Version 6.5.0.180913a Release 13 Jun 18 2002 Using Toolbox Path Cache. Type "help toolbox_path_cache" for more info. To get started, type one of these: helpwin, helpdesk, or demo. For product information, visit www.mathworks.com. Environment var $STIX_PATH not set up StixBox to be found in:/usr/local/matlab6p5/local/stixbox >>
calypso, mombasa
il s'agit de matlab 7.1
mombasa-henry% matlab -nojvm -nodisplay Warning: MATLAB is starting without a display, using internal event queue. You will not be able to display graphics on the screen. < M A T L A B > Copyright 1984-2005 The MathWorks, Inc. Version 7.1.0.183 (R14) Service Pack 3 August 02, 2005 To get started, type one of these: helpwin, helpdesk, or demo. For product information, visit www.mathworks.com. Environment var $STIX_PATH not set up StixBox to be found in:/usr/local/matlab7.1/local/stixbox >> help stixbox A rudimentary statistics toolbox. Version 1.10, 9-Sep-98
Autres machines
elle est installée dans le répertoire /usr/local/stixbox. Pour l'utiliser, il faut taper la commande suivante:
>> addpath ('/usr/local/stixbox')
Il doit etre possible de sauvegarder cette modification dans un fichier utilise par matlab (voir support matlab)
Déploiement
Sur un poste client du laboratoire, plusieurs méthodes sont possibles pour installer matlab, suivant la version disponible.
- Installation par montage nfs, les mises à jour sont de la responsabilité de l'ASR.
- ou récupérer les cds d'installation, et faire l'installation soi-même (ainsi que les mises à jour éventuelles)
Pour la licence, un fichier est disponible auprès de l'ASR du laboratoire. Il suffit qu'il contienne une information aussi succincte que:
SERVER nom_serveur ANY 27002 USE_SERVER
Le nom « nom_serveur »
dépend de l'installation. Renseignez vous à support@cmi.univ-mrs.fr