Deflation im MilcI6-Code

Verbesserung der CG Routine in Gitter QCD. Mit Hilfe von approx. Eigenwerten und einer Schur-Dekomposition wurden Verbesserungen am MilcI6 Code vorgenommen.

Im Fall 2011-Term habe ich für Tom DeGrand wieder Forschung gemacht - diesmal im Bereich der Gitter-QCD. Mein Ziel war die Untersuchung und Implementierung von möglichen Verbesserungen an der CG-Routine (CG steht für Conjugate Gradient) des MilcI6 Codes, welcher von der Universität Tel Aviv entwickelt wurde und seitdem von der Milc Kollaboration weiterentwickelt und gepflegt wird.

Dabei ging es bei der Arbeit primär um das Zurechtfinden in dem mir unbekannten Code. Dazu wurden einige kleine Evaluationen getätigt und eine sehr spezielle Deflationsmethode implementiert. Nachdem dies erfolgreich durchgeführt worden war, gingen wir einen Schritt weiter und bauten die Methode sehr allgemein ein, so dass wir nun auch mit angenäherten Eigenwerten arbeiten konnten. Durch diesen Vorgang konnten wir einige neue Ideen und Einsichten über das Verhalten des Codes gewinnen und ich pers. einen sehr netten Einstieg in die Gitter Quantenchromodynamik haben.

 

Deflation
Die benötigte Iterationszahl fällt stark mit Abhängigkeit der gewählten Basis

 

Da ich die Implementierungen fast ohne Optimierungen durchführte (Primärziel war ein funktionierender Code) muss man das Ergebnis mit Vorsicht interpretieren. Man sieht jedoch, dass eine solche Implementierung einen großen Geschwindigkeitsvorteil bringen kann - wählt man die richtigen Parameter zum Nähern von Eigenwerten und die Anzahl der Eigenwerte betreffend.

Download LatticeQCD.pdf (307 kB)

Created . Last updated .

References

Sharing is caring!