Application Memory Compression for Faster Background Restore
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing memory management techniques in computing systems lead to prolonged load times and user inconvenience, particularly with memory-intensive applications, as they often terminate preferred applications to free memory, causing cold launches and increased wait times.
Innovation Solution
A method for managing memory by compressing and retaining preferred applications in a computing system when they transition to the background, using machine learning to predict when to decompress and restore them, thereby minimizing load times.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If memory management techniques terminate preferred applications to free memory, then memory availability for other applications is improved, but user experience deteriorates due to prolonged wait times to load memory-intensive applications
Solution Approach 1:
The system performs preliminary actions by monitoring application transitions to background state and proactively compressing memory portions before the application is fully terminated. This allows the application to be restored faster when needed, reducing cold launch times while still freeing memory during prolonged inactivity
Solution Approach 2:
The system changes the state parameter of application memory from uncompressed to compressed form when applications transition to background. This parameter change enables memory to be freed while preserving the ability to quickly restore the application, resolving the contradiction between memory availability and load time
2Loss of time
If applications are retained in memory to reduce load times, then user experience improves, but memory cost increases
Solution Approach 1:
The system applies different memory management strategies to different applications based on their importance and usage patterns. Preferred applications receive compression-based retention while less important applications are terminated normally, optimizing the balance between load time and memory cost on a per-application basis
Solution Approach 2:
The system dynamically changes memory allocation parameters by compressing application memory portions when transitioning to background and decompressing when restored. This parameter transformation enables efficient memory utilization while maintaining quick access to preferred applications
3Quantity of substance
If memory is freed by terminating applications, then memory availability increases, but application restoration time increases
Solution Approach 1:
The system performs preliminary compression of application memory portions when applications transition to background, creating a compressed state that can be quickly decompressed. This preliminary action reduces the restoration time compared to full application reloading, while still achieving memory freeing
Solution Approach 2:
The system changes the memory state parameter from uncompressed to compressed during background transitions, enabling efficient storage that preserves quick restoration capability. This parameter change allows memory to be freed without proportionally increasing restoration time
Data Source
AI summary
A method for managing memory for applications in a computing system includes receiving a selection of a preferred application. During user-controlled operation over the application, the transitions of selected application between foreground and background are monitored. A retention of the application in memory is triggered upon a transition of the application to background during the user operation. Retention of the application includes compressing memory portions of the application. Accordingly, the application is retained within the memory based on said compressed memory portions. A requirement to restore the retained application is sensed based on either a user selection or an automatically generated prediction and the application is restored from the retained state back to the foreground.


