Dynamic Cloud Workload Mapping via ML Prediction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current cloud-based 3D visualization systems face inefficiencies due to provisioning static compute resources, leading to resource waste when workloads have low demands and poor performance when they are high, as they do not effectively match computational needs with resource provisioning.
Innovation Solution
A method using a machine learning model to predict performance metrics based on system parameters, allowing for dynamic mapping of 3D visualization workloads to containers, thereby optimizing resource allocation and reducing waste and performance issues by selecting appropriate infrastructure for each workload.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If static compute resources are provisioned for each workload, then resource allocation is simplified, but resource waste occurs when workload demands are low
Solution Approach 1:
The system dynamically provisions compute resources by containerizing workloads and allocating them to shared compute instances based on actual workload demands. Instead of static one-to-one mapping, multiple containers share compute resources dynamically, allowing the system to adapt resource allocation to varying workload intensities and eliminate waste from underutilized provisions.
Solution Approach 2:
The system changes the provisioning parameter from fixed one-to-one container-to-VM mapping to flexible many-to-many container-to-compute-instance mapping. This allows multiple containers to share compute instances with varying resource allocations based on workload characteristics, transforming the rigid provisioning model into a flexible one that optimizes resource utilization.
2Ease of manufacture
If static compute resources are provisioned for each workload, then infrastructure setup is straightforward, but performance suffers when workload demands are high
Solution Approach 1:
The system enables dynamic resource scaling by allowing compute instances to be shared across multiple containers based on real-time workload demands. When workload intensity increases, the system can allocate additional compute capacity to affected containers, improving performance without requiring complex pre-provisioning for peak loads.
Solution Approach 2:
The system makes compute instances universal by allowing them to serve multiple containers across different workloads simultaneously. A single compute instance can dynamically serve multiple containers based on their resource needs, eliminating the need for dedicated static provisioning and enabling efficient resource sharing that improves overall system productivity.
3Reliability
If one-to-one mapping from containers to VMs is used, then resource allocation is predictable, but resource utilization efficiency decreases
Solution Approach 1:
The system merges multiple containers into shared compute instances, allowing multiple workloads to coexist on the same underlying infrastructure. This consolidation increases resource utilization efficiency by eliminating idle capacity while maintaining predictable resource allocation through container-level resource management and orchestration.
Solution Approach 2:
The system transitions from static one-to-one mapping to dynamic many-to-many mapping between containers and compute instances. This dynamic approach allows the system to optimize resource utilization by allocating compute capacity based on actual workload demands while maintaining predictable performance through resource quotas and isolation mechanisms.
4Adaptability or versatility
If multiple compute resource options are provided, then workload matching flexibility increases, but system complexity increases
Solution Approach 1:
The system implements self-service workload matching through containerization and automated orchestration. The container runtime and orchestration system automatically match workloads to appropriate compute resources based on declared resource requirements, eliminating the need for complex manual provisioning processes while maintaining high flexibility in workload-to-resource matching.
Solution Approach 2:
The system introduces containerization as an intermediary layer between workloads and compute resources. This abstraction layer simplifies the complexity by providing standardized interfaces for resource requests and allocations, allowing the system to manage multiple compute resource options through a unified container management framework rather than direct complex point-to-point mappings.
Data Source
AI summary
A visualization request to visualize data is received. System parameters responsive to the visualization request are obtained. Predicted performance metrics are generated with a machine learning model using the system parameters. A workload server is obtained using a workload server profile selected using the predicted performance metrics, the workload server executing a visualization workload to generate a visualization. The visualization of the data is streamed, from the workload server to the client device, responsive to the visualization request.


