Das Optimieren von Programmcode ist ein wichtiger Prozess für den Bereich des High-Performance Computing, aber auch grundsätzlich von großer Bedeutung. Gemäß eines Trends der letzten Jahre, in denen Grafikkarten häufig als Beschleuniger für Programme und Systeme eingesetzt werden, und aufgrund eines generellen Bedeutungsgewinns von GPUs ist die Optimierung von GPU Programmcode von höchstem Wert, um die bestmögliche Leistung erreichen zu können. Grundsätzlich funktioniert der Optimierungsprozess am besten, wenn umfangreiches Hintergrundwissen über die GPUs, auf denen das Programm laufen wird, bekannt ist. Jedoch sind viele der nötigen Informationen, besonders bezüglich der Speicherstrukturen und -hierarchien, überhaupt nicht oder nur unzureichend dokumentiert. Diese Arbeit soll zu diesem Zweck das Design und die Implementierung eines Hilfsprogrammes darlegen, mit dem die Speichertopologie von GPUs erfasst werden kann. Dabei beschränkt sich der
Umfang der Arbeit ausschließlich auf GPUs von Nvidia, während Grafikkarten anderer Hersteller wie AMD von der Arbeit nicht behandelt werden.
«
Das Optimieren von Programmcode ist ein wichtiger Prozess für den Bereich des High-Performance Computing, aber auch grundsätzlich von großer Bedeutung. Gemäß eines Trends der letzten Jahre, in denen Grafikkarten häufig als Beschleuniger für Programme und Systeme eingesetzt werden, und aufgrund eines generellen Bedeutungsgewinns von GPUs ist die Optimierung von GPU Programmcode von höchstem Wert, um die bestmögliche Leistung erreichen zu können. Grundsätzlich funktioniert der Optimierungsprozess...
»