Wie angekündigt beginne ich eine kleine Serie über Lehre. In den bisherigen Beiträgen fiel bereits die Abkürzung HPC — für Hochleistungsrechnen bzw. High Performance Computing. Als Beispiel soll eine Einführungsveranstaltung zum HPC dienen. Dabei geht es um die Nutzung großer Cluster aus vielen Einzelcomputern, die zusammen mit einem leistungsfähigen Netzwerk und häufig großen Fileservern ein Werkzeug zur Forschung sein sollen. Ein Artikel zur HPC-Landschaft in Deutschlang und Europa steht auf meiner ToDo-Liste, hier möchte ich aber den Startschuss zu einer Mini-Artikelserie rund um Lehre, HPC und eben Lehre im Kontext der Nutzung von Hochleistungsrechnern geben. Klar ist, dass genau dieses Thema nur wenige Kollegen interessieren dürfte — aber manche Dinge sind allgemeingültig und darauf werde ich zurückkommen. Zunächst einmal möchte ich mit diesem Beitrag den Hintergrund zu meinem Beispiel erläutern.

Hochleistungsrechner also: Sie finden ihren Einsatz in der Modellierung komplexer physikalischer Phänomene wie dem Wetter. Flüssigkeitssimulationen, das Zusammenspiel von Molekülen, astronomische Berechnungen und Werkstoffdesign durch Ingenieure sind die bekanntesten Forschungsanwendungen. Auch die Industrie setzt große Cluster ein, um ihre Produkte zu verbessern, Wege zu suchen die Produktionskosten zu senken oder die Produktentwicklungszeiten zu reduzieren. Nicht zuletzt spielt HPC aus meiner Perspektive auch in Biologie und Medizin eine zunehmende Rolle. Meine Hauptaufgabe an unserem Cluster ist die Betreuung der Lebenswissenschaften (ziemlich stark fokussiere ich mich hierbei auf die Lehre, womit wir beim Thema wären).

Die Herausforderung in der Lehre

Unabhängig vom fachwissenschaftlichen Hintergrund spielt das Hochleistungsrechnen im Studium selten eine Rolle — allenfalls in der Informatik und in den neueren interdisziplinären, “informatiklastigen” Studiengängen steht das Thema Programmierung mit HPC-Bezug im Curriculum. Die Nutzung eines Clusters allerdings nicht, denn so ein Cluster ist eine (Groß)-Forschungseinrichtung: Da gibt es einerseits Unterstützung und andererseits ist der Umgang mit Clustern eine Nischenfähigkeit: Wichtig zwar für eine jeweils aktuelle Arbeit, aber selten dauerhaft wichtig für die nutzenden WissenschaftlerInnen.

Cluster sind komplexe Maschinen und jedes Cluster ist anders. Insbesondere die batch-Systeme” oder “Scheduler stellen neue NutzerInnen vor Herausforderungen: Denn gerechnet wird nicht einfach auf dem Cluster. Immer wieder haben wir Nutzer, die denken Cluster = Server. Doch die batch-Systeme machen einen großen Unterschied, denn man setzt einen sog. “Job” ab und dieser wird auf einem oder mehreren “Knoten” des Clusters, also einem oder mehrerenTeilrechner(n), ausgeführt. Dabei gibt es Einiges zu beachten: Die Laufzeit, der Speicher, die Zahl der CPUs und viele, viele optionale Parameter. Um eine Vorstellung zu geben: Alleine für die Vermittlung diese Aspekter der Nutzung benötige ich einen Tag eines zweitägigen Kurses.

Überspitzt: HPC Cluster werden von FachwissenschaftlerInnen genutzt, wenn diese dies für ihre Forschung verwenden müssen. Schließlich stellt es einen Aufwand dar, all die relevanten Details zu verinnerlichen. Da beißt die Maus keinen Faden ab: HPC Lösungen sind mächtig — sie zu nutzen kostet Anfänger viel Zeit.

Und noch was obendrauf

Vor längerer Zeit habe ich mal “Statistik für Mediziner” als Tutor begleitet. Um es mal so zu sagen: Leicht war das nicht. Spott gegenüber MedizinerInnen ist hier wohlfeil: Nur muss man wissen, dass das Medizinstudium über Jahre hinweg kaum Mathematik beinhaltet und dann versucht man mit einem Kurs, dem man wenig Zeit einräumt (1 Semesterwochenstunde + 1 Stunde Tutoriat) Statistik zu vermitteln, während(!) die Studierenden andere, nicht unwichtige Dinge im Studium zu erledigen haben.

Was ich daraus gelernt habe ist, dass Curricula sich nicht allein daran ausrichten dürfen was NutzerInnen bei uns wissen müssen und wie das beizubringen ist, sondern immer auch was der Hintergrund ist. (Ja, das ist trivial — doch zwischen intellektuell verstehen und wirklich verinnerlichen ist leider oft eine Kluft.) Der zweite Aspekt stellt mitunter eine didaktische Herausforderung dar; der dritte Aspekt wird fast immer vernachlässigt (weil in der Regel Hochschuldidaktik nicht inter- oder gar transdisziplinär stattfindet).

Inhalt und Zeit

Ich schrieb gerade von einem zweitägigem Kurs, den wir für unsere HPC-Systeme anbieten und den ich federführend gestalte. Dabei genieße ich einen gewissen Luxus: Von KollegInnen weiß ich, dass sie nur wenige Stunden für seltenere Kurse mit mehr Inhalten aufwenden dürfen. Einige wenige Anlagenbetreuer machen so gut wie keine Einführungen für Nutzer, davon ausgehend, dass “wer unsere Systeme nutzen will, auch weiß wie das geht” (eigene Übersetzung, keine Übertreibung!).

flattr this!

1 / 2 / Auf einer Seite lesen

Kommentare (6)

  1. #1 bronsteintrivial
    13. Januar 2020

    Guter Artikel!

    Zum ROI von Anwendungen zum Clustered Computing kann ich beitragen, dass eine (12k-zeilige) MPI(CH)2-Anwendung (CGI i.w.S.)– 2009 von mir geschrieben in Fortran95/C++98 – im letzten Jahr ihr 10-jähriges Jubiläum hatte.

    Und zwar ohne Bug-Reports und Wunschlisten ala Alice in Wonderland.

    Das liegt mE nicht daran, dass ich nun solch ein schwerst-genialer Coder oder Systemarchitekt wäre, sondern daran, dass die Dekomposition des Tasks in (i.Ü.i.W. symmetrische) Jobs der Architektur gut getan hat.

    So long && happy hacking!

    • #2 Christian Meesters
      13. Januar 2020

      … im letzten Jahr ihr 10-jähriges Jubiläum hatte.

      Glückwunsch! Das passt vielleicht hier hin.

  2. #3 Susanne Vieser
    München
    15. Januar 2020

    Stoße per Zufall auf den Artikel – der gute Einsichten brachte: Auch das Leibmniz Rechenzentrum in München bietet übrigens viele Kurse rund um HPC und das Coden von Applikationen an. Sichtbar aus den Nutzungszahlen des SuperMUC und des SuperMUC-NG: Nicht mehr nur die klassischen Naturwissenschaften haben viele Daten zu verarbeiten, auch Wirtschafts- und Sprachwissenschaften kommen mit den ersten Riesen-Datensätzen zum Rechnen zu uns. Und Supercomputing oder HPC wird zunehmend wichtig bei der Visualisierung von Daten und Erkenntnissen. Am LRZ entstanden bereits Virtualisierungen von bekannten Sälen, teils von solchen, die nicht mehr betreten werden dürfen. Und ein besonders schönes, datenintensives Projekt ist LEDIZ – die Befragung von Zeitzeugen. Erst in Echt, danach als virtueller dreidimensionaler Film, der sich interaktiv durch die Fragen der Zuschauenden abspulen lässt.

    • #4 Christian Meesters
      15. Januar 2020

      Danke.

      Auch das Leibmniz Rechenzentrum in München bietet übrigens viele Kurse rund um HPC und das Coden von Applikationen an.

      Davon gehe ich aus – leider kenne ich niemanden aus Eurer Gruppe und was / wen ich nicht kenne, mag ich nicht kommentieren.

  3. #5 Karl Mistelberger
    mistelberger.net
    21. Januar 2020

    > leider kenne ich niemanden aus Eurer Gruppe und was / wen ich nicht kenne, mag ich nicht kommentieren.

    Wenn es um Informationstechnik ging war ich immer kompromissloser Opportunist, denn es wurde nicht die Anwesenheitszeit sondern das Ergebnis erfasst. Aus diesem Grund habe ich immer die Selbstdarstellung der Leute überprüft und ein Kennenlernen erst bei positivem Ergebnis erwogen.

    Beim Leibniz-Rechenzentrum in Garching könnte es sich lohnen:

    https://doku.lrz.de/display/PUBLIC/Common+Topics+for+all+HPC+Systems

    • #6 Christian Meesters
      21. Januar 2020

      Sie gehen von der Prämisse aus, dass ich sogar die Seiten der Kollegen nicht kenne? Interessant.