


Turing-Award-Gewinner Jack Dongarra: An der Spitze des Supercomputings ist noch viel Platz
Supercomputer können als Olympiasieger im wissenschaftlichen Rechnen bezeichnet werden. Durch numerische Simulationen bereichern Supercomputer unser Verständnis der Welt: ob es um die Lichtjahre entfernten Sterne im Universum geht, um das Wetter und Klima der Erde oder um die Funktionsweise des menschlichen Körpers.
Jack Dongarra ist seit mehr als vier Jahrzehnten eine treibende Kraft im Hochleistungsrechnen. Anfang des Jahres wurde Dongarra mit dem ACM A.M. Turing Award „für seine bahnbrechenden Beiträge zu numerischen Algorithmen und Werkzeugbibliotheken ausgezeichnet, die es Hochleistungsrechnersoftware ermöglicht haben, mit den exponentiellen Fortschritten in der Hardware Schritt zu halten.“
Bennie Mols, der Autor dieses Artikels, traf Dongarra während des 9. Heidelberg Laureate Forums im September in Deutschland und diskutierte über die Gegenwart und Zukunft des Hochleistungsrechnens. Dongarra, 72, ist ein angesehener Professor an der University of Tennessee und seit 1989 ein angesehener Forscher am Oak Ridge National Laboratory des US-Energieministeriums. Bennie Mols ist ein Wissenschafts- und Technologieautor mit Sitz in Amsterdam, Niederlande.
Das Folgende ist der Inhalt des Interviews
F1: Was war Ihre Motivation für die wissenschaftliche Forschung in den letzten Jahrzehnten?
A: Mein Hauptforschungsgebiet ist die Mathematik, insbesondere die numerische lineare Algebra. Alle meine Arbeiten basieren darauf. Für Fächer wie Physik und Chemie, die Berechnungen erfordern – insbesondere das Lösen linearer Gleichungssysteme – ist Software, die Antworten berechnen kann, zweifellos sehr wichtig. Gleichzeitig müssen Sie sicherstellen, dass der Betrieb der Software mit der Architektur der Maschine übereinstimmt, damit Sie tatsächlich die hohe Leistung erzielen können, die die Maschine erreichen kann.
F2: Was sind die wichtigsten Voraussetzungen für die Ausführung von Software auf Supercomputern?
A: Wir hoffen, dass die Berechnungsergebnisse dieser Software korrekt sind. Wir hoffen, dass die wissenschaftliche Gemeinschaft diese Software nutzt und versteht und sogar zu ihrer Verbesserung beiträgt. Wir möchten, dass die Software eine gute Leistung erbringt und auf verschiedenen Computern portierbar ist. Wir möchten, dass der Code lesbar und zuverlässig ist. Letztendlich wollen wir, dass Software die Menschen, die sie nutzen, produktiver macht.
Software zu entwickeln, die all diese Anforderungen erfüllt, ist ein nicht trivialer Prozess. Diese technische Ebene umfasst oft Millionen von Codezeilen und etwa alle 10 Jahre erleben wir einige große Änderungen in der Maschinenarchitektur. Dies wird dazu führen, dass sowohl die Algorithmen als auch die Software, die sie verkörpert, umgestaltet werden müssen. Software folgt der Hardware, und an der Spitze des Supercomputings gibt es noch viel Spielraum, um eine bessere Maschinenleistung zu erreichen.
F3: Gibt es aktuelle Entwicklungen im Hochleistungsrechnen, die Sie begeistern?
A: Unsere Hochleistungs-Supercomputer basieren auf Komponenten von Drittanbietern. Sie und ich können beispielsweise auch High-End-Chips kaufen, aber Hochleistungscomputer erfordern viele davon. Normalerweise verwenden wir einige Beschleuniger in Form von GPUs auf Hochleistungscomputern. Wir stellen mehrere Chip-Entwicklungsboards in ein Rack, und viele dieser Racks bilden zusammen einen Supercomputer. Der Grund, warum wir Komponenten von Drittanbietern verwenden, liegt darin, dass diese kostengünstiger sind. Wenn Sie jedoch einen Chip speziell für wissenschaftliche Berechnungen entwickeln, erhalten Sie einen Supercomputer mit besserer Leistung, was ein spannender Gedanke ist.
Tatsächlich machen Unternehmen wie Amazon, Facebook, Google, Microsoft, Tencent, Baidu und Alibaba ihre eigenen Chips. Sie können dies tun, weil sie über riesige Mittel verfügen, während Universitäten nur über begrenzte Mittel verfügen und daher leider auf Produkte von Drittanbietern zurückgreifen müssen. Dies hängt mit einem anderen Anliegen von mir zusammen: Wie halten wir Talente in der Wissenschaft, anstatt zu sehen, wie sie für größere Unternehmen arbeiten, die besser bezahlen?
F4: Welche weiteren wichtigen Entwicklungen gibt es für die Zukunft des Hochleistungsrechnens?
A: Es gibt tatsächlich einige wichtige Dinge. Es ist klar, dass maschinelles Lernen bereits einen großen Einfluss auf das wissenschaftliche Rechnen hat, und dieser Einfluss wird noch zunehmen. Ich betrachte maschinelles Lernen als ein Werkzeug, das dabei hilft, Probleme zu lösen, die Informatiker lösen möchten.
Dies geht mit einer weiteren wichtigen Entwicklung einher. Traditionell verwendet unsere Hardware 64-Bit-Gleitkommaoperationen, sodass Zahlen in 64 Bit dargestellt werden. Wenn Sie jedoch weniger Bits verwenden, beispielsweise 32, 16 oder sogar 8 Bits, können Sie die Berechnung beschleunigen. Durch die Beschleunigung der Berechnungen geht jedoch die Genauigkeit verloren. Es scheint jedoch, dass KI-Berechnungen häufig mit weniger Bits, 16 oder sogar 8 Bits, durchgeführt werden können. Dies ist ein Bereich, der erforscht werden muss, und wir müssen herausfinden, wo das Reduzieren von Bits gut funktioniert und wo nicht.
Ein weiterer Forschungsbereich ist die Frage, wie man mit Berechnungen mit geringer Genauigkeit beginnt, eine Näherung erhält und dann Berechnungen mit höherer Genauigkeit verwendet, um die Ergebnisse zu verfeinern.
F5: Wie hoch ist der Stromverbrauch von Supercomputern?
A: Die besten Supercomputer verbrauchen heute 20 oder 30 Megawatt, um Exaflops zu erreichen. Wenn jeder auf der Erde jede Sekunde eine Berechnung durchführen würde, würde es mehr als vier Jahre dauern, das zu schaffen, was ein sehr großer Computer in einer Sekunde schafft. Vielleicht werden wir innerhalb von 20 Jahren die Größenordnung von Zettaflop erreichen, die 10 hoch 21 Gleitkommaoperationen beträgt. Allerdings kann der Stromverbrauch ein limitierender Faktor sein. Man bräuchte eine 100- oder 200-Megawatt-Maschine, was derzeit zu energieintensiv ist.
F6: Wie sehen Sie die Rolle des Quantencomputings im zukünftigen Hochleistungsrechnen?
A: Ich denke, die Probleme, die Quantencomputing lösen kann, sind begrenzt. Probleme wie dreidimensionale partielle Differentialgleichungen, bei denen wir häufig Supercomputer verwenden, wie zum Beispiel die Klimamodellierung, werden damit nicht gelöst.
In Zukunft werden wir ein integriertes Tool entwickeln, das verschiedene Arten von Berechnungstools enthält. Wir werden Prozessoren und Beschleuniger haben, wir werden Werkzeuge haben, die beim maschinellen Lernen helfen, wir werden höchstwahrscheinlich Geräte haben, um neuromorphes Rechnen nach Art des Gehirns durchzuführen, wir werden optische Computer haben und darüber hinaus werden wir Quantencomputer haben, um dies zu tun spezifische Probleme lösen.
Das obige ist der detaillierte Inhalt vonTuring-Award-Gewinner Jack Dongarra: An der Spitze des Supercomputings ist noch viel Platz. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Die allgemeine Matrixmultiplikation (GEMM) ist ein wesentlicher Bestandteil vieler Anwendungen und Algorithmen und außerdem einer der wichtigen Indikatoren zur Bewertung der Leistung der Computerhardware. Eingehende Forschung und Optimierung der Implementierung von GEMM können uns helfen, Hochleistungsrechnen und die Beziehung zwischen Software- und Hardwaresystemen besser zu verstehen. In der Informatik kann eine effektive Optimierung von GEMM die Rechengeschwindigkeit erhöhen und Ressourcen einsparen, was für die Verbesserung der Gesamtleistung eines Computersystems von entscheidender Bedeutung ist. Ein tiefgreifendes Verständnis des Funktionsprinzips und der Optimierungsmethode von GEMM wird uns helfen, das Potenzial moderner Computerhardware besser zu nutzen und effizientere Lösungen für verschiedene komplexe Computeraufgaben bereitzustellen. Durch Optimierung der Leistung von GEMM

WORD ist ein leistungsstarkes Textverarbeitungsprogramm, mit dem wir verschiedene Texte in Excel bearbeiten können. Wir beherrschen die Berechnungsmethoden der Addition, Subtraktion und Multiplikatoren. Wie subtrahiere ich den Multiplikator? Kann ich ihn nur mit einem Taschenrechner berechnen? Die Antwort ist natürlich nein, WORD kann das auch. Heute werde ich Ihnen beibringen, wie Sie mit Formeln grundlegende Operationen wie Addition, Subtraktion, Multiplikation und Division in Tabellen in Word-Dokumenten berechnen. Lassen Sie mich heute im Detail zeigen, wie man Addition, Subtraktion, Multiplikation und Division in einem WORD-Dokument berechnet. Schritt 1: Öffnen Sie ein WORD, klicken Sie in der Symbolleiste unter [Einfügen] auf [Tabelle] und fügen Sie eine Tabelle in das Dropdown-Menü ein.

Um die Anzahl der Elemente in einer Liste mit der Funktion count() von Python zu zählen, sind bestimmte Codebeispiele erforderlich. Als leistungsstarke und leicht zu erlernende Programmiersprache bietet Python viele integrierte Funktionen zur Verarbeitung unterschiedlicher Datenstrukturen. Eine davon ist die Funktion count(), mit der sich die Anzahl der Elemente in einer Liste zählen lässt. In diesem Artikel erklären wir die Verwendung der count()-Funktion im Detail und stellen spezifische Codebeispiele bereit. Die Funktion count() ist eine in Python integrierte Funktion, mit der ein bestimmter Wert berechnet wird

Gegeben seien zwei Strings str_1 und str_2. Das Ziel besteht darin, mithilfe eines rekursiven Verfahrens die Anzahl der Vorkommen der Teilzeichenfolge str2 in der Zeichenfolge str1 zu zählen. Eine rekursive Funktion ist eine Funktion, die sich innerhalb ihrer Definition selbst aufruft. Wenn str1 „Iknowthatyouknowthatiknow“ und str2 „know“ ist, beträgt die Anzahl der Vorkommen -3. Lassen Sie uns das anhand von Beispielen verstehen. Geben Sie beispielsweise str1="TPisTPareTPamTP", str2="TP" ein; geben Sie Countofoccurrencesofasubstringrecursi aus

Einführung Das Java-Programm zur Berechnung der Fläche eines Dreiecks mithilfe der Determinante ist ein prägnantes und effizientes Programm, das die Fläche eines Dreiecks anhand der Koordinaten von drei Eckpunkten berechnen kann. Dieses Programm ist für jeden nützlich, der Geometrie erlernt oder damit arbeitet, da es zeigt, wie man grundlegende arithmetische und algebraische Berechnungen in Java verwendet und wie man die Scanner-Klasse zum Lesen von Benutzereingaben verwendet. Das Programm fordert den Benutzer zur Eingabe der Koordinaten von drei Punkten des Dreiecks auf, die dann eingelesen und zur Berechnung der Determinante der Koordinatenmatrix verwendet werden. Verwenden Sie den Absolutwert der Determinante, um sicherzustellen, dass die Fläche immer positiv ist. Verwenden Sie dann eine Formel, um die Fläche des Dreiecks zu berechnen und sie dem Benutzer anzuzeigen. Das Programm kann leicht modifiziert werden, um Eingaben in verschiedenen Formaten zu akzeptieren oder zusätzliche Berechnungen durchzuführen, was es zu einem vielseitigen Werkzeug für geometrische Berechnungen macht. Reihen von Determinanten

In C# gibt es eine Math-Klassenbibliothek, die viele mathematische Funktionen enthält. Dazu gehört die Funktion Math.Pow, die Potenzen berechnet und uns dabei helfen kann, die Potenz einer bestimmten Zahl zu berechnen. Die Verwendung der Math.Pow-Funktion ist sehr einfach, Sie müssen lediglich die Basis und den Exponenten angeben. Die Syntax lautet wie folgt: Math.Pow(base,exponent); wobei base die Basis und exponent den Exponenten darstellt. Diese Funktion gibt ein Ergebnis vom Typ Double zurück, nämlich das Ergebnis der Leistungsberechnung. Lasst uns

Eine beliebte Allzweck-Programmiersprache ist Python. Es wird in einer Vielzahl von Branchen eingesetzt, darunter Desktop-Anwendungen, Webentwicklung und maschinelles Lernen. Glücklicherweise verfügt Python über eine einfache und leicht verständliche Syntax, die für Anfänger geeignet ist. In diesem Artikel verwenden wir Python, um die Summe der rechten Diagonalen einer Matrix zu berechnen. Was ist eine Matrix? In der Mathematik verwenden wir ein rechteckiges Array oder eine Matrix, um ein mathematisches Objekt oder seine Eigenschaften zu beschreiben. Es handelt sich um ein rechteckiges Array oder eine Tabelle, die in Zeilen und Spalten angeordnete Zahlen, Symbole oder Ausdrücke enthält. Zum Beispiel -234512367574. Dies ist also eine Matrix mit 3 Zeilen und 4 Spalten, ausgedrückt als 3*4-Matrix. Nun gibt es in der Matrix zwei Diagonalen, die Primärdiagonale und die Sekundärdiagonale

Wir zeigen Ihnen, wie Sie mit einem Java-Programm Gesamtpunktzahlen und Prozentsätze berechnen. Die Gesamtpunktzahl bezieht sich auf die Summe aller verfügbaren Punktzahlen, während sich der Begriff „Prozentsatz“ auf die berechnete Punktzahl bezieht, geteilt durch die Gesamtpunktzahl und multipliziert mit der resultierenden Zahl 100. „percentage_of_marks=(obtained_marks/total_marks)×100 Beispiel 1“ Dies ist ein Java-Programm, das zeigt, wie Gesamtpunktzahlen und Prozentsätze berechnet werden. //JavaProgramtodemonstratehowisTotalmarksandPercentagescalculatedimportjava.io.*;publicclassTotalMarks_
