ziehen. Fur das Benchmarking wurde das Programm Hercules zur emulierung
auf einem Mittelklasselaptop herangezogen und ein IBM Mainframe mit einer
CPU . Auf beiden Geraten wurde CPU und I/O Leistung gemessen. Das Ergeb-
nis deutet auf schwachen der Emulation hin, die eine prinzipielle Eignung als
Produktivsystem nicht ausschlieen.
Introduction
Im folgenden soll die Frage nach der Performanz emulierter Mainframes im Vergleich zu rea-
len untersucht werden. Mainframes sind groe Rechner deren Geschichte bis in die 1950er
zuruckreicht [1, s4]. Aufgrund ihrer fast exklusiven Verwendung im geschaftlichen und wissen-
schaftlichen Bereich zeigt ihre Architektur signifikante Unterschiede zu handelsublichen PCs
mit x86 Architektur. Das ist nicht immer der Fall, jedoch beschranken wir uns auf Mainframes
der Marke IBM, da selbige einen Marktanteil von geschatzt 90% besitzen[2 s.2]. Im Gegensatz
zu Supercomputern wird ihre Leistung in MIPS (Million Instructions Per Second) gemessen,
und nicht in Flops (Floating Point Operations Per Second). Daran sieht man bereits den unter-
1
schiedlichen Verwendungszweck. Im Vergleich zu Supercomputern sind sie zuverlassiger und
kommen daher in kritischen Bereichen wie Banktransaktionen zum Einsatz[1 s.11], wo viele
Daten transportiert werden mussen. All das macht Mainframes zu einer schwer zu ersetzenden
Komponente alltaglicher Aufgaben im Bereich der IT. Durch die Marktmacht IBMs besteht eine
recht homogene Infrastruktur, die sich in Konkurrenzkampfen mit anderen Mainframeanbietern
herausgebildet hat [6]. Tests sind nur beschrankt durchfuhrbar und ohne die finanziellen Mit-
tel ist es schwer sich fur Lernzwecke Zugang zu einem Mainframe zu verschaffen. Aus dieser
Situation heraus ist das quelloffenen Hercules, ein Emulator fur die mangelnde Hardware, ent-
wickelt worden. Trotz einiger Einschrankungen [4] lassen sich damit System/360 bis System/z
Grorechner von IBM emulieren.
Die Geschichte der Hercules Emulator beginnt 1994 mit Roger Bowler[3 s.18], der schon in
den Achtzigern Schwierigkeiten hatte Zugang zu einem Mainframe zu erlangen. Aus dieser
misslichen Lage heraus entstand vorerst als Spielerei ein kleines Tool um IBM Mainframes
auf seinem Pentium PC zu emulieren. Nachdem dieses 1999 massiv erweitert wurde, begannen
sich mehr Leute dafur zu interessieren und auch mitzuschreiben am Code. Das resultierende
Programm ist innerhalb weniger Jahre weitestgehend in der Lage viele Programme ohne IBM
Hardware auszufuhren. Inzwischen schatzt man den Anteil von Mainframes, die auf Hercules
basieren, gegenuber den nativen Maschinen auf 20%, wenn auch die produktive Nutzung des
Emulators nicht vorgesehen ist [3 s.20] . Eine Liste der implementierten Features, und denen die
fehlen, sowie Referenzen und der volle Quellcode lassen sich auf der Seite des Projekts finden
[4]. Der Grund fur die mangelnde Einsatztauglichkeit ist das Fehlen von Ressourcen, die im
Besitz von IBM liegen [5 s.7]. So ist die Menge an Fehlern zwar gering zu schatzen, diese Be-
hauptung lasst sich jedoch nicht beweisen solange nicht notwendigen Tests nicht moglich sind.
2
Das Risiko ist wegen des Einsatzes von Mainframes in Bereichen, die eine hohe Zuverlassigkeit
verlangen, besonders problematisch. Darum greift man gewohnlicherweise fur Testzwecke oder
nicht jede Software ausfuhren kann, sowie nicht optimal fur Aufgaben auf dem aktuellen IBM
Betriebssystem (z/OS) arbeitet [5 s.6] und zPDT, eine IBM eigene Losung um z/OS Programme
auf x86 Architektur zu programmieren und zu testen.
Die Emulation von Mainframes stellt ein besonders umstrittenes Thema dar, da die erwahnte
Marktmacht von IBM durch ein geflecht von Lizenzmodellen gestutzt ist. Ein Beispiel dieser
Problematik ist die Causa Turbohercules. Das gleichnamige Unternehmen hatte es sich 2009
zum Ziel gemacht Hercules mit kommerziellem Support zu vertreiben. Kurz darauf meldeten
sich Oracle[10] und Microsoft[11] sichtlich erfreut uber diese Entwicklung. Letzteres Unter-
nehmen tatigte gleich eine Investition in unbekannter Hohe. Im April 2010 erhielt Turbohercu-
les einen Brief[9] von IBM mit einer unvollstandigenListe angeblich verletzter Patente. Diese
Liste hatte einen Umfang von 173 Patenten und bewirkte letztendlich das Ende des Unterneh-
mens. IBMs Mainframe Architektur auf handelsublichen Computern zu emulieren, und damit
unabhangig von der vertriebenen Hardware zu sein, ist also eine theoretische Uberlegung, die
durchaus von praktischem Interesse ist. Darum ist die Frage der Performanz auch von Bedeu-
tung.
Laut eigenen Angaben kann der Hercules Emulator seit Version 3 ein bestandiges Perfor-
mancewachstum vorweisen[8, s.23], muss allerdings mit Performanceeinbuen im Vergleich
3
von IBM besitzt teils sehr andere Konzepte als gewohnliche Computer mit x86 Architektur,
die nachprogrammiert werden mussen. Zu diesen Unterschieden gehort bspw. ein eigenes Da-
tensystem unter dem Kurzel DASD (Direct Access Storage Device)[7], das keine Ordner kennt,
sondern alle Daten flach in einer Ebene gruppiert. Das ermoglicht es auf jede Datei in selber Ge-
schwindigkeit zuzugreifen. Eine andere Quelle von Geschwindigkeitseinbuen sind die CISC
Befehle, die ebenfalls nachprogrammiert werden mussen. Eine Optimierung auf Assemblere-
bene ist der Portierbarkeit wegen nicht moglich, weswegen in Cgeschrieben wird [8, s.23].
Auch mussen aus Grunden der Kompatibilitat Programmierrichtlinien eingehalten werden, die
mit der IBM Dokumentation ( Principles of Operations) ubereinstimmen. All diese Faktoren
schranken die Leistung zwar ein, aber beenden aufgrund der Marktlage nicht die Frage nach der
Profitabilitat emulierter Mainframes.
Tests
Vorgehen
Einen Vergleich zwischen Emulation und Mainframe zu ziehen ist ein schwieriges Unterfangen,
weil Mainframes fur spezielle Einsatzzwecke genutzt werden, die sehr unterschiedliches Ver-
halten zeigen. Der Aktualitat wegen [12] wird hier die Verschlusselungsgeschwindigkeit vergli-
chen. Dazu wurde die Benchmarkfunktion in OpenSSL benutzt, die bekannte Verschlusselungsalgorithmen
durchspielt. Daruber hinaus wird schlicht die Dauer fur das Ausrechnen von Nachkommastellen
in PI gemessen. Da Mainframes zum Bewegen groer Datensatze genutzt werden, soll ebenfalls
die I/O -Performance gemessen werden. Dazu wird das einfache dd Tool benutzt, das bitgenaue
Dateioperationen erlaubt. Das heit jedes Bit wird einzeln ausgelesen bevor die Operation aus-
gefuhrt wird. Die Versuche werden haufiger wiederholt, anschlieend wird das Mittel genom-
men. Die Emulation lauft auf einem alteren Mittelklasselaptop [13] und der s390 kompatiblen
Version von SLES 11 SP4[14]. Der Emulation werden 1600 MB Arbeitsspeicher und zwei Pro-
4
zessoren zur Verfugung gestellt. Der Mainframe auf dem getestet wird, wird ebenfalls mit SLES
betrieben. Es handelt sich um ein IBM-Produkt. Informationen uber verbaute Hardware liegen
nicht vor, jedoch stehen 8GB Arbeitsspeicher zu Verfugung und die CPU besitzt 5 Caches mit
Groen zwischen 96k (L0) und 196608k (L4). Im Vergleich besitzt der Laptop 3 Caches zwi-
schen 32K (L1) und 3072K (L3).
CPU-Performance
Das Ergebnis fallt aufgrund der verschiedenen Verschlusselungen, die zur Verfugung stehen
unterschiedlich aus. Die betrachteten Outputs sind willkurlich oder nach Grad ihrer Bekanntheit
gewahlt
Wie unschwer zu erkennen ist schlagt der Mainframe den Emulator um ein Vielfaches (sie-
he Diagramm auf der nachsten Seite). Im Mittel erreicht der Emulator eine Leistung von gerade
einmal 0.3% gegenuber dem Mainframe. Es war zu erwarten, dass der Mainframe schneller
ist, dieses Krafteverhaltnis vermag jedoch zu uberraschen. Durch den Test wurde hauptsachlich
CPU Leistung verglichen, da Verschlusselung diese im groen Mae benotigt. Ein Verhaltnis
von mehreren hundert emulierten CPUs auf dem genutzten Laptop gegenuber einer Mainframe
CPU scheint unwahrscheinlich und deutet auf die Unterschiede hin, die sich durch die Emu-
lation ergeben. Besonders Auffallig sind die Ausreier bei AES und SHA Verschlusselungen.
Die Antwort auf das Ratsel sind hardwareintegrierte Verschlusselungslosungen [14, s.8]. In
IBM Mainframes werden sogenannte CPACF (The CP Assist For Cryptographic Functions)
verbaut. Das sind Module, die bei einigen Verschlusselungen die CPU unterstutzen. Zu diesen
Verschlusselungen gehoren auch die getesteten SHA und AES.
5
Abbildung 1: Laptopwerte
Abbildung 2: Mainframewerte
6
Einen gebrauchlicheren Test stellt das Berechnen von Nachkommastellen in der Kreiszahl
PI dar. Hierbei lassen wir die eingebaute Taschenrechnerfunktion bis auf die 2000 Stelle rechnen
und messen dabei die benotigte Zeit. Der Befehl fur diesen Test lautet:
t i m e e c h o s c a l e = 2 0 0 0 ; 4 a ( 1 ) | bc l
Emulation 219
Mainframe 3.5
nicht so gro aus, wie bei der Verschlusselung, ist aber weiterhin zu beobachten.
I/O Performance
Um die Schreibgeschwindigkeit zu messen, kopieren wir 512 MB mittels des dd Tools und
Emulation 54.6325
Mainframe 7.04539
0 10 20 30 40 50 60 70 80 90 100
benotigte Zeit in Sekunden
7
Hier erbringt die Emulation 12.8% der Mainframeleistung. Das ist gegenuber der CPU Lei-
stung ein wesentlich kleinerer Abstand. Allerdings ist dieser im Festplattensegment im Allge-
meinen wesentlich kleiner. Es liegen zwar keine Informationen uber die verbaute Hardware vor,
es ist jedoch davon auszugehen, dass, aufgrund des Einsatzcharakters, im Mainfram fur schnel-
le Datenoperationen optimierte Hardware verbaut ist [1 s.63ff]. Zudem muss in der Emulation
das erwahnte Dateisystem DASD zusatzlich zum darunter liegenden Dateisystem nachgestellt
werden, was ebenfalls Einbuen in der Leistung bedeutet.
Auswertung
Aus den Tests wird ersichtlich, dass das reale Mainframe groe, beziehungsweise zum Teil sehr
groe Performanceunterschiede zur emulierten Variante zeigt. Jedoch sind die Ergebnisse nicht
ausreichend um einen Praxisrelevanten Vergleich zu ziehen. Dazu sind die Mittel der Testumge-
bung und die Testszenarien zu beschrankt. Aus den Ergebnissen lasst sich jedoch lesen, dass die
stark eingeschrankte, zur Verfugung stehende Hardware seitens IBM und die daran gekoppelte
Softwareentwicklung Vorzuge mit sich bringen auf die man notwendig verzichtet, wenn man
die Systeme auf beliebigen Architekturen arbeiten lassen will. Das kann man bei dem Bench-
mark fur Verschlusselungsalgorithmen festellen. Die spezielle Hardware ermoglicht einen sehr
groen Leistungsunterschied. Ebenfalls kann man das an den I/O Geschwindigkeiten sehen, die
auseinandergehen. Auch hier besitzen Mainframes spezielle Hardware (DASD).
Fazit
Die Ergebnisse der hier vorgenommenen Versuche lassen, trotz der Schwierigkeiten sie zu deu-
ten, deutlich werden, dass zwischen Emulation und Mainframe noch groe Unterschiede, zu-
gunsten der Mainframes, liegen. Der Vergleich stellt allerdings ein Problem dar, da Architektu-
ren noch keine Computer darstellen, und die konkrete Hardware, um Vergleichbar zu werden,
8
nach einem gemeinsamen Kriterium gewahlt werden muss. Dies ware im Regelfall der Markt-
wert der verbauten Teile, bzw. der Verkaufspreis des gesamten Gerats. Computer mit x86 Archi-
tektur, die Mainframeapplikationen ausfuhren konnen, gibt es allerdings nicht auf dem Markt.
Gabe es sie, so ware auch der Marktwert des IBM Produkts geringer, und somit das Versuch-
sergebnis moglicherweise ein anderes. Der Vergleich muss also stets ein spekulatives Resultat
hervorbringen.
Um die Frage nach der Relevanz von Mainframeemulation als produktives System trotz-
dem anzunahern musste man noch mehrere Faktoren untersuchen. Dazu gehoren tradeoffs,
die sich durch die IBM fremde Hardware ergeben. Beispielsweise bietet auch Intel Hardwa-
relosungen um Verschlusselungen in der CPU zu beschleunigen[16] und die Moglichkeit von
mehreren Fesplatten in RAIDS kann ebenfalls Geschwindigkeitszuwachs bedeuten. Allerdings
stellt sich die Frage, ob diese Funktionen an die Leistung der IBM Hardware rankommen, denn
als Produkte, die primar fur andere, breitere, Markte konzipiert werden, bieten sie nicht das
Ma an Spezialisierung, wie aktuell Mainframes. Wurde sich dennoch das Preisverhaltnis fur
Kunden lohnen, so ware es eine Option z/OS Applikationen auf x86 Computern auszufuhren.
Die Abhangigkeit von IBM seitens Unternehmensinformatik, die auf z/OS-Basis konzipiert ist,
wurde dadurch schwinden. Das liegt nicht im Interesse IBMs und wird daher durch Lizenzen
verhindert. Gleichzeitig behindern diese Lizenzen, wie anfangs erwahnt, die weiterentwick-
lung des Emulators. Auf lange Sicht wurde sich das Verhaltnis der Emulation zum Mainframe,
bezuglich der Perfomance, andern, wenn sich etwas an diesen Vorraussetzungen andert.
9
Literatur
[5]What is this zPDT?(and how does it fit in?), C. M. (Mike) Hammock, auffindbar unter
www.hammocktree.us/zpdt/zpdt whitepaper.pdf
[6]vgl. Wilhelm G. Spruth: System z and z/OS unique Characteristics. Universitat Tubingen,
10
[16]Intel
R Advanced Encryption Standard (AES) New Instructions Set (whitepaper), Shay
11