Tests et performances d’un cluster Compaq (Nymphea) avec differentes configurations du code OPA Sebastien Theetten Laboratoire de Physique des Oceans. UMR n 6523 IFREMER CNRS UBO Rapport interne DRO/LPO n 02-09 juillet 2002 1 Introduction Ce rapport a pour objet la presentation rapide du nouveau calculateur d’IFREMER et l’analyse des performances testees avec di erentes con gurations basees sur le code OPA. Nous presentons dans un premier temps les speci cations de la nouvelle machine Nymphea. Ensuite, nous decrivons les di erentes con gurations de code a base d’OPA qui sont utilisees pour ces tests de perfor- mances : le benchmark Morgane qui est un code comprenant un nombre minimum d’entree/sortie pour concentrer les tests de performance sur le calcul et un code de reference livre par l’IPSL qui tourne sur di erentes machines. Pour chaque con guration on decrira les parametres du code, leur particularites, les problemes de portage eventuellement rencontres et les resultats des tests de performances. 2 Description de la machine 2.1 materielle Nymphea est un calculateur parallele a memoire distribuee. C’est un cluster Compaq compose de 9 noeuds ES 45. Chaque noeud est compose de 4 processeurs EV 68 ayant une frequence de 1 gigaHertz , 8 mega-octets de memoire cache L2 et 64 kilo-octets de memoire cache L1. Au sein de chaque noeud la memoire est partagee entre les 4 processeurs. Deux de ces noeuds comportent 32 giga-octets de memoire vive - dont un pour l’interactif - , ...
Testsetperformancesd’unclusterCompaq(Nymph´ea)avecdiff´erentes configurations du code OPA S´ebastienTheetten LaboratoiredePhysiquedesOce´ans. UMR n ◦ 6523 IFREMER CNRS UBO Rapport interne DRO/LPO n ◦ 02-09 juillet 2002
2 Description de la machine 2.1Descriptionmate´rielle Nympheaestuncalculateurparall`elea`m´emoiredistribu´ee.C’estunclusterCompaqcompos´e de9noeudsES45.Chaquenoeudestcompos´ede4processeursEV68ayantunefr´equencede1 gigaHertz,8me´ga-octetsdem´emoirecacheL2et64kilo-octetsdeme´moirecacheL1.Auseinde chaquenoeudlam´emoireestpartag´eeentreles4processeurs.Deuxdecesnoeudscomportent32 giga-octetsdem´emoirevive-dontunpourl’interactif-,lesautresposs`edent4giga-octets.Les noeudssontrelie´sentreeuxparun”alphaserverinterconnectswitch”fabriqu´eparQuadricspour assureruntauxdetransfertde200m´ega-bits,avecuntauxdelatencede2microsecondes. 2.2 Description logicielle Logicielssyst`eme Leclusterposse´del’ operating system Unix TRU64 . Tru64 signifie que l’adres-sagem´emoireestcod´esur64bits.Lecodageparde´fautdesre´elss’effectuesur32bits(4octets).La couchelogicielleAlphaServerClusterSierrasetrouveau-dessusdusyste`med’exploitationUNIX. ElleinclutRMS(ResourceManagerSystem)quig`ereetsurveillel’exe´cutiondesjobsparalle`les;la
1
parall`elisationMPIsefaitparl’interconnecteurQuadrics.Unseulnoeud,i.e.Nymphea0,estrelie´ au reseau sur lequel les utilisateurs se logguent automatiquement. Ce noeud sert aussi aux travaux interactifs. La soumission et la gestion des batchs s’effectuent via L.S.F (Load Sharing Facility) de lasocie´t´ePlatform.
Logiciels de programmation Le compilateur Fortran est le Compaq Fortran f90 qui est iden-tiqueauf95.Onpeutforcerlecompilateurpourcompilerenf77.KAPestunpr´eprocesseurper-mettantdefairedelaparalle´lisationautomatiqueenopenMP. Il existe aussi des compilateurs C et C++. Totalviewversion5.0,delasoci´et´eEtnus,estunlogicielpermettantded´eboguerdescodesMPI etopenMP;VampiretVampirtrace,delasoci´ete´Pallas,sontdeslogicielsd’analysedeperformance de code MPI.
3 Configuration “Benchmark Morgane” 3.1 Description du code Laconfiguration“BenchmarkMorgane”miseaupointsurleNECa`l’IDRIS,a´et´eenvoye´e a`Compaqquil’autilis´eeentantquebenchmark.Aucuneoptimisationn’ae´t´eapporteesurce ´ code. Elle utilise la version opa 8.2 d’OPA. Le nombre de points de grille est 482x736x42 soit 13835328 points de grille. Le nombre de pas de temps est de 250. Afin de concentrer les tests du benchmarksurlescapacite´sdecalculdelamachine,lesentrees/sortiesonte´t´eminimise´es.Les ´ biblioth`equesd’entr´ee-sortiecommenetcdfparexemplenesontpasutilis´ees.Lesseulsfichiersen entre´esontlefichier“coordinates”dansunformatbinaireetlefichierbathyme´trieauformatascii. L’initialisations’effectueavecunprofilanalytiquedetemp´eraturepertube´aumilieududomaine. Cetteconfigurationtourneens´erieainsiqu’enparall`elepard´ecompositiondedomaineavecMPI (utilisationdelacle´cpp“keympp”.
3.2Comparaisondesr´esultats Nousprenonsencompteletemps“user”donne´parlacommandetimexpourcomparerles tempsd’ex´ecution.Pourl’examendutempspasse´danschaqueroutine(profiling),nousutilisonsla commandehiprof/gprof.Nouscalculonslegaineneffectuantlerapporttempsd’exe´cutiondujob enmonoprocesseursurletempsd’ex´ecutiondujobenmultiprocesseur. Onv´erifiequelecodedonnedebonsre´sultatsen´ecrivantdansunfichierasciipourlepremieret le dernier pas de temps la valeur de certaines variables comme la moyenne, le maximum et le nombre depoints.Pourvaliderlesr´esultats,nousexamineronsend´etaillessortiesasciienlescomparant aveccellesobtenuessurleNEC.Letableau(Tab.2)re´sumelesr´esultatspourlesdiff´erentesvariables de chaque configuration monoprocesseur et multiprocesseur pour les 2 machines Nec et Compaq.
3.3Testens´erie Latailledel’exe´cutablede´passe4gigaoctets.Lerunestlance´surlaqueue seq bigmem (noeud de 32gigaoctets).Touslesrunsont´ete´compile´savecl’optionded´eboguageetinstrument´esavechiprof