Title (deu): Streufeldberechnung auf der GPU

Author: Luger, A. (Alexander)

Description (deu): St. Pölten, FH-Stg. Industrial Simulation, Master Thesis, 2012

Description (deu): In mikromagnetischen Simulationen ist die Berechnung des Streufeldes eines
Permanentmagneten am aufwendigsten. Dieses Streufeld ist ein skalares Potential, das als 3D-Tensor berechnet werden kann. Da Operationen auf Tensoren sehr rechenintesiv sind, ist eine herkömmliche sequentielle Implementierung auf der CPU bei großen Modellen oft nicht wirtschaftlich. Das Ziel dieser Arbeit ist es, diese rechenintensiven Operationen auf den Grafikprozessor (engl. Graphics Processing Unit, GPU) auszulagern, um den Zeitaufwand der Berechnung stark zu reduzieren. Um den Rechen- und Datenaufwand zu minimieren, werden die verwendeten Tensoren nicht im vollen Format, sondern im so genannten Tucker-Format behandelt. Um einen möglichst plattformunabhängigen Code entwickeln zu können, wurde OpenCL als Schnittstelle zur GPU gewählt. Da ein Großteil der rechenintensiven Operationen auf Tensoren Matrix-Matrix Multiplikationen (engl. General Matrix Multiply, GEMM) beanspruchen, wurde ein schneller Algorithmus zur Multiplikation zweier Matrizen implementiert. Dieser ist für Fermi GPUs optimiert und nutzt die von der GPU zur Verfügung gestellten Speicher optimal aus. Ergebnis dieser Arbeit ist ein Hybrid CPU-GPU Code, der das magnetische Streufeld als 3D-Tensor berechnet.

Description (eng): Computation of magnetic strayfields in micromagnetic simulations are very costly. Furthermore, this strayfield is a scalar potential, which can be computed as a 3D-Tensor. As operations on tensors are highly expensive, it is often not efficient to apply an sequential implementation on a CPU. Therefore, a parallel multi-platform implementation for graphics processing units (GPUs) is provided, working with tensors in the tucker format. Because most of the tensor operations are done by simple matrix-matrix multiplications, a fast general matrix multiply (GEMM) kernel is implemented, which is optimized for Fermi GPUs. The result of this work is a hybrid CPU-GPU code written in OpenCL C, that computes the magnetic strayfield as a 3D-tensor.

Object languages: German

Date: 2012

Rights: © All rights reserved

Classification: Graphikprozessor; Streufeld

Permanent Identifier