News - Steinbuch Centre for Computing (SCC)

Die Seite wird erstellt Nicklas Thomas
 
WEITER LESEN
News - Steinbuch Centre for Computing (SCC)
news
    STEINBUCH CENTRE FOR COMPUTING                                                            AUSGABE 2 | 2020

            Kompetenz in der KI-Forschung – Das Helmholtz AI Local Energy Consultant Team
             Competence in AI research – The Helmholtz AI Local Energy Consultant Team

                                                            Auf zu neuen Herausforderungen: Let’s go Quantum
                                                                     Towards new challenges: Let’s go Quantum

                                                     Anwendungs- und Systemüberwachung für SAP-Systeme
                                                        Application and System Monitoring for SAP Systems

KIT – Die Forschungsuniversität in der Helmholtz-Gemeinschaft                                    www.kit.edu
News - Steinbuch Centre for Computing (SCC)
Editorial

Liebe Leserinnen und Leser,

effiziente und nachhaltige Lösungen für unsere Energiesysteme und -versor-
gung zu entwickeln, ist eine der großen Herausforderungen der Zukunft. Sie
basieren zunehmend auf KI-Anwendungen und ermöglichen unter anderem
neue Modelle der Energieverteilung, die den stark veränderten Voraussetzun-
gen und Anforderungen gerecht werden. Praktische KI-Methoden müssen für
diesen Anwendungsbereich entwickelt und angepasst werden. Hier kommt das
seit Oktober am SCC aktive Helmholtz AI Consultant-Team ins Spiel (Titelbild),
das Forschende in der Helmholtz-Gemeinschaft mit Fachwissen über KI-Me-
thoden, Werkzeuge und Software-Engineering bei Energieforschungsprojekten
unterstützt. Wir stellen Ihnen das Consultant-Team und dessen Mission ab
Seite 20 vor.
‚Auf zu neuen Herausforderungen‘ heißt es, wenn es um ein anderes vielver-
sprechendes Forschungsfeld geht: um das Quantencomputing. Es verheißt
mit potentiell exponentiellen Rechenbeschleunigungen ein hohes Innovations-
potenzial. Sollen Maschinen effizient Strukturen in Daten erkennen, können
Quantencomputer anderen Rechnern weit überlegen sein. Ein Team des SCC
beschäftigt sich daher mit dem Ziel, Algorithmen für Quantencomputer zu
erforschen und in Machine Learning-Anwendungen zu übersetzen. Ab Seite
22 berichten wir darüber, wie junge Wissenschaftlerinnen und Wissenschaftler
des SCC die Herausforderung „Let’s go Quantum“ motiviert annehmen.

Als „Herz“ der Geschäftsprozesse, z.B. für das Personal- und Finanzmanagement, den Einkauf und die finanzielle Projektumsetzung
sowie für diverse Self-Services, „schlägt“ das SAP-System im KIT. Erst durch das Zusammenspiel einer Vielzahl von Server-, Speicher-, und
Applikationssystemen versorgt das SAP-System zahlreiche Dienstleistungseinheiten und Institute zuverlässig mit Diensten und Anwendun-
gen. Besonders herausfordernd ist es, dieses Herz „gesund“ zu erhalten und frühzeitig zu erkennen, ob sich Unregelmäßigkeiten oder
Probleme anbahnen. Das SAP-Betriebsteam hat hierfür ein Überwachungs- und Diagnosesystem der Meisterklasse aufgebaut (Seite 6).

Viel Freude beim Lesen                                                Martin Frank, Bernhard Neumair, Martin Nußbaumer, Achim Streit

Dear reader,

developing efficient and sustainable software for our energy supply systems is one of the grand challenges of the future. Increasingly
based on artificial intelligence (AI) the new software among other things, enables energy distribution models that meet the changed
prerequisites and requirements. For this, practical AI methods must be developed or adapted, which is where the Helmholtz AI consul-
tant team, active since October, comes into play (cover picture). The team supports scientists doing energy research in the Helmholtz
Association with specialists knowledge of AI methods, tools and software engineering. We introduce you the consultant team and
their mission from page 20 onwards.
‘Off to new challenges’ is said of the another very promising field of research: quantum computing. With theoretically exponential
computing acceleration it promises a high potential for innovation. If machines are to efficiently recognize structures in data, quantum
computers can be far superior to todays computers. Therefore a team at SCC is researching algorithms for quantum computers and
translating them into machine learning applications. Starting on page 22, we report on how young SCC scientists are motivated to
take on the ‘Let's go Quantum’ challenge.
At the ‘heart’ of the business processes at KIT, e.g. for personnel and financial management, purchasing and financial project im-
plementation as well as for various self-services, ‘beats’ the SAP system. Only through the interaction of a large number of servers,
storage and application systems does it dependably supply services and applications to numerous organisational units and institutes.
It is particularly challenging to keep this heart ‘healthy’ and to recognize early on whether irregularities or problems are looming.
For this purpose the SAP operations team has set up a first class monitoring and diagnosis system (page 6).

Enjoy reading                                                         Martin Frank, Bernhard Neumair, Martin Nußbaumer, Achim Streit

02 |         SCCnews
News - Steinbuch Centre for Computing (SCC)
Inhaltsverzeichnis

          DIENSTE UND INNOVATION

		   04   RADAR4KIT – ein generisches Forschungsdatenrepositorium
          für das KIT

		   06   Anwendungs- und Systemüberwachung für SAP-Systeme am KIT

		   09   Das neue NETVS

		   12   Der GridKa-Rechencluster – Wissenschaft Non-Stop

		   14   Jupyter@SCC

          FORSCHUNG UND PROJEKTE

		   16   Lohnt sich das Upgrade auf die neue NVIDIA A100 GPU?

		   18   EU-Projekt DEEP-Hybrid-Datacloud bringt Werkzeuge
          für Benutzer und Entwickler von KI Anwendungen

		   20   Kompetenz in der KI-Forschung – Das Helmholtz AI Local
          Energy Consultant Team stellt sich vor

		   22   Auf zu neuen Herausforderungen: Let’s go Quantum

		   25   NFDI – Nationale Forschungsdateninfrastruktur am SCC

		   28   Landesprojekt bwCard: Digitale Identitätskarte

          STUDIUM UND WISSENSVERMITTLUNG

		   32   MathSEE Modeling Week – Studierende präsentieren Ergebnisse

          VERSCHIEDENES

		   34   SCC wird Zentrum für Nationales Hochleistungsrechnen

		   35   Impressum & Kontakt

                                                                        SCCnews   | 03
News - Steinbuch Centre for Computing (SCC)
DI E N STE UND I NN OVATION

                                       RADAR4KIT – ein generisches Forschungs-
                                        datenrepositorium für das KIT
                                                       Das KIT stellt Wissenschaftlerinnen und Wissenschaftlern ein
                                                       neues disziplinübergreifendes Repositorium für die Archivie-
                                                       rung und Publikation ihrer Forschungsdaten zur Verfügung.
                                                       Die Speicherung der Daten findet ausschließlich auf der IT-Infra-
                                                       struktur des KIT am SCC statt.                                    Felix Bach

RADAR4KIT - Research Data Repository        Metadaten soll es Forschenden erleichtert    als „Datengeber”, welche ihre Daten
for KIT - ist ein disziplinübergreifen-     werden, die Daten bei einer späteren         archivieren oder publizieren wollen.
des Forschungsdatenrepositorium für         Nachnutzung interpretieren zu können.        Daten können für Dritte („Datennutzer“)
die Archivierung und Publikation von        Das Ziel ist es, Forschungsdaten „FAIR2 zu   zugänglich gemacht oder im Internet
Forschungsdaten - z.B. aus wissenschaft-    machen“ – das heißt findable, accessible,    publiziert werden. RADAR4KIT steht als
lichen Studien und Projekten des KIT.       interoperable und reusable.                  Online-Dienst über ein Web-Portal4 bereit,
Unter Forschungsdaten werden digitale                                                    Forschende des KIT können sich mit
Daten verstanden, die im Forschungs-        RADAR4KIT wird vom Karlsruher Institut       ihrem KIT-Konto direkt anmelden - eine
prozess entstehen1. Im Repositorium         für Technologie als Dienstleistung für die   Registrierung ist zur Dienstnutzung nicht
RADAR4KIT werden Forschungsdaten            Wissenschaft angeboten und setzt auf         erforderlich. Lediglich spezielle Berech-
in Form von Datensätzen, die aus einer      den von FIZ Karlsruhe betriebenen Dienst     tigungen für Datengeber müssen in Ab-
oder mehreren Dateien bestehen können,      RADAR3 auf. Die Speicherung der Daten        sprache mit dem Serviceteam RDM@KIT5
gespeichert. Diese Datenpakete enthalten    findet ausschließlich auf IT-Infrastruktur   zugeteilt werden. Es können auch Konten
die eigentlichen Forschungsdaten sowie      des KIT am SCC statt. Der Dienst richtet     für KIT-Externe angelegt werden, die z.B.
beschreibende Metadaten. Durch die          sich primär an Forschende des KIT            an Projekten des KIT beteiligt sind.

Abbildung 1: Ablauf der Erstellung von Datenpaketen und deren Archivierung und Publikation.

04 |        SCCnews
News - Steinbuch Centre for Computing (SCC)
D IE N S T E U N D IN N OVAT I O N

Für verschiedene Nutzergruppen (z.B.                 chier- und zugreifbar. Für die Daten kann     Publikation in den Status „in Begutach-
Forschungsgruppen, Projekte, Institute)              der Datengeber optional einen Embargo-        tung“ versetzt werden. In diesem Zustand
können voneinander getrennte Arbeits-                zeitraum bestimmen, innerhalb dessen          ist das Datenpaket nicht mehr editierbar.
bereiche in Absprache mit dem Service-               nur die Metadaten öffentlich recherchier-     Über einen eindeutigen Link, den der Da-
team RDM@KIT eingerichtet werden. Bei                und verfügbar sind. Nach Ablauf der Em-       tengeber an den zuständigen Verlag bzw.
RADAR4KIT registrierte Nutzerinnen und               bargofrist werden auch die zugehörigen        die Gutachter weitergeben kann, wird
Nutzer können darin unterschiedliche                 Daten automatisch öffentlich zugreifbar.      ein temporärer Zugriff auf das noch nicht
Rechte erhalten - etwa als Datengeber                RADAR4KIT vergibt für jedes publizierte       veröffentlichte Datenpaket ermöglicht.
mit Publikationsrechten für einen oder               Datenpaket einen Persistenten Identifier      Für die inhaltliche Qualitätssicherung
mehrere Arbeitsbereiche (auch „Kurator“              (hier: Digital Object Identifier, kurz DOI)   der eingestellten Forschungsdaten sind
genannt). Kuratoren können in die für sie            und registriert diesen bei DataCite. Über     die Datengeber ansonsten grundsätzlich
bestimmten Arbeitsbereiche Forschungs-               diesen DOI ist das publizierte Datenpaket     selbst verantwortlich.
daten hochladen, diese bearbeiten, ar-               nachhaltig identifizierbar, zitierfähig und
chivieren und gegebenenfalls publizieren.            kann mit einer herkömmlichen wissen-
Sie können außerdem weitere registrierte             schaftlichen Publikation z.B. im Reposito-
Personen als sog. Subkuratoren für ihren             rium KITopen der KIT-Bibliothek verknüpft
Arbeitsbereich berechtigen. Subkurato-               werden. Publizierte Datensätze werden
ren sind ebenfalls Datengeber, haben                 im Langzeitarchivdienst bwDataArchive6
jedoch nicht die Möglichkeit, Datenpa-               für mindestens 10 Jahre archiviert.
kete eigenständig zu archivieren bzw. zu
publizieren oder andere als Subkuratoren             Datensätze können auch lediglich ar-
zu bestimmen. Durch diese Rollen und                 chiviert werden. Diese können ebenfalls
Rechte sind unterschiedliche Arbeits-                durch Metadaten beschrieben werden,
prozesse umsetzbar (Abbildung 1), die                erhalten jedoch keinen DOI und sind nur
gemeinsam mit den Wissenschaftlerinnen               für einen ausgewählten, vom Datengeber
und Wissenschaftlern aus den diversen                berechtigten Personenkreis, zugreifbar.
Disziplinen vom Serviceteam RDM@KIT
nach und nach ausgestaltet werden.                   RADAR4KIT bietet außerdem weitrei-               RADAR4KIT – a generic research
                                                     chende Möglichkeiten zur Integration             data repository for the KIT
Datenpakete, die noch nicht archiviert               in die IT-Infrastruktur am KIT. Z.B. kann        KIT provides scientists with a new
oder publiziert wurden, sich also im                 zusätzlich zur webbasierten Benutzungs-          interdisciplinary repository for archiving
Bearbeitungszustand befinden, sind nur               oberfläche über eine REST-basierte Pro-          and publishing their research data. The
für berechtigte Datengeber sowie die Ad-             grammierschnittstelle (API) auf den Dienst       data is stored exclusively on the KIT IT
ministratoren einsehbar. Ein Kurator kann            zugegriffen werden. Weiterhin werden             infrastructure at the SCC. Research data
im eigenen Arbeitsbereich jederzeit an               die deskriptiven Metadaten sowohl im             is digital data that is created during
weitere bei RADAR4KIT Registrierte das               RADAR-eigenen als auch im standardi-             the research process. The RADAR4KIT
Recht vergeben, als Datengeber (Kurator              sierten DublinCore-Format über einen             repository stores research data in the
oder Subkurator) zu agieren.                         OAI-Provider öffentlich zum Harvesting           form of data sets, which may consist of
                                                     angeboten, so dass Nachweissysteme               one or more files. These data packages
Für die Publikation eines Datenpakets                und Suchportale diese Daten indizieren,          contain the actual research data as well
sind dessen valide Beschreibung in Form              aufbereiten und nachnutzen können.               as descriptive metadata. The metadata
deskriptiver Metadaten sowie die Verga-                                                               is intended to make it easier for resear-
be einer Lizenz durch den Datengeber                 RADAR4KIT unterstützt einen Peer                 chers to interpret the data in the event
erforderlich. Nach der Publikation sind die          Review-Prozess vor einer Datenpublika-           of subsequent use.
Metadaten und Daten öffentlich recher-               tion. Dazu kann ein Datenpaket vor der

  1
    www.rdm.kit.edu/fodaten.php
  ² www.force11.org/group/fairgroup/fairprinciples
  ³ www.radar-service.eu
  4
    radar.kit.edu
  5
    www.rdm.kit.edu
  6
    bwDataArchive Homepage: www.rda.kit.edu

                                                                                                                     SCCnews        | 05
News - Steinbuch Centre for Computing (SCC)
DI E N STE UND I NN OVATION

Anwendungs- und Systemüberwachung für SAP-Systeme
am KIT
Das SAP Enterprise Resource Planning (ERP)-System unterstützt mit diversen Anwendungen die Geschäftspro-
zesse am KIT. Es wurde das Ziel gesetzt, eine Überwachungs- und Störungsmanagement-Infrastruktur für aktu-
elle und zukünftige SAP-Systeme aufzubauen. Das Konzept zur Realisierung dieses Ziels besteht aus zwei Teilen:
Erstens aus der Systemüberwachung der gesamten SAP-Systemumgebung und zweitens einer Geschäftspro-
zessüberwachung. Der erste Teil des Ziels konnte vom SAP-Systemteam im Juli umgesetzt werden und wird hier
erläutert. Die Prozessüberwachung befindet sich in der Konzeption.                          Dimitri Nilsen, Oleg Dulov, Gerald Helck

Systemüberwachung                           Betriebssysteme ein. Sie besteht aus          Metriken werden anschließend an die
                                            vielen verschieden Komponenten, wie           InfluxDB Zeitreihen-Datenbank verschickt.
In der Vergangenheit wurde die System-      Applikations-Server, Datenbanken,             Außerdem wird InfluxDB für das Sammeln
überwachung des SAP-Systems des KIT         Nutzer-Frontends und diverse Server für       von sowohl SAP-spezifischen Daten als
auf der Basis der bestehenden SAP-          Dokumentenablagen. Außerdem ist ein           auch für Daten von diversen Hilfssyste-
Anwendung innerhalb von SAP ohne            Umstieg auf die modernere SAP HANA-           men der SAP-Systemlandschaft benutzt.
zusätzliche Überwachungswerkzeuge im-       Technologie (Datenbank und die neuen          Die Visualisierung und die Benachrichti-
plementiert. Somit bestand keine zentrale   SAP-Anwendungen) bereits im Gange.            gung (Alerting) erfolgt mittels Grafana-
Anlaufstelle für die Problemerkennung.                                                    Dashboards.
Dies entspricht nicht mehr den modernen     Für die Metriken des Betriebssystems (z.B.
Anforderungen im Betrieb einer solch        CPU-Load, Disk Usage, Netzwerk-Traffic)       Ein weiteres Open-Source-Tool, Ansible,
umfangreichen SAP-Umgebung und              wird ein Open-Source-Stack mit folgen-        wird für die automatisierte Konfiguration
bietet zudem keine Integration zwischen     den drei Komponenten eingesetzt: Tele-        auf Betriebssystemebene verwendet. Die
den einzelnen SAP-Instanzen.                graf, InfluxDB und Grafana (Abbildung 1).     Ansible-Skripte werden im GitLab-Repo-
                                            Telegraf ist ein Dienst, welcher auf den zu   sitorium des KIT gespeichert und mittels
Die aktuelle SAP-Systemlandschaft           überwachenden Systemen läuft und die          Continuous Deployment und Rolling
setzt sowohl Windows- als auch Linux-       relevanten Metriken sammelt. Diese            Upgrades auf die Zielmaschinen ausge-

Abbildung 1: Nutzung des produktiven SAP-Systems dargestellt in Grafana

06 |        SCCnews
News - Steinbuch Centre for Computing (SCC)
D IE N S T E U N D IN N OVAT I O N

Abbildung 2: Wotan Monitoring Dashboard

rollt. Der für die Systemüberwachung           Wotan Monitoring                            im SAP-System, einige davon sind unten
in SAP verwendete Monitoring Stack                                                         aufgeführt:
orientiert sich an Verfahren, die bereits im   Für die Überwachung der weiteren SAP-
Zusammenhang mit dem Grid Computing            spezifischen Metriken hat das SCC eine      „ Laufzeitanalyse von abgebrochenen
Centre Karlsruhe (GridKa) sowie den Lan-       auf der Open-Source-Lösung Nagios/            oder fehlerhaften SAP-Jobs
desdiensten bwCloud und bwSync&Share           Icinga basierende Software Wotan            „ Laufzeitanalyse der SAP BTC/DIA/UPD-
verwendet wurden. Allerdings wird er um        Monitoring gekauft und eingesetzt. Die        Prozesse, Status von UPD (Background
SAP-spezifische Werkzeuge erweitert, um        Wotan Monitoring-Software ermöglicht          Updates)
alle hier benötigten Daten sammeln zu          eine schnelle Problemerkennung und ein      „ Datenbank-Metriken und Analysen der
können.                                        zuverlässiges Eskalationsmanagement           DB-Transaktionen
                                               bei Zwischenfällen und umfasst Überwa-      „ SAP-System- und Kundeneinstellungen
Die so implementierte Systemüberwa-            chung, Alarmierung, Berichterstattung       „ Überprüfung von externen Anbindun-
chung bietet folgende Funktionen an:           und Dokumentation. Die Konfiguration          gen, REST- und RFC-Schnittstellen
                                               basiert auf einem Vorlagenkonzept.          „ Betriebssystemüberwachung
„ Statusübersicht technischer Systeme
  einschließlich einzelner Instanzen,          Vordefinierte Konfigurationsvorlagen kön-   SAP Solution Manager
  Datenbanken und Hosts                        nen als Ausgangspunkt für die Ableitung
„ Visualisierung von Metriken und Ereig-       eigener kundenspezifischer Vorlagen für     Der SAP Solution Manager (SolMan) ist
  nissen mit ihrer aktuellen Bewertung         SAP- und Nicht-SAP-Metriken verwendet       ein Produkt von SAP und dient als zentra-
  und den zuletzt gemeldeten Werten            werden (Abbildung 2).                       le Instanz für die Überwachung des Kon-
„ Drill-Down-Funktionen von Statusin-                                                      figurations- und Installationsstatus aller
  formationen über technische Systeme          Die Wotan-Agenten sind sowohl auf dem       SAP-Systeme sowie für das Change Ma-
  bis hin zu einzelnen Metriken                Betriebssystem als auch im SAP-System       nagement. Der integrierte Maintenance
„ Visualisierung von Metriken und Ereig-       als SAP-spezifische Anwendungen ins-        Optimizer (MOPZ) beschleunigt und
  nissen einschließlich Schwellenwerten        talliert. Außerdem bietet Wotan Moni-       verbessert die Vorbereitung und Durch-
„ Jump-in-Fähigkeit in den metrischen          toring ein Plug-in zur Visualisierung der   führung von Updates und Upgrades. Das
  Monitor zur Anzeige historischer met-        Daten in Grafana. Wotan verfügt über        Einspielen von Support Packages kann
  rischer Werte einschließlich interaktiver    zahlreiche Prüfungen zur Überwachung        mit dem Maintenance Optimizer und
  Auswahl des anzuzeigenden Zeitraums          von SAP-Prozessen und -Aufträgen direkt     den von SAP bereitgestellten Upgrade-

                                                                                                             SCCnews       | 07
News - Steinbuch Centre for Computing (SCC)
DI E N STE UND I NN OVATION

Abbildung 3: Die in der SAP-Systemlandschaft eingesetzte Benachrichtigungsinfrastruktur macht einen effizienten
Incident Management-Prozess möglich.

Inhalten sicherer durchgeführt werden.       Servicemanagement-Tool Jira werden           frastruktur sowohl für IT-System- als auch
Das SAP-Betriebsteam setzt den SolMan        die erkannten Probleme aus Wotan in          für SAP-spezifische Metriken geschaffen.
vor allem zur Überwachung von Schnitt-       Jira-Tickets umgewandelt und stehen zur      Die nächsten Schritte sind unter anderem
stellen und Geschäftsprozessen ein.          weiteren Bearbeitung zur Verfügung. Dies     die kontinuierliche Verbesserung der
                                             stellt einen transparenten Fehlerbehe-       Alarmierung und die Einrichtung der ver-
Alerting und IT-Incident Management          bungsprozess für die SAP-Administrato-       schiedenen Überwachungsfunktionen des
                                             ren und -Administratorinnen dar.             SAP Solution Managers für das IT-Service-
Um die schnelle und zuverlässige Reak-                                                    Management sowie für die Geschäfts-
tion auf die vom Monitoring erkannten        Ausblick                                     prozesse. Für die Zukunft ist eine stärkere
Probleme zu gewährleisten, wird eine                                                      Integration von Jira geplant.
Reihe von Benachrichtigungsmedien            Durch den Einsatz von Top-Level-Mo-
eingesetzt (Abbildung 3). Standardmäßig      nitoring-Lösungen wurde eine zentrale
wird eine Benachrichtigung per E-Mail        Überwachungs- und Benachrichtigungsin-
versendet. Weitere Benachrichtigungska-
näle sind MS Teams Chats und SMS (bei
Wotan Monitoring).
                                                Application and System Monitoring for SAP Systems at KIT
Wotan bietet die Möglichkeit, verschie-         The SAP Enterprise Resource Planning (ERP) system supports business processes at KIT
dene Arten von Wartungszeiträumen               with various applications. The objective was to establish a monitoring and incident
(Downtimes) zu definieren, z.B. periodi-        management infrastructure for current and future SAP systems. The concept to reach
sche Downtimes, bei denen Zeiträume             this goal consists of two parts: Firstly, system monitoring of the entire SAP system
für sich wiederholende Wartungen                environment and secondly, business process monitoring. The first part of the objective
eingeplant werden können. Durch die             was implemented by the SAP system team in July and is explained here. The process
Verbindung der Wotan-Software mit dem           monitoring is currently in the conception phase.

08 |        SCCnews
News - Steinbuch Centre for Computing (SCC)
D IE N S T E U N D IN N OVAT I O N

Das neue NETVS
Das SCC stellt bereits seit vielen Jahren eine mandantenfähige Oberfläche für die Verwaltung von Netzdiensten
wie beispielsweise DNS für die IT-Beauftragten und Verantwortlichen in der IT-Administration am KIT zur Verfü-
gung. Nun geht das Netzdiensteverwaltungsystem (NETVS) in die nächste Runde – mit neuer Oberfläche, Archi-
tektur und Features. Dieser Artikel soll einen Einblick in die Architektur und Neuerungen des NETVS schaffen.
                                                                                                                                Janis Streib

Der Netzbetrieb steht regelmäßig vor       bestimmten großen Ausgaben zu einer           Die Anmeldung im NETVS geschieht auch
neuen Anforderungen und Herausforde-       sehr hohen Serverlast und gegebenenfalls      nicht mehr über eine eigene Anmelde-
rungen. Um diesen gerecht zu werden,       sogar zum Abbruch der Anfrage geführt.        maske, sondern über OpenID Connect2.
wird das hauseigene NETVS1 mitsamt                                                       Die Anmeldung erfolgt somit zentral über
zugehöriger Datenbankstruktur und An-      2. Wartbarkeit                                den Shibboleth Identity Provider des KIT,
wendungslogik stetig weiter entwickelt.    Die Serveranwendung hinter dem                der auch eine Zwei-Faktor-Authentifizie-
Seit dem Wochenende des 7./8.11.2020       Webinterface kommunizierte direkt mit         rung erlaubt (Abbildung 1).
ist nun das neue Webinterface mit neuer    der Datenbank. So musste das gesamte
Entwicklungsschnittstelle und Datenbank    Datenmodell nochmals erneut (parallel         API 3.0
in Betrieb. Kernfunktionen sind derzeit    zum API-Server) vorgehalten werden.
die Verwaltung von DNS-Einträgen sowie     Das führte dazu, dass alle Änderungen         Die Entwicklerschnittstelle wurde
von MAC-Adressen-basierter Authen-         am Datenmodell an mehreren Stellen            ebenfalls grundsätzlich überarbeitet
tifikation. Dabei können Änderungen        gepflegt werden mussten.                      und löst API 2.x ab, die nun nur noch
transaktional – also durch Ausführung                                                    eingeschränkt zur Verfügung steht. Damit
mehrerer Aktionen in einem Durchlauf,      3. Konsistenz                                 wurde erreicht, dass die Struktur über alle
ohne die gegenseitige Beeinflussung        Die Datenein- und -ausgabe verhielten         Ebenen hinweg konsistent ist und sich
paralleler Ausführungen – geplant und      sich zwischen API und Webinterface nicht      die Semantik und Dokumentation aus der
durchgeführt werden.                       konsistent. So waren manche Ausgaben          API ableiten lässt – die API dokumentiert
                                           in der API nicht möglich, die das Web-        sich somit selbst. Durch diese Eigen-
Anwendungsarchitektur                      interface jedoch darstellen konnte und        schaften ist es erstmals möglich, einfach
                                           umgekehrt. Genauso waren Feldbeschrei-        zu wartende, erweiterte Ressourcen für
Das NETVS besteht im Kern aus drei         bungen und die Semantik von Parame-           Entwickler bereitzustellen. So gibt es nun
Komponenten: Der Datenbank samt            tern nicht immer gleich.                      einen API-Browser3 sowie eine Python-
integrierter Anwendungslogik (NETDB),                                                    Bibliothek4, die automatisch aus der API
dem API-Server zur Bereitstellung der      Um diese Probleme anzugehen, wurde            erzeugt werden.
Programmierschnittstelle (API) sowie       ein vollständiges Redesign der Architektur
dem Webinterface. In der bisherigen        vorgenommen. Das Webinterface besteht         Ein weiteres neues Werkzeug in der API
Architektur bestand das Webinterface       nun aus zwei Komponenten: Der Middle-         ist die Join-Funktion im Transaktions-
aus genau einer Serverkomponente, die      ware, die serverseitig ausgeführt wird, so-   kontext. Diese erlaubt die Formulierung
mittels des Templatesystems “Jinja2” und   wie einem JavaScript-Frontend, was beim       komplexerer API-Abfragen, vergleichbar
einer direkten Verbindung zur NETDB das    Nutzer im Browser läuft. Die Middleware       zu Joins in relationalen Datenbanken. Bei-
Webinterface mitsamt den gewünschten       dient jetzt nur noch zur Bereitstellung von   spielsweise kann man nun in genau einer
Daten serverseitig erzeugt. Allerdings     API-Diensten, die nicht durch die NETDB       Abfrage zu allen Domain-Namen, die ei-
zeigten sich schnell einige Nachteile      bereitgestellt werden können (beispiels-      nem bestimmten Muster entsprechen, die
dieses Entwurfs:                           weise MacFinder), und zur Erstellung von      zugehörigen DNS-Einträge transaktional
                                           Session-Tokens. Alle anderen NETDB-           abfragen, ohne dafür separate Anfragen
1. Performance                             bezogenen Anfragen werden vom Client          tätigen zu müssen.
Da bei jedem Seitenaufruf die Seite        nun direkt an den API-Server gerichtet.
serverseitig neu und individuell erzeugt   Die Darstellung erfolgt dann komplett im
werden musste, hatte man mit einer         Client.
bestimmten Mindestladezeit zu rechnen.                                                     1 netvs.scc.kit.edu
Außerdem skalierte die Ausgabe gro-                                                        ² www.scc.kit.edu/dienste/openid-connect.php
ßer Datenmengen nicht. Das hatte bei                                                       ³ git.scc.kit.edu/scc-net/netvs/netdb-client-lib
                                                                                           4
                                                                                             netvs.scc.kit.edu/swagger

                                                                                                                SCCnews            | 09
News - Steinbuch Centre for Computing (SCC)
DI E N STE UND I NN OVATION

                         NETVS                                                                                        NETVS

                    NETDB (PostgreSQL)                                                                                                                 Account-Daten
                                                                           Account-Daten
                                                                                                              NETDB (PostgreSQL)
                        Daten
                                                                                                                                                   Gruppenmitgliedschaften             LDAP (IDM)
                                                                                                                   Daten
               PlPython Anwendungslogik
                                                                                                          PlPython Anwendungslogik
                                                                                                                                  Session-Token
                                  NETVS Middleware
                                                                                                                                NETVS Middleware
        API-Server               Flask, Jinja2, Bootstrap   Authentifikation    LDAP (IDM)
                                                                                                  API-Server                           Flask                   Nutzerdaten    OpenID Connect Provider
        CherryPy                           Tools
                                    (z.B. MacFinder)                                               CherryPy                            Tools
                                                                                                                                 (z.B. MacFinder)
      API-Anwendung                       Nutzer                                                                                            Session-Metadata

        z.B. curl                     Webbrowser                                                              Anwendungsdaten   NETVS Frontend
          wget                                                                                                                   Vue.js, Bootstrap
           ...

                                                                                               API-Anwendung                           Nutzer                                Session-Initiierung

                                                                                             z.B. netdb client-lib                 Webbrowser
                                                                                                      curl
                                                                                                      wget
                                                                                                       ...

Abbildung 1: Übersicht über die bisherige (links) und die neue Architektur (rechts) des NETVS

Abbildung 2: Die Eingabefunktionen werden nun einheitlich und größtenteils konsistent mit der API dargestellt.

Dieses “traditionelle” Vorgehen hat einen                              Hier werden die nötigen Parameter, Feld-                        Rechteverwaltung
größeren lokalen Verarbeitungsaufwand                                  namen und Feldbeschreibungen vollstän-
zur Folge und kann – je nach Anwen-                                    dig zur Laufzeit aus der API generiert. Bei                     Große Änderungen ergeben sich auch bei
dung – keine Konsistenz zwischen den                                   Anpassungen der API sind keine Anpas-                           der Rechteverwaltung. IT-Beauftrage und
Anfragen garantieren.                                                  sungen im Client mehr nötig.                                    Verantwortliche in der IT-Administration
Die Selbstdokumentation sowie die                                      Mit der API 3.0 ändert sich auch die                            haben jetzt feinere Kontrolle über die
Join-Funktion bilden die Grundpfeiler des                              Authentifikation: Anstatt wie bisher mit                        Berechtigungen auf die ihnen zugeteilten
JavaScript-Clients. Ein Beispiel hierfür ist                           Client-Zertifikaten erfolgt die Authenti-                       Ressourcen.
die Generalisierung der Eingabefunktionen                              fikation nun über Tokens, die über das
(Anlegen und Bearbeiten) (Abbildung 2).                                NETVS erstellt werden können.

10 |           SCCnews
D IE N S T E U N D IN N OVAT I O N

Hierzu wurden mehrere neue Konzepte         3. Organisationseinheiten und
eingeführt:                                    Unter-Organisationseinheiten
                                            Organisationseinheiten (OEs) sind nun
1. Unterkonten                              expliziter in die Rechteverwaltung ein-
Unterkonten dienen zur Einschränkung        gebunden. IT-Beauftragte (ITBs) nehmen
der API-Tokens. So kann man jetzt ein       hierbei die Rolle der OE-Betreuer ein und
Unterkonto seines eigenen Kontos            können alle Gruppen und Broadcast-
anlegen, welches beispielsweise keine       Domains, die ihrer OE zugeteilt sind,
datenmodifizierenden Funktionen erlaubt.    administrieren. Auch können durch OE-
Reguläre Tokens zur Verwendung in eige-     Betreuer weitere OE-Betreuer hinzugefügt
nen Anwendungen können ausschließlich       werden. Des Weiteren verfügen OEs
für Unterkonten angelegt werden.            über eine Domainliste, die als möglicher
                                            Namensraum für die Gruppen zugeteilt
2. Gruppen und Untergruppen                 werden können.
Gruppen bestimmen im neuen NETVS
nun, welche Konten Rechte auf Broad-        OEs können beliebig viele Unter-OEs
cast-Domains (also den Adressraum,          besitzen. Die Rechte der OE-Betreuer
kurz BCDs) und Domains (Namensraum)         vererben sich entsprechend durch die
haben. Mitglieder einer Gruppe können       Hierarchie.
dann Operationen auf den durch die
Gruppe vorgegebenen Namens- und             Die bisherigen Adressbereiche im DNS-
Adressraum ausführen (z.B. DNS-Records      Verwaltungssystem (DNSVS), die zuvor
anlegen). Gruppen können optional mit       Einstiegspunkt und Rechteanker waren,
den gleichnamigen Gruppen aus dem           existieren nun nicht mehr. Stattdessen
zentralen Identity Management (IDM)         ergeben sich die Adressbereiche aus                Fazit
synchronisiert werden (Abbildung 3).        den BCDs, denen der jeweils vorherige
                                            DNSVS-Adressbereich zugeordnet war.                Das neue NETVS bringt viele
                                            Hierdurch sind auch Dualstack-Bereiche             technische und strukturelle Neu-
              Gruppe                        (also Bereiche mit einem IPv4- und IPv6-           erungen mit sich. Neben weitrei-
                                            Subnetz) in einer Ansicht einsehbar und            chenden Umstrukturierungen –
             Mitglieder                     verwaltbar. Zuvor waren hierfür zwei               begonnen bei den Änderungen der
               ab1234                       separate DNSVS-Bereiche nötig.                     Architektur bis hin zu der neuen
               xy6789                                                                          Gruppenstruktur – sind auch neue,
                                                                                               mächtige Werkzeuge hinzugekom-
                                                                                               men.
               BCDs
               oe-netz1
                                                                                               Die Umstellung lief im Großen und
               oe-netz2
                                                                                               Ganzen erfolgreich, und kleinere
                                                                                               Probleme konnten schnell behoben
              FQDNs                                                                            werden. Sollten dennoch Probleme
             oe.kit.edu                                                                        auftreten, hilft das NETVS-Team
                                                                                               gerne. E-Mail: netvs@scc.kit.edu
Abbildung 3: Betreuer-, Broadcastdo-
main- und Domainzuordungen werden
nun über Gruppen abgebildet.

                                               The new NETVS
                                               For many years, the SCC has provided a multi-client capable interface for the
Untergruppen bilden hier das Gegenstück
                                               administration of network services such as DNS for the IT appointees and
zu den Unterkonten und erlauben die
                                               administrators at KIT. Now the network services management system (NETVS)
Einschränkung des Namens- und Adress-
                                               is entering the next round – with a new interface, architecture and features.
raums der Unterkonten. Untergruppen
                                               This article is intended to provide an insight into the architecture and innova-
können von den Gruppenmitgliedern
                                               tions of NETVS.
selbst angelegt und administriert werden.

                                                                                                              SCCnews        | 11
DI E N STE UND I NN OVATION

Der GridKa-Rechencluster – Wissenschaft Non-Stop
Seit fast zwei Jahrzehnten bietet das Grid Computing Centre Karlsruhe (GridKa) Ressourcen und Services für da-
ten- und rechenintensive Experimente der Teilchen- und Astroteilchenphysik. Neben Tape- und Platten-Speicher
betreibt das GridKa einen der größten Rechencluster des weltweiten LHC Computing Grids. Für eine hohe
Verfügbarkeit ist das GridKa praktisch durchgehend in Betrieb und durchläuft daher bereits seit Jahren eine
andauernde Evolution.                                                                                            Max Fischer

                                     Als eines von 13 Tier-1-Zentren des Welt-    für die Auswertung aufbereiten, bis hin
                                     weiten LHC Computing Grids (WLCG)            zu Physikanalysen, die unentwegt Daten
                                     ist das Grid Computing Centre Karlsruhe      durchsuchen, ist alles dabei. Natürlich
                                     (GridKa) speziell auf die Bedürfnisse der    hat dabei jede Forschungskollaboration
                                     großen Kollaborationen aus Teilchen- und     unterschiedliche Schwerpunkte, die sich
                                     Astroteilchenphysik ausgelegt. Eines der     auch über die Zeit ändern. Wer diese Wo-
                                     Alleinstellungsmerkmale eines Tier-1-Zen-    che noch CPUs mit Simulationen an ihre
                                     trums im WLCG ist die Verfügbarkeit          Grenzen bringt, liest vielleicht nächste
                                     eines Tape-Speichers: Dieser ermöglicht      Woche schon Daten aus aller Welt über
                                     die sichere und langfristige Speicherung     das Netzwerk.
                                     von Rohdaten aus den Detektoren der
                                     einzigartigen Experimente. Zusätzlich bie-   Apropos Kollaborationen: Einzelne Nutze-
                                     tet der Platten-Speicher1 sowohl Volumen     rinnen oder Nutzer sucht man im GridKa-
                                     als auch Bandbreite, um Daten kurz- und      Rechencluster fast vergeblich. Stattdessen
                                     mittelfristig zu speichern und diese auf     schickt praktisch jede Nutzergruppe soge-
                                     der ganzen Welt verfügbar zu machen.         nannte Pilot Jobs, welche als Platzhalter
                                     Für die effiziente Vorverarbeitung und       agieren und sich nur für Ressourcen in
                                     Analyse dieser Daten dient der GridKa-       der Warteschlange des Rechenclusters
                                     Rechencluster.                               anstellen. Erst wenn eine Maschine des
                                                                                  Clusters den Pilot Job ausführt, ruft dieser
                                     Bunter Mix an Arbeit                         die aktuellsten Rechenaufträge der Nut-
                                                                                  zergruppe ab und führt sie aus. Nur auf
                                     Der Rechencluster am GridKa ist              diese Art können die fast 200 Rechen-
                                     ausschließlich ausgelegt auf High-           cluster im WLCG durch tausende Nutzer
                                     Throughput Computing (HTC), also einen       von dutzenden Institutionen verwendet
                                     möglichst hohen Gesamtdurchsatz an           werden, ohne im Verwaltungschaos zu
                                     Berechnungen und Daten. Jeder einzelne       enden – sowohl für Administrierende als
                                     Rechenauftrag (Job) ist „klein“, mit einer   auch Nutzende.
                                     Nutzung von 1 oder 8 CPU-Kernen, 2 bis
                                     4 GB RAM pro Kern und typischen Lauf-        Keine Zeit für Pausen
                                     zeiten bis zu einem Tag, maximal einer
                                     Woche. Den Ausgleich macht die Masse:        Eine solche Menge und Vielfalt an Jobs
                                     Ungefähr 30.000 Jobs laufen gleichzeitig     abzuarbeiten, bringt seine ganz eigenen
                                     auf den fast 50.000 CPU-Kernen des           Herausforderungen mit sich. Während
                                     Clusters. So werden weit mehr als zwei       HPC-Rechencluster wie HoreKa oder
                                     Millionen Jobs im Monat abgearbeitet.        ForHLR im wahrsten Sinne des Wortes
                                                                                  einen Scheduler – also einen Terminplaner
Blick in den Rechnerraum
                                     Dabei könnten die Rechenaufgaben             für die Ausführung von Jobs – betrei-
des Grid Computing Centre
                                     nicht unterschiedlicher sein. Von Simu-      ben, ist dies in einem HTC-Rechencluster
Karlsruhe (GridKa) am
Campus Nord des KIT. (© KIT)         lationen, die hauptsächlich physikalische    wie dem von GridKa heutzutage nicht
                                     Modelle berechnen, über Datenrekons-         realistisch: Die Vielzahl kleiner Jobs ohne
                                     truktionen, welche Detektor-Rohdaten         vorab bekannte Laufzeit bedeutet, dass

12 |        SCCnews
D IE N S T E U N D IN N OVAT I O N

      Mit CPUs gegen COVID-19

      Das Zusammenspiel des GridKa-Clusters und der Pilot Jobs der Nutzerkollaborationen ist technisch angelehnt am Volunteer-
      Computing, dem Verfügbarmachen von Rechenressourcen als Beitrag zu einem größeren Rechenvorhaben aus kleinen Einzel-
      aufgaben. Dies macht es möglich, schnell und zuverlässig Ressourcen für wichtige Rechenaufgaben zur Verfügung zu stellen:
      Seit April spendet das GridKa dauerhaft zwischen 5.000 und 10.000 CPU-Kerne an die Volunteer-Computing-Projekte
      Folding@Home und Rosetta@home sowie die Kollaboration WeNMR, um damit die Forschung über die Viruskrankheit
      COVID-19 zu unterstützen und zu beschleunigen.3,4 (doi.org/10.1051/epjconf/201921403053)

andauernd irgendwo im Cluster Ressour-                    Die Tore zur Welt
cen freiwerden. Um eine möglichst hohe
Auslastung zu erreichen, müssen diese                     Obwohl der GridKa-HTCondor-Rechen-
Ressourcen sowohl schnell, als auch für                   cluster immer noch seine ursprünglichen
alle Nutzergruppen fair neu vergeben                      Kernkomponenten nutzt, ist er bis heute
werden.                                                   bereits auf mehr als die doppelte Größe
                                                          angewachsen. Über 1.000 Rechner wer-
Da die Hardware des GridKa-Clusters                       den von dem System verwaltet und ihre
regelmäßig erweitert wird, muss auch                      Ressourcen stetig neu aufgeteilt, um den
seine Steuersoftware – das Batch System                   aktuellen Anforderungen der unterstütz-
– fortlaufend angepasst und verbessert                    ten Kollaborationen zu entsprechen.
werden. Um dadurch nicht die angestreb-                   Doch tatsächlich ist etwas scheinbar
te Auslastung von 95% bis 98% zunichte                    Simples wie “Ressourcen aufzuteilen” bei
zu machen, muss dies im laufenden                         dieser Größe alles andere als trivial. Wäh-
Betrieb geschehen. Bereits Anfang 2018,                   rend die kleinsten Rechner des GridKa-
als der GridKa-Cluster nur etwa 20.000                    Clusters nur 16 CPU-Kerne bieten, wartet
CPU-Kerne umfasste, war die damalige                      die neueste Generation mit 256 CPU-Ker-
Batch System Software jedoch bis an die                   nen auf. Diese gleichmäßig, schnell und
Grenze ihrer Möglichkeiten ausgereizt.                    fair an die anstehenden Jobs aufzuteilen,
Ein kompletter Austausch gegen eine                       ist auch weiterhin eine Herausforderung.
weitaus besser skalierende Software war
unumgänglich.                                             Doch nicht nur der GridKa-Cluster selbst
                                                          entwickelt sich weiter, auch das Grid geht
Zu Gute kam in dieser Situation die hohe                  mit der Zeit. Die Verbindung zwischen
Flexibilität der neu gewählten Batch                      Rechencluster und Grid sind die Compute
System Software HTCondor2. Ausgelegt                      Elements (CE): im Prinzip Submittierungs-
auf hochgradig verteilte, unabhängige                     knoten für den Rechencluster, zugänglich
                                                                                                        The GridKa Compute Cluster –
Komponenten, skaliert diese fast automa-                  über die Authentifizierungsverfahren des
                                                                                                        non-stop scientific computing!
tisch mit der Größe eines Rechenclusters                  Grid. Nachdem das GridKa jahrelang die
                                                                                                        For almost two decades, the Grid
und nicht mit der Rechenleistung einer                    Grid Computing Middleware Nordugrid
                                                                                                        Computing Centre Karlsruhe (GridKa) is
einzigen zentralen Maschine. Über einen                   ARC CE betrieben hat, ist dieses Jahr
                                                                                                        providing resources and services for data-
Zeitraum von mehreren Wochen konnten                      auch hier ein Generationenwechsel voll-
                                                                                                        and computation-intensive experiments
somit schrittweise einzelne Rechenknoten                  zogen worden: seit August wird bei Grid-
                                                                                                        in particle and astroparticle physics. In
aus der Kontrolle des alten Batch-Systems                 Ka nun das HTCondor CE verwendet und
                                                                                                        addition to tape and online storage, Grid-
in das neue überführt werden.                             bietet somit eine einheitliche Technologie
                                                                                                        Ka operates one of the largest computing
                                                          sowohl lokal als auch für die Anbindung
                                                                                                        clusters of the worldwide LHC Compu-
                                                          an die Welt.
                                                                                                        ting Grid. To ensure high availability, Grid-
                                                                                                        Ka is in operation literally continuously
  1
      SCC News 2/2018                                                                                   and has therefore been undergoing a
  2
      research.cs.wisc.edu/htcondor                                                                     continuous evolution for years.
  3
      www.erum-data-idt.de/post/cobald_tardis_covid-19/
  4
      www.scc.kit.edu/ueberuns/13531.php

                                                                                                                        SCCnews        | 13
DI E N STE UND I NN OVATION

Jupyter@SCC
Einsteiger und Studierende sehen sich bei der Nutzung der HPC-Systeme des SCC häufig mit einer steilen Lern-
kurve konfrontiert. Seit Oktober 2020 steht daher nun zusätzlich auch Jupyter als alternativer, graphischer und
web-basierter Zugangsweg zu den HPC-Systemen zur Verfügung.
                                                                                Jennifer Buchmüller, Samuel Braun und Simon Raffeiner

Der Zugriff auf HPC-Systeme erfolgt           Schritte, hier am Beispiel einer Python-       des Codes nötigen Schritte (z.B. Aufruf
traditionell über textbasierte Komman-        Anwendung dargestellt:                         eines Compilers) manuell durchgeführt
dozeilenschnittstellen, die mit Hilfe von                                                    werden.
verschlüsselten Netzwerkprotokollen, z.B.     „ Aufbau einer SSH-Verbindung
Secure Shell (SSH), über Netzwerke wie        „ Editieren der Python-Dateien in einem        Jupyter auf den HPC-Systemen
das Internet genutzt werden. Wird diese         Texteditor
Verbindung durch Protokolle wie X11           „ Einstellen eines Jobs in die Warte-          Das Einrichten eines JupyterLab auf einem
oder VNC erweitert, ist auch eine graphi-       schlange                                     Laptop oder PC nimmt weniger als 20
sche Ausgabe möglich. Das klingt nicht        „ Analyse der Ergebnisse                       Minuten in Anspruch. Die Einführung von
nur kompliziert, insbesondere für Erstnut-                                                   JupyterLab in der komplexen Infrastruktur
zerinnen und -nutzer ist es das auch.         Ein JupyterLab kombiniert diese Schritte in    eines HPC-Systems mit Hunderten von Re-
                                              einer einzigen, interaktiven Web-Ansicht.      chenknoten, einem Queuing-System, ei-
Was ist Jupyter?                              Die Verbindung zum HPC-System wird             ner Benutzerverwaltung mit einer Vielzahl
                                              automatisch hergestellt.                       von Projekten, komplexen Zugriffsregeln
Das vor einigen Jahren gegründete             Die Bearbeitung des Codes wird durch           und strikten Sicherheitsregeln erfordert
Jupyter-Projekt1 stellt eine einfache, web-   sogenannte „Code-Konsolen“ direkt im           hingegen deutlich mehr Aufwand. Die
basierte Entwicklungsumgebung zur Ver-        Browser realisiert. Diese bieten Syntax-       verschiedenen Bestandteile eines Jupy-
fügung. Die darin verwendeten Program-        Highlighting, integrierte Code-Prüfung         terLabs müssen voneinander entkoppelt,
miersprachen Julia, Python und R (daher       und andere Komfortfunktionen ähnlich           auf verschiedene Hardwarekomponenten
der Name „Jupyter“) sind in einigen Diszi-    einer traditionellen Integrierten Entwick-     aufgeteilt und mit einigen zusätzlichen
plinen wie dem der Künstlichen Intelligenz    lungsumgebung (IDE) (Abbildung 1). Die         Komponenten versehen werden.
und dem Machine Learning (KI/ML) stark        meisten Jupyter-Code-Konsolen unter-
verbreitet und besonders geeignet für den     stützen Dateiformate wie Bilder, CSV- und      Dazu wird auf einem speziellen Server, der
Einstieg ins [technisch-wissenschaftliche]    JSON-Dateien, Markdown, PDFs, Vega-            sich in der Nähe des HPC-Systems befin-
Programmieren. Die Nutzenden können           und Vega-Lite-Visualisierungen.                det, die Software „JupyterHub“ installiert.
in einem Web-Frontend Dateien öffnen,                                                        Auf den HPC-Systemen werden die zu
diese in einem sogenannten „JupyterLab“       Die eigentlichen Laufzeitumgebungen,           unterstützenden Jupyter-Kernel installiert,
interaktiv bearbeiten und dort auch direkt    die für die Ausführung des Codes benutzt       da die Berechnungen dort und nicht auf
ausführen. Die Ausgaben des Programm-         werden, liegen als sogenannte „Kernel“         dem Web-Frontend laufen werden.
codes sind direkt im Dokument sichtbar.       vor. Über das Kernel-Backend können
                                              die Nutzerinnen und Nutzer die in der          Das JupyterHub-Web-Frontend über-
Seit Ende Oktober bietet das SCC Jupyter      Code-Konsole bearbeiteten Codes sofort         nimmt zunächst im Zusammenspiel mit
als Service an. Neben dem klassischen Zu-     interaktiv ausführen. Einer der bekann-        dem föderierten Identitätsmanagement-
gang via SSH, ist nun auch der interaktive    testen Kernel im Jupyter-Projekt ist der       system bwIDM die Zwei-Faktor-Authen-
Zugriff auf alle HPC-Systeme des SCC via      ipython-Kernel. Dieser ermöglicht die          tifizierung mittels OpenID Connect.
Webbrowser möglich.                           interaktive Ausführung von Python-Code.        Nach erfolgter Authentifizierung wählen
                                              Das Jupyter-Projekt bietet eine ständig        die Anwenderinnen und Anwender die
Programmieren leicht gemacht                  wachsende Liste von Kerneln für Laufzeit-      gewünschten Ressourcen aus einer Liste
                                              umgebungen wie z.B. Julia, R, Octave,          vorgefertigter Optionen z.B. eine GPU für
Jupyter ermöglicht damit eine neue Art        Haskell, C/C++ an. Sollte Jupyter eine         eine Dauer von einer Stunde. Aus dieser
des interaktiven Supercomputings. Der         Laufzeitumgebung noch nicht unterstüt-         Auswahl wird automatisch eine Anforde-
klassische Prozess der Programmierung         zen, können der Code im Web-Frontend           rung für das Queueing-System generiert.
einer Anwendung, die auf dem Super-           editiert und dann in der interaktiven          Dieses prüft die Anforderung und allokiert
computer läuft, umfasst mindestens vier       Kommando-Konsole die zur Ausführung            die Ressourcen auf den Compute-

14 |                                                                                               jupyter.org
                                                                                               1

             SCCnews
D IE N S T E U N D IN N OVAT I O N

                                                                                                       Effektive Nutzerunter-
                                                                                                       stützung

                                                                                                        Das SCC vertritt schon
                                                                                                        lange die Philosophie, dass
                                                                                                        auf den HPC-Systemen
                                                                                                        sogenannte „Modulsyste-
                                                                                                        me“ angeboten werden,
                                                                                                        die einen einfachen Zugriff
                                                                                                        auf gängige Softwarekom-
                                                                                                        ponenten wie wissenschaft-
                                                                                                        liche Bibliotheken oder
                                                                                                        Compiler ermöglichen. Un-
                                                                                                        ter diesen Modulsystemen
                                                                                                        befinden sich auch solche,
                                                                                                        die verschiedene Python-
                                                                                                        Module, Bibliotheken und
                                                                                                        andere Softwarekompo-
                                                                                                        nenten für bestimmte
                                                                                                        Einsatzzwecke bündeln. Die
Abbildung 1: Beispiel einer Programmieraufgabe in der JupyterLab-Entwicklungsumgebung.
                                                                                                        KI/ML-Community findet
                                                                                                        beispielsweise im Modul
Knoten des HPC-Systems. Innerhalb           wenn verschiedenen wissenschaftlichen       „jupyter_ml“ mehr als 30 gängige Py-
dieser Ressourcen wird ein sogenannter      Gemeinschaften genau die Softwareum-        thon-Module und kann diese mit Jupyter
„JupyterSpawner“ gestartet, der die         gebung zur Verfügung steht, die am bes-     sofort für Berechnungen auf den neuen
Verbindung zwischen Web-Frontend und        ten zu ihnen passt. Die Komplexität dieser  GPUs nutzen. Die eingangs erwähnte stei-
HPC-System realisiert. Gleichzeitig wird    Aufgabe lässt sich bereits an einem ein-    le Lernkurve, die bei einem textbasierten
in der Web-Anwendung eine JupyterLab-       fachen Beispiel, nämlich der Berechnung     SSH-Zugang nötig wäre, entfällt. Jupyter
Instanz gestartet und im Hintergrund eine   einer Sinusreihe, zeigen. Sogar in Python,  ist sowohl auf dem deutschlandweit
Verbindung von dieser JupyterLab-Instanz    der derzeit meistverbreiteten Skriptspra-   verfügbaren Tier-2-System ForHLR II als
zum zugehörigen JupyterRunner auf dem       che, gibt es dafür mindestens drei verbrei- auch auf dem für das KIT und das Land
HPC-System geschaltet. Damit ist die Ein-   tete Lösungen. In Python muss man zuerst    betriebenen bwUniCluster 2.0 verfügbar.
richtung komplett und alle im Web-Brow-     ein Modul wählen, das die Sinusfunktion     Weitere Informationen zu Jupyter@SCC
ser ausgelösten Aktionen und Programme      implementiert und die Auswertung der        finden sich unter www.scc.kit.edu/diens-
laufen nun auf den HPC-Ressourcen. Die      Programmzeile print(sin(x)) for             te/JupyterHPC.
Ausgaben der Berechnungen werden            x in list(xi) ermöglicht. Sowohl
wieder zurück an den Web-Browser über-      das integrierte math-Modul als auch
                                                                                             Jupyter@SCC
tragen und können dort sofort visualisiert  die bei Wissenschaftlern weit verbrei-
                                                                                             Since October 2020 the SCC now also offers
werden. Die Ausführung des Codes findet     teten Module NumPy und SciPy bieten
                                                                                             Jupyter as an alternative access path to the
komplett auf dem HPC-System statt, die      entsprechende Funktionen. NumPy und
                                                                                             HPC systems. Jupyter is a new way of “inter-
Anwenderinnen und Anwender können           SciPy wiederum können auf verschiedene
                                                                                             active supercomputing”, enabling interactive
also auch auf Software oder Hardware        numerische Hilfsbibliotheken (z.B. Intel
                                                                                             work with runtime environments like Python
zugreifen, die lokal nicht installiert oder MKL oder OpenBLAS) zurückgreifen. Am
                                                                                             and data visualizations. Users only need a
nicht vorhanden ist.                        Ende hängt die Performance des Python-
                                                                                             web browser on their local system to use
                                            Codes auf einem bestimmten System von
                                                                                             Jupyter and have access to all resources on
Herausforderung Jupyter-Software-           der richtigen Kombination aller genann-
                                                                                             the HPC systems, including GPUs. Preconfi-
Ökosystem                                   ten Komponenten ab. Dies ist ein sehr
                                                                                             gured software environments, e.g. for GPU-
                                            einfaches Beispiel, bei Anwendungen
                                                                                             accelerated Machine Learning using Python,
Auf den ersten Blick sieht dieses Konzept   der Künstlichen Intelligenz (KI) und des
                                                                                             are available. Jupyter is
bereits wie eine sehr gute Lösung aus,      Maschinellen Lernens (ML) wird es noch
                                                                                             available both on ForHLR II and bwUniCluster
allerdings wird es nun erst richtig kom-    viel komplizierter.
                                                                                             2.0. More information can be found
pliziert. Höchste Leistung und effizientes
                                                                                             at www.scc.kit.edu/dienste/JupyterHPC.
Arbeiten werden erst dann ermöglicht,

                                                                                                           SCCnews       | 15
F O R SCHUNG UN D PR OJEKTE

Lohnt sich das Upgrade auf die neue NVIDIA A100 GPU?
Immer mehr Supercomputer der Spitzenklasse nutzen die Rechenpower von Hardware-Beschleunigern. Zum
ersten Mal wird auch ein System mit den neuen NVIDIA A100 GPUs unter den Top500 gelistet. Die Hardware-
Architektur der Beschleuniger ist dabei speziell für KI-Algorithmen entwickelt worden. Doch lohnt sich ein Um-
stieg auf diese neuen Systeme? Die Berechnungen für diese Studie wurden auf den im Juli am SCC in Betrieb
genommenen Hochleistungsservern vom Typ DGX A100 durchgeführt.                                                          Hartwig Anzt, Tobias Ribizel

In den letzten zehn Jahren haben Gra-        In Abbildung 1 sind die Beschleunigun-                    Sparse-Linear-Algebra- und wissenschaft-
fikkarten (GPUs) immer mehr Einzug           gen dargestellt, die sich ergeben, wenn                   liche Rechenanwendungen – hängen
in HPC-Plattformen (High Performance         man eine NVIDIA V100-GPU durch eine                       die Leistungsverbesserungen vom
Computing) gehalten, und in der Top500-      NVIDIA A100-GPU ohne Code-Modifi-                         individuellen Datenformat, der Kernel-
Liste vom November 2020 wurden sechs         kationen ersetzt. Während die Haupt-                      Implementierung und den spezifischen
der zehn schnellsten Systeme mit GPU-        speicherbandbreite auf dem Papier von                     Problemeigenschaften ab. Die in Abbil-
Beschleunigern ausgestattet. Die gängigs-    900 GB/s (V100) auf 1.555 GB/s (A100)                     dung 1 dargestellten Beschleunigungs-
te Form von Beschleunigern sind GPUs.        gestiegen ist, liegen die Beschleunigungs-                werte für die SpMV-Kernel aus NVIDIAs
Die Juni 2020-Ausgabe der Top500 listet      faktoren für die STREAM-Benchmark-                        cuSPARSE-Bibliothek und der Open-
zum ersten Mal ein System mit NVIDIAs        Routinen2 bei großen Datensätzen zwi-                     Source-Bibliothek Ginkgo (s. SCC-News
neuen A100-GPUs auf – eine GPU mit der       schen 1,6 und 1,72. Gleichzeitig konnte                   01/2019) sind alle über die mehr als
HPC-zentrierten Ampere-Architektur, die      beobachtet werden, dass beim Zugriff auf                  2.800 in der Suite Sparse Matrix Collec-
für KI-Anwendungen entwickelt wurde.         kleine Datensätze die Speicherbandbreite                  tion verfügbaren Testmatrizen gemittelt.
Drei DGX A100-Systeme mit jeweils acht       der A100-Architektur tatsächlich geringer                 Da viele dieser Matrizen klein sind, sind
NVIDIA A100 GPUs sind seit Juli am SCC       ist als die Bandbreite der V100.                          die Kernel nicht in der Lage, die volle
im Einsatz1. Jetzt, wo dieser neue Flagg-                                                              Speicherbandbreite zu erreichen. Folglich
schiff-Chip von NVIDIA auf dem Markt ist,    Für das Sparse Matrix-Vektor-Produkt                      sind die Beschleunigungswerte für die
fragen sich Anwendungswissenschaftler,       (SpMV) – ein Schlüsselalgorithmus für                     SpMV-Kernel im Allgemeinen niedriger
die sich auf GPU-beschleunigte wissen-
schaftliche Simulationscodes verlassen,
ob es nicht an der Zeit ist, ihre Hardware
aufzurüsten.

Um diese Frage zu beantworten, wer-
fen wir einen Blick auf die Performanz,
die iterative Löser und Batch-Routinen
mit der NVIDIA A100-GPU erzielen,
und quantifizieren die Beschleunigung
gegenüber ihrem Vorgänger, der NVIDIA
V100-GPU. Die Motivation, sich auf diese
Routinen zu konzentrieren, liegt darin,
dass viele wissenschaftliche Anwen-
dungen entweder (1) auf Batch- und
Sparse-Linear-Algebra-Bibliotheksroutinen
basieren oder (2) aus Operationen mit
sehr ähnlichen Eigenschaften bestehen.
Folglich können Leistungsgewinne für
diese Benchmarks ein guter Indizwert für
die Beschleunigung sein, die man für wis-
senschaftliche Anwendungen erwarten
kann, ohne zusätzliche Code-Modifikatio-
nen vornehmen zu müssen.
                                             Abbildung 1: Die A100- versus V100-Architektur - ein detaillierter Beschleunigungsvergleich.

16 |                                               www.scc.kit.edu/ueberuns/13772
                                               1

             SCCnews                           2
                                                   2018. Evaluating attainable memory bandwidth of parallel programming models via BabelStream.
                                                   Int. J. Comput. Sci. Eng. 17, 3 (January 2018), 247–262. dl.acm.org/doi/10.5555/3292750.3292751
FOR S C H U N G U N D P RO J E K T E

als die für die STREAM-Benchmarks. Bei          zum 1,6-fachen, die "umsonst" kom-              ger nutzen kann, beträgt die theoretische
der Leistungsanalyse für die iterativen         men. Erwähnenswert ist zudem, dass der          Spitzenleistung 19,5 Teraflops (das wäre
linearen Löser von Ginkgo konzentrieren         A100-GPU-Tensorecore-Beschleuniger              um den Faktor 2,6 besser).
wir uns auf große Testprobleme, um              Berechnungen in IEEE754 double precis-
sicherzustellen, dass die Bandbreite in         ion durchführen kann. Dies ist eine neue        Angesichts dieser insgesamt konsisten-
den Vektoroperationen voll ausgeschöpft         Hardware-Fähigkeit, die bei den A100-           ten Ergebnisse können wir erwarten,
wird. Je nach individuellem Algorithmus         Vorgängern nicht vorhanden war. Solche          dass auch komplexe wissenschaftliche
laufen die iterativen Löser von Ginkgo auf      drastischen Architekturverbesserungen           Rechenanwendungen 1,3 bis 1,7-mal
der A100-GPU im Vergleich zur V100-             stellen eine Herausforderung für Open-          schneller ausgeführt werden können,
GPU zwischen 1,5 und 1,8-mal schneller.         Source-Bibliotheken wie MAGMA dar, die          ohne architekturspezifische Änderungen
                                                darauf abzielen, hochgradig abgestimm-          vorzunehmen. Zwar kann die Frage, ob
Schließlich gilt es auch die Beschleuni-        te numerische Software für eine breite          dies die Investition in neue Hardware
gung von Batch-Routinen zu untersu-             Palette von Hardware-Architekturen              rechtfertigt, hier nicht eindeutig beant-
chen, die ebenfalls in wissenschaftlichen       bereitzustellen. Beispielsweise nutzen die      worten werden, aber es wird klar, dass
Rechenanwendungen üblich sind. Es ist           vorhandenen, rechenintensiven Codes             die neue Architektur von NVIDIA mit
wichtig zu erwähnen, dass MAGMAs                in MAGMA derzeit nicht die Vorteile der         Schwerpunkt auf KI-Algorithmen eine
Batch-Routinen zwar besonders für               A100-Tensorcores für IEEE754 double             erhebliche Leistungssteigerung gegen-
die V100-Architektur entwickelt wur-            precision. Dies bedeutet, dass diese            über dem Vorgängermodell bietet. Das
den, durch Feintuning auf die A100-             Codes bestenfalls durch eine theoretische       SCC freut sich, einige der weltweit ersten
Architektur aber möglicherweise noch            Spitzenleistung von 9,7 Teraflops (das ist      A100 GPUs zu betreiben, die bereits von
höhere Beschleunigungen möglich sind.           etwa 1,3-mal besser als der V100) be-           Anwendungswissenschaftlern eingesetzt
Nichtsdestotrotz ergeben sich aus den           schränkt sind. Wenn MAGMA jedoch die            werden.
Tests attraktive Leistungssteigerungen bis      Vorteile der neuen Tensorcore-Beschleuni-

Is the NVIDIA A100 GPU Performance Worth a Hardware Upgrade?
Over the last decade, GPU accelerators have seen an increasing rate of adoption in high-performance computing (HPC) platforms, and in
the June 2020 Top500 list, eight of the ten fastest systems featured GPUs. The June 2020 edition of the Top500 is the first edition listing a
system equipped with NVIDIA’s new A100 GPU – the HPC-centric Ampere GPU designed with AI applications in mind. With this new flag-
ship NVIDIA chip now on the market, domain scientists relying on GPU-accelerated scientific simulation codes wonder whether it is time to
upgrade their hardware.
To help answer this question, we take a look at the performance we achieve on the NVIDIA A100 for sparse and batched computations and
quantify the acceleration over its predecessor, the NVIDIA V100 GPU. The motivation for focusing on these routines is that many scientific
applications are either (1) based on batched and sparse linear algebra library routines or (2) composed of operations with very similar cha-
racteristics. Consequently, the performance gains for these benchmarks may be indicative of the acceleration we may see when porting a
scientific computing application from a V100 platform to the A100 architecture, without applying additional code modifications.
In Figure 1, we are visualizing the speedups we get when replacing an NVIDIA V100 GPU with an NVIDIA A100 GPU without code modifi-
cation. While the main memory bandwidth has increased on paper from 900 GB/s (V100) to 1,555 GB/s (A100), the speedup factors for the
STREAM benchmark routines range between 1.6× and 1.72× for large data sets.
For the sparse matrix-vector product (SpMV) the performance improvements depend on the individual sparse data format, the kernel imple-
mentation and the specific problem characteristics, and are generally much lower than those for the STREAM benchmarks.
In the performance analysis for Ginkgo’s iterative linear solvers, we focus on large test problems to ensure the bandwidth is saturated in the
vector operations. Depending on the individual algorithm, Ginkgo’s iterative solvers run between 1.5× and 1.8× faster on the A100 GPU
over the V100 GPU.
For batched routines, we observe performance gains up to 1.6× that come “for free” by just switching to newer hardware architecture. It is
worth mentioning that the A100 GPU provides tensor core acceleration for FP64 arithmetic. This is a new hardware capability that did not
exist on the A100 predecessors, and is hence not yet reflected in the algorithm implementations available in open source libraries such as
MAGMA.
While we cannot answer the question of whether these performance improvements justify the investment, it is clear that the NVIDIA team
succeeded in delivering an architecture with a new focus that delivers considerable performance improvement over its predecessor – not just
incremental acceleration. At the SCC, we are happy to host some of the first A100 worldwide, ready to be used by application scientists.

                                                                                                                   SCCnews        | 17
Sie können auch lesen