G06F2209/504

MANAGING RESOURCE ALLOCATION IN A SOFTWARE-DEFINED SYSTEM
20220197701 · 2022-06-23 ·

Resource allocation can be managed in a software-defined system. For example, a computing device can receive, for a container in a software-defined system, a container limit specifying a maximum value for the container. The computing device can receive, for the container, one or more benefit functions that assign a weight for the resource in the software-defined system. The computing device can determine a value for a resource is less than the container limit. In response to determining the value for the resource is less than the container limit, the computing device can allocate the resource to the container based on the weight from the one or more benefit functions.

Systems and methods for resource utilization control

Various embodiments of the present technology can include systems, methods, and non-transitory computer readable media configured to receive request information associated with a first request. The request information comprises user information associated with a first user. A first usage threshold associated with the first user is determined based on the user information. A determination is made that the first request has exceeded the first usage threshold. The first request is automatically terminated based on the determination that the first request has exceeded the first usage threshold.

Adjusting variable limit on concurrent code executions

Systems and methods are described for adjusting a number of concurrent code executions allowed to be performed for a given user on an on-demand code execution environment or other distributed code execution environments. Such environments utilize pre-initialized virtual machine instances to enable execution of user-specified code in a rapid manner, without delays typically caused by initialization of the virtual machine instances. However, to improve utilization of computing resources, such environments may temporarily restrict the number of concurrent code executions performed on behalf of the given user to a number less than the maximum number of concurrent code executions allowed for the given user. Such environments may adjust the temporary restriction on the number of concurrent code executions based on the number of incoming code execution requests associated with the given user.

Methods for managing storage quota assignment in a distributed system and devices thereof

Methods, non-transitory machine readable media, and computing devices that more efficiently and effectively manage storage quota enforcement are disclosed. With this technology, a quota ticket comprising a tally generation number (TGN) and a local allowed usage amount (AUA) are obtained. The local AUA comprises a portion of a global AUA associated with a quota rule. The local AUA is increased following receipt of another portion of the global AUA in a response from a cluster peer, when another TGN in the response matches the TGN and the local AUA is insufficient to execute a received storage operation associated with the quota rule. The local AUA is decreased by an amount corresponding to, and following execution of, the storage operation, when the increased local AUA is sufficient to execute the storage operation.

Optimizing machine learning-based, edge computing networks

Optimizing a network comprising a core computing system (CCS) and a set of edge computing devices (ECDs), wherein each of the ECDs locally performs computations based on a trained machine learning (ML) model. A plurality of ML models are continually trained at the CCS, concurrently, based on data collected from the ECDs. One or more states of the network and/or components thereof are monitored. The monitored states are relied upon to decide (when) to change a trained ML model as currently used by any of the ECDs to perform said computations. It may be decided to change the model used by a given one of the ECDs to perform ML-based computations. One of the models as trained at the CCS is selected (based on the monitored states) and corresponding parameters are sent to this ECD. The latter can resume computations according to a trained model.

Autoscaling and throttling in an elastic cloud service

Techniques described herein can optimize usage of computing resources in a data system. Dynamic throttling can be performed locally on a computing resource in the foreground and autoscaling can be performed in a centralized fashion in the background. Dynamic throttling can lower the load without overshooting while minimizing oscillation and reducing the throttle quickly. Autoscaling may involve scaling in or out the number of computing resources in a cluster as well as scaling up or down the type of computing resources to handle different types of situations.

Thread pool management for multiple applications

Execution of varying tasks for heterogeneous applications running in a single runtime environment is managed. The runtime environment is capable of managing thread pools for any of the plurality of applications and receives a request to manage a thread pool for one of the applications. The request includes size thresholds for the pool, a first function to be invoked for creation of threads, and a second function to be invoked for termination of the threads. Responsive to detecting that a first size threshold is not satisfied, the runtime environment invokes the first function to cause the application to create an additional thread. Responsive to detecting that a second size threshold is not satisfied, the runtime environment places an artificial task that incorporates the second function into a work queue for the thread pool, whereby a thread executes the artificial task to invoke the second function and thereby terminates.

Optimizing Hybrid Cloud Usage
20220147380 · 2022-05-12 ·

Techniques are provided for optimizing hybrid cloud usage. In an example, a cloud spot manager can manage spot virtual machine instances for on-premises systems for multiple different customers. Where a customer requires more resources on its system, the cloud spot manager can terminate another customer's spot virtual machine on that system. Where a customer needs more resources than can be provided by its system, the cloud spot manager can determine another customer system to locate the first customer's spot virtual machine, and instantiate that virtual machine there.

CO-OPERATIVE MEMORY MANAGEMENT SYSTEM

Systems and methods for computer memory management by a memory coordinator and a plurality of memory consumers. An urgency and memory quota of each memory consumer is initialized by the memory coordinator, which then adjusts the memory quota of each memory consumer such that the sum of the memory quota of each memory consumer does not exceed a finite amount of computer memory. Each memory consumer adjusts its memory usage in response to the quota input and urgency input from the memory coordinator.

Autonomous multitenant database cloud service framework

Provided herein are workload management techniques that asynchronously configure pluggable databases within a compute cloud. In an embodiment, the compute cloud receives an administrative request that indicates configuration details for a pluggable database. The compute cloud generates a configuration descriptor that specifies an asynchronous job based on the configuration details of the request. The compute cloud accesses hosting metadata to detect at least one of: a) a current container database that already hosts the pluggable database, b) a target container database that will host the pluggable database, or c) a particular computer that hosts at least one of: the current container database, or the target container database. The compute cloud executes the asynchronous job to configure the pluggable database based on at least one of: the hosting metadata, or the configuration descriptor. Thread pools, lanes, and queues may facilitate load balancing to avoid priority inversion, starvation, and denial of service.