Dynamic Processing Allocation Between Server and Client
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current computing systems face challenges in providing a consistent user experience across different devices due to varying interface characteristics, leading to suboptimal performance and interactivity when accessing distributed services.
Innovation Solution
A method is introduced where data processing is dynamically allocated between two systems based on the capabilities of each system, allowing for a dynamic adjustment of processing from less-processed to pre-processed data, enabling flexible distribution of processing tasks between a server and a client, or peer systems, to optimize performance and user experience.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If data processing is performed entirely on the second data processing system (client device), then device capabilities and interface characteristics can be fully utilized, but processing burden and performance degradation occur on less capable devices
Solution Approach 1:
The patent implements dynamic processing allocation where the first data processing system (server) and second data processing system (client) continuously adjust their processing responsibilities based on real-time assessment of device capabilities, interface characteristics, and network conditions. This dynamic adjustment allows the system to adapt to varying device performance levels while maintaining optimal processing distribution, preventing overload on less capable devices while fully utilizing capabilities of more powerful devices.
2Stability of the object's composition
If data processing is performed entirely on the first data processing system (server), then consistent user experience across different devices is achieved, but interactivity and responsiveness are reduced
Solution Approach 1:
The patent segments the data processing tasks into multiple portions that can be distributed between the first data processing system (server) and second data processing system (client). By dividing processing responsibilities, the system achieves both centralized control for consistency and local processing for interactivity. The server handles tasks requiring consistency across devices while the client handles tasks requiring rapid response, and the allocation between these portions is dynamically adjusted based on device capabilities.
3Device complexity
If processing allocation is fixed between systems, then system complexity is reduced, but ability to adapt to changing device capabilities and network conditions is limited
Solution Approach 1:
The patent implements a feedback mechanism where the system continuously monitors device capabilities, interface characteristics, and network conditions, then uses this information to dynamically adjust processing allocation. The first data processing system receives information about the second system's capabilities and adjusts the division of processing tasks accordingly. This feedback loop enables automatic adaptation to changing conditions without requiring complex manual configuration or reassignment protocols.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Embodiments render on a second data processing system, a result derived from a set of data by performing data processing across the first data processing system and a second data processing system. The amount of processing performed by the second data processing system can be dynamically adjusted. The first data processing system receives information indicating an amount of interface characteristics of the first data processing system as compared to interface characteristics of the second data processing system to be presented to a user. Data processing is dynamically allocated between the first data processing system and the second data processing system, based on an amount of interface characteristics of the first data processing system as compared to interface characteristics of the second data processing system to be presented to a user.