App Launch Cache Allocation for Stable Foreground Startup

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The launch time of foreground applications on electronic devices is prolonged due to contention for shared resources, such as an L3 cache, with background applications, leading to a poor user experience from excessive waiting times.

Innovation Solution

Allocate a fixed size of the L3 cache to foreground applications of a specific type, ensuring stable occupancy and reducing contention, while allowing normal launch for non-specific type applications without fixed cache allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If background applications are allowed to run simultaneously, then application diversity and user productivity are improved, but foreground application launch time increases due to shared resource contention

Engineering Contradiction:
Improveapplication launch speedVSAvoidmulti-application running capability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The shared cache is segmented into application-specific cache regions, where each application receives a dedicated portion of cache memory. This segmentation allows background applications to run simultaneously while ensuring foreground applications have guaranteed cache access, eliminating contention and reducing launch time.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Cache resources are pre-allocated to applications based on their priority levels before they actually need them. When an application is installed or launched, the system proactively reserves appropriate cache space, so that when the application needs to access cache during launch or execution, the resources are already available without causing delays.

Inventive Principle:
Principle #10Preliminary action

2Stability of the object's composition

If fixed cache allocation is provided to all applications, then launch time stability is improved, but system resource utilization efficiency deteriorates

Engineering Contradiction:
Improvelaunch time stabilityVSAvoidcache resource utilization efficiency
Core Design Contradiction:
Stability of the object's compositionVSLoss of energy

Solution Approach 1:

Different cache allocation strategies are applied to different applications based on their specific needs and priority levels. Foreground applications receive guaranteed cache allocations for stable launch times, while background applications use dynamic allocation to optimize resource utilization. This local differentiation resolves the contradiction between stability and efficiency.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The cache allocation system transitions from a static fixed allocation model to a dynamic model where cache resources are allocated and adjusted in real-time based on application priority, current system state, and actual resource needs. This allows the system to maintain stability for critical applications while optimizing overall resource utilization.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP4675427A1Application starting method and electronic device
Publication Date: 2026.01.07 HONOR DEVICE CO LTD
  • EP4675427A1 patent drawingFigure 1A
  • EP4675427A1 patent drawingFigure 1B~1C
  • EP4675427A1 patent drawingFigure 1D

AI summary

This application provides an application launching method and an electronic device, and relates to the field of terminal technologies. After receiving a launch operation performed by a user on a first application, an electronic device launches the first application in response to the launch operation. During launching of the first application, the electronic device may use a sensitivity curve corresponding to the first application to determine a target occupancy corresponding to the first application, where the sensitivity curve corresponding to the first application identifies a mapping relationship between an occupancy of an L3 cache attributable to the first application and an IPC of the first application, and the target occupancy represents a minimum occupancy of the L3 cache that corresponds to a highest IPC. Then, the first application may allocate the L3 cache of a corresponding size to the first application based on the target occupancy, so as to continue launching the first application based on the L3 cache allocated to the first application, thereby ensuring a sufficiently high occupancy of the L3 cache attributable to the first application, and shortening launch duration of the first application.