Was ist eine Computer Arbeitslast (Workload)

Ein Workload ist im Computerumfeld ein einzelner Arbeitsauftrag, der an physische oder virtuelle Systeme zu Bearbeitung vergeben wird. Der Arbeitsauftrag liefert ein Ergebnis, das vom beauftragenden System weiterverarbeitet wird oder als Input für einen weiteren Arbeitsauftrag dient. Workloads werden in der Regel gemanagt und lassen sich auch zur Messung der Performance eines Systems nutzen.
Der Begriff Workload besitzt keine eindeutige Definition. Im Computerbereich bezeichnet er einen einzelnen Arbeitsauftrag, der an ein verteiltes Computersystem zur Bearbeitung vergeben wird. Die einzelnen Workloads werden von physischen oder virtuellen Systemen ausgeführt und liefern dem beauftragenden System ein Ergebnis zurück. Dieses wird weiterverarbeitet oder dient als Input für einen weiteren Arbeitsauftrag.

Workloads sind in ihrem Umfang klar begrenzt und werden von den Systemen in einem bestimmten Zeitraum bearbeitet. Einzelne Computersysteme können mit einer Vielzahl an Workloads beauftragt werden, die sie parallel oder nacheinander abarbeiten. Anwendungen, die in verteilten Computersystemen ausgeführt werden, arbeiten in der Regel so, dass sie viele kleine Teilaufgaben in Form einzelner Workloads an unterschiedliche Systeme vergeben.
​​​​​​​
Durch die Parallelisierung der Workloads lassen sich die Performance und die Geschwindigkeit der Anwendung steigern. Allerdings erfordert die Parallelisierung vieler Workloads das Management zur Steuerung der Teilaufgaben und zur Zusammenführung der Ergebnisse. Im Extremfall führen einzelne Workloads nur minimale Teilaufgaben aus. Es entstehen Anwendungen basierend auf Microservices, die im Cloud-Umfeld als „Cloud-Native-Anwendungen“ bezeichnet werden. Im Bereich der Virtualisierung und des Cloud Computings sind die Workloads für das beauftragende System oft nicht mehr einer bestimmten Hardware zuordenbar, obwohl sie letztlich immer von einem physischen System zu bearbeiten sind.

Verschiedene Arten von Workloads

Workloads lassen sich in verschiedene Unterarten unterteilen. Ein Workload kann sich aus mehreren dieser einzelnen Workloads zusammensetzen oder nur spezifisch ein einzelner dieser Workloads sein. Die einzelnen Arten von Workloads sind:
​​​​​​​
  • CPU-Workloads
  • GPU-Workloads
  • Speicher-Workloads
  • Datenbank-Workloads
  • I/O-Workloads (Input/Output)

Die Ausgabe eines Workloads kann die Grundlage für den nächsten Workload oder die Ausgabe im Programm sein. Gerade im Zusammenhang mit Cloud-Computing, wo teilweise verschiedene sich stark voneinander unterscheidende Workloads auf demselben System durchgeführt werden oder umgekehrt ein Workload auf verschiedene Server verteilt wird, können Workloads einander behindern und verlangsamen. In solchen Fällen ist Intelligentes Workload-Management ene Option.

Ein definierter Workload kann als Benchmark bei der Bewertung eines Systems angegeben werden. Die Leistung bemisst sich daraus, wie leicht der Computer den definierten Workload bewältigt. Das zeigt sich in der Reaktionszeit, also die Zeit zwischen einer Anfrage und der Antwort des Systems - und dem Durchsatz, nämlich wie viel Arbeit über einen bestimmten Zeitraum geleistet wird.
CPU-Workloads sind Rechenaufträge an einen Prozessor, die ein Rechenergebnis zurück liefern. Bei den Speicher-Workloads handelt es sich um Aufträge, welche die permanente oder temporäre Speicherung von Daten ausführen. Die Aufgabe von I/O-Workloads ist es, Eingabedaten zu sammeln und zu analysieren, um daraus Ausgabedaten zu erzeugen. Datenbank-Workloads schließlich führen Aktionen wie Abfragen oder Aktualisierungen von Daten in Datenbanken aus.
Arbeiten Systeme oder Anwendungen in verteilten Umgebungen mit einer Vielzahl verschiedener Workloads, müssen diese gemanagt werden. Beispielsweise beinhaltet das Workload-Management folgende Elemente:
​​​​​​​
  • Verteilung der Arbeitsaufträge
  • Redundanzmechanismen für Arbeitsaufträge
  • Loadbalancing der Arbeitsaufträge
  • Monitoring der Arbeitsaufträge
  • Konsolidierung der Ergebnisse der Arbeitsaufträge