Clustering/Linux-Cluster in der Automobilindustrie

Pinguin steuert Fahrzeugentwicklung

26.10.2001
Für deutsche Automobilbauer sind Linux-Cluster längst keine exotische Spielerei mehr. Sie nutzen das Pinguin-Betriebssystem als kostengünstige Plattform für rechenintensive Simulationen. Von Uwe Harms*

Für die numerische Simulation setzte die deutsche Automobilindustrie lange Zeit ausschließlich Vektorrechner ein; später kamen leistungsfähige Risc/ SMP-Systeme hinzu (SMP = Symmetrical Multiprocessing). Doch inzwischen haben die Fahrzeugentwickler auch Linux-Cluster als kostengünstige Alternative entdeckt. Derzeit sind etwa zehn mittelgroße und große Cluster mit PC-Prozessoren bei Audi, BMW, Daimler-Chrysler und Porsche installiert.

Verschiedene Gründe führten zu geclusterten Linux-Rechnern: Die unabhängigen Softwarehäuser (Independent Software Vendors = ISVs) parallelisierten ihre Programmpakete zur Crash-Simulation, für Struktur- und Strömungsberechnung oder die elektromagnetische Verträglichkeit (EMV). Daneben reifte Linux als kostengünstiges Betriebssystem für den industriellen Einsatz, für das einige Softwarehäuser professionellen Service boten. Hierzu gehört etwa die Firma Science + Computing (s + c) aus Tübingen, die den Entwicklungsingenieuren der Automobilbauer den Betrieb der PC-Cluster abnimmt.

Wartung durch SpezialistenDie Kraftfahrzeughersteller konzentrieren sich auf ihre Kernkompetenzen; Betrieb und Installation von Software und Updates haben sie an das Systemhaus abgegeben. Die Tübinger führen auch neue System-Releases und Softwareversionen nach Bedarf der Fachabteilungen ein, betreuen die Hardware und sorgen im Fehlerfall für einen Austausch der Komponenten. Für fachspezifische Fragen zur Anwendersoftware ist der jeweilige ISV zuständig.

Die Installation des Systems, der Anwendersoftware und neuer Versionen erfordert Werkzeuge, die diesen Prozess automatisieren. Von Hand benötigt der Anwender für das Betriebssystem und die Netzwerkkonfiguration eines 16-Knoten-Systems etwa vier Tage; die Applikation kostet zusätzlich etwa zwei bis vier Tage. Dieser Aufwand wächst bei einem großen Cluster entsprechend. Mit den "s.cluster"-Tools von s + c reduziert sich diese Zeit auf einige Stunden, unabhängig von der Knotenzahl.

Die Installations-CD basiert auf Kickstart von Red Hat. Eigene Routinen ergänzen Kickstart und erlauben das Konfigurieren einzelner Knoten nach spezifischen Anforderungen. Das Systemhaus brennt dazu eine CD, auf der ein abgespecktes Linux, die Anwendung und die Load Sharing Facility (LSF) von Platform Computing, Toronto, gespeichert sein können. Im ersten Schritt wird der Master auf dem Cluster oder einer speziellen Workstation installiert. Er implementiert dann die Software auf allen Knoten parallel.

Ein wichtiger Gesichtspunkt ist die Ausfallhäufigkeit eines Systems. In großen Clustern mit mehreren hundert Prozessoren summieren sich die Fehler bei CPU, RAM, Plattenspeicher oder der Kühlung. LSF automatisiert die Rekonfiguration um ausgefallene Komponenten herum und informiert den Administrator.

Als wichtige Einsatzgebiete für Linux-Cluster im Automobilbau erweisen sich unter anderem die elektromagnetische Verträglichkeit (EMV) und die Crash-Simulation. Audi, BMW und Daimler-Chrysler nutzen jeweils 32-Prozessor-Pentium-Cluster mit dem Programmsystem Feko von EMSS aus Stellenbosch, Südafrika.

Feko ist vollständig parallel programmiert und nutzt das Message Passing Interface (MPI). Über diese normierte Schnittstelle kommunizieren Prozessoren per Unterprogrammaufruf miteinander, tauschen Daten aus und synchronisieren sich. Aufgrund der guten Parallelität skaliert das Programm auch bei wachsender Prozessorzahl, entsprechend verringert sich die Rechenzeit. Bei sequenziellen Programmen, bei denen Teile nachträglich parallelisiert sind, endet der Leistungszuwachs bei acht Prozessoren, weitere bringen also keinen Gewinn mehr.

Das Team Computational Electromagnetics in der Pkw-Entwicklung von Daimler-Chrysler beschaffte nach intensiven Tests bereits im Dezember 1999 einen Cluster von Fujitsu-Siemens mit 16 Knoten, jeweils bestückt mit zwei Prozessoren vom Typ Intel Pentium III 500, 1 GB RAM und 18 GB Plattenspeicher. Die Knoten sind mit Fast Ethernet und dem schnellen System Area Network SCI (Scalable Coherent Interface) von Scali aus Norwegen verbunden. So lassen sich Daten zwischen den Knoten in Gbit/s-Geschwindigkeit austauschen. Der Rechner läuft unter Red Hat Linux und ist seit Anfang 2000 im produktiven Einsatz.

Die Anwender nehmen das Cluster gut an und nutzen es intensiv. Ein wichtiges Argument bei der Beschaffung war die inhärente Redundanz. Fällt ein Knoten aus, steht das restliche System noch zur Verfügung - im Gegensatz zu manchen SMP-Systemen. In Verbindung mit Feko ist das Linux-Cluster, was das Preis-Leistungs-Verhältnis betrifft, günstiger als andere Rechnersysteme, gemessen am Standard-Benchmark der Abteilung für EMV.

Ein anderes Einsatzgebiet von Clustern in der Automobilentwicklung ist der Crash. Anfangs fuhren die Autohersteller handgeschmiedete, sehr teure Pkw an die Wand und untersuchten die Verformungen an der Karosserie. Mit modernen mathematischen Verfahren und schnelleren Rechnern hat sich die Crash-Simulation als wichtiges Entwicklungswerkzeug bewährt. Heute enthalten die Berechnungsmodelle die Rohkarosserie, Fahrwerk, Antriebsstrang, Tank und viele andere Komponenten aus der Fahrzeugausstattung. Auch die Insassenbelastung ist mit dem integrierten Finite Element Dummy berechenbar und modelliert sogar einen realen Menschen.

Nahezu jedes Land hat eigene Crash-Test-Standards und Abläufe. Die Pkw fahren frontal oder teilversetzt gegen ein Hindernis. Auch der Rammbock zum Seiten-Crash gehört zum Versuchsprogramm. Die Automobilclubs und die Versicherungswirtschaft haben eigene Verfahren definiert. Um alle unterschiedlichen Anforderungen zu erfüllen und die Ergebnisse des realen Crash abzuschätzen, müssen die Automobilunternehmen viele Simulationen im Rechner durchführen.

Die deutschen Automobilhersteller nutzen dazu die breite Vielfalt unterschiedlicher Rechnerplattformen: Vektorrechner, symmetrische Multiprozessorsysteme und Workstation-Cluster. Das wichtigste Auswahlkriterium ist die Rechenleistung bei der spezifischen Applikation. Inzwischen zeigt sich der Trend zu Linux-Clustern unterschiedlicher Hersteller, die in Racks eng gekoppelt sind.

Crash-Simulation bei AudiDie Audi AG beispielsweise installierte im Juni 2001 einen Intel-basierenden Cluster. Die Entwickler hatten zuvor einige Risc- und Intel-Lösungen als Rechenplattform für das neue strategische Kompetenzzentrum für stochastische Crash-Simulationen evaluiert. Das neue Linux-Cluster arbeitet mit 52 Rechnerknoten und insgesamt 128 Prozessoren (Intel Pentium III), 57 GB RAM und 10 Terabyte Plattenspeicher.

Karl Huber, CAE-Manager bei Audi, zeigt sich zufrieden mit der Rechenleistung: "Für unsere Audi-spezifischen, praxisbezogenen Anwendungsbeispiele erzielte das Linux-Cluster ausgezeichnete Benchmarkergebnisse. Es ist aufgrund des guten Preis-Leistungs-Verhältnisses auch äußerst wettbewerbsfähig."

*Uwe Harms ist freier Journalist in München.

AuswahlkriterienAnwendungsorientierte Aspekte:

-Ist die Software unter Linux verfügbar?

-Hat die Cluster-Version den gleichen Funktionsumfang?

-Ist sie stabil bei Ausfall eines Knotens?

-Ist sie gut parallelisiert?

-Ist sie skalierbar?

-Ressourcenanforderungen der Applikation:

- CPU-intensiv?

- Hauptspeicherbedarf?

- Ein/Ausgabe-intensiv?

- Kommunikationsintensiv?

Problembezogene Aspekte:

-Jobgröße für das Cluster?

Hardwarebezogene Aspekte:

-Stabilität der einzelnen Komponenten, CPU, RAM, Platte, Lüfter?

Betriebsbezogene Aspekte:

-Robustheit, Stabilität des Betriebssystems?

-Einheitliche Sicht auf das Cluster-System (Single System Image)?

-Administrationswerkzeuge?

-Lastverteilung?

-Möglichkeiten des Distributed Computing?

Quelle: Science + Computing