WHAT IS A COMPUTER WORKLOAD?

In the computer environment, a workload is a single work order that is assigned to physical or virtual systems for processing. The workload produces a result that is further processed by the ordering system or serves as input for another workload. Workloads are usually managed and can also be used to measure the performance of a system.
The term workload does not have a clear definition. In computing, it refers to a single workload that is assigned to a distributed computer system for processing. The individual workloads are executed by physical or virtual systems and return a result to the commissioning system. This is processed further or serves as input for another workload.

Workloads are clearly limited in scope and are processed by the systems within a certain period of time. Individual computer systems can be assigned a large number of workloads, which they process in parallel or one after the other. Applications running in distributed computer systems usually work by assigning many small subtasks to different systems in the form of individual workloads.
​​​​​​​
Parallelising workloads can increase the performance and speed of the application. However, parallelising many workloads requires management to control the subtasks and merge the results. In extreme cases, individual workloads perform only minimal subtasks. Applications based on microservices emerge, which are called "cloud-native applications" in the cloud environment. In the area of virtualisation and cloud computing, the workloads for the commissioning system can often no longer be assigned to a specific hardware, although they are ultimately always to be processed by a physical system.

DIFFERENT TYPES OF WORKLOAD

Workloads can be divided into different subtypes. A workload can be composed of several of these individual workloads or it can be specifically a single one of these workloads. The individual types of workloads are:
​​​​​​​
  • CPU-Workloads
  • GPU-Workloads
  • Memory-Workloads
  • Database-Workloads
  • I/O-Workloads (Input/Output)

The output of the workload can be the basis for the next workload or the output in the programme. Especially in the context of cloud computing, where sometimes different workloads that differ greatly from each other are executed on the same system or, conversely, a workload is distributed to different servers, workloads can hinder and slow each other down. In such cases, intelligent workload management is an option.

A defined workload can be specified as a benchmark when evaluating a system. Performance is measured by how easily the computer handles the defined workload. This is reflected in the response time, i.e. the time between a request and the system's response - and the throughput, i.e. how much work is done over a certain period of time.
CPU workloads are computational requests to a processor that return a computational result. Memory workloads are jobs that perform permanent or temporary storage of data. The task of I/O workloads is to collect and analyse input data in order to generate output data. Finally, database workloads perform actions such as queries or updates of data in databases.
When systems or applications work in distributed environments with a variety of different workloads, they need to be managed. For example, workload management includes the following elements:
​​​​​​​
  • Distribution of work orders
  • Redundancy mechanisms for work orders
  • Load balancing of work orders
  • Monitoring of work orders
  • Consolidating the results of the work assignments