GPU accelerated n-body integrators for long-term simulations of planetary systems

Simulationen dynamischer Prozesse in Planetensystemen stellen ein wichtiges Werkzeug bei der Untersuchung der orbitalen Evolution dieser Systeme dar. Mit modernen numerischen Integrationsmethoden ist es möglich, Systeme mit vielen tausend Körpern über Zeitskalen von hunderten Millionen Jahren zu mod...

Verfasser: Hellmich, Stephan
Weitere Beteiligte: Spohn, Tilman (Gutachter)
FB/Einrichtung:FB 14: Geowissenschaften
Dokumenttypen:Dissertation/Habilitation
Medientypen:Text
Erscheinungsdatum:2017
Publikation in MIAMI:18.05.2018
Datum der letzten Änderung:18.05.2018
Angaben zur Ausgabe:[Electronic ed.]
Schlagwörter:GPGPU; Numerische integration; Himmelsmechanik; Asteroiden; Jupiter Trojaner; Yarkovsky Effekt GPGPU; Numerical integration; Celestial mechanics; Asteroids; Jupiter Trojans; Yarkovsky Effect
Fachgebiet (DDC):520: Astronomie
Lizenz:InC 1.0
Sprache:English
Format:PDF-Dokument
URN:urn:nbn:de:hbz:6-28169560379
Permalink:https://nbn-resolving.de/urn:nbn:de:hbz:6-28169560379
Onlinezugriff:diss_hellmich.pdf
LEADER 12050nam a2200349uu 4500
001 9737b9eb-e3af-4733-b396-31d7d0b5c44c
003 miami
005 20180518
007 c||||||||||||a|
008 180518e20180518||||||||||#s||||||||eng||||||
024 7 |a urn:nbn:de:hbz:6-28169560379  |2 urn 
041 |a eng 
082 0 |a 520 Astronomie  |2 23 
100 1 |a Hellmich, Stephan  |0 http://d-nb.info/gnd/1159794642  |4 aut 
110 2 |a Universitäts- und Landesbibliothek Münster  |0 http://d-nb.info/gnd/5091030-9  |4 own 
245 1 0 |a GPU accelerated n-body integrators for long-term simulations of planetary systems 
250 |a [Electronic ed.] 
264 1 |c 2017 
264 2 |b Universitäts- und Landesbibliothek Münster  |c 2018-05-18 
505 0 |a 1 Introduction 1 -- 1.1 Minor planets in the solar system . . . . . . . . . . . . . . . . . . . . . . . . . 1 -- 1.1.1 Asteroids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 -- 1.1.2 Comets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 -- 1.2 Dynamical evolution of minor planets . . . . . . . . . . . . . . . . . . . . . . . 6 -- 1.3 Motivation for this work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 -- 2 Solving the -body problem 9 -- 2.1 The -body problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 -- 2.2 Numerical integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 -- 2.2.1 Explicit methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 -- 2.2.2 Symplectic methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 -- 2.2.3 A higher order integration scheme . . . . . . . . . . . . . . . . . . . . . 16 -- 2.3 Tuning the method for solar system like -body problems . . . . . . . . . . . 18 -- 2.3.1 Mixed Variable Symplectic method . . . . . . . . . . . . . . . . . . . . 19 -- 2.3.2 Integrating minor bodies of infinitesimal mass . . . . . . . . . . . . . . 20 -- 2.3.3 Encounters between minor bodies and planets . . . . . . . . . . . . . . 21 -- 2.3.4 Limitations due to machine precision . . . . . . . . . . . . . . . . . . . 22 -- 2.4 The Yarkovsky Effect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 -- Diurnal Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 -- Seasonal Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 -- 3 General-Purpose Computation on Graphics Processing Units 31 -- 3.1 The History of Graphics Processing Units (GPUs) . . . . . . . . . . . . . . . 31 -- 3.2 General-Purpose Computation on Graphics Processing Units . . . . . . . . . 32 -- 3.3 CUDA Computing architecture on Nvidia GPUs . . . . . . . . . . . . . . . . 33 -- 3.3.1 Fundamental differences between GPU and CPU . . . . . . . . . . . . 33 -- 3.3.2 Programming model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 -- 3.3.3 Performance guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 -- Launch as many threads as possible . . . . . . . . . . . . . . . . . . . 36 -- Economize memory transfers between host and device . . . . . . . . . 36 -- Maximize device memory bandwidth . . . . . . . . . . . . . . . . . . . 36 -- Avoid divergence within a single warp . . . . . . . . . . . . . . . . . . 37 -- Find the right ratio between block size and register count . . . . . . . 37 -- 4 cuSwift - a library of GPU based n-Body Integrators 39 -- 4.1 Included Integration Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 -- 4.1.1 Wisdom-Holman-Mapping (WHM) . . . . . . . . . . . . . . . . . . . . 39 -- CPU implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 -- GPU Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 -- Data layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 -- Memory management . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 -- Thread divergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 -- Dynamic memory reallocation . . . . . . . . . . . . . . . . . . . . . . 43 -- 4.1.2 RMVS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 -- CPU Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 -- GPU Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 -- Memory management for close encounter processing . . . . . . . . . . 45 -- Close encounter handling . . . . . . . . . . . . . . . . . . . . . . . . . 45 -- 4.2 Yarkovsky effect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 -- 5 Validation and Benchmarking 49 -- 5.1 Test setup for WHM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 -- 5.1.1 The dynamics of Pluto . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 -- Why Pluto? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 -- 5.1.2 A fictitious population of Plutos . . . . . . . . . . . . . . . . . . . . . . 51 -- 5.1.3 Validating cuWHM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 -- Fused multiply-add . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 -- Drift methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 -- Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 -- 5.2 Test setup for RMVS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 -- 5.2.1 Monitoring the Jacobi constant in the restricted three body problem . 56 -- 5.2.2 Creating a set of particles frequently involved in close encounters . . . 57 -- 5.2.3 Validating cuRMVS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 -- Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 -- 5.3 Test setup for the Yarkovsky effect . . . . . . . . . . . . . . . . . . . . . . . . 61 -- 5.3.1 Validating the Yarkovsky effect . . . . . . . . . . . . . . . . . . . . . . 61 -- Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 -- 5.4 Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 -- 5.4.1 Test setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 -- 5.4.2 Speedup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 -- WHM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 -- RMVS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 -- Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 -- 6 Impact of the Yarkovsky effect on the Jupiter Trojan Asteroids 75 -- 6.1 Jupiter’s Trojan asteroids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 -- 6.2 Does the Yarkovsky force affect Jupiter Trojans? . . . . . . . . . . . . . . . . 78 -- 6.2.1 A Fictitious, long-lived population of Jupiter Trojans . . . . . . . . . . 80 -- Without considering the Yarkovsky effect . . . . . . . . . . . . . . . . 80 -- When considering the Yarkovsky effect . . . . . . . . . . . . . . . . . 81 -- 6.2.2 A more realistic population . . . . . . . . . . . . . . . . . . . . . . . . . 82 -- Estimating the libration amplitude . . . . . . . . . . . . . . . . . . . . 83 -- Finding an appropriate integration interval . . . . . . . . . . . . . . . 85 -- Run time of the integrations . . . . . . . . . . . . . . . . . . . . . . . 88 -- 6.3 Results and discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 -- Influence of the physical properties . . . . . . . . . . . . . . . . . . . . 89 -- Ratio of escaped L4 and L5 Trojans . . . . . . . . . . . . . . . . . . . 91 -- Implications on the libration amplitude . . . . . . . . . . . . . . . . . 92 -- Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 -- Caveats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 -- 7 Future work 97 -- 7.1 Improve and Implement more non-gravitational effects . . . . . . . . . . . . . 97 -- 7.1.1 Improve the Yarkovsky effect and include YORP Effect . . . . . . . . . 97 -- 7.1.2 Include YORP Effect . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 -- 7.1.3 Acceleration due to cometary activity . . . . . . . . . . . . . . . . . . . 97 -- 7.1.4 Collisions and Fragmentation . . . . . . . . . . . . . . . . . . . . . . . 98 -- 7.2 Implement additional Integration Methods . . . . . . . . . . . . . . . . . . . . 98 -- 8 Bibliography 99. 
506 0 |a free access 
520 3 |a Simulationen dynamischer Prozesse in Planetensystemen stellen ein wichtiges Werkzeug bei der Untersuchung der orbitalen Evolution dieser Systeme dar. Mit modernen numerischen Integrationsmethoden ist es möglich, Systeme mit vielen tausend Körpern über Zeitskalen von hunderten Millionen Jahren zu modellieren. Zur Durchführung solcher Experimente werden jedoch in der Regel Großrechner benötigt, um aussagekräftige Ergebnisse in akzeptablen Rechenzeiten zu erhalten. Um die Rechenleistung von Grafikprozessoren (GPUs) in modernen Arbeitsplatzrechnern auszunutzen, habe ich cuSwift, eine Bibliothek <br>numerischer Integrationsmethoden zur Untersuchung von langzeit-dynamischen Prozessen in Planetensystemen, entwickelt. Zur Zeit beinhaltet cuSwift drei unterschiedliche Algorithmen: einen RADAU Integrator 15. Ordnung, Wisdom-Holman Mapping (WHM) und den Regularized Mixed Variable Symplectic (RMVS) Integrator. Durch die Verwendung von GPUs konnte ich diese Algorithmen bis zu einem Faktor 100 gegenüber der Einkern-Variante beschleunigen. Ich vergleiche die neu implementierten Methoden mit den originalen, um deren numerische Genauigkeit zu überprüfen und den Geschwindigkeitsgewinn zu quantifizieren. Als erstes Experiment untersuche ich den Einfluss des nicht-gravitativen Yarkofsky Effekts auf Jupiter-Trojaner und zeige, dass der Effekt tatsächlich Auswirkungen auf die Bahnentwicklung dieser Objekte hat.<br><br><br> 
520 3 |a Simulations of dynamical processes in planetary systems represent an important tool for studying their orbital evolution. Using modern numerical integration methods, it is possible to model systems containing many thousands of objects over time scales of several hundred million years. However, in general supercomputers are needed to get reasonable simulation results in acceptable execution times. To exploit the ever growing computation power of Graphics Processing Units (GPUs) in modern desktop computers I implemented cuSwift, a library of numerical integration methods for studying long-term dynamical processes in planetary systems. So far, cuSwift contains three algorithms: a 15th order Radau integrator, the Wisdom-Holman Mapping (WHM) integrator and the Regularized Mixed Variable Symplectic(RMVS) Method. With cuSwift I show that the use of GPUs makes it possible to speed up these methods up to two orders of magnitude compared to the single-core CPU implementation. I compare the newly implemented algorithms with the original algorithms in order to assess the numerical precision and to demonstrate the speedup achieved with the GPU. As a first application, I use these methods to study the influence of the Yarkovsky <br>effect on Jupiter Trojans and show that the effect indeed affects the long-term orbital evolution of these bodies. <br> 
521 |a specialized 
540 |a InC 1.0  |u https://rightsstatements.org/vocab/InC/1.0/ 
653 0 |a GPGPU  |a Numerische integration  |a Himmelsmechanik  |a Asteroiden  |a Jupiter Trojaner  |a Yarkovsky Effekt 
653 0 |a GPGPU  |a Numerical integration  |a Celestial mechanics  |a Asteroids  |a Jupiter Trojans  |a Yarkovsky Effect 
655 7 |2 DRIVER Types  |a Dissertation/Habilitation 
655 7 |2 DCMI Types  |a Text 
700 1 |a Spohn, Tilman  |u FB 14: Geowissenschaften  |0 http://d-nb.info/gnd/10942090X  |4 ths 
856 4 0 |3 Zum Volltext  |q text/html  |u https://nbn-resolving.de/urn:nbn:de:hbz:6-28169560379  |u urn:nbn:de:hbz:6-28169560379 
856 4 0 |3 Zum Volltext  |q application/pdf  |u https://repositorium.uni-muenster.de/document/miami/9737b9eb-e3af-4733-b396-31d7d0b5c44c/diss_hellmich.pdf