2 research outputs found
Global Arrays over SCI : Enveis kommunikasjon i clustere
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
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