Je viens de demander à mon support utilisateur Linux la procédure pour changer en ligne de commande mon mot de passe, le système passant par Active Directory.
Leur réponse est de me réinitialiser le mot de passe en m'envoyant la documentation pour le réinitialiser depuis une interface graphique à laquelle je ne peux accéder… PEBKAC.
Dans le cadre de mes tests de performance I/O, je devais compiler mon bench sur une plateforme administrée par une équipe qui a une installation particulière avec des arborescences différentes selon les machines.
Je teste un compilateur avec sa bibliothèque MPI associée que je prends d'habitude, et il ne marche plus. Premier message au support, premier retour : utiliser la bibliothèque à un endroit particulier :
/endroit/opt/mpi/x.x.x/
.
Je teste, ça ne fonctionne pas, impossible de trouver
mpi.h
. Bizarre, je suis bien passé par le bon
mpicc
. Je teste la version n-1, qui elle fonctionne très bien.
Bizarre… Je passe un dry run, et le dossier d'include de la dernière version n'est pas correct (
/opt/mpi/xxx
au lieu de
/endroit/opt/mpi/xxx
), donc j'envoie au support les deux dry runs de
mpicc
pour qu'ils constatent la différence.
Message retour : n'utilise pas le include dans
/opt/mpi/xxx
, mais prends celui de
/endroit/opt/mpi/xxx
.
Je sais, c'est bien pour ça que j'ai un problème… PEBKAC.
Dans le cadre de mon travail de développeur HPC, je devais faire un comparatif de performance d'I/O parallèles sur différents clusters sous Linux.
Premier test basique, utilisation de "pread/pwrite". Mais impossible d'avoir le fichier avec les bonnes permissions et la bonne taille. Pourtant le code semble correct, création du fichier par le premier rang, écriture parallèle après une barrière par tous les rangs.
Deux jours plus tard, je me décide à tester le retour d'erreur de "pwrite", et me rends enfin compte que ce n'est pas bon (retour -1) et que
errno
est à 9… Effectivement, je n'avais :
- pas ré-ouvert le bon fichier,
- même pas créé le fichier avec les bons paramètres (oublié de placer les permissions dans
create()
)
PEBKAC.