ParallelKnoppix
ArticleCategory: [Choose a category, translators: do not translate
this, see list below for available categories]
Applications
AuthorImage:[Here we need a little image from you]
TranslationInfo:[Author + translation history. mailto: or
http://homepage]
original in en Majid Hameed
en to fr Guillaume Lehmann
AboutTheAuthor:[A small biography about the author]
Majid Hameed est un étudiant préparant une licence au
Department of Computer Science de l'université de Karachi,
à Sindh, au Pakistan. Ses principaux centres
d'intérêts sont l'intelligence artificielle, les
systèmes d'exploitation, le réseau, la programmation et
le
graphisme par ordinateur. Hammed se décrit comme un
passionné de Linux utilisé comme système
d'exploitation depuis trois ans et demi, en passant par Red Hat
9, 8, 7.3 et 7.2, Slackware Linux 10 et 9.1, Slax, Mandrake Move 2,
Knoppix 3.4, Vector Linux 4.3, etc.
Abstract:[Here you write a little summary]
Parallelknoppix est un live CD basé sur Knoppix, lui-même
également un live CD basé sur la distribution GNU/Linux
Debian. ParallelKnoppix nous permet de créer, en quelques
minutes,
un cluster Linux équipé d'outils/bibliothèques de
programmation parallèle tels que MPI. Il permet de nous faire
gagner beaucoup de temps pour la configuration de l'environnement de
travail de l'ordinateur.
L'environnement déjà présent sur l'ordinateur
n'est pas perturbé par l'utilisation de ParallelKnoppix puisque
c'est un live CD. Uniquemement sur le noeud maître, il est
créé un répertoire qui pourra, si vous le
désirez, être supprimé après
redémarrage.
ArticleIllustration:[One image that will end up at the top of the
article]
ArticleBody:[The main part of the article]
Introduction
« ParallelKnoppix est une refonte du master de Knoppix. Il permet la
configuration d'un cluster de machines pour la parallélisation
des processus à travers l'utilisation de LAM-MPI et/ou
l'implémentation de MPI nommée MPICH. Mettre en place le
cluster et le faire fonctionner prend moins de 15 minutes, si la
machine possède des cartes réseau PXE. »
--> de http://pareto.uab.es/mcreel/ParallelKnoppix/
La base
Le clustering est une des techniques les plus économes de
réaliser du calcul parallèle. La possibilité de
faire
du clustering avec Linux est une des forces de ce noyau. Les
universités et les organismes construisent virtuellement des
super-ordinateurs en
connectant, par leur cartes ethernet, des PC sous Linux. Linux est
largement adopté par la communauté scientifique pour
leurs recherches, surtout que Linux est fourni avec de nombreux outils
scientifiques tels que LAM, PI, PVM, etc. Donc Linux est le plus
adapté pour le calcul parallèle. Mais le problème
est que les scientifiques et les programmeurs ont beaucoup à
faire avec les préconfigurations de l'environnement Linux. Cela
rend leurs tâches lentes et complexes. Le problème de la
configuration devient encore plus génant si l'environnement
existant n'est pas basé sur un environnement Linux (c'est le cas
de Windows).
Maintenant, les gourous de Linux ont résolu le problème
et ils ont développé les Live CD. Maintenant, les
chercheurs peuvent choisir un live CD pour faire de la programmation
parallèle sans faire une très longue configuration et le
cluster est prêt après quelques (7-8) minutes.
Un de ces Live CD pour la programmation parallèle est
ParallelKnoppix.
Quelques autres Live CD pour le calcul parallèle sont BCCD et
ClusterKnoppix.
Description
Exactement comme son prédécesseur (c'est-à-dire
Knoppix), ParallelKnoppix détectera automatiquement tout le
matériel et les périphériques. Je l'ai
testé sur une carte mère Intel D865GBF, un PIV et une
plateforme Intel 810C avec PIII, et ParallelKnoppix a configuré
tout le matériel automatiquement sans que j'ai eu besoin de
faire quelque chose. Les ordinateurs qui sont configurés pour
utiliser ParallelKnoppix partagent un répertoire commun qui est
créé sur le noeud maître par NFS (Network File
System). Le noeud maître démarre depuis le CD et les
noeuds esclaves démarrent à travers le réseau
(DHCP fonctionne sur le noeud maître). Les noeuds esclaves
possèdent un BIOS avec l'option PXE activée et des cartes
réseaux (NIC) compatibles PXE.
Chaque service nécessitant LAM/MPI est automatiquement
configuré (LAM/MPI est un message passant des
spécifications d'interfaces utilisées pour le calcul
parallèle). C'est la même chose pour DHCP, NFS, SSH (mot
de passe sans les logins)
et vous êtes prêt à expérimenter des
programmes MPI plus quelques autres applications parallèles.
La configuration de ParallelKnoppix n'est pas très
sécurisée puisque le mot de passe sur le live CD à
la fois pour un utilisateur et le super utilisateur (root) est connu du
public. N'importe qui ayant quelques connaissances sur
ParallelKnoppix pourra alors accéder au cluster ParallelKnoppix.
En fait, la facilité de configuration est obtenue en faisant
quelques compromis par rapport à la sécurité.
Ainsi, il y a une différence entre facilité d'utilisation
et sécurité.
Qu'est-ce qu'un boot PXE ?
Le boot PXE est un acronyme pour Preboot Execution Environment
(Environement d'Exécution Avant le boot). PXE est une
technologie qui est utilisée pour démarrer un PC à
distance à travers un réseau. PXE est supporté par
le système BIOS et la carte réseau doit supporter la
fonctionnalité PXE.
Que faire si votre carte réseau ne supporte par la
fonctionnalité PXE ?
Vous devez prendre les images d'ether boot ou graver ces images sur
un CD. ROM-o-matic.net génère dynamiquement des images
Etherboot ROM. http://rom-o-matic.net/
Télécharger ParrallelKnoppix
ISO file download
FTP exact link
http://pareto.uab.es/mcreel/ParallelKnoppix/parallelknoppix.iso
HTTP exact link
ftp://volcano.uab.es/pub/parallelknoppix.iso
MD5SUM download
http://pareto.uab.es/mcreel/ParallelKnoppix/parallelknoppix-2004-12-16.iso.md5
Check the home page http://pareto.uab.es/mcreel/ParallelKnoppix/ if the
above links expires
Après avoir téléchargé les images ISO,
vérifier le checksum MD5 de l'image ISO pour s'assurer que le
téléchargement s'est bien déroulé. Pour
cela, exécuter le programme md5sum sur vos images ISO, depuis un
shell, et comparer les valeurs retournées avec le fichier md5
(le lien pour télécharger est ci-dessous). Ce qui suit
illustre la syntaxe correcte pour la commande md5sum.
md5sum "isonomfichier"
Dans la commande ci-dessus, remplacer "isonomfichier" par le nom
correct du fichier.
Si pour une raison quelconque vous n'utilisez pas Linux, alors utilisez
md5Summer qui est un générateur de md5sum sous Windows.
Vous avez le lien ci-dessous.
http://www.md5summer.com/
Note : graver les ISO sur un CD requiert un programme tel que cdrecord.
Comment cela fonctionne-t-il ?
Il y a un tutoriel intéressant et complet, avec des captures
d'écrans pour chaque étape de la configuration.
Vous avez, ci-dessous, le lien pointant vers le tutoriel.
Version html du tutoriel sur Parallel Knoppix:
http://pareto.uab.es/mcreel/ParallelKnoppix/Tutorial/Tutorial.html
Version pdf du tutoriel sur Parallel Knoppix:
http://pareto.uab.es/wp/2004/62604.pdf
Si vous voulez exporter votre cd-rom sur des noeuds, cela s'accomode
très bien d'une configuration de 50 noeuds. Mais cela n'a pas
été testé au-delà de 50 noeuds. Pour ma
part, j'ai réellement testé sur seulement 5 noeuds.
Que faire si plusieurs DHCP fonctionnent ?
« Si vous l'utilisez à l'université (comme je le fais),
vous êtes susceptible de rencontrer un serveur DHCP officiel et
peut-être un serveur PXE. Quand vous essayez de démarrer
le noeud en utilisant un terminal, les noeuds démarreront
généralement depuis le serveur PXE déjà
existant, ils prendront généralement leurs adresses IP
depuis le serveur officiel et pas depuis le serveur DHCP de
ParallelKnoppix. La solution que j'ai jusqu'ici utilisée est de
déconnecter physiquement les ordinateurs utilisés comme
noeuds des serveurs PXE et/ou DHCP préexistants ou bien de
demander aux administrateurs de désactiver temporairement ces
serveurs. Si quelqu'un connait une solution plus
élégante, je veux bien être tenu au courant. Je
pense que l'on peut perturber le fonctionnement avec
miniroot.gz, et en utilisant rom-o-matic pour créer la boot ROM
PXE. Trop horrible pour s'y intéresser davantage ... du moins
pour moi. » --> de http://pareto.uab.es/mcreel/ParallelKnoppix/
Comment cela fonctionne (résumé)
Le live CD de ParallelKnoppix est utilisé pour démarrer
le noeud maître. Sur le noeud maître qui vient d'être
démarré,
un script est exécuté afin de configurer le serveur DHCP,
de partager un répertoire de travail commun à tous les
nodes en utilisant NFS, de générer des clefs publiques
pour que SSH fonctionne correctement (mot de passe sans logins). Cela
est nécessaire à LAM. Après que le noeud
maître soit en fonctionnement, les noeuds esclaves
démarrent en utilisant le boot PXE. Après le
démarrage réussi, le répertoire modèle des
programmes est collé au répertoire commun partagé
par NFS et les programmes parallèles sont
exécutés parallèlement sur plusieurs PC.
Mon expérience
Je suis un étudiant préparant une licence d'informatique
et il m'a été donné un projet dans lequel je
devais résoudre un problème mathématique en
utilisant MPI dans un laboratoire de calcul parallèle. J'ai
choisi ParallelKnoppix comme alternative pour faire la
présentation de mon programme MPI dans un environnement Linux.
Le noeud maître est démarré en utilisant le CD
ParallelKnoppix. Pendant le temps de démarrage, il vous est
demandé la résolution graphique. Juste entrer « 6 » qui est
la résolution graphique maximale supportée. Mon noeud
maître ayant démarré, je charge le script de
configuration de ParallelKnoppix (K>ParallelKnoopixx>Setup
ParallelKnoppix (voir le tutoriel ci-dessus)). Après que le
script ait créé le serveur DHCP, j'ai allumé mes
noeuds esclaves et je les ai laissé démarrer en
utilisant PXE. Ensuite, tous les noeuds ont démarré avec
succès.
Je copie mon programme dans le répertoire
« parallel_knoppix_working » et ensuite, avec un terminal,
j'exécute mon programe mpi en parallèle. Voilà
tout.
Pour la compilation, j'utilise
mpicc myprogram.c -o myprogram.bin
Pour l'execution, j'utilise
mpirun C myprogram.bin
Conclusion
« Le CD ParallelKnoppix fournit une méthode de configuration
très simple et rapide d'un cluster composé de PC
hétérogènes, avec des architectures IA-32. Il
n'est pas
prévu de fournir un cluster stable pour plusieurs utilisateurs,
mais c'est plutôt un outil pour créer rapidement un
cluster en vue d'une utilisation individuelle. Le CD lui-même est
personnalisable avec des fichiers de configurations et de fonctionnement qui
peuvent être réutilisés. Donc il peut fournir une
solution à long terme pour un utilisateur individuel ».
Tiré du tutoriel de ParallelKnoppix, écrit par Michael
Creel.
Références