Smartphone Scheduling for Background Analytics
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Computing devices, such as smartphones, prioritize foreground applications over background data analytics applications, leading to resource starvation for critical background applications that are important to users, without providing users with awareness or control over resource allocation.
Innovation Solution
A system and method that allows users to designate data analytics applications as high-priority by analyzing usage patterns, estimating resource requirements, and prompting users to control foreground applications to reclaim resources, enabling proactive management of computational resources for successful execution of user-preferred background applications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If foreground applications are prioritized for execution, then user interaction responsiveness is improved, but background data analytics applications suffer from resource starvation
Solution Approach 1:
The system dynamically adjusts application priority based on user-defined preferences and current system state. Users can flexibly change priority levels for different applications at different times, allowing the scheduler to adapt resource allocation dynamically rather than using fixed priorities. This resolves the contradiction by enabling background analytics apps to receive sufficient resources when needed while maintaining foreground app responsiveness during user interaction.
Solution Approach 2:
The system changes the scheduling parameter (priority level) based on application type and user preferences. By allowing users to designate specific applications as high-priority background applications, the system modifies the traditional scheduling parameters to ensure critical background analytics workloads receive necessary computational resources without completely starving them, thus maintaining execution reliability.
2Productivity
If computational resources are allocated to multiple applications, then system productivity is improved, but user awareness and control over resource allocation deteriorates
Solution Approach 1:
The system provides feedback to users about resource allocation decisions and application priority settings. Users can view which applications are running, their priority levels, and make informed decisions about resource distribution. This feedback mechanism maintains user awareness and control while allowing the system to efficiently allocate resources to multiple applications simultaneously.
Solution Approach 2:
The system enables users to self-configure priority settings for different applications based on their needs. Through intuitive interfaces, users can designate which background applications should receive preferential treatment, allowing them to take active control of resource allocation without requiring complex system management intervention. This maintains ease of operation while supporting multi-application productivity.
3Reliability
If background data analytics applications are given higher priority, then analytics task completion is improved, but foreground application responsiveness deteriorates
Solution Approach 1:
The system uses dynamic priority adjustment where background analytics applications can be designated as high-priority by users, but this priority is flexible and can be changed based on current needs. The scheduler dynamically responds to user interactions by temporarily elevating foreground application priorities when user input is detected, ensuring analytics tasks progress without compromising immediate user responsiveness.
Data Source
AI summary
Methods and devices for controlling execution of a data analytics application on a computing device are described. The devices include an alert app to prompt a user on system load and to recommend the user for proactively controlling the execution of a set of processes to reclaim computational resources required for execution of the data analytics application on the devices.


