Digital human generation method and system based on mobile terminal CPU real-time driving
By dynamically allocating computing core resources on the mobile terminal's CPU, the problem of resource contention between digital humans and multiple tasks is solved, achieving smooth digital human interaction and stability of high-priority applications, thereby improving the overall system response stability and user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- HANGZHOU LIANGMAO TECHNOLOGY CO LTD
- Filing Date
- 2026-01-06
- Publication Date
- 2026-04-21
AI Technical Summary
When mobile terminals run digital humans and multitask, the number of CPU cores is fixed and there is no on-demand tiering mechanism, which leads to lag in basic digital human interactions, high-priority applications not being able to get performance cores, uncontrollable system response latency, and resources either being idle or overloaded, lacking the ability to smoothly degrade.
By setting a feature acquisition time window, feature parameters of digital human interaction and application tasks are collected, priority values and load intensity are calculated, computing core resources are dynamically allocated, a shared core pool is reserved, core resources are allocated preferentially according to load type, and a round-robin queue is built to ensure the stable operation of critical functions.
Effectively avoids lag in digital human interaction, ensures high-priority applications can stably acquire resources, eliminates jagged fluctuations in user experience, maintains system stability and reliability, and prevents resource waste and overload.
Smart Images

Figure CN121900908A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of digital human generation technology, specifically relating to a digital human generation method and system based on real-time driving of a mobile terminal CPU. Background Technology
[0002] With the integration of digital human assistants into mobile terminals, the CPU needs to handle high real-time rendering and multiple application tasks in parallel. Current scheduling treats digital humans like ordinary threads, allocating cores indiscriminately, causing basic interactions to frequently stutter due to high-load applications preempting performance cores. Simultaneously, there is a lack of dynamic estimation of the minimum / maximum computing power range for digital humans and tasks, resulting in resources being either idle or overloaded. When high-load tasks fill up the large cores, low-priority background processes have no cores available, the system "freezes" synchronization functions, and the user experience suffers from unacceptable latency and frame drops. Specifically, the following technical issues are raised: When a mobile terminal runs a digital human and multitasking simultaneously, the number of CPU cores is fixed and there is a lack of an on-demand tiering mechanism, which leads to lag in basic digital human interactions, high-priority applications not getting performance cores, and uncontrollable overall system response latency. The existing scheduling treats the digital human as a regular thread, which cannot dynamically estimate the minimum / maximum computing power required based on the intensity of user interaction. This results in either idle core resources or frame drops due to overload, leading to a jagged fluctuation in user experience. When high-load applications preempt all the big cores, the remaining low-priority tasks have no cores to run, and the system directly "freezes" background synchronization and basic functions; lacking a fallback shared pool and time slice rotation, mobile terminals lack the ability to smoothly degrade when resources are exhausted. To address this, we propose a digital human generation method and system based on real-time driving of mobile terminal CPU. Summary of the Invention
[0003] The purpose of this invention is to provide a digital human generation method and system based on real-time driving of a mobile terminal CPU, so as to solve the problems mentioned in the background art.
[0004] To achieve the above objectives, the present invention provides the following technical solution: a digital human generation method based on real-time driving of a mobile terminal CPU, comprising: Step 1: Set the feature acquisition time window, collect the digital human interaction feature parameters and the application task operation feature parameters; filter the core interaction feature parameters and core operation feature parameters, quantify the core interaction feature parameters and core operation feature parameters; calculate the digital human priority value and the application task priority value. Step 2: Calculate the load intensity values of the application tasks and the digital human to determine their load type; obtain the total number of CPU performance cores and energy efficiency cores, calculate the total number of computing cores, and calculate the computing core requirement range for the application tasks and the digital human respectively. Step 3: Reserve a shared computing core pool, prioritize the allocation of the minimum computing core requirements for digital human workload types, and calculate the total computing core allocation for application tasks; initialize the application task computing cores and update the total allocation; in each round, reorder application tasks without allocated computing cores, calculate allocation weights and theoretical allocation amounts, and adjust the computing core allocation amount according to the computing core demand range; if the total computing cores are insufficient or there are no remaining cores, trigger the guarantee mechanism.
[0005] Preferably, the specific process for screening and quantifying core interaction feature parameters is as follows: Set a feature acquisition time window to collect interactive feature parameters of the digital human on mobile terminal devices. Calculate the absolute value of the correlation coefficient between each interactive feature parameter and the importance of the digital human's operation. After sorting by value, select the first preset number of parameters and record them as core interactive feature parameters. Summarize them to form a set of core interactive feature parameters for the digital human's interactive scenario. The core interaction feature parameters are divided into three categories: state-based, behavior-based, and frequency-based. The status parameter value is the percentage of its occurrence duration within the total duration of the acquisition time window. The behavior parameter value is the number of valid occurrences within the collection time window divided by the corresponding preset base number. The frequency parameter value is the actual frequency value within the acquisition time window divided by the corresponding preset reference frequency; Finally, each core interactive feature parameter is labeled with its corresponding parameter value.
[0006] Preferably, the specific process for screening and quantifying core operational characteristic parameters is as follows: Obtain all running application tasks on the mobile terminal device at the current moment, and for each running application task, obtain its running characteristic parameters; Calculate the absolute value of the correlation coefficient between each operational feature parameter and the importance of the application task. Sort all operational feature parameters based on the magnitude of the absolute value, select the top preset number of operational feature parameters and record them as core operational feature parameters. The number of core operational feature parameters of the application task is the same as the number of core interactive feature parameters of the digital human. All core operational characteristic parameters are organized into a core operational characteristic parameter set. Each core operational characteristic parameter in the set is normalized and dimensionless to obtain the standard quantized value of each core operational characteristic parameter. In the set of core operational feature parameters, each core operational feature parameter is labeled with its corresponding standard quantization value.
[0007] Preferably, the specific process for calculating the digital human priority value and the application task priority value is as follows: For digital humans, a comprehensive analysis is conducted based on the parameter values of their corresponding core interaction feature parameters and the correlation coefficients between the core interaction feature parameters and the importance of the digital human's operation to obtain the digital human priority value. For each running application task, a comprehensive analysis is conducted based on the standard quantified values of its corresponding core running characteristic parameters and the correlation coefficients between the core running characteristic parameters and the importance of the application task, to obtain the priority value of the application task.
[0008] Preferably, the specific process for calculating the load intensity value of the application task and the digital human, and determining its load type, is as follows: For each running application task, extract its foreground runtime percentage, average CPU utilization, and user operation frequency. Combine these three parameters with three sets of preset weighting coefficients to calculate the load intensity value of the application task. The load intensity value is compared with a preset load threshold. If the load intensity value is greater than or equal to the threshold, the application task is determined to be a high-load task; otherwise, it is a low-load task. For the digital human, we extract its activation time percentage, effective user operation frequency, and function response time percentage, and combine these three parameters with three sets of preset weighting coefficients to calculate the digital human's load intensity value. The load intensity value is compared with a preset load threshold. If the load intensity value is greater than or equal to the threshold, the digital user is determined to be in a high load state; otherwise, it is in a low load state.
[0009] Preferably, the specific process for calculating the computational core requirement range for the application task and the digital human is as follows: Obtain the total number of performance cores and the total number of energy efficiency cores of the mobile terminal CPU, and record both as a single computing core. Then add the total number of performance cores and the total number of energy efficiency cores to get the total number of computing cores. For each running application task, obtain the minimum proportion of computing power required to maintain basic operation to the total CPU computing power, the maximum proportion of computing power allowed to be used to run smoothly to the total CPU computing power, and the corresponding load intensity value, and calculate the minimum and maximum computing core requirements accordingly. Using the minimum computing core requirement as the lower limit of the interval and the maximum computing core requirement as the upper limit of the interval, the range of computing core requirements for application tasks is obtained. Similarly, by using the load intensity value of the digital human, the minimum proportion of the computing power required to maintain basic interaction to the total CPU computing power, and the maximum proportion of the computing power allowed to be used during smooth interaction to the total CPU computing power, the digital human is analyzed according to the analysis method of application task computing core demand range, and the computing core demand range of the digital human is obtained.
[0010] Preferably, a shared computing core pool is reserved, and the minimum computing core requirements are allocated according to the type of digital human workload. The specific process for calculating the total number of computing cores allocated to application tasks is as follows: S1: Reserve a shared computing core pool from the total number of CPU energy efficiency cores; S2: Determine the priority of the computing core type based on the load type of the digital human. When the digital human is under high load, performance cores are prioritized, and when it is under low load, energy efficiency cores are prioritized. From the total number of computing cores, the number of computing cores corresponding to the minimum computing core requirement of the digital human will be allocated first according to the adaptation rules. S3: Record the number of CPU cores remaining after the minimum allocation of computing cores for the digital human, and record this number as the number of computing cores allocated for the application task; S4: Set the rules for allocating computing cores for application tasks. High-load application tasks should be allocated performance cores first, and low-load application tasks should be allocated energy-efficient cores first. If the number of computing cores of the priority allocation type is insufficient, the missing number should be supplemented with another type of computing core. The actual allocation amount should not exceed the total number of computing cores that can be allocated at present.
[0011] Preferably, the specific process for adjusting the allocation of computing cores according to the computing core demand range is as follows: S5: Initialize the application task processing core and update the total allocation; S6: Obtain all currently running application tasks that have not been allocated computing cores, extract the real-time priority value of each unallocated task, and sort all running application tasks in descending order of priority value to generate the current round of computing core resource allocation priority sequence; use the linear normalization method to calculate the computing core resource allocation weight of each application task in the sequence. S7: According to the priority sequence of the allocation of computing core resources in this round, extract the first task as the application task to be allocated resources, and calculate the theoretical number of computing cores to be allocated by combining its computing core resource allocation weight and the total amount of computing cores updated and allocated for the application task. S8: If the theoretically allocated number of computing cores exceeds the maximum value of the computing core requirement range for the application task to be allocated resources, the actual allocated number of computing cores will be the maximum value of that range, and the digital human computing core replenishment mechanism will be triggered simultaneously. Calculate the difference between the theoretically allocated number of computing cores and the maximum number of computing cores in the interval. Combine this with the priority values of the application tasks to be allocated resources and the priority value of the digital human to calculate the number of computing cores that can be supplemented for the digital human. Supplement according to the rules: If the number of computing cores currently allocated to the digital human plus the number that can be supplemented does not exceed the maximum computing core requirement of the digital human, the number of cores allocated and updated will be based on the number that can be supplemented; if it exceeds the limit, the number of cores will be supplemented only to the maximum computing core requirement of the digital human and then updated; if the maximum computing core requirement of the digital human has already been reached, this mechanism will not be triggered within the current data collection time window. S9: If the theoretical number of allocated computing cores is within the computing core requirement range of the application task to be allocated resources, the actual allocation amount is the theoretical allocation amount; if it is less than the minimum value of the range, the actual allocation amount is the minimum value; if the minimum computing core requirement of the application task to be allocated resources exceeds the total updated allocation amount of computing cores for the current application task, the actual allocation amount is the updated total amount.
[0012] Preferably, the specific process of triggering the protection mechanism when the total number of computing cores is insufficient or there are no remaining cores is as follows: S10: Update the total number of application task computing cores allocated, mark the current task as an allocated computing core and remove it from the list of unallocated tasks; If the list of unassigned tasks is not empty and the total allocation of application task processing cores is >0, return to S6 to reorder the remaining unassigned application tasks, calculate the allocation weights, and proceed to the next round of allocation. If the theoretical allocation amount of the application task to be allocated in the next round is less than the minimum value of its computing core demand range, and the total updated allocation amount of the application task computing cores is insufficient to support the minimum demand, the remaining amount will be added to the reserved shared computing core pool and the pool quantity will be updated, triggering the computing core guarantee mechanism for unallocated application tasks; if the total updated allocation amount of the application task computing cores is 0 and the list is not empty, it will be triggered directly. S11: The specific process of the kernel guarantee mechanism is as follows: The reserved shared computing core pool is enabled. Unassigned tasks are occupied in turn according to the priority sequence of the latest unassigned tasks. The single-time occupation duration of a single task is preset, and multi-task concurrency is achieved through time slice switching. When the collection time window is updated, S1-S11 is re-executed. S12: Following the allocation process from S6 to S10 above, in each round, the remaining unallocated application tasks in the unallocated task list are reordered, the allocation weights are calculated, and the computing core allocation is performed. During this process, the theoretical allocation adjustment rules from S8 to S9 and the unallocated task fallback guarantee mechanism of S11 are combined. This process is repeated until the unallocated task list is empty, or all remaining unallocated application tasks enter the reserved shared computing core pool for adaptation and operation. In this way, the computing core allocation operation for all running application tasks of digital human and mobile terminal is completed.
[0013] Compared with the prior art, the beneficial effects of the present invention are: (1) The method and system for generating digital humans based on real-time driving of mobile terminal CPU sets a minimum core requirement for digital humans in scenarios where the number of CPU cores in the mobile terminal is fixed, and prioritizes matching performance cores or energy efficiency cores according to their load type. High-load interactions prioritize the use of performance cores, low-load interactions prioritize the use of energy efficiency cores, and the remaining cores are released to application tasks according to priority. This mechanism separates digital humans from ordinary thread queues, ensuring that key rendering and voice feedback always get priority computing power, effectively avoiding interaction stuttering caused by performance cores being preempted, and also ensuring that high-priority applications can stably obtain the required core resources, significantly improving the overall stability of the system response.
[0014] (2) The method and system for generating digital humans based on real-time driving of mobile terminal CPU dynamically calculates the core demand range of the two based on the changes in user interaction intensity and the characteristics of digital human interaction and application task operation. Before each round of allocation, the real-time priority of tasks is re-extracted and the allocation weight is calculated by linear normalization. Then, the actual allocation amount is adjusted according to the demand range. This avoids the core resources from being idle due to not reaching the upper limit of demand and also prevents overload and frame drop due to exceeding demand. It eliminates the jagged fluctuations in user experience and ensures smooth digital human interaction and stable application operation.
[0015] (3) The method and system for generating digital humans based on real-time driving of mobile terminal CPU, before the core resources are exhausted, the present invention pre-injects some energy-efficient cores into the shared pool and constructs a priority-based round-robin queue; when high-load tasks fill all regular cores, unassigned tasks enter the shared pool in order and switch quickly in time slice mode to maintain the operation of basic functions such as message synchronization and data upload; the system changes from freezing when no cores are available to slow but continuous time-sharing reuse, and users can still receive notifications and complete background writing normally, with no sense of degradation in experience, and the stability and reliability of the terminal are enhanced simultaneously. Attached Figure Description
[0016] Figure 1 This is a flowchart of the present invention. Detailed Implementation
[0017] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0018] Example 1: Please refer to Figure 1 This invention provides a digital human generation method based on real-time driving of a mobile terminal CPU, comprising: Step 1: Set the feature acquisition time window, and collect the digital human interaction feature parameters and the application task operation feature parameters; use the Pearson correlation coefficient method to screen the core interaction feature parameters and core operation feature parameters, and quantify the core interaction feature parameters and core operation feature parameters; the specific process of calculating the digital human priority value and the application task priority value is as follows: Set a feature acquisition time window, and within the acquisition time window, acquire the interaction feature parameters of the digital human on the mobile terminal device; Using the Pearson correlation coefficient method, the absolute value of the correlation coefficient between each interactive feature parameter and the importance of the digital human operation is calculated. Based on the magnitude of the absolute value of the correlation coefficient, all interactive feature parameters are sorted, and the first preset number of interactive feature parameters are selected and recorded as core interactive feature parameters. The core interactive feature parameters collected within the same collection time window are summarized to form a set of core interactive feature parameters for digital human interaction scenarios. The core interaction feature parameters in the core interaction feature parameter set of digital human interaction scenarios are divided into: Status parameters: Digital human interface activation status, digital human function enabled status, digital human running status, etc. Behavioral parameters: user interaction behavior, digital human response behavior, interaction triggering behavior, etc. Frequency-related parameters: user input frequency, digital human response frequency, interaction trigger frequency, etc. For each status parameter, obtain the percentage of the duration of the status parameter's occurrence relative to the total duration of the collection time window, and thus obtain the status parameter value; For each behavior parameter, obtain the number of valid occurrences of the behavior parameter within the collection time window (i.e., the total number of occurrences of behaviors that meet the preset valid behavior type and the validity judgment rule, where the valid behavior type includes: user voice input, touch operation, digital human voice reply, function command execution, etc., and the validity judgment rule is that the behavior is completed within the preset response time after being triggered and there is no signal distortion), and divide it by the corresponding preset base number to obtain the behavior parameter value; For each frequency-type parameter, the actual frequency value within the acquisition time window is obtained and is within the corresponding preset reference frequency to obtain the frequency parameter value; Calculate the parameter values of each core interaction feature parameter in the core interaction feature parameter set of digital human interaction scenarios, and label them with the corresponding core interaction feature parameters; Get all running application tasks on the mobile terminal device at the current moment, including: WeChat, navigation, music, etc. For each running application task, obtain the application task's running characteristic parameters, including: the number of times it was started within the collection time window, the foreground runtime, and the number of user operations. Using the Pearson correlation coefficient method, the absolute value of the correlation coefficient between each operational feature parameter and the importance of the application task is calculated. Based on the magnitude of the absolute value of the correlation coefficient, all operational feature parameters are sorted, and the top preset number of operational feature parameters are selected and recorded as core operational feature parameters. The number of core operational feature parameters of the application task is the same as the number of core interaction feature parameters of the digital human. All core operational characteristic parameters of the application task are organized to obtain a set of core operational characteristic parameters. Then, each core operational characteristic parameter in the set of core operational characteristic parameters is normalized and dimensionless to obtain the standard quantized value of each core operational characteristic parameter. In the set of core operational feature parameters, each core operational feature parameter is labeled with its corresponding standard quantization value; For digital humans, the formula is: The digital human priority value SR is obtained, where i is the index of the core interaction feature parameter and n is the total number of indices. The preset weight coefficients are the parameters corresponding to the i-th core interaction feature. Let be the parameter value of the i-th core interaction feature parameter. If the correlation coefficient between the core interaction feature parameter and the importance of the digital human operation is negative, then the corresponding parameter value is negative. If the correlation coefficient between the core interaction feature parameter and the importance of the digital human operation is positive, then the corresponding parameter value is positive. For each running application task, use the formula: The priority value YW of the application task is obtained, where j is the index of the core runtime characteristic parameter corresponding to the application task, Q is the total number of core runtime characteristic parameters, and Q=n. The preset weight coefficient for the j-th core operational feature parameter. This is the standard quantized value of the j-th core operational characteristic parameter; If the correlation coefficient between the core operational characteristic parameter and the importance of the application task is negative, then the corresponding parameter value is negative; if the correlation coefficient is positive, then the corresponding parameter value is positive.
[0019] It should be noted that the Pearson correlation coefficient method is used to screen core feature parameters, and key parameters are selected by sorting by the absolute value of the correlation coefficient. This effectively eliminates redundant and irrelevant features, reduces the amount of subsequent calculations, and ensures that the retained core interaction feature parameters and core operation feature parameters can accurately reflect the importance of the digital human operation and the application task operation, providing high-quality data support for priority calculation. The core interactive feature parameters of the digital human are classified into state-type, behavior-type, and frequency-type, and targeted quantification methods are designed to make the parameter values more consistent with actual operating scenarios. The core operating feature parameters of the application task are normalized and dimensionless to eliminate the difference in dimensions between different parameters, realize the comparability of the feature parameters of the digital human and the application task, and lay the foundation for subsequent cross-object calculation of priority values. When calculating priorities, the sign of the parameter values is adjusted by combining the positive or negative correlation coefficient between the core feature parameters and the importance of operation, so that the priority value can truly reflect the positive or negative impact of the parameters on the importance of operation, avoiding misjudgment of priorities caused by single numerical calculation; at the same time, the number of application tasks and digital human core parameters is kept consistent, further improving the rationality of priority comparison and providing an accurate basis for the differentiated allocation of subsequent computing core resources; The feature collection, core screening, quantification, and priority calculation completed in step one form the basic operational data profile of the digital human and application tasks. This directly provides core input for subsequent load intensity determination, computational core demand range calculation, and resource allocation rule formulation, ensuring that the entire CPU real-time drive process has accuracy and consistency from the data source and guaranteeing the resource adaptability of the digital human and application tasks.
[0020] Step Two: Calculate the load intensity values of the application task and the digital human to determine its load type; obtain the total number of CPU performance cores and energy efficiency cores, calculate the total number of computing cores, and calculate the computing core demand range for the application task and the digital human respectively. The specific process is as follows: For each running application task: extract the following from the core runtime characteristic parameters of the application task in step one: foreground runtime percentage. Average CPU utilization User operation frequency The parameters mentioned above are all dimensionless parameters that have been standardized in step one. Using the formula: Obtain the application task load intensity value ; Where b1, b2, and b3 are preset weight coefficients; The load intensity value of the running application task is compared with the preset load threshold. If the load intensity value is greater than or equal to the corresponding preset threshold, the application task is determined to be a high load task; otherwise, it is determined to be a low load task. Extract the core interactive feature parameters of the digital human in step one, including: percentage of interface activation time. User effective operation frequency Digital human function response time percentage The parameters mentioned above are all dimensionless parameters that have been standardized in step one. Using the formula: The load intensity value of the digital human was obtained. ; Wherein, c1, c2, and c3 are preset weight coefficients; The load intensity value of the digital human is compared with the corresponding preset load threshold. If the load intensity value of the digital human is greater than or equal to the corresponding preset threshold, the digital human is determined to be in a high load state; otherwise, it is determined to be in a low load state. Obtain the total number of performance cores of the mobile terminal CPU With total energy efficiency These are all uniformly recorded as computing cores. The total number of performance cores is added to the total number of energy efficiency cores to obtain the total number of computing cores. in: Performance cores: refer to the total number of cores in a mobile terminal CPU that focus on high computing power output and ensure high-load task running efficiency, which can be directly read through the terminal hardware identification module; Energy efficiency cores: refers to the total number of cores in a mobile terminal CPU that are focused on low-power operation and support low-load tasks, which can be directly read by the terminal hardware identification module; Using the formula: The total number of computational cores is obtained. This refers to the sum of the total number of performance cores and energy efficiency cores in the CPU of a mobile terminal. For each running application task, obtain the minimum percentage of total CPU computing power required for the application task to maintain basic operation. (Can be preset and read directly through the terminal system) The maximum percentage of computing power allowed to be used by the application task during smooth operation, relative to the total CPU computing power. With corresponding load strength value And using the formula:
[0021] Obtain the minimum computing core requirements With the highest computing core requirements ; in, Minimum core requirement refers to the minimum number of computing cores required for an application task to maintain its basic functions and operate normally. Maximum computing core requirement refers to the maximum number of computing cores required for an application task to run smoothly. The rounding operator is used to ensure that the basic operational requirements of the application tasks are met; This is a floor sign to prevent application tasks from consuming excessive computing core resources; Minimum computing core requirements for application tasks The lower limit of the interval is the requirement of the highest computing core. Using the upper limit of the interval as an example, we can simplify the process to obtain the interval of computational core requirements for the application task. ; Similarly, using the load intensity value of digital humans Based on the analysis of the computational core demand range of application tasks, this paper analyzes digital humans and obtains the following: the minimum proportion of total CPU computational power required for basic interaction by a digital human; the maximum proportion of total CPU computational power allowed for smooth interaction by a digital human; and the computational core demand range of a digital human. ,in This represents the lower limit of the minimum computing core requirements for digital humans. This represents the upper limit of the minimum computing core requirements for a digital human.
[0022] It should be noted that the load intensity is calculated using the dimensionless parameters standardized in step one, and the impact of different parameters on the load is adapted by preset weight coefficients (such as adjusting the weight of the foreground runtime ratio to match the actual load correlation). Combined with thresholds, the load types of application tasks (high / low load) and digital humans (high / low load status) are accurately divided, which directly provides a basis for the subsequent allocation rule of "high load prioritizes performance cores and low load prioritizes energy efficiency cores" and avoids resource mismatch. By using the "minimum ratio (rmin / digital human basic interaction ratio) + rounding up" to ensure the basic operational needs of the digital human and application tasks (such as application message reception and digital human basic response), the system avoids lag caused by insufficient resources. By using the "maximum ratio (rmax / digital human smooth interaction ratio) + rounding down" to limit the maximum resource consumption, the system prevents a single task from excessively consuming core resources (such as an application monopolizing performance cores), thus achieving a balance between "ensuring basic needs and avoiding resource waste".
[0023] Clearly distinguish between the definitions and reading methods of performance cores (high computing power) and energy-efficient cores (low power consumption). Accurately grasp the total number and type composition of cores through the formula Ntotal=NP+NE, avoid blind selection of core types during allocation (such as using performance cores for low-load tasks), lay the foundation for fully leveraging the characteristics of different cores in the future (using performance cores to ensure efficiency under high load and energy-efficient cores to reduce power consumption under low load), and improve CPU resource utilization efficiency.
[0024] Step 3: Reserve a shared computing core pool, prioritize allocating the minimum computing core requirements based on the digital human's workload type, and calculate the total computing core allocation for application tasks; initialize the application task computing cores and update the total allocation; in each round, reorder application tasks without allocated computing cores, calculate allocation weights and theoretical allocation amounts, and adjust the computing core allocation amount according to the computing core demand range. If the total number of computing cores is insufficient or there are no remaining cores, the guarantee mechanism will be triggered. The specific process is as follows: The rules for allocating computing cores are defined as follows: S1: Reserve a shared computing core pool from the total number of CPU energy-efficient cores. (The number of computing cores specifically designated to ensure the basic operation of application tasks on unallocated computing cores, used for time-sharing multiplexing of unallocated tasks) S2: Determine the priority allocation of computing core types based on the digital human's workload type. Under high load, prioritize performance cores; under low load, prioritize energy efficiency cores. From the total number of computing cores, allocate them to the digital human according to adaptation rules. One processing core; S3: Records the number of CPU cores remaining after the minimum allocation of computing cores for the digital human task, and denotes it as the application task computing core allocation number FZ. ; S4: Set high-load application tasks to prioritize performance cores, and low-load application tasks to prioritize energy-efficient cores; If the number of priority-allocated computing cores is insufficient, another type of computing core will be used to make up the missing number to ensure the basic operational requirements of the task. The actual amount allocated must not exceed the total number of currently allocable computing cores; S5: Initialize application task processing cores and update the total allocation. GZ refers to the number of computing cores remaining after each round of allocation that can be allocated to subsequent application tasks; (during the first round of computing core allocation) ); S6: Obtain all currently running application tasks that have not been allocated computing cores, extract the real-time priority value of each unallocated task, and sort all running application tasks in descending order of priority value to generate the current round of computing core resource allocation priority sequence. Based on the priority values of each application task, the allocation weight of computing core resources for each application task in the priority sequence of this round of computing core resource allocation is calculated using a linear normalization method. The calculation formula is as follows: ,and
[0025] Where d is the label of each application task in the priority sequence of computing core resource allocation; Assign weights to the computing core resources corresponding to the d-th application task; R represents the total number of application tasks in the priority sequence of computing core resource allocation; S7: According to the priority sequence of the current round of operation core resource allocation, extract the first application task in the sequence as the application task to be allocated resources; Obtain the computational core resource allocation weights for application tasks to be allocated resources. And using the formula: This yields the theoretical number of computational cores required to allocate resources to application tasks. ;in, For the floor sign, ensure It is an integer; S8: Obtain the computing core requirement range of the application task to be allocated resources. If the theoretical number of computing cores to be allocated is greater than the maximum value of the corresponding computing core requirement range, then the actual number of computing cores to be allocated for the application task to be allocated resources is equal to the maximum value of the corresponding computing core requirement range. Simultaneously, if the theoretically allocated number of computing cores exceeds the maximum value of the corresponding computing core demand range, the digital human computing core replenishment mechanism is triggered, specifically as follows: The difference between the number of computing cores to be allocated and the maximum value of the computing core demand range is obtained by subtracting the theoretically allocated number of computing cores from the maximum value of the computing core demand range. ; Obtain the priority value YW of the application task to be allocated resources and the priority value SR of the digital human, and use the formula: The number of computing cores that can be supplemented by obtaining digital humans ; Set the digital human replenishment rule: If the number of computing cores currently allocated to a digital human plus the number of computing cores that a digital human can replenish is less than or equal to the maximum computing core requirement of a digital human, then computing cores are allocated to the digital human according to the number of computing cores that a digital human can replenish, and the number of computing cores currently allocated to the digital human is updated after allocation; If the number of computing cores currently allocated to the digital human plus the number of computing cores that the digital human can supplement is greater than the maximum computing core requirement of the digital human, then only the number of digital human supplements to the maximum computing core requirement (the number of supplements is the maximum computing core requirement of the digital human minus the number of computing cores currently allocated to the digital human) is updated after allocation; If the number of computing cores currently allocated to the digital human is already the maximum number of computing cores required by the digital human, then the digital human computing core replenishment mechanism will not be triggered again within the current collection time window; S9: If the theoretical number of allocated computing cores is within the corresponding computing core demand range, then the actual number of allocated computing cores for the application task to be allocated resources is equal to the theoretical number of allocated computing cores. If the theoretical number of allocated computing cores is less than the minimum value within the corresponding computing core demand range, then the actual number of allocated computing cores is equal to the minimum value within the corresponding computing core demand range. If the minimum computing core requirement of the application task to be allocated is greater than the total number of computing cores updated and allocated for the current application task, then the actual number of computing cores allocated is equal to the total number of computing cores updated and allocated for the current application task. S10: Update the total number of application task computing cores allocated, mark the current task as an allocated computing core, and remove it from the list of unallocated tasks; If the list of unassigned tasks is not empty and the total number of tasks allocated by the current application task processing core is greater than zero, then return to S6, re-sort the remaining unassigned tasks and calculate their weights, and proceed to the next round of allocation; If the theoretical allocation of resources for the next round of application tasks is less than the minimum value of their computing core requirement range, and the total updated allocation of application task computing cores is insufficient to support their minimum requirements: All remaining application task computing cores will be updated and allocated to the reserved shared computing core pool, the number of reserved shared computing cores will be updated synchronously, and the computing core guarantee mechanism for unallocated application tasks will be triggered. If the total number of application task processing cores updated and allocated is zero, and the list of unallocated tasks is not empty, the processing core guarantee mechanism for unallocated application tasks will be triggered directly. S11: The specific process of the kernel guarantee mechanism is as follows: The reserved shared computing core pool is enabled; Unassigned tasks take turns occupying computing cores in the shared computing core pool according to the priority sequence of the latest unassigned tasks. The single-time occupation duration of a single task is preset, and multiple tasks can run concurrently by quickly switching through time slices, ensuring the normal execution of basic functions of application tasks (such as message receiving and background synchronization). Time window update processing: When the collection time window is updated, the complete process of S1-S11 is re-executed to recalculate the total number of application tasks, the list of unassigned tasks and their priorities, and dynamically adapt to changes in task status (such as load type switching and priority fluctuations). S12: Following the allocation process from S6 to S10 above, in each round, the remaining unallocated application tasks in the unallocated task list are reordered, the allocation weights are calculated, and the computing cores are allocated. During this process, the theoretical allocation adjustment rules from S8 to S9 and the unallocated task fallback guarantee mechanism from S11 are combined. This process is repeated until the unallocated task list is empty, or all remaining unallocated application tasks enter the reserved shared computing core pool for adaptation and operation. Based on this, the accurate allocation of computing cores for all running application tasks of digital humans and mobile terminals is completed.
[0026] It should be noted that the system first reserves the shared core pool from the energy efficiency cores to cover any unallocated tasks. Then, it prioritizes allocating the minimum computing core requirements (MD) of the digital human based on its workload type (high-load performance cores and low-load energy efficiency cores), while simultaneously calculating the total amount of application tasks to be allocated. The resource allocation logic of "prioritizing basic digital human resources + reserving reasonable resources for application tasks + supplementing with the shared resource pool" avoids the digital human from being unable to operate normally due to resource shortages, while also not occupying the core resources of application tasks, thus achieving a dynamic balance between the core needs of both. Each round employs priority sorting (S6), linear normalization calculation of allocation weights (S6), and adjustment of allocation amounts according to demand ranges (S8-S9) to ensure that high-priority application tasks receive reasonable resources first (e.g., taking the upper limit if exceeding the demand limit to avoid waste); simultaneously, a digital human replenishment mechanism (S8) is triggered to supplement redundant resources of application tasks (the difference between the theoretical amount and the upper limit) to the digital human, avoiding idle core resources; dynamic cyclic allocation (S10 returns to S6) further adapts to changes in task status and reduces resource waste; The shared core pool enables concurrent unallocated tasks through time slice switching (S11), ensuring that the basic functions of application tasks (message reception, background synchronization) are not interrupted when resources are insufficient; when the collection time window is updated, the entire process is re-executed (S11), which can dynamically adapt to changes such as task load switching and priority fluctuations (e.g., an application changes from low load to high load), avoiding system lag caused by fixed allocation and improving overall operational stability.
[0027] A digital human generation system based on real-time driving of a mobile terminal CPU includes: Priority evaluation module: Sets the feature acquisition time window, collects digital human interaction feature parameters and application task operation feature parameters; filters core interaction feature parameters and core operation feature parameters, quantifies core interaction feature parameters and core operation feature parameters; calculates digital human priority value and application task priority value; Load core demand calculation module: Calculates the load intensity values of application tasks and digital humans to determine their load types; obtains the total number of CPU performance cores and energy efficiency cores, calculates the total number of computing cores, and calculates the computing core demand ranges for application tasks and digital humans respectively. The computing core allocation module reserves a shared computing core pool, prioritizes the allocation of the minimum computing core requirements of digital human workload types, calculates the total computing core allocation for application tasks, initializes the application task computing cores and updates the total allocation; in each round, it reorders application tasks without allocated computing cores, calculates allocation weights and theoretical allocation amounts, adjusts the computing core allocation amount according to the computing core demand range, and triggers a guarantee mechanism if the total number of computing cores is insufficient or there are no remaining ones.
[0028] Although embodiments of the invention have been shown and described, it will be understood by those skilled in the art that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the appended claims and their equivalents.
Claims
1. A method for generating digital humans based on real-time driving of a mobile terminal CPU, characterized in that, The process includes the following: Step 1: Set the feature acquisition time window, collect the digital human interaction feature parameters and the application task operation feature parameters; filter the core interaction feature parameters and core operation feature parameters, quantify the core interaction feature parameters and core operation feature parameters; calculate the digital human priority value and the application task priority value. Step 2: Calculate the load intensity values of the application tasks and the digital human to determine its load type; Obtain the total number of CPU performance cores and energy efficiency cores, calculate the total number of computing cores, and calculate the computing core requirement range for application tasks and digital humans respectively; Step 3: Reserve a shared computing core pool, prioritize the allocation of the minimum computing core requirements for digital human workload types, calculate the total computing core allocation for application tasks; initialize the application task computing cores and update the total allocation; in each round, reorder application tasks without allocated computing cores, calculate allocation weights and theoretical allocation amounts, adjust the computing core allocation amount according to the computing core demand range, and trigger the guarantee mechanism if the total number of computing cores is insufficient or there are no remaining cores.
2. The digital human generation method based on real-time driving of a mobile terminal CPU according to claim 1, characterized in that: The specific process for selecting and quantifying core interaction feature parameters is as follows: Set a feature acquisition time window to collect interactive feature parameters of the digital human on mobile terminal devices. Calculate the absolute value of the correlation coefficient between each interactive feature parameter and the importance of the digital human's operation. After sorting by value, select the first preset number of parameters and record them as core interactive feature parameters. Summarize them to form a set of core interactive feature parameters for the digital human's interactive scenario. The core interaction feature parameters are divided into three categories: state-based, behavior-based, and frequency-based. The status parameter value is the percentage of its occurrence duration within the total duration of the acquisition time window. The behavior parameter value is the number of valid occurrences within the collection time window divided by the corresponding preset base number. The frequency parameter value is the actual frequency value within the acquisition time window divided by the corresponding preset reference frequency; Finally, each core interactive feature parameter is labeled with its corresponding parameter value.
3. The digital human generation method based on real-time driving of a mobile terminal CPU according to claim 2, characterized in that: The specific process of screening and quantifying core operational characteristic parameters is as follows: Obtain all running application tasks on the mobile terminal device at the current moment, and for each running application task, obtain its running characteristic parameters; Calculate the absolute value of the correlation coefficient between each operational feature parameter and the importance of the application task. Sort all operational feature parameters based on the magnitude of the absolute value, select the top preset number of operational feature parameters and record them as core operational feature parameters. The number of core operational feature parameters of the application task is the same as the number of core interactive feature parameters of the digital human. All core operational characteristic parameters are organized into a core operational characteristic parameter set. Each core operational characteristic parameter in the set is normalized and dimensionless to obtain the standard quantized value of each core operational characteristic parameter. In the set of core operational feature parameters, each core operational feature parameter is labeled with its corresponding standard quantization value.
4. The digital human generation method based on real-time driving of a mobile terminal CPU according to claim 3, characterized in that: The specific process for calculating the digital human priority value and the application task priority value is as follows: For digital humans, a comprehensive analysis is conducted based on the parameter values of their corresponding core interaction feature parameters and the correlation coefficients between the core interaction feature parameters and the importance of the digital human's operation to obtain the digital human priority value. For each running application task, a comprehensive analysis is conducted based on the standard quantified values of its corresponding core running characteristic parameters and the correlation coefficients between the core running characteristic parameters and the importance of the application task, to obtain the priority value of the application task.
5. The digital human generation method based on real-time driving of a mobile terminal CPU according to claim 4, characterized in that: The specific process for calculating the load intensity value of the application task and the digital human, and determining its load type, is as follows: For each running application task, extract its foreground runtime percentage, average CPU utilization, and user operation frequency. Combine these three parameters with three sets of preset weighting coefficients to calculate the load intensity value of the application task. The load intensity value is compared with a preset load threshold. If the load intensity value is greater than or equal to the threshold, the application task is determined to be a high-load task; otherwise, it is a low-load task. For the digital human, we extract its activation time percentage, effective user operation frequency, and function response time percentage, and combine these three parameters with three sets of preset weighting coefficients to calculate the digital human's load intensity value. The load intensity value is compared with a preset load threshold. If the load intensity value is greater than or equal to the threshold, the digital user is determined to be in a high load state; otherwise, it is in a low load state.
6. The digital human generation method based on real-time driving of a mobile terminal CPU according to claim 5, characterized in that: The specific process for calculating the computational core requirement range for the application task and the digital human is as follows: Obtain the total number of performance cores and the total number of energy efficiency cores of the mobile terminal CPU, and record both as a single computing core. Then add the total number of performance cores and the total number of energy efficiency cores to get the total number of computing cores. For each running application task, obtain the minimum proportion of computing power required to maintain basic operation to the total CPU computing power, the maximum proportion of computing power allowed to be used to run smoothly to the total CPU computing power, and the corresponding load intensity value, and calculate the minimum and maximum computing core requirements accordingly. Using the minimum computing core requirement as the lower limit of the interval and the maximum computing core requirement as the upper limit of the interval, the interval of computing core requirements for application tasks is obtained. Similarly, by using the load intensity value of the digital human, the minimum proportion of the computing power required to maintain basic interaction to the total CPU computing power, and the maximum proportion of the computing power allowed to be used during smooth interaction to the total CPU computing power, the digital human is analyzed according to the analysis method of application task computing core demand range, and the computing core demand range of the digital human is obtained.
7. The digital human generation method based on real-time driving of a mobile terminal CPU according to claim 6, characterized in that: A shared computing core pool is reserved, and the minimum computing core requirements of the digital human are allocated based on the type of digital human workload. The specific process for calculating the total number of computing cores allocated to application tasks is as follows: S1: Reserve a shared computing core pool from the total number of CPU energy efficiency cores; S2: Determine the priority of the computing core type based on the load type of the digital human. When the digital human is under high load, performance cores are prioritized, and when it is under low load, energy efficiency cores are prioritized. From the total number of computing cores, the number of computing cores corresponding to the minimum computing core requirement of the digital human will be allocated first according to the adaptation rules. S3: Record the number of CPU cores remaining after the minimum allocation of computing cores for the digital human, and record this number as the number of computing cores allocated for the application task; S4: Set the rules for allocating computing cores for application tasks. High-load application tasks should be allocated performance cores first, and low-load application tasks should be allocated energy-efficient cores first. If the number of computing cores of the priority allocation type is insufficient, the missing number should be supplemented with another type of computing core. The actual allocation amount should not exceed the total number of computing cores that can be allocated at present.
8. The digital human generation method based on real-time driving of a mobile terminal CPU according to claim 7, characterized in that: The specific process for adjusting the allocation of computing cores according to the computing core demand range is as follows: S5: Initialize the application task processing core and update the total allocation; S6: Obtain all currently running application tasks that have not been allocated computing cores, extract the real-time priority value of each unallocated task, and sort all running application tasks in descending order of priority value to generate the current round of computing core resource allocation priority sequence; use the linear normalization method to calculate the computing core resource allocation weight of each application task in the sequence. S7: According to the priority sequence of the allocation of computing core resources in this round, extract the first task as the application task to be allocated resources, and calculate the theoretical number of computing cores to be allocated by combining its computing core resource allocation weight and the total amount of computing cores updated and allocated for the application task. S8: If the theoretically allocated number of computing cores exceeds the maximum value of the computing core requirement range for the application task to be allocated resources, the actual allocated number of computing cores will be the maximum value of that range, and the digital human computing core replenishment mechanism will be triggered simultaneously. Calculate the difference between the theoretically allocated number of computing cores and the maximum number of computing cores in the interval. Combine this with the priority values of the application tasks to be allocated resources and the priority value of the digital human to calculate the number of computing cores that can be supplemented for the digital human. Supplement according to the rules: If the current number of computing cores allocated to the digital human plus the number that can be replenished does not exceed the maximum computing core requirement of the digital human, then allocate and update according to the number that can be replenished; If the requirement is exceeded, the data will be supplemented only to the highest computing core requirement of the digital human and updated accordingly; if the highest computing core requirement of the digital human has already been reached, this mechanism will not be triggered within the current data collection time window. S9: If the theoretical number of computing cores allocated is within the computing core requirement range of the application task to be allocated resources, the actual allocation amount is the theoretical allocation amount; if it is less than the minimum value of the range, the actual allocation amount is the minimum value; if the minimum computing core requirement of the application task to be allocated resources exceeds the total updated allocation amount of computing cores for the current application task, the actual allocation amount is the updated total amount.
9. A digital human generation method based on real-time driving of a mobile terminal CPU according to claim 8, characterized in that: The specific process by which the protection mechanism is triggered when the total number of computing cores is insufficient or there are no remaining cores is as follows: S10: Update the total number of application task computing cores allocated, mark the current task as an allocated computing core and remove it from the list of unallocated tasks; If the list of unassigned tasks is not empty and the total allocation of application task processing cores is >0, return to S6 to reorder the remaining unassigned application tasks, calculate the allocation weights, and proceed to the next round of allocation. If the theoretical allocation amount of the application task to be allocated in the next round is less than the minimum value of its computing core demand range, and the total updated allocation amount of the application task computing cores is insufficient to support the minimum demand, the remaining amount will be added to the reserved shared computing core pool and the pool quantity will be updated, triggering the computing core guarantee mechanism for unallocated application tasks; if the total updated allocation amount of the application task computing cores is 0 and the list is not empty, it will be triggered directly. S11: The specific process of the kernel guarantee mechanism is as follows: The reserved shared computing core pool is enabled. Unassigned tasks are occupied in turn according to the priority sequence of the latest unassigned tasks. The single-time occupation duration of a single task is preset, and multi-task concurrency is achieved through time slice switching. When the collection time window is updated, S1-S11 is re-executed. S12: Following the allocation process from S6 to S10 above, in each round, the remaining unallocated application tasks in the unallocated task list are reordered, the allocation weights are calculated, and the computing core allocation is performed. During this process, the theoretical allocation adjustment rules from S8 to S9 and the unallocated task fallback guarantee mechanism of S11 are combined. This process is repeated until the unallocated task list is empty, or all remaining unallocated application tasks enter the reserved shared computing core pool for adaptation and operation. In this way, the computing core allocation operation for all running application tasks of digital human and mobile terminal is completed.
10. A digital human generation system based on real-time driving of a mobile terminal CPU, applied to the digital human generation method based on real-time driving of a mobile terminal CPU proposed in any one of claims 1-9, characterized in that, include: Priority evaluation module: Sets the feature acquisition time window, collects digital human interaction feature parameters and application task operation feature parameters; filters core interaction feature parameters and core operation feature parameters, quantifies core interaction feature parameters and core operation feature parameters; calculates digital human priority value and application task priority value; Load core demand calculation module: Calculates the load intensity value of application tasks and digital humans, and determines their load type accordingly; Obtain the total number of CPU performance cores and energy efficiency cores, calculate the total number of computing cores, and calculate the computing core requirement range for application tasks and digital humans respectively; The computing core allocation module reserves a shared computing core pool, prioritizes the allocation of the minimum computing core requirements of digital human workload types, calculates the total computing core allocation for application tasks, initializes the application task computing cores and updates the total allocation; in each round, it reorders application tasks without allocated computing cores, calculates allocation weights and theoretical allocation amounts, adjusts the computing core allocation amount according to the computing core demand range, and triggers a guarantee mechanism if the total number of computing cores is insufficient or there are no remaining ones.