Please use this identifier to cite or link to this item: http://dx.doi.org/10.18419/opus-3845
Authors: Roth, Matthias
Title: GOCE data analysis: optimized brute force solutions of large-scale linear equation systems on parallel computers
Issue Date: 2010
metadata.ubs.publikation.typ: Abschlussarbeit (Diplom)
URI: http://nbn-resolving.de/urn:nbn:de:bsz:93-opus-58910
http://elib.uni-stuttgart.de/handle/11682/3862
http://dx.doi.org/10.18419/opus-3845
Abstract: The satellite mission GOCE (Gravity field and steady-state Ocean Circulation Explorer) was set up to determine the figure of the Earth with unprecedented accuracy. The sampling frequency is 1 Hz which results in a massive amount of data over the one year period the satellite is intended to be functional. From this data we can setup an overdeterminded linear system of equations to estimate the geopotential coefficients which are required for modelling the Earth's gravity field with spherical harmonics in the desired high resolution. The linear system of equations is solved "brute-force" which means that the normal equation matrix has to be kept in memory as a whole. The normal equations matrix has a memory demand of up to 65 GByte, hence we need a computer providing a sufficient amount of memory and fast multiple processors for the computations to get them done in a reasonable time. In this study, a program was written to compute the geopotential coefficients from simulated GOCE data, as GOCE real data were not available yet. As a first step, the program was optimized for the computations to become more efficient. As a second step, the program was parallelized to speed-up the computations by two different techniques: For a first version, the parallelization was done via OpenMP which can be used on shared memory systems which usally have a small number of processors. For the second version, MPI was used which is suited for a distributed memory architecture, hence can incorporate much more processors in the computations. In summation, we gained a huge boost in efficiency of the program due to the optimization. Furthermore, huge speed-up was gained due to the parallelization. The more processors are incorporated in the computation, the more the overall efficiency drops because of increasing communication between the processors. Here we could show that for huge problems the MPI version is running more efficient than the OpenMP version.
Die Satellitenmission GOCE (Gravity field and steady-state Ocean Circulation Explorer) wurde gestartet, um die Erdfigur in bisher unerreichter Genauigkeit zu untersuchen. Eine Aufzeichnungsrate von 1 Hz führt zu einer enormen Datenmenge während der Funktionsdauer des Satelliten von einem Jahr (laut Planung). Mit den Daten kann ein überbestimmtes lineares Gleichungssystem aufgestellt werden, um die Gravitationsfeldparameter zu bestimmen, die das Gravitationsfeld der Erde mittels einer Kugelflächenfunktionsentwicklung in der gewünschten Genauigkeit modellieren. Das lineare Gleichungssystem wird mittels der "brute-force"-Methode gelöst. Das heißt, dass die komplette Normalgleichungsmatrix im Speicher gehalten werden muss. Die Normalgleichungsmatrix hat einen Speicherbedarf von bis zu 65 GByte, weswegen ein Computer benötigt wird, der ausreichend Speicher und eine größere Anzahl von schnellen Prozessoren für die Berechnungen zur Verfügung stellt, damit diese in einer angemessenen Zeit ausgeführt werden können. Im Laufe dieser Diplomarbeit wurde ein Programm entwickelt, um die Gravitationsfeldparameter aus simulierten GOCE-Daten zu bestimmen. Real-Daten von GOCE waren noch nicht verfügbar. Zunächst wurde das Programm optimiert, um mehr Berechnungseffizienz zu erhalten. Dann wurde das Programm mit Hilfe von zwei verschiedenen Techniken parallelisiert, um die Berechnungen noch weiter zu beschleunigen. Die erste Programmversion wurde mittels OpenMP parallelisiert, welches auf Systemen mit gemeinsamen Speicher (shared memory) eingesetzt werden kann. Diese Systeme enthalten normalerweise nur wenige Prozessoren. Bei der zweiten Version wurde MPI verwendet, welches besser für Systeme mit verteiltem Speicher (distributed memory) geeignet ist und daher viel mehr Prozessoren in die Berechnungen einbeziehen kann. Zusammengefasst konnte durch die Optimierung eine große Effizienzsteigerung erreicht werden. Darüber hinaus konnte mit der Parallelisierung ein Zuwachs der Ausführungsgeschwindigkeit erzielt werden. Je mehr Prozessoren für die Berechnungen verwendet werden, desto stärker fällt allerdings die Effizienz wegen der zunehmenden Kommunikation zwischen den Prozessen. Es konnte gezeigt werden, dass die MPI-Version für große Probleme effizienter ist als die OpenMP-Version.
Appears in Collections:06 Fakultät Luft- und Raumfahrttechnik und Geodäsie

Files in This Item:
File Description SizeFormat 
roth_diplomarbeit.pdf3,56 MBAdobe PDFView/Open


Items in OPUS are protected by copyright, with all rights reserved, unless otherwise indicated.