Workload as service in cloud environment

By receiving workload specifications and dynamically adjusting the number of workload units, the problem of uneven resource utilization in information processing systems is solved, enabling efficient performance benchmarking and load testing.

CN121900923APending Publication Date: 2026-04-21DELL PROD LP
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
DELL PROD LP
Filing Date
2024-10-18
Publication Date
2026-04-21

AI Technical Summary

Technical Problem

Existing information processing systems suffer from inefficiency and uneven resource utilization in performance benchmarking and load testing, making it difficult to effectively adjust workloads to match target utilization levels.

Method used

By receiving workload specifications, deploying workload units and adjusting their number based on actual utilization levels, the system achieves target utilization matching of processor, memory, I/O, and network resources, and dynamically adjusts these using workload agents.

Benefits of technology

It has enabled efficient utilization of information processing system resources, dynamically adjusted workload to meet target performance requirements, and improved the overall efficiency and resource utilization of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121900923A_ABST
    Figure CN121900923A_ABST
Patent Text Reader

Abstract

An information handling system may include at least one processor and a memory. The information handling system may be configured to: receive a workload specification of a target information handling system, wherein the workload specification identifies a target utilization level of processor utilization, memory utilization, input / output (I / O) utilization, and / or network utilization of the target information handling system; deploying a set of initial one or more workload units to the target information handling system, wherein the one or more workload units are configured to result in an actual utilization level of processor, memory, I / O and / or network resources on the target information handling system; and in response to a mismatch between the target utilization rate level and the actual utilization rate level, adjusting the number of workload units deployed on the target information handling system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure generally relates to information processing systems, and more specifically to providing performance benchmarking and load testing in information processing systems. Background Technology

[0002] As the value and use of information continue to grow, individuals and businesses are seeking additional ways to process and store information. One option available to users is an information processing system. Information processing systems typically process, compile, store, and / or communicate information or data for business, personal, or other purposes, allowing users to leverage the value of information. Because technologies and information processing needs and requirements vary between different users or applications, information processing systems may also vary in terms of what information is processed, how it is processed, how much information is processed, stored, or communicated, and how quickly and efficiently it can be processed, stored, or communicated. Variations in information processing systems allow them to be general-purpose or configured for specific users or purposes (such as financial transaction processing, airline ticketing, enterprise data storage, or global communications). Furthermore, information processing systems may include a variety of hardware and software components that can be configured to process, store, and communicate information, and may include one or more computer systems, data storage systems, and networking systems.

[0003] Hyperconverged infrastructure (HCI) is an IT framework that combines storage, compute, and networking into a single system in an attempt to reduce data center complexity and improve scalability. A hyperconverged platform may include hypervisors for virtualized compute, software-defined storage, and virtualized networking, and these typically run on standard off-the-shelf servers. One HCI solution is Dell EMC VxRail. TM Systems. Some examples of HCI systems can be found in various environments (e.g., HCI management systems, such as...). ESXi TM This can be done in an environment, or any other HCI management system. Some examples of HCI systems can be as software-defined storage (SDS) cluster systems (e.g., vSAN TM The system is running (such as an SDS cluster system, or any other SDS cluster system).

[0004] In the context of HCI (and other contexts), information processing systems can execute virtual machines (VMs) for various purposes. A VM can typically include any executable program or aggregate of executable programs configured to execute a guest operating system on a hypervisor or host operating system to manage and / or control the allocation and use of hardware resources such as memory, central processing unit time, disk space, and input / output devices, and to provide an interface between such hardware resources and applications hosted by the guest operating system.

[0005] Whether configuring settings for VMs, bare metal operations, or normal host system operations, it is beneficial for cloud service providers to offer performance benchmarking and load testing services. The implementation scheme disclosed herein realizes a "Workload as a Service" cloud platform.

[0006] It should be noted that the discussion of the technology in the background section of this disclosure does not constitute an admission of the state of the prior art. No such admission is made herein unless it is clearly and explicitly stated as such. Summary of the Invention

[0007] Based on the teachings of this disclosure, the drawbacks and problems associated with benchmarking and load testing can be reduced or eliminated.

[0008] According to embodiments of this disclosure, an information processing system may include at least one processor and memory. The information processing system may be configured to: receive a workload specification for a target information processing system, wherein the workload specification identifies a target utilization level for the processor utilization, memory utilization, input / output (I / O) utilization, and / or network utilization of the target information processing system; deploy an initial set of one or more workload units to the target information processing system, wherein the one or more workload units are configured to result in an actual utilization level of the processor, memory, I / O, and / or network resources on the target information processing system; and adjust the number of workload units deployed on the target information processing system in response to a mismatch between the target utilization level and the actual utilization level.

[0009] According to these and other embodiments of this disclosure, a method may include: an information processing system receiving a workload specification of a target information processing system, wherein the workload specification identifies a target utilization level of processor utilization, memory utilization, input / output (I / O) utilization, and / or network utilization of the target information processing system; the information processing system deploying an initial set of one or more workload units to the target information processing system, wherein the one or more workload units are configured to result in an actual utilization level of processor, memory, I / O, and / or network resources on the target information processing system; and the information processing system adjusting the number of workload units deployed on the target information processing system in response to a mismatch between the target utilization level and the actual utilization level.

[0010] According to these and other embodiments of this disclosure, an article of manufacture may include a non-transitory computer-readable medium having computer-executable instructions executable by an information processing system for: receiving a workload specification of a target information processing system, wherein the workload specification identifies a target utilization level of the processor utilization, memory utilization, input / output (I / O) utilization, and / or network utilization of the target information processing system; deploying an initial set of one or more workload units to the target information processing system, wherein the one or more workload units are configured to result in an actual utilization level of the processor, memory, I / O, and / or network resources on the target information processing system; and adjusting the number of workload units deployed on the target information processing system in response to a mismatch between the target utilization level and the actual utilization level.

[0011] The technical advantages of this disclosure will likely be apparent to those skilled in the art from the accompanying drawings, specification, and claims included herein. The objectives and advantages of the embodiments will be realized and achieved, at least by means of the elements, features, and combinations specifically pointed out in the claims.

[0012] It should be understood that the foregoing general description and the following detailed description are both illustrative and explanatory, and not limiting of the claims set forth in this disclosure. Attached Figure Description

[0013] A more complete understanding of the embodiments and advantages of the present invention can be obtained by referring to the following description in conjunction with the accompanying drawings, wherein like reference numerals indicate like features, and in the drawings:

[0014] Figure 1 A block diagram of an exemplary information processing system according to an embodiment of the present disclosure is shown; and

[0015] Figure 2 An exemplary architecture is shown according to an implementation scheme of this disclosure. Detailed Implementation

[0016] refer to Figure 1 and Figure 2 To best understand the preferred embodiments and their advantages, the same reference numerals are used to indicate similar and corresponding parts.

[0017] For the purposes of this disclosure, the term "information processing system" can include any tool or collection of tools operable to compute, classify, process, transmit, receive, retrieve, initiate, switch, store, display, indicate, detect, record, reproduce, dispose of, or utilize information, intelligence, or data of any form for commercial, scientific, control, entertainment, or other purposes. For example, an information processing system can be a personal computer, a personal digital assistant (PDA), a consumer electronics device, a network storage device, or any other suitable device, and can vary in size, shape, performance, functionality, and price. An information processing system can include memory, one or more processing resources, such as a central processing unit ("CPU") or hardware or software control logic. Additional components of an information processing system can include one or more storage devices, one or more communication ports for communicating with external devices, and various input / output ("I / O") devices (such as a keyboard, mouse, and video display). An information processing system may also include one or more buses operable to transmit communication between various hardware components.

[0018] For the purposes of this disclosure, when two or more elements are referred to as being “coupled” to each other, such a term indicates that the two or more elements are communicating electronically or mechanically, as applicable, whether they are directly or indirectly connected, with or without intervening elements.

[0019] When two or more components are referred to as “coupleable” to each other, such a term indicates that they are capable of being coupled together.

[0020] For the purposes of this disclosure, the term "computer-readable medium" (e.g., temporary or non-temporary computer-readable medium) may include any tool or set of tools that can retain data and / or instructions for a period of time. Computer-readable media may include, but is not limited to: storage media such as direct access storage devices (e.g., hard disk drives or floppy disks), sequential access storage devices (e.g., magnetic tape drives), optical discs, CD-ROMs, DVDs, random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), and / or flash memory; communication media such as wires, optical fibers, microwaves, radio waves, and other electromagnetic and / or optical carrier waves; and / or any combination of the foregoing.

[0021] For the purposes of this disclosure, the term "information processing resource" may be used broadly to refer to any component system, apparatus or device of an information processing system, including but not limited to processors, service processors, basic input / output systems, buses, memory, I / O devices and / or interfaces, storage resources, network interfaces, motherboards and / or any other components and / or elements of the information processing system.

[0022] For the purposes of this disclosure, the term "management controller" may broadly refer to an information processing system that provides management functions (typically out-of-band management functions) to one or more other information processing systems. In some embodiments, the management controller may be a service processor, a baseboard management controller (BMC), a chassis management controller (CMC), or a remote access controller (e.g., a Dell Remote Access Controller (DRAC) or an integrated Dell Remote Access Controller (iDRAC)) (or may be an integral part thereof).

[0023] Figure 1 A block diagram of an exemplary information processing system 102 according to an embodiment of the present disclosure is shown. In some embodiments, the information processing system 102 may include a server chassis configured to house multiple servers or "blades". In other embodiments, the information processing system 102 may include a personal computer (e.g., a desktop computer, laptop computer, mobile computer, and / or notebook computer). In still other embodiments, the information processing system 102 may include a storage rack configured to house multiple physical disk drives and / or other computer-readable media for storing data (which may generally be referred to as "physical storage resources"). Figure 1 As shown, the information processing system 102 may include a processor 103, a memory 104 communicatively coupled to the processor 103, a BIOS 105 (e.g., UEFI BIOS) communicatively coupled to the processor 103, a network interface 108 communicatively coupled to the processor 103, and a management controller 112 communicatively coupled to the processor 103.

[0024] In operation, processor 103, memory 104, BIOS 105, and network interface 108 may include at least a portion of the host system 98 of information processing system 102. In addition to the elements explicitly shown and described, information processing system 102 may also include one or more other information processing resources.

[0025] Processor 103 may include any system, apparatus, or device configured to interpret and / or execute program instructions and / or process data, and may include, but is not limited to, microprocessors, microcontrollers, digital signal processors (DSPs), application-specific integrated circuits (ASICs), or any other digital or analog circuit configured to interpret and / or execute program instructions and / or process data. In some embodiments, processor 103 may interpret and / or execute program instructions and / or process data stored in memory 104 and / or another component of information processing system 102.

[0026] Memory 104 is communicatively coupled to processor 103 and may include any system, apparatus, or device (e.g., computer-readable medium) configured to retain program instructions and / or data for a period of time. Memory 104 may include RAM, EEPROM, PCMCIA card, flash memory, magnetic storage device, opto-magnetic storage device, or any suitable choice and / or array of volatile or non-volatile memory that retains data after power to information processing system 102 is cut off.

[0027] like Figure 1 As shown, an operating system 106 may be stored on memory 104. Operating system 106 may include any program (or a collection of programs with executable instructions) configured to manage and / or control the allocation and use of hardware resources (such as memory, processor time, disk space, and input / output devices) and provide an interface between such hardware resources and applications hosted by operating system 106. Additionally, operating system 106 may include all or part of a network stack for network communication via a network interface (e.g., network interface 108 for communication over a data network). Although operating system 106... Figure 1 The operating system 106 is shown as being stored in memory 104, but in some embodiments, the operating system 106 may be stored in a storage medium accessible to the processor 103, and active portions of the operating system 106 may be transferred from such storage medium to memory 104 for execution by the processor 103.

[0028] Network interface 108 may include one or more suitable systems, devices, or apparatuses capable of operating as an interface between information processing system 102 and one or more other information processing systems via an in-band network. Network interface 108 enables information processing system 102 to communicate using any suitable transport protocol and / or standard. In these and other embodiments, network interface 108 may include a network interface card or “NIC”. In these and other embodiments, network interface 108 may be enabled as a motherboard local area network (LAN) (LOM) card.

[0029] The management controller 112 can be configured to provide management functions for managing the information processing system 102. This management can be performed by the management controller 112 even when the information processing system 102 and / or the host system 98 are powered off or powered to a standby state. The management controller 112 may include a processor 113, memory, and a network interface 118 that is separate from and physically isolated from the network interface 108.

[0030] like Figure 1 As shown, the processor 113 of the management controller 112 is communicatively coupled to the processor 103. This coupling can be made via a Universal Serial Bus (USB), a System Management Bus (SMBus), and / or one or more other communication channels.

[0031] Network interface 118 may be coupled to a management network, which may be separate from and physically isolated from the data network, as shown. Network interface 118 of management controller 112 may include any suitable system, device, or apparatus capable of operating via an out-of-band management network as an interface between management controller 112 and one or more other information processing systems. Network interface 118 enables management controller 112 to communicate using any suitable transport protocol and / or standard. In these and other embodiments, network interface 118 may include a network interface card or “NIC”. Network interface 118 may be a device of the same type as network interface 108, or in other embodiments, it may be a different type of device.

[0032] As described above, embodiments of this disclosure can be used to provide benchmarking and load testing for information processing systems such as HCI clusters as a cloud-based service. Figure 2 An exemplary architecture diagram is shown.

[0033] Server information processing system 202 provides cloud services to multiple client information processing systems 204. Workload agents can be provided by information processing system 202 to client systems 204 and run locally on them.

[0034] At the high level, Figure 2 The architecture can operate as follows. A user can provide a workload specification to server 202. The workload specification can indicate the computational, memory, I / O, and / or network utilization required for the test workload, as well as the required duration of the test. Server 202 can then deploy an agent to the target client system 204, which can be executed to run the required workload and continuously perform any necessary adjustments during runtime to match the actual workload to the specification (e.g., by starting or stopping workload units). Information regarding the number and type of running workload units and their performance characteristics can then be returned to server 202.

[0035] Figure 2 A detailed view of workload agents is also provided, which are configured to deploy combinations of several different types of workload units. As shown in the figure, many different types of workload units are available for CPU utilization, memory utilization, I / O reads, I / O writes, and network utilization. Each type of workload unit may also be available in small, medium, and large sizes. By combining specific workload units of specific sizes, the agent can boost system utilization to the desired level in each usage area. (For example, two large CPU units may provide below-desired utilization, while three large CPU workload units may provide excessive utilization. Therefore, the agent can deploy two large CPU workload units and one small CPU workload unit.)

[0036] The agent itself can be deployed as a system service, a containerized application, or in any other suitable manner. Each workload unit can be implemented as a runnable program configured to introduce a workload, such as... Figure 2 As shown. The agent can also maintain a mapping between system resource usage requirements and the number and type of running units that meet those requirements, and return this information to the server as a strategy to be used when requesting to run the same or similar workloads on the same or similar hardware in the future.

[0037] In some cases, it may be necessary to obtain performance benchmarks, temperature information, and other operational telemetry data about the system under different workloads (e.g., CPU utilization of 20%, 40%, 60%, and 80%; memory utilization of 20%, 40%, 60%, and 80%; etc.).

[0038] Therefore, users can input their required usage specifications into the cloud workload-as-a-service provider's interface. The provider can then deploy the workload agent to each of the target nodes in the information processing system 204.

[0039] If a pre-existing workload policy exists for the required workload specifications, that policy can be used. If not, the agent can use heuristics based on hardware configuration, current load levels, and other factors to make an initial prediction of the workload units to be deployed. This prediction can be refined over time based on the actual utilization resulting from the deployed workload units.

[0040] For example, suppose a user wants to target both 20% CPU utilization (assuming this equates to 2000MHz utilization of a specific CPU with a standardized performance level) and 20% memory utilization (32GB). The agent can start with an initial set of workload units as shown in Table 1 below to approximate these utilization requirements. In some implementations, the agent may prefer to start with a combination of all three unit sizes for easier tuning.

[0041] Alternatively, if a pre-existing strategy for a workload requested on similar hardware is available, the strategy can be implemented using the same workload unit specified by the strategy without a heuristic approach.

[0042] Estimated utilization per unit Number of running units CPU Unit — Large 500MHz 3 CPU Unit - Medium 200MHz 2 CPU unit — small 50MHz 2 Memory unit—large 1GB 30 Memory unit - medium 500MB 3 Memory cell — small 100MB 5

[0043] Table 1

[0044] After launching an initial set of workload units (based on a heuristic or pre-existing strategy), the agent can monitor CPU and memory utilization over a pre-configured time period. Based on the observed actual utilization levels, the agent can adjust as needed to launch more units or stop some existing units to better suit the requested load specifications.

[0045] After a workload has run for a pre-configured period of time, the user can request other workloads, which can be done in a similar manner. The information processing system 202 can monitor performance, temperature, and any other operational characteristics during testing, thereby providing results to the user.

[0046] This disclosure covers all changes, substitutions, variations, alterations, and modifications to the exemplary embodiments herein that will be understood by those skilled in the art. Similarly, where appropriate, the appended claims cover all changes, substitutions, variations, alterations, and modifications to the exemplary embodiments herein that will be understood by those skilled in the art. Furthermore, references in the appended claims to a device, system, or component adapted to, arranged to, capable of, configured to, enabled to, or operable to perform a particular function cover said device, system, or component, whether or not it or said particular function is activated, turned on, or unlocked, provided that said device, system, or component is so adapted, arranged, capable of, configured, enabled, operable, or operable.

[0047] Furthermore, the statements in the appended claims that the structure is “configured” or “operable to” perform one or more tasks are not intended to invoke 35 U.S.SC §112(f) with respect to the elements of the claims. Therefore, none of the claims in this filing are intended to be construed as having a component plus a functional element. If the applicant wishes to invoke §112(f) during the course of proceedings, the applicant will use the structure “component for [performing a function]” to state the elements of the claims.

[0048] All examples and conditional language used herein are intended for pedagogical purposes to aid the reader's understanding of the invention and the concepts contributed by the inventors to advance the art, and are to be construed as not being limited to the examples and conditions specifically stated herein. Although embodiments of the invention have been described in detail, it should be understood that various changes, substitutions, and modifications may be made thereto without departing from the spirit and scope of this disclosure.

Claims

1. An information processing system, the information processing system comprising: At least one processor; as well as Memory; The information processing system is configured as follows: Receive the workload specifications of the target information processing system, wherein the workload specifications identify the target utilization level of the target information processing system, including processor utilization, memory utilization, input / output (I / O) utilization, and / or network utilization; Deploy an initial set of one or more workload units to the target information processing system, wherein the one or more workload units are configured to result in an actual utilization level of processor, memory, I / O and / or network resources on the target information processing system; as well as In response to a mismatch between the target utilization level and the actual utilization level, the number of workload units deployed on the target information processing system is adjusted.

2. The information processing system of claim 1, wherein the one or more workload units include an executable program.

3. The information processing system of claim 1, wherein the initial set of one or more workload units is based on a heuristic method regarding the hardware configuration of the target information processing system.

4. The information processing system of claim 1, wherein the initial set of one or more workload units is based on a pre-existing strategy derived from previous workload tests.

5. The information processing system of claim 1, wherein the information processing system is configured to store information about the number of adjusted workload units as a strategy for future workload testing.

6. The information processing system of claim 1, wherein the information processing system is configured to receive telemetry information from the target information processing system, the telemetry information including at least one temperature measurement value.

7. A method, the method comprising: The information processing system receives a workload specification of the target information processing system, wherein the workload specification identifies a target utilization level of the target information processing system, including processor utilization, memory utilization, input / output (I / O) utilization, and / or network utilization. The information processing system deploys an initial set of one or more workload units to the target information processing system, wherein the one or more workload units are configured to result in an actual utilization level of processor, memory, I / O and / or network resources on the target information processing system; as well as In response to a mismatch between the target utilization level and the actual utilization level, the information processing system adjusts the number of workload units deployed on the target information processing system.

8. The method of claim 7, wherein the one or more workload units comprise an executable program.

9. The method of claim 7, wherein the initial set of one or more workload units is based on a heuristic approach regarding the hardware configuration of the target information processing system.

10. The method of claim 7, wherein the initial set of one or more workload units is based on a pre-existing strategy derived from previous workload tests.

11. The method of claim 7, further comprising the information processing system storing information about the number of adjusted workload units as a strategy for future workload testing.

12. The method of claim 7, further comprising the information processing system receiving telemetry information from the target information processing system, the telemetry information including at least one temperature measurement value.

13. An article of manufacture comprising a non-transitory computer-readable medium having computer-executable instructions thereon, the computer-executable instructions being executable by an information processing system for: Receive the workload specifications of the target information processing system, wherein the workload specifications identify the target utilization level of the target information processing system, including processor utilization, memory utilization, input / output (I / O) utilization, and / or network utilization; Deploy an initial set of one or more workload units to the target information processing system, wherein the one or more workload units are configured to result in an actual utilization level of processor, memory, I / O and / or network resources on the target information processing system; as well as In response to a mismatch between the target utilization level and the actual utilization level, the number of workload units deployed on the target information processing system is adjusted.

14. The article of manufacture of claim 13, wherein the one or more workload units comprise an executable program.

15. The article of manufacture of claim 13, wherein the initial set of one or more workload units is based on a heuristic method regarding the hardware configuration of the target information processing system.

16. The article of manufacture of claim 13, wherein the initial set of one or more workload units is based on a pre-existing strategy derived from previous workload testing.

17. The article of manufacture of claim 13, wherein the instructions are further executable to store information about the number of adjusted workload units as a strategy for future workload testing.

18. The article of manufacture of claim 13, wherein the instructions are also executable to receive telemetry information from the target information processing system, the telemetry information including at least one temperature measurement value.