Detektivische Kleinarbeit
Auf der Suche nach der Performance.
Diffuse Aussagen zu Performanceproblemen im Einsatz unserer Software gehören für unsere Hotline-Mitarbeiter zu den schwierigsten Vorgängen, weil die technische Installation beim Anwender nicht zu der Zuständigkeit der Hotline gehört und eine Abgrenzung zwischen einem Software- und einem Hardware-Problem schwierig zu ermitteln und schwierig zu kommunizieren ist.
Wahrnehmung
Oft werden Performanceprobleme subjektiv empfunden und artikuliert:
- „Früher ließen sich die Programme schneller starten.“
- „Am PC der Kollegin geht das Ganze schneller.“
- „Beim Projekt im Netzwerk dauert alles viel länger.“
Alle Zitate formulieren eine relative Aussage, wie sich ein Programm auf dem einen oder anderen Rechner verhält oder wie schnell sich eine Projektbearbeitung von der lokalen Platte oder aus dem Netzwerk heraus anfühlt. Keine Aussage hinterfragt, ob es nicht sogar noch wesentlich schneller als bei der schnellsten aller Varianten (früher, am Rechner der Kollegin) gehen könnte und ob das nicht sogar ohne Unterschied zwischen lokaler Festplatte oder über das Netzwerk möglich ist.
Anspruch
Geben Sie sich nicht mit einer schlechten Performance zufrieden. Wer sich durch die folgenden Zeilen herausgefordert fühlt, sollte genügend Zeit für eine ausführliche Analyse einplanen. Aus der Erfahrung mit dem eigenen Netz wissen wir, dass sich die Bearbeitungszeiten für Modelle auf der lokalen Platte oder im Netzwerk nicht unterscheiden müssen.
Analyse
Fertigen Sie eine Tabelle an, in der Sie alle PCs im Büro mit allen Komponenten erfassen: Prozessortyp, Festplatten, RAM, Netzwerk- und Grafikkarte. Untersuchen Sie auch das Netzwerk: Verkabelung, Switches. Wie sieht Ihr Netzwerkspeicher aus und ggf. die Firewall. Notieren Sie, welche Software und Dienste auf diesen PCs installiert sind.
Testszenario
Suchen Sie sich ein Projekt mit einem geeigneten Modell, um signifikante Performanceeigenschaften vergleichen zu können. Bereits die Auswahl, welchen Aspekt der Softwareanwendung Sie vergleichen wollen, ist entscheidend, wie gut Sie die weiteren Optimierungsschritte beurteilen können. Beachten Sie bitte, dass die Tests sehr oft wiederholt werden müssen. Deshalb gilt:
- Testaufwand muss gering bleiben
- Testzyklen müssen sicher reproduzierbar sein
- Testzyklen müssen für eine Messung lang genug dauern
- Testszenarium muss relevant und repräsentativ sein
Nach der Bestandsaufnahme wenden Sie sich den verschiedenen Komponenten zu und optimieren Sie die Performance im gesamten System. Nach jedem Schritt messen Sie die Performance und halten die Ergebnisse in der Tabelle fest.
Test: „Startzeit ViCADo-Modell“
Um die Performance der Hardware in allen Komponenten zu beurteilen, sind signifikante Beispiele der gesamten eingesetzten Software zu testen. Im Folgenden wollen wir uns auf die Startzeiten von ViCADo konzentrieren. Wir wählen ein besonders großes Modell, damit wir die Ladezeiten des CAD-Modells auch auf dem schnellsten PC noch gut messen können. Mit den Ladezeiten erwarten wir Rückschlüsse auf die Geschwindigkeit der lokalen Platte, des Netzwerkes und der Grafikkarte. Die Ergebnisse werden für die Startzeiten von MicroFe- und BauStatik-Modellen übertragbar sein.
PCs und Netzwerkkomponenten
Wer ernsthaft die Performance in den Griff bekommen will, darf nicht basteln, sondern muss die Rechner und das Netzwerk auf den Stand der Technik bringen. Zunächst suchen wir nach einer Möglichkeit den PC mit seinem lokalen Speichermedium und alle Netzwerkkomponenten zu optimieren.
Potentielle Testinhalte
Wir müssen einen genau abgrenzbaren Teilaspekt der Projektbearbeitung herausfinden, dessen Zeitverhalten reproduzierbar ist und so gegenseitig verglichen werden kann. Einige Beispiele sollen die Entscheidungskriterien verdeutlichen:
Festplattenzugriffe
Lesen und schreiben auf der Festplatte bremsen oft die Performance. Schnelle Festplatten (SSD, m.2) haben unmittelbaren Einfluss. Der Start eines Programms hängt von der Lesegeschwindigkeit der Systemfestplatte (Installation) ab und von der Zugriffsgeschwindigkeit auf den Datenträger, von wo das entsprechende Modell gelesen wird.
Startzeit eines Modells
Nichts raubt mehr Nerven, als vor dem PC auf den Start der Bearbeitung zu warten. Wo ist Ihre persönliche Schmerzgrenze? Bei 10 Minuten oder bereits nach 60 Sekunden.
Die Startzeiten gehören zu einer typischen Testkonstellation, um den Programmstart von der Systemfestplatte, das Laden von der Datenfestplatte oder aus dem Netzwerk und den Bildschirmaufbau zu testen.
Speichern eines Modells
Die Arbeit ist getan, jetzt noch schnell alles speichern. Nichts nervt mehr, als nach getaner Arbeit jetzt noch zu warten.
Für ViCADo eignet sich ein Test der Speicherzeiten allerdings nicht: Hier können wir nichts optimieren. ViCADo speichert nach jedem Bearbeitungsschritt den veränderten Datenbestand parallel und asynchron, ohne den nächsten Bearbeitungsschritt zu blockieren. So sind die Daten immer auf dem neuesten Stand in der Datenbank gesichert. Selbst wenn ViCADo über den Prozessmonitor „abgeschossen“ würde, bleibt die Datenbank dank der „Transaktionssicherheit“ intakt, maximal ein Bearbeitungsschritt ginge verloren. Beim Beenden von ViCADo muss daher nicht mehr gespeichert werden.
Bildschirmanzeige
Eine Grafik wird gedreht, der Inhalt neu aufgebaut und schon wieder wartet man auf den Rechner.
Ein Test der Bildschirmanzeige ist ein geeigneter Test für eine gute Grafikkarte oder die Leistungsfähigkeit des Programms. Es kann aber i.d.R. keine Aussage zur Performance des Netzwerkes liefern.
Geschmeidiger Workflow
Eigentlich flutscht alles wunderbar, aber dann bremst der eine oder andere Befehl den gesamte Arbeitsablauf empfindlich aus. Es erfordert hohe Konzentration jetzt an alles zu denken und die Arbeit sicher durchzuführen.
Ein Test des Workflows ist ein Test der Durchgängigkeit der Software und liefert eher eine Aussage über die Sorgfalt des Produktmanagements der Software als über die Performance der Hardware.
Rechenintensive Vorgänge
In FEM-Systemen besteht ein großer Anteil der Rechenzeit aus der Lösung mathematischer Aufgaben, die sich sehr gut auf viele Prozessoren verteilen lassen. Für die mb WorkSuite lohnt sich der Einsatz von Mehrkernprozessoren. Alle besonders rechenintensiven Prozesse wurden parallelisiert und nutzen die vorhandenen Prozessorkerne aus. Einige Algorithmen, die nicht parallelisiert werden konnten, arbeiten asynchron, um einen geschmeidigen Ablauf zu garantieren. Bei manchen Programmteilen wäre ein paralleler Ansatz kontraproduktiv, dazu gehört u.a. der Zugriff auf die Datenbanken. Deshalb ist für die mb WorkSuite in der Abwägung zwischen hoher Taktfrequenz oder vielen Kernen ein Mittelweg, ein anzustrebender Kompromiss.
Lokale Festplatten HDD, SSDs m.2
ViCADo-, BauStatik- und MicroFe-Modelle werden im ProjektManager per Doppelklick zur Bearbeitung geöffnet. Dazu wird zuerst das entsprechende Programm mit allen erforderlichen DLLs gestartet. Danach werden Stammdaten und schließlich das Modell geladen.
Der Start der Programme erfolgt von der lokalen Platte aus, auf der die Installation vorgenommen wurde. Der Programmstart hängt also bereits von der Festplatte des jeweiligen PCs ab. Herkömmliche HDDs sind wesentlich langsamer als SSD. SSDs gehören seit Jahren längst zum Stand der Technik. In letzter Zeit findet mit den m.2-SSDs eine weitere Geschwindigkeitssteigerung statt. Alle modernen Laptops arbeiten mit einer m.2-SSD-Festplatte und beziehen einen wesentlichen Anteil ihrer Performance aus diesem Bauteil.
Wer einen smarten Programmstart erleben möchte, sollte unbedingt auf m.2-SSD-Festplatten zurückgreifen. Oft werden in einem PC verschiedene Festplatten verbaut, eine für die Installation und die Systemdaten, die anderen für die Ablage der Daten. Auch die Daten-Festplatte sollte mittlerweile aus einer schnellen SSD bestehen. Vor der weiteren Analyse sollte man seine PCs zunächst auf die m.2-SSDs aufrüsten.
Messen Sie die Startzeiten des Referenzmodells auf jedem PC und zwar einmal von der lokalen Platte aus und einmal beim Start über das Firmennetzwerk aus.
https://www.heise.de/tipps-tricks/HDD-oder-SSD-Was-ist-besser-4121739.html
Netzwerk
In vielen Büros befinden sich noch Netzwerke früherer Generationen, das sind 100MBit/s-Netzwerke und manchmal bereits 1GBit/s-Netzwerke. Manchmal findet man auch zunächst als Provisorium eingerichtete WLAN-Netzwerke vor.
10 GBit/s-Ethernet
Auch wenn es übertrieben erscheint, eine Aufrüstung auf 10 GBit/s-Netzwerke lohnt sich, erfordert aber auch den Austausch aller PC-Netzwerkkarten, Switches, Patchfelder, Patchkabel und ggf. der kompletten Verkabelung. Überlassen Sie diese Arbeit unbedingt einem Profi. Selbst das sorgfältige Verlegen der Kabel, die Auswahl der Patchkabel und das Durchtesten aller Verbindungen will gelernt sein.
Netzwerkspeicher
Es gibt NAS-Platten für kleines Geld beim Discounter. Dass solche preisbewussten Systeme nicht die Lösung für hochperformante Netzwerke sind, sollte jedem einleuchten. Lassen Sie sich vom Profi beraten. NAS-Systeme mit SSDs können der Ausgangspunkt sein und die Wahl des richtigen RAID-Systems kann eine weitere Performancesteigerung geben. Hier muss sorgfältig zwischen den gegenläufigen Ansprüchen Ausfallsicherheit und Performance entschieden werden.
Backup-System
In die Performancebetrachtungen müssen von Anfang an auch die Sicherheitskomponenten wie ein Backup-System eingeplant werden. Ein Backup-System, was jeden Dateizugriff überwacht, nur um dann einmal in der Nacht eine Kopie zu ziehen, kann das ganze System ausbremsen. Hier ist eine sorgfältige Auswahl zwischen den auf dem Markt verfügbaren Systemen zu treffen. Auch hier sind Experten gefragt.
Antivirensoftware
Ähnlich wie beim Backup-System verhält es sich mit dem Virenschutzprogramm für Ihren lokalen Rechner und auf Ihrem Netzwerkspeicher. Je nach eingesetztem System ist der Performanceverlust ggf. beträchtlich. Das Laufzeitverhalten der verschiedenen Systeme kann je nach eingesetzter Software unterschiedlich ausfallen. Vermeiden Sie den gleichzeitigen Betrieb mehrerer Virenschutzsysteme.
Updates
Alle Komponenten eines Firmennetzwerkes benötigen regelmäßige Updates. Sei es die Virenschutzsoftware, die Firewall oder die Backupsoftware. Bei jedem Update ändert sich die Grundvoraussetzung für die einmal festgestellte Performance. Wer nicht überrascht sein will, dass sich plötzlich alles ganz anders anfühlt als noch in der letzten Woche, sollte seine festen Testszenarien parat haben und damit vor und nach dem Einspielen eines Updates sein System hinsichtlich der Performance testen und sorgfältig dokumentieren. Diese prophylaktische Mehrarbeit lohnt sich auf jeden Fall angesichts einer nachträglich aufwendigen Suche nach der Ursache.
Eine schlechte Performance muss nicht hingenommen werden
Wir kennen Berichte unserer Anwender, die über eine schlechte Performance klagen und über große Unterschiede zwischen dem Arbeiten auf einer lokalen Festplatte und auf einem Netzwerklaufwerk berichten. Aber wir kennen auch begeisterte Erzählungen, wie nach einer sorgfältigen Analyse das Arbeiten auf dem Netzlaufwerk genauso schnell funktionierte, wie auf den lokalen Festplatten. Diese Berichte bestätigen unsere Erfahrung im eigenen Netzwerk.
Leider können wir mit diesem Bericht keine konkrete Software- oder Hardwareempfehlung verbinden. Eine pauschale Übertragbarkeit auf eine andere Bürosituation halten wir für ungeeignet. Vielmehr wollen wir aufzeigen, dass in jedem einzelnen Fall eine sorgfältige, individuelle Analyse vor Ort unerlässlich – aber lohnenswert ist.