2 research outputs found

    Global Arrays over SCI : Enveis kommunikasjon i clustere

    Get PDF
    Sammendrag av hovedfagsoppgaven "Global Arrays over SCI - Enveis kommunikasjon i clustere" av Kai-Robert BjÞrnstad Enkelte applikasjonstyper og algoritmer vanskelig Ä implementere over MPI-grensesnittet. MPI-standarden fordrer en tosidig kommunikasjonsmodell hvor bÄde sender og mottaker eksplisitt mÄ delta i kommunikasjonen. Enveis kommunikasjon baserer seg pÄ deltakelse kun fra senderprosessen ved utveksling av data (typisk kommunikasjonsmetode for SMP maskiner). Algoritmer og grensesnitt (f.eks. SHMEM) er utviklet for maskiner hvor prosessorene har et delt adresserom. Hovedforskjellen pÄ enveis og tosidig kommunikasjon ligger i hvilken programmeringsmodell som tilbys, mao. hvordan applikasjonsprogrammereren mÄ forholde seg til kommunikasjon mellom prosesser. Clustere har i utgangspunktet ikke et delt adresserom, noe som skaper problemer ved envis kommunikasjon. Som et resultat har man pÄ mange mÄter forsÞkt Ä skape en illusjon av shared memory ved hjelp av bÄde hardware og/eller programvare, et sÄkalt DSM (Distributed Shared Memory). I denne sammenheng har et bibliotek kalt Global Arrays (GA) blitt utviklet. GA er implementert over kommunikasjonsbiblioteket ARMCI (Aggregate Remote Memory Copy Interface). ARMCI er et portabelt kommunikasjonsbibliotek med fokus pÄ implementasjon av effektive enveis kommunikasjonsoperasjoner i clustere og i shared memory-maskiner. Grensesnittet er ikke standardisert, men benyttes likefullt av flere applikasjoner, f.eks. NWCHEM og GAMESS-UK (gjennom GA). ARMCI likner pÄ mange mÄter SHMEM-grensesnittet for enveis kommunikasjon. Forskjellen ligger i at ARMCI fokuserer pÄ overfÞring av ikke-sekvensielle (strided) datastrukturer. En viktig del av datakommunikasjon er Ä gjÞre denne sÄ effektiv som mulig. Det fokuseres pÄ Ä benytte minst mulig tid pÄ kommunikasjon (overhead) og mest mulig pÄ prosessering/regning. Med dette som utganspunkt undersÞkes det i oppgaven mulighetene for Ä la ARMCI kunne kommunisere over hÞyhastighetsnettverket SCI. Som et utgangspunkt skisserer oppgaven tre hovedmetoder for implementasjon; ARMCI over SCI via TCP/IP, MPI og SCI-driver. Prosjektet er basert pÄ Scali AS sin programvare pakke (med ScaFun og ScaMPI) SSP (Scali Software Package). Det har blir vist at bruk av TCP/IP-implementasjoner som ScaIP over SCI introduserer en hÞy overhead og gir dÄrligere ytelse enn allerede eksisterende ARMCI-implementasjoner over Gigabit Ethernet. Det er videre utviklet en ARMCI-implementasjon utelukkende over en tosidig meldingsutvekslingsstandard, MPI. Denne kan benyttes over SCI ved hjelp av MPI-implementasjonen ScaMPI. ARMCI har ogsÄ blitt implementert direkte over SCI ved hjelp av ScaFun. Denne implementasjonen ser ut til Ä ha stÞrst potensiale nÄr det kommer til selve datakommunikasjonen og bruk av zero- eller one-copy protokoller. Likefullt er faller implementasjonen i denne oppgaven pÄ den hÞye overheaden forbundet med SCI-interrupter. Ved bruk av Hyper-Threading-teknologi fra Intel og en nÞdvendig thread-safe MPI-implementasjon, blir det vist en minimal introduksjon av overhead gjennom bruk av MPI og samtidig hÞy portabilitet

    A Modular and Fault-Tolerant Data Transport Framework

    Get PDF
    The High Level Trigger (HLT) of the future ALICE heavy-ion experiment has to reduce its input data rate of up to 25 GB/s to at most 1.25 GB/s for output before the data is written to permanent storage. To cope with these data rates a large PC cluster system is being designed to scale to several 1000 nodes, connected by a fast network. For the software that will run on these nodes a flexible data transport and distribution software framework, described in this thesis, has been developed. The framework consists of a set of separate components, that can be connected via a common interface. This allows to construct different configurations for the HLT, that are even changeable at runtime. To ensure a fault-tolerant operation of the HLT, the framework includes a basic fail-over mechanism that allows to replace whole nodes after a failure. The mechanism will be further expanded in the future, utilizing the runtime reconnection feature of the framework's component interface. To connect cluster nodes a communication class library is used that abstracts from the actual network technology and protocol used to retain flexibility in the hardware choice. It contains already two working prototype versions for the TCP protocol as well as SCI network adapters. Extensions can be added to the library without modifications to other parts of the framework. Extensive tests and measurements have been performed with the framework. Their results as well as conclusions drawn from them are also presented in this thesis. Performance tests show very promising results for the system, indicating that it can fulfill ALICE's requirements concerning the data transport.Comment: Ph.D. Thesis, Ruprecht-Karls-University Heidelberg Large, 251 page
    corecore