Game performance optimization method and device based on dynamic scheduling and storage medium

By precompiling and processing the source code of the game voice tool and preloading resources, combining the running data collected in real time, dynamically adjusting the bytecode compilation strategy and CPU core allocation, the problem of excessive CPU usage when the multiplayer voice teaming function is turned on, and the game is fluent and efficient in multiplayer voice scenarios is achieved.

CN120045336AInactive Publication Date: 2025-05-27QINGFENG (BEIJING) TECH CO LTD

Patent Information

Application Number
CN202510520204.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-24
Publication Date
2025-05-27
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

When the multi-player voice teaming function is enabled, it is difficult to schedule resources according to real-time changes in the game's running state, resulting in excessive CPU usage and causing problems of game screen lag and slow response.

Method used

Using a dynamic scheduling method, the source code of the game voice tool is precompiled and processed and resource preloaded, running data is collected in real time, by dynamically adjusting the bytecode compilation strategy and CPU core allocation, and optimizing the cache and data transmission strategy of resource files to adapt to real-time changing load requirements.

Benefits of technology

It effectively reduces CPU usage, avoids game running lag, improves user experience, and ensures the smoothness of the game in multiplayer voice teaming scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120045336A_ABST
    Figure CN120045336A_ABST
Patent Text Reader

Abstract

The invention provides a game performance optimization method and device based on dynamic scheduling and a storage medium. The method comprises the following steps: dynamically adjusting a byte code compiling strategy based on operation data, and reducing the execution priority of a byte code compiling task when monitoring that a multi-person voice team function is started and a CPU load reaches a preset condition; performing dynamic scheduling on allocation of the CPU cores based on the operation data, allocating high-priority tasks to the CPU cores with loads lower than a preset load threshold for execution, and allocating other tasks to the remaining CPU cores; carrying out scheduling and intelligent cache management on the resource file according to the operation data; and when monitoring that the network bandwidth or the network delay reaches a preset condition, adjusting a multi-person voice data transmission strategy based on the operation data. According to the method and the device, dynamic scheduling can be performed according to the real-time state during game running, tasks and resources are flexibly allocated, CPU occupation is reduced, and game running lagging is avoided.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of game performance optimization, and particularly to a game performance optimization method, device, and storage medium based on dynamic scheduling. Background Art

[0002] With the rapid development of online game technology, multi-player voice teaming has gradually become one of the important functions to enhance game interactivity and user experience. However, after the multi-player voice function is enabled, the game system needs to process multiple tasks such as voice communication, image rendering, resource loading, and physical simulation at the same time. These tasks all consume a large amount of system resources during execution, especially having a relatively high occupancy of CPU resources.

[0003] To alleviate the problem of resource occupancy during game operation, the prior art usually adopts methods such as pre-compiling source code into bytecode before game operation, pre-loading resource files, and static task allocation based on CPU core information, in the hope of reducing CPU occupancy and task conflicts during game operation. However, in actual application scenarios, due to factors such as changes in the number of players, fluctuations in voice communication traffic, and dynamic changes in the network environment, the above fixed compilation strategy and static resource scheduling method are difficult to make timely adjustments according to the real-time changes in the game operation state, resulting in too high CPU resource occupancy when the multi-player voice teaming function is enabled in the game, and then causing problems such as game screen stuttering and slow response, seriously reducing the user's game experience.

[0004] Therefore, in the prior art, when the multi-player voice teaming function is enabled, the static scheduling of CPU resources and the fixed resource loading strategy are difficult to adapt to the real-time changing load requirements during the game operation process, resulting in too high CPU occupancy and then causing game operation stuttering. Summary of the Invention

[0005] In view of this, the embodiments of this application provide a game performance optimization method, device, and storage medium based on dynamic scheduling to solve the problem in the prior art that the compilation strategy and static resource scheduling are not flexible enough and are likely to cause too high CPU occupancy and lead to stuttering.

[0006] In the first aspect of the embodiments of the present application, a game performance optimization method based on dynamic scheduling is provided, including: pre-compiling the source code of the game voice tool to convert the source code into bytecode; pre-loading the resource files of the game voice tool, caching the pre-loaded resource files in memory, and during the game operation, collecting operation data in real time; dynamically adjusting the bytecode compilation strategy based on the operation data. When it is detected that the multi-player voice teaming function is enabled and the CPU load reaches a preset condition, reduce the execution priority of the bytecode compilation task; dynamically schedule the allocation of CPU cores based on the operation data, allocate high-priority tasks to the CPU cores with a load lower than the preset load threshold for execution, and allocate other tasks to the remaining CPU cores; schedule and intelligently cache manage the resource files according to the operation data, preferentially cache or background load the frequently accessed resource files, and preferentially guarantee the resource files required for voice processing in the multi-player voice teaming scenario; when it is detected that the network bandwidth or network latency reaches a preset condition, adjust the data transmission strategy of the multi-player voice based on the operation data to reduce the voice data quality or increase the audio compression rate.

[0007] In the second aspect of the embodiments of the present application, a game performance optimization device based on dynamic scheduling is provided, including: a pre-compilation module for pre-compiling the source code of the game voice tool to convert the source code into bytecode; a pre-loading module for pre-loading the resource files of the game voice tool, caching the pre-loaded resource files in memory, and during the game operation, collecting operation data in real time; an adjustment module for dynamically adjusting the bytecode compilation strategy based on the operation data. When it is detected that the multi-player voice teaming function is enabled and the CPU load reaches a preset condition, reduce the execution priority of the bytecode compilation task; a dynamic scheduling module for dynamically scheduling the allocation of CPU cores based on the operation data, allocate high-priority tasks to the CPU cores with a load lower than the preset load threshold for execution, and allocate other tasks to the remaining CPU cores; a caching module for scheduling and intelligently cache managing the resource files according to the operation data, preferentially cache or background load the frequently accessed resource files, and preferentially guarantee the resource files required for voice processing in the multi-player voice teaming scenario; a data transmission module for when it is detected that the network bandwidth or network latency reaches a preset condition, adjusting the data transmission strategy of the multi-player voice based on the operation data to reduce the voice data quality or increase the audio compression rate.

[0008] In the third aspect of the embodiments of the present application, an electronic device is provided, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the computer program, the steps of the above method are implemented.

[0009] In the fourth aspect of the embodiments of the present application, a computer-readable storage medium is provided. The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the above method are implemented.

[0010] At least one of the above technical solutions adopted in the embodiments of the present application can achieve the following beneficial effects: By pre-compiling the source code of the game voice tool to convert the source code into bytecode; preloading the resource files of the game voice tool, caching the preloaded resource files in the memory, and collecting operation data in real time during the game operation; dynamically adjusting the bytecode compilation strategy based on the operation data, when it is detected that the multi-person voice teaming function is enabled and the CPU load reaches a preset condition, reducing the execution priority of the bytecode compilation task; dynamically scheduling the allocation of CPU cores based on the operation data, allocating high-priority tasks to the CPU cores with a load lower than the preset load threshold for execution, and allocating other tasks to the remaining CPU cores; scheduling and intelligently caching and managing the resource files according to the operation data, preferentially caching or background loading the frequently accessed resource files, and preferentially guaranteeing the resource files required for voice processing in the multi-person voice teaming scenario; when it is detected that the network bandwidth or network latency reaches a preset condition, adjusting the data transmission strategy of the multi-person voice based on the operation data to reduce the voice data quality or increase the audio compression rate. The present application can perform dynamic scheduling, flexibly allocate tasks and resources according to the real-time state during the game operation, so as to reduce the CPU occupancy and avoid game operation jamming. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for use in the embodiments or the description of the prior art. Obviously, the following drawings are only some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained according to these drawings without creative efforts.

[0012] Figure 1 It is a schematic flowchart of a game team voice noise reduction method based on a dynamic threshold mechanism provided by an embodiment of the present application; Figure 2 It is a schematic structural diagram of a game team voice noise reduction device based on a dynamic threshold mechanism provided by an embodiment of the present application; Figure 3 It is a schematic structural diagram of an electronic device provided by an embodiment of the present application. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0013] In the following description, specific details such as specific system architectures and technologies are presented for illustration rather than limitation, in order to thoroughly understand the embodiments of the present application. However, those skilled in the art should understand that the present application can also be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to avoid unnecessary details from obstructing the description of the present application.

[0014] In the current gaming scenario, enabling the "multiplayer team voice" function will greatly enhance the interactivity and player experience of the game. However, during the operation of the game voice function, it will compete with many modules such as image rendering, network communication, and physical simulation for system resources, especially CPU resources. Once the multiplayer voice teaming function occupies too much CPU resources, other core game functions such as image rendering and data loading may not be processed in a timely manner, resulting in game lag and latency problems, seriously affecting the player experience.

[0015] To solve such problems, it is usually necessary to start from optimizing the resource occupancy during game operation. For example, improving the source code compilation efficiency, managing the multi-core allocation of the CPU, and optimizing the use of network bandwidth. Traditional approaches often perform "static" optimizations according to pre-evaluated strategies, such as compiling at fixed times and executing tasks on fixed CPU cores. However, when the game enters the multiplayer voice teaming mode, the resource requirements will change rapidly and unpredictably, and static strategies are difficult to cope with instantaneous load shocks.

[0016] In the prior art, in order to reduce the lag problems that occur during game operation, the following means are usually adopted: Bytecode compilation technology: Compile the source code before the game runs to reduce the real-time compilation pressure on the CPU after the game starts.

[0017] Matching of CPU core information: According to the characteristics of different CPU cores, allocate tasks with high computing requirements to more suitable cores to improve the overall efficiency.

[0018] Resource preloading: Before the game starts or the scene changes, preload common resources into the memory to reduce the lag caused by real-time loading.

[0019] However, when the multiplayer team voice function is enabled, only the fixed "bytecode compilation + CPU core allocation" strategy is still not flexible enough; in the face of constantly changing real-time game scenarios and lacking dynamic scheduling capabilities, it is difficult to ensure the balance of resource allocation between voice processing and other core functions.

[0020] Based on the above background, the core problem to be solved by this application is: how to reduce the lag caused by excessive CPU occupancy when enabling multi-player voice chat, so as to ensure the smoothness of the game. In other words, a mechanism is needed that can dynamically schedule and flexibly allocate tasks and resources according to the real-time state during game operation (such as CPU load, memory usage, network status, etc.), to avoid conflicts or bottlenecks in CPU usage between the multi-player voice function and other game functions.

[0021] The following will describe in detail the content of the technical solution of this application in combination with the accompanying drawings and specific embodiments.

[0022] Figure 1 It is a flowchart of a game performance optimization method based on dynamic scheduling provided by an embodiment of this application. As Figure 1 shown, the game performance optimization method based on dynamic scheduling may specifically include: S101, perform pre-compilation processing on the source code of the game voice tool to convert the source code into bytecode; S102, perform pre-loading on the resource files of the game voice tool, cache the pre-loaded resource files in memory, and during the game operation, collect operation data in real time; S103, dynamically adjust the bytecode compilation strategy based on the operation data. When it is detected that the multi-player voice chat function is enabled and the CPU load reaches a preset condition, reduce the execution priority of the bytecode compilation task; S104, perform dynamic scheduling on the allocation of CPU cores based on the operation data, allocate high-priority tasks to the CPU cores with a load lower than the preset load threshold for execution, and allocate other tasks to the remaining CPU cores; S105, perform scheduling and intelligent cache management on the resource files according to the operation data, preferentially cache or background-load the frequently accessed resource files, and preferentially guarantee the resource files required for voice processing in the multi-player voice chat scenario; S106, when it is detected that the network bandwidth or network latency reaches a preset condition, adjust the data transmission strategy of the multi-player voice based on the operation data to reduce the voice data quality or increase the audio compression ratio.

[0023] In some embodiments, performing pre-compilation processing on the source code of the game voice tool to convert the source code into bytecode includes: During the installation or startup phase of the game voice tool, read the source code of the game voice tool and parse the source code to generate the intermediate representation required for compilation; Based on the intermediate representation, perform a compilation operation in a preset compilation environment to generate the corresponding bytecode file; Store the bytecode file at a storage location corresponding to the game voice tool, and execute the corresponding function modules by calling the bytecode file when the game voice tool runs.

[0024] Specifically, in the installation stage or startup stage of the game voice tool, the source code of the game voice tool can be pre-compiled once. The entire pre-compilation process includes the following steps: First, in the installation stage of the game voice tool, for example, when the game voice tool is initially installed on the user's terminal device (such as a PC, game console, or smart mobile terminal), or in the first startup stage of the game voice tool, the system will automatically start the pre-compilation module. The pre-compilation module first accesses all the source code files of the game voice tool (such as script files, logical function module files, etc.) in the installation directory or software package of the game voice tool through the file reading unit, and parses the source code files. Specifically, the file reading unit obtains the source code content by scanning line by line or reading the entire file, and uses the code parsing unit to analyze the syntax structure of the source code to generate an intermediate representation (Intermediate Representation, IR) in a unified format that is convenient for subsequent compilation. The intermediate representation, as a unified and language-independent code representation form, is suitable for multiple game compilation environments and can facilitate subsequent compilation processing.

[0025] Further, the generated intermediate representation will be transmitted to a preset compilation environment for unified compilation processing. The preset compilation environment can be integrated into the installation program of the game client or distributed as an independent module together with the game installation package. In this embodiment, the compilation environment can be a compilation framework based on Just-in-Time (JIT) or Ahead-of-Time (AOT) technology to adapt to different terminal operating environments.

[0026] In the compilation environment, the compilation unit optimizes and transforms the intermediate representation, including but not limited to optimization steps such as code simplification, removal of redundant instructions, and instruction reordering, so as to generate a bytecode file suitable for direct execution. As an intermediate code form closer to machine language, the bytecode file has higher execution efficiency than the original source code, and significantly reduces the CPU resources required when the game voice tool runs.

[0027] The bytecode file after compilation is then stored at a specific storage location corresponding to the game voice tool client, such as a dedicated cache folder under the installation directory or a specified area in the internal storage system of the user terminal. Specifically, in this embodiment, a dedicated bytecode cache directory can be established under the installation directory of the game voice tool to store the bytecode files after compilation uniformly, so that the game voice tool client can quickly retrieve and call them when starting.

[0028] In each subsequent running stage of the game voice tool, the game voice tool client does not need to perform real-time compilation of source code to bytecode again, but directly calls the pre-compiled bytecode file from the above cache location. Specifically, when the game voice tool is started, the bytecode loading unit automatically retrieves the bytecode cache directory, quickly loads the bytecode file and executes it in the corresponding virtual machine or execution engine, thereby greatly reducing the CPU load during the running process of the game voice tool.

[0029] Furthermore, in some examples, the game voice tool client can also set up a bytecode version management mechanism. For example, when the game voice tool is updated or the code changes, the client can judge whether the corresponding bytecode file has been updated through the version comparison mechanism; if the source code has changed, the client only re-executes the pre-compilation process for the changed source code files and updates the corresponding bytecode files, without re-compiling all the source code, thereby further optimizing the compilation efficiency.

[0030] Through the above pre-compilation technical solution, this embodiment effectively realizes the one-time pre-compilation processing of the game voice tool source code in advance, avoids the problem that the game voice tool occupies too much CPU resources due to repeated source code compilation operations during operation, and significantly improves the game performance and player experience.

[0031] In some embodiments, pre-load the resource files of the game voice tool, cache the pre-loaded resource files in the memory, and during the running process of the game, collect running data in real time, including: In the installation or startup stage of the game voice tool, identify the resource files that need to be preferentially loaded according to the resource configuration information, and load the relevant data of the resource files into the memory; Use the cache management module to perform cache registration on the pre-loaded resource files and store them in a preset memory buffer area; After the game enters the running state, use the monitoring component to collect running data including CPU load, memory occupancy, network bandwidth, and network latency; Upload the running data to the scheduling control unit for dynamic adjustment of bytecode compilation strategies, CPU core allocation, and subsequent resource scheduling.

[0032] Specifically, in this embodiment, in order to reduce the audio loading delay and resource scheduling conflicts that occur in the multi-person voice scenario of the game voice tool, by pre-loading the resource files in the installation or startup stage of the game voice tool, caching the resource files in the memory, and combining the real-time collection of game running data, dynamic optimization of the voice function is achieved.

[0033] During the installation or startup phase of the game voice tool, the system first reads the pre-configured resource configuration information, which records the priorities and usage frequencies of resources such as commonly used audio codecs, voice processing scripts, and common sound effect files for the game voice tool.

[0034] The resource loading module automatically identifies the target resource files that need to be loaded preferentially according to the resource configuration information, and loads the relevant data of these target resource files into the local memory.

[0035] In some examples, high-priority or frequently used audio processing scripts and voice data models can be pre-loaded in sequence according to the access frequency or priority order of the resources, ensuring that the voice initialization and processing can be completed at the fastest speed when the game enters the voice function.

[0036] To ensure the subsequent quick location and invocation of the pre-loaded resource files, this embodiment provides a cache management module. After identifying and completing the resource pre-loading, the cache management module generates corresponding cache records for each loaded resource file, including resource identifiers, cache addresses, loading times, and resource priorities, etc.

[0037] The cache records are stored in a dedicated cache registration form and correspond to the directory structure or file index of the game voice tool. When subsequent voice processing-related resources need to be invoked, the system can quickly locate the resource files in the memory through this registration form without reading from the disk again, thereby reducing the resource loading latency.

[0038] When the game officially enters the running state, this embodiment continuously runs a monitoring component in the game background. The monitoring component collects running data including CPU load, memory occupancy, network bandwidth, and network latency in real time at a preset sampling period or in an event-triggered manner.

[0039] When the multi-player voice function is active, the monitoring component can also additionally collect the voice data packet transmission rate, audio decoding processing duration, etc., and record them together with the general system resource usage information.

[0040] This embodiment transmits the running data collected by the above monitoring component to the scheduling control unit through network or inter-process communication. The scheduling control unit is responsible for parsing and comparing the received running data to determine whether the current system has situations such as excessive CPU load, memory shortage, insufficient network bandwidth, or excessive network latency.

[0041] Once a significant difference is found compared with the preset threshold, the scheduling control unit can dynamically adjust the bytecode compilation strategy, CPU core allocation, and subsequent resource scheduling in real time or at intervals based on this operation data. For example, when it is detected that the memory occupied by voice processing is about to exceed the set memory threshold, the scheduling control unit can instruct the cache management module to perform cache cleaning or resource degradation mechanisms in the background to free up some memory for other critical tasks.

[0042] In some examples, if the game voice tool detects in the background that most of the voice processing scripts are not actually called, the cache management module can remove the resources with too low unused frequency from the memory without affecting the smoothness of the voice function to save system resources.

[0043] If the player switches to a scenario unrelated to the voice tool during the game, the system can record the access frequency of the resources related to the voice function in this scenario through the monitoring component and dynamically lower its priority in the scheduling control unit, so that it can be used as a candidate resource for cleaning or backup when the memory is insufficient to ensure the performance of other key game functions.

[0044] In summary, through the priority preloading and cache registration of the resource files of the game voice tool, and by dynamically adjusting the system resource configuration in combination with the real-time collected game operation data, this embodiment effectively reduces the resource call latency and system load risk under multi-person voice, providing a smoother game voice communication experience for players.

[0045] In some embodiments, based on the operation data, the bytecode compilation strategy is dynamically adjusted. When it is detected that the multi-person voice teaming function is enabled and the CPU load reaches the preset condition, the execution priority of the bytecode compilation task is reduced, including: Using the monitoring component to obtain operation data, where the operation data includes monitoring information indicating the enabled state of the multi-person voice teaming function and the CPU load level; Transmitting the monitoring information to the compilation management module to determine the current execution priority of the bytecode compilation task; When the compilation management module recognizes that the multi-person voice teaming function is in the enabled state and the CPU load has met the preset condition, it sends a compilation priority adjustment instruction to the scheduling control unit; According to the compilation priority adjustment instruction, the bytecode compilation strategy is updated and adjusted to reduce the execution priority of the bytecode compilation task.

[0046] Specifically, first, during the operation of the game client, a lightweight background monitoring component is launched to collect and record system operation data in real time. The operation data includes at least information such as the current CPU load level, memory occupancy rate, network bandwidth usage, and network latency. In addition, the monitoring component also monitors the status information of the game client in real time, such as whether the multi-player voice teaming function is enabled, and encapsulates the above information into data packets in a unified format, and uploads them to the compilation management module periodically or in real time.

[0047] Furthermore, after receiving the above operation data, the compilation management module analyzes and compares the CPU load information and the status information of the multi-player voice teaming function in the data packet. For example, the compilation management module has pre-set multiple CPU load thresholds, and these thresholds can be dynamically defined according to different game operation scenarios (such as the number of online players, the game process status, or the size of voice communication traffic, etc.). When the compilation management module identifies that the current CPU load level exceeds the preset load threshold corresponding to the multi-player voice teaming function, it determines that the current system is in a high-load state and the multi-player voice function is in an enabled state.

[0048] After determining that the above conditions are met, the compilation management module automatically sends a compilation priority adjustment instruction to the scheduling control unit. Specifically, the compilation priority adjustment instruction may include clear requirements for setting the compilation task priority. For example, the priority of the bytecode compilation task is reduced from the original higher level to a preset lower level, ensuring that in the current high-load scenario, more CPU resources can be released for multi-player voice processing tasks and other key tasks of the game, thus avoiding performance bottlenecks caused by resource competition.

[0049] After receiving the compilation priority adjustment instruction sent by the compilation management module, the scheduling control unit updates and adjusts the bytecode compilation strategy currently executed by the game client based on this instruction. For example, in this embodiment, the scheduling control unit adopts a hierarchical priority model to cope with different load scenarios during the game operation. When the system load is low (such as a small number of players online), the priority of the bytecode compilation task can be automatically increased to quickly complete the compilation operation and improve the overall response speed of the game. When the multi-player voice teaming is enabled and in a high-load state, the scheduling control unit automatically reduces the priority of the bytecode compilation task, delaying the execution frequency and execution order of the compilation operation, so as to ensure sufficient supply of resources required for voice processing tasks and avoid stuttering during the game operation.

[0050] Further, to achieve more refined management of different scenario loads, this embodiment can also set a dynamically adjustable priority range. For example, the priority of the compilation task can be divided into multiple levels (such as three or more levels: high, medium, and low). The scheduling control unit can analyze the resource requirements of each in real time based on the running data and flexibly switch between different priorities. When the running data indicates again that the CPU load level drops below the preset threshold or the multi-person voice teaming function is turned off, the scheduling control unit can restore or increase the execution priority of the compilation task in real time to efficiently complete the remaining compilation operations.

[0051] By monitoring the game running state in real time and dynamically adjusting the priority of the bytecode compilation task, this embodiment realizes more refined and dynamic management of CPU resources in the multi-person voice teaming scenario, which is more flexible than the static configuration method in the prior art, significantly reduces the probability of lagging when the game is highly loaded, and improves the overall experience of players.

[0052] In some embodiments, based on the running data, dynamic scheduling of the allocation of CPU cores is performed, and high-priority tasks are allocated to the CPU cores with a load lower than the preset load threshold for execution, and other tasks are allocated to the remaining CPU cores, including: Using the scheduling control unit to compare and analyze the load levels of the CPU cores to determine the CPU cores with a load lower than the preset load threshold; Allocate high-priority tasks to the CPU cores with a load lower than the preset load threshold for execution, and allocate other tasks except high-priority tasks to the remaining CPU cores.

[0053] Specifically, first, the game client uses the monitoring component to monitor and collect the running state information of each CPU core in real time, such as the load level, task queuing situation, and idle degree of each CPU core, and uploads this real-time running data to the scheduling control unit periodically. The real-time running data can be obtained by real-time statistics of indicators such as the number of tasks running on each CPU core, the thread occupancy rate, and the CPU clock cycle occupancy ratio.

[0054] Subsequently, based on the above-mentioned received real-time running data, the scheduling control unit compares and analyzes the load conditions of each CPU core. For example, a CPU core load threshold is preset in the scheduling control unit, which can be determined in advance based on empirical data or test data and can be flexibly adjusted according to the actual situation during game operation. In each load comparison analysis, the scheduling control unit identifies and determines the set of CPU cores with a load level lower than the preset threshold, and these cores are regarded as the currently available CPU cores that can preferentially allocate critical tasks.

[0055] After determining the set of CPU cores with lower loads, the scheduling control unit executes a dynamic task allocation strategy. For example, the scheduling control unit divides tasks into high-priority tasks and other ordinary tasks according to the importance and real-time requirements of game tasks. Among them, high-priority tasks include tasks that are sensitive to latency and have high resource requirements, such as multi-person voice processing tasks and real-time network data processing tasks. The scheduling control unit preferentially allocates these high-priority tasks to the above-identified set of CPU cores with lower loads for execution, so as to ensure that these critical tasks can obtain sufficient computing resources and avoid task execution delays caused by resource shortages or competition.

[0056] Correspondingly, the scheduling control unit allocates other tasks in the game, such as image rendering tasks, physical simulation tasks, background data processing tasks, etc., which are relatively insensitive to latency or have relatively stable resource requirements, to other CPU cores with relatively higher loads or close to the threshold, in order to ensure balanced resource allocation and avoid a single CPU core running at a high load for a long time.

[0057] Furthermore, in order to more effectively achieve dynamic load balancing and task scheduling of CPU cores, the scheduling control unit in this embodiment can adopt an adaptive load balancing algorithm. Specifically, this algorithm continuously tracks the real-time load changes of each CPU core. When the system monitors that the load of a certain CPU core rises above a preset threshold or is significantly higher than other cores, the scheduling control unit automatically triggers a task reallocation mechanism to migrate some tasks on this core to other CPU cores with lower loads for execution, so as to maintain load balance between CPU cores in real time.

[0058] In addition, this embodiment can also configure the CPU core preferences for different types of tasks. For example, tasks such as multi-person voice and real-time network communication can be preferentially allocated to specific low-load cores or specific CPU cores with better performance (such as cores with higher main frequencies) to further improve the execution efficiency and response speed of high-priority tasks. At the same time, for computationally intensive tasks such as image rendering or physical simulation, they can be dynamically evenly distributed to multiple CPU cores to make full use of the multi-core parallel processing ability of the CPU and maximize the overall resource utilization efficiency of the system.

[0059] This embodiment significantly improves the response speed and operation efficiency of critical tasks in the multi-person voice teaming scenario by real-time collecting CPU core load status information and dynamically scheduling and optimizing the CPU core allocation of tasks, effectively preventing game freezes caused by single-core resource overload, and greatly enhancing the smoothness of game operation and the player experience.

[0060] In some embodiments, the resource files are scheduled and intelligently cached according to the running data. The frequently accessed resource files are preferentially cached or loaded in the background, and the resource files required for voice processing are preferentially guaranteed in the multi-person voice teaming scenario, including: Analyze the resource access frequency, identify the target resources exceeding the preset access threshold and mark them as high-priority resources; Load the high-priority resources into the preset memory cache area, or preferentially execute the loading operation of the high-priority resources in the background process; When it is detected that the multi-person voice teaming function is in the enabled state, increase the scheduling priority of the resources required for voice processing; Continuously monitor the running data, and when it is detected that the resource access frequency or the multi-person voice teaming state changes, update the loading and caching policies of the marked high-priority resources or voice processing resources in real time.

[0061] Specifically, first, the system collects the access frequency information of each resource file during the game running process through the monitoring component to determine the actual usage of each resource in the game process. The monitoring component continuously tracks, statistics and records the access frequency information of the resources, and uploads these data to the resource scheduling module for further analysis and processing regularly or in real time.

[0062] After obtaining the above access frequency data, the resource scheduling module identifies the target resources whose access frequency exceeds the preset threshold by comparing with the preset access frequency threshold. These identified target resources are usually the resources frequently called during the game, such as frequently used image files, background music files, core game model files, and other key sound effects. The resource scheduling module then marks these resources as high-priority resources to distinguish them from other ordinary resources with lower access frequencies.

[0063] After determining the high-priority resources, the resource scheduling module immediately executes the corresponding caching or background loading strategy. Specifically, the high-priority resources can be pre-loaded into the predefined memory cache area to ensure that these resources can be quickly and directly accessed in the subsequent running stage of the game; or start a dedicated background loading process to preferentially execute the loading and caching operations of the high-priority resources, thereby significantly shortening the real-time call latency of the resources during the game running process.

[0064] Furthermore, this embodiment particularly focuses on the resource allocation requirements after the multi-player voice teaming function is enabled. When the monitoring component detects in real time that the multi-player voice teaming function of the game client is in the enabled state, the resource scheduling module will correspondingly increase the scheduling priority of resources related to voice processing, and preferentially allocate key resources such as memory and bandwidth for voice processing tasks to ensure that the voice data processing tasks receive sufficient resource support. In specific implementation, the resources required for voice processing (such as audio codec module, voice data buffer) are dynamically set to the highest priority in the cache registration table, and are preferentially allocated, preferentially loaded, and preferentially called in the resource competition scenario to ensure the real-time communication quality and game experience fluency of multi-player voice teaming.

[0065] Meanwhile, the resource scheduling module in this embodiment continuously monitors and analyzes real-time operation data, including changes in resource access frequency and changes in the state of the multi-player voice teaming function, etc. When the system detects that the access frequency of certain resources significantly increases or decreases, or the multi-player voice teaming state switches from enabled to disabled or vice versa, the resource scheduling module will immediately make real-time adjustments to the caching and loading strategies of the above-mentioned marked high-priority resources or voice processing resources. For example, when the multi-player voice teaming function is disabled, the originally marked high-priority voice processing resources will be automatically adjusted to normal or lower priority to release the occupied cache space and bandwidth resources for other tasks to use.

[0066] Furthermore, in the actual application scenario, this embodiment can also cooperate with the adaptive cache management algorithm to achieve more flexible resource management. For example, the resource scheduling module can adopt an adaptive priority management strategy, continuously monitor the real-time call situation of each resource, and dynamically adjust the priority and cache strategy of the resources regularly or in real time, so that the cache always stores the resources most frequently called in the current stage of the game, thereby fully improving the effective utilization rate of memory and the overall system performance.

[0067] This embodiment realizes the refined control of resource allocation and memory management by dynamically adjusting the loading and caching priorities of resources through real-time analysis of game resource access frequency and multi-player voice teaming scenario status, effectively reducing the stuttering phenomenon caused by resource competition in the multi-player voice scenario, and significantly improving the fluency of game operation and the quality of user experience.

[0068] In some embodiments, when it is detected that the network bandwidth or network latency reaches a preset condition, the data transmission strategy of multi-player voice is adjusted based on the operation data to reduce the voice data quality or increase the audio compression rate, including: Using the monitoring component to collect network bandwidth and network latency information, comparing and analyzing the network bandwidth and network latency information in the scheduling control unit to determine whether the preset condition is reached; When it is determined that the network bandwidth or network latency meets the preset conditions, send a data transmission policy update instruction to the voice transmission management module; According to the data transmission policy update instruction, adjust the parameter configuration of multi-person voice transmission, set the voice data quality to a predefined low level, or increase the audio compression ratio; After completing the update of the data transmission policy, continue to monitor the network bandwidth and network latency information, and trigger the dynamic adjustment of the data transmission policy when the status of the network bandwidth and network latency information changes.

[0069] Specifically, the game client continuously collects data related to the current network status through a monitoring component running in the background, including real-time network performance indicators such as network bandwidth utilization, network latency duration, and network packet loss rate. The monitoring component interacts with the network interface to periodically or real-time obtain and record the above network performance data, and uploads these operation data to the scheduling control unit.

[0070] The scheduling control unit receives the network performance data uploaded by the monitoring component in real-time, and performs real-time comparison and analysis with the preset network performance thresholds in the system. For example, the network performance thresholds include the minimum bandwidth threshold and the maximum network latency threshold. When the network bandwidth drops below the minimum threshold or the network latency rises above the maximum threshold, the scheduling control unit determines that the current network performance meets the conditions for triggering the adjustment of the voice transmission policy.

[0071] When it is determined that the network performance meets the above preset conditions, the scheduling control unit will automatically send a data transmission policy update instruction to the voice transmission management module. The update instruction contains clear policy adjustment information, such as clearly instructing the voice transmission management module to reduce the audio quality level currently used for voice data transmission to a predefined lower level, or increase the compression ratio of audio data to a predefined higher level, so as to reduce the demand for network bandwidth and system CPU resources by voice data.

[0072] After receiving the above update instruction, the voice transmission management module adjusts the parameter configuration of voice data transmission in real-time according to the instruction requirements. For example, it automatically reduces the voice data sampling rate from the original higher sampling rate (such as 48kHz or 44.1kHz) to a lower sampling rate (such as 24kHz or 16kHz), or switches the audio encoding method to an audio codec format with higher compression efficiency, thereby significantly reducing the network bandwidth and CPU computing burden required for multi-person voice transmission, and ensuring that voice communication can still maintain basic fluency when the network condition deteriorates.

[0073] Further, after completing the above update of the voice data transmission strategy, the monitoring component will continue to continuously monitor real-time performance metrics such as network bandwidth and network latency. When the system detects that the network performance condition has recovered to be better than the preset threshold or other significant changes occur, the scheduling control unit will trigger dynamic policy adjustment again, such as restoring the voice data to the original higher quality level, or reducing the audio compression rate again, to improve the user's voice communication experience.

[0074] In an actual application scenario, the dynamic adjustment mechanism of this embodiment can be further integrated into a broader resource adaptive scheduling framework. Specifically, after the game client starts, it continuously runs a resource monitoring module, which is responsible for comprehensively monitoring multi-dimensional performance data such as CPU load, memory occupancy, and network status, and transmitting it to the scheduling decision-making module in real time. The scheduling decision-making module then conducts intelligent analysis and decision-making based on the real-time performance data and predefined policy thresholds to determine various resource scheduling policies including voice data transmission policy, bytecode compilation policy, CPU core allocation policy, and resource caching policy.

[0075] Subsequently, the dynamic adjustment module dynamically implements resource scheduling and policy adjustment in real time based on the decision results of the scheduling decision-making module. For example, when the multi-player voice teaming function is enabled, if it is detected that the network bandwidth decreases or the network latency increases, the dynamic adjustment module quickly reduces the voice transmission quality to release bandwidth and reduce the CPU burden, and at the same time makes corresponding linkage optimizations to the CPU core allocation and bytecode compilation task priorities to ensure the smooth operation of the overall game.

[0076] This embodiment realizes the refined and dynamic management of resource allocation under changing network conditions by real-time monitoring of network performance and dynamically adjusting the multi-player voice data transmission strategy, and at the same time integrating it into the resource adaptive scheduling framework, significantly improving the game performance and user experience in the multi-player voice teaming scenario.

[0077] The following is an embodiment of the device of the present application, which can be used to execute the method embodiment of the present application. For the details not disclosed in the device embodiment of the present application, please refer to the method embodiment of the present application.

[0078] Figure 2 It is a schematic structural diagram of a game performance optimization device based on dynamic scheduling provided by an embodiment of the present application. As Figure 2 shown, the game performance optimization device based on dynamic scheduling includes: A pre-compilation module 201, configured to perform pre-compilation processing on the source code of the game voice tool and convert the source code into bytecode; A pre-loading module 202, configured to pre-load the resource files of the game voice tool, cache the pre-loaded resource files in the memory, and collect operation data in real time during the game operation; An adjustment module 203, configured to dynamically adjust the bytecode compilation strategy based on the running data. When it is detected that the multi-person voice teaming function is enabled and the CPU load reaches a preset condition, the execution priority of the bytecode compilation task is reduced; A dynamic scheduling module 204, configured to dynamically schedule the allocation of CPU cores based on the running data, allocate high-priority tasks to the CPU cores with a load lower than the preset load threshold for execution, and allocate other tasks to the remaining CPU cores; A caching module 205, configured to schedule and intelligently manage the caching of resource files according to the running data, preferentially cache or background load frequently accessed resource files, and preferentially guarantee the resource files required for voice processing in the multi-person voice teaming scenario; A data transmission module 206, configured to adjust the data transmission strategy of multi-person voice based on the running data when it is detected that the network bandwidth or network latency reaches a preset condition, so as to reduce the voice data quality or increase the audio compression rate.

[0079] In some embodiments, Figure 2 The pre-compilation module 201 reads the source code of the game voice tool during the installation or startup phase of the game voice tool, and parses the source code to generate the intermediate representation required for compilation; based on the intermediate representation, performs a compilation operation in a preset compilation environment to generate the corresponding bytecode file; stores the bytecode file in the storage location corresponding to the game voice tool, and executes the corresponding function module by calling the bytecode file when the game voice tool is running.

[0080] In some embodiments, Figure 2 The preloading module 202 identifies the resource files that need to be preferentially loaded according to the resource configuration information during the installation or startup phase of the game voice tool, and loads the relevant data of the resource files into the memory; uses the cache management module to perform cache registration on the preloaded resource files and stores them in a preset memory buffer area; after the game enters the running state, uses the monitoring component to collect the running data including CPU load, memory occupancy, network bandwidth, and network latency; uploads the running data to the scheduling control unit for dynamically adjusting the bytecode compilation strategy, CPU core allocation, and subsequent resource scheduling.

[0081] In some embodiments, Figure 2The adjustment module 203 obtains operation data by using the monitoring component, where the operation data includes monitoring information for indicating the enabling status of the multi-person voice teaming function and the CPU load level; transmits the monitoring information to the compilation management module to determine the current execution priority of the bytecode compilation task; when the compilation management module recognizes that the multi-person voice teaming function is in the enabled state and the CPU load has met the preset conditions, sends a compilation priority adjustment instruction to the scheduling control unit; and updates and adjusts the bytecode compilation policy according to the compilation priority adjustment instruction to reduce the execution priority of the bytecode compilation task.

[0082] In some embodiments, Figure 2 The dynamic scheduling module 204 of the [system / component] uses the scheduling control unit to perform a comparative analysis on the load levels of the CPU cores, and determines the CPU cores with a load lower than the preset load threshold; allocates high-priority tasks to the CPU cores with a load lower than the preset load threshold for execution, and allocates other tasks except the high-priority tasks to the remaining CPU cores.

[0083] In some embodiments, Figure 2 The cache module 205 of the [system / component] analyzes the resource access frequency, identifies target resources exceeding the preset access threshold and marks them as high-priority resources; loads the high-priority resources into the preset memory cache area, or preferentially executes the loading operation of the high-priority resources in the background process; when it is detected that the multi-person voice teaming function is in the enabled state, raises the scheduling priority of the resources required for voice processing; continuously monitors the operation data, and when it is detected that the resource access frequency or the multi-person voice teaming status has changed, real-time updates the loading and caching policies of the marked high-priority resources or the voice processing resources.

[0084] In some embodiments, Figure 2 The data transmission module 206 of the [system / component] uses the monitoring component to collect network bandwidth and network latency information, performs a comparison and analysis on the network bandwidth and network latency information in the scheduling control unit, and determines whether the preset conditions are met; when it is determined that the network bandwidth or the network latency meets the preset conditions, sends a data transmission policy update instruction to the voice transmission management module; adjusts the parameter configuration of the multi-person voice transmission according to the data transmission policy update instruction, sets the voice data quality to a predefined low level, or increases the audio compression rate; after completing the update of the data transmission policy, continues to monitor the network bandwidth and network latency information, and triggers the dynamic adjustment of the data transmission policy when the status of the network bandwidth and network latency information changes.

[0085] It should be understood that the magnitudes of the sequence numbers of the steps in the above embodiments do not mean the order of execution is prior or posterior, and the execution order of each process should be determined according to its function and internal logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.

[0086] Figure 3 This is a schematic structural diagram of the electronic device 3 provided by the embodiments of the present application. As Figure 3 shown, the electronic device 3 of this embodiment includes: a processor 301, a memory 302, and a computer program 303 stored in the memory 302 and executable on the processor 301. When the processor 301 executes the computer program 303, the steps in the above-mentioned method embodiments are implemented. Alternatively, when the processor 301 executes the computer program 303, the functions of each module / unit in the above-mentioned device embodiments are implemented.

[0087] Exemplarily, the computer program 303 can be divided into one or more modules / units. The one or more modules / units are stored in the memory 302 and executed by the processor 301 to complete the present application. The one or more modules / units can be a series of computer program instruction segments capable of completing specific functions, and the instruction segments are used to describe the execution process of the computer program 303 in the electronic device 3.

[0088] The electronic device 3 can be a desktop computer, a notebook, a palm computer, a cloud server, and other electronic devices. The electronic device 3 can include but is not limited to the processor 301 and the memory 302. Those skilled in the art can understand that Figure 3 this is only an example of the electronic device 3 and does not constitute a limitation on the electronic device 3. It can include more or fewer components than shown in the figure, or combine certain components, or different components. For example, the electronic device can also include input / output devices, network access devices, buses, etc.

[0089] The processor 301 can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc.

[0090] The memory 302 can be an internal storage unit of the electronic device 3, for example, the hard disk or memory of the electronic device 3. The memory 302 can also be an external storage device of the electronic device 3, for example, a plug-in hard disk equipped on the electronic device 3, a Smart Media Card (SMC), a Secure Digital (SD) card, a Flash Card, etc. Further, the memory 302 can also include both the internal storage unit of the electronic device 3 and the external storage device. The memory 302 is used to store computer programs and other programs and data required by the electronic device. The memory 302 can also be used to temporarily store the data that has been output or will be output.

[0091] Those skilled in the art can clearly understand that, for the convenience and brevity of description, only the above-mentioned division of each functional unit and module is used as an example. In actual applications, the above functions can be allocated to different functional units and modules according to needs, that is, the internal structure of the device is divided into different functional units or modules to complete all or part of the functions described above. Each functional unit and module in the embodiment can be integrated into a processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above integrated unit can be implemented in the form of hardware or in the form of a software functional unit. In addition, the specific names of each functional unit and module are only for the convenience of mutual distinction and do not limit the protection scope of this application. The specific working processes of the units and modules in the above system can refer to the corresponding processes in the foregoing method embodiments and will not be elaborated herein.

[0092] In the above embodiments, the descriptions of the respective embodiments have their own emphases. For the parts not detailed or recorded in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0093] Those of ordinary skill in the art can realize that the units and algorithm steps of each example described in combination with the embodiments disclosed herein can be implemented by electronic hardware, or by a combination of computer software and electronic hardware. Whether these functions are executed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of this application.

[0094] In the embodiments provided in the present application, it should be understood that the disclosed device / computer equipment and method can be implemented in other ways. For example, the device / computer equipment embodiments described above are only illustrative. For example, the division of modules or units is only a logical function division. In actual implementation, there may be other division methods. Multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed couplings or direct couplings or communication connections to each other can be through some interfaces. The indirect couplings or communication connections of devices or units can be in electrical, mechanical or other forms.

[0095] The units described as separate components may or may not be physically separated. The components displayed as units may or may not be physical units, that is, they can be located in one place, or they can be distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0096] In addition, in each embodiment of the present application, the various functional units can be integrated in a processing unit, or each unit can exist physically alone, or two or more units can be integrated in one unit. The above integrated units can be implemented in the form of hardware or in the form of software functional units.

[0097] If the integrated module / unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on such an understanding, to implement all or part of the processes in the above method embodiments of the present application, it can also be completed by instructing relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium. When the computer program is executed by a processor, the steps of the above various method embodiments can be implemented. The computer program can include computer program code, and the computer program code can be in the form of source code, object code, executable file or some intermediate form, etc. The computer-readable medium can include: any entity or device capable of carrying the computer program code, recording medium, USB flash drive, mobile hard disk, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signal, telecommunication signal, and software distribution medium, etc.

[0098] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that: they can still modify the technical solutions described in the foregoing embodiments, or perform equivalent replacements on some of the technical features; and these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.

Claims

1. A method for optimizing game performance based on dynamic scheduling, characterized in that: include: Precompiling the source code of the game voice tool and converting the source code into bytecode; Preload the resource files of the game voice tool, cache the preloaded resource files in the memory, and collect the running data in real time during the game running; Dynamically adjust the bytecode compilation strategy based on the operation data, and when it is detected that the multi-person voice team function is turned on and the CPU load reaches a preset condition, reduce the execution priority of the bytecode compilation task; Dynamically scheduling the allocation of CPU cores based on the operating data, allocating high-priority tasks to CPU cores with loads below a preset load threshold for execution, and allocating other tasks to remaining CPU cores; The resource files are scheduled and intelligently cached according to the operation data, frequently accessed resource files are preferentially cached or loaded in the background, and resource files required for voice processing are preferentially guaranteed in multi-person voice team scenarios; When it is monitored that the network bandwidth or network delay reaches a preset condition, the data transmission strategy of multi-person voice is adjusted based on the operation data to reduce the voice data quality or increase the audio compression rate.

2. The method according to claim 1, characterized in that The pre-compiling of the source code of the game voice tool to convert the source code into bytecode includes: During the installation or startup phase of the game voice tool, the source code of the game voice tool is read and the source code is parsed to generate an intermediate representation required for compilation; Based on the intermediate representation, a compilation operation is performed in a preset compilation environment to generate a corresponding bytecode file; The bytecode file is stored in a storage location corresponding to the game voice tool, and the corresponding function module is executed by calling the bytecode file when the game voice tool is running.

3. The method according to claim 1, characterized in that The resource files of the game voice tool are preloaded, the preloaded resource files are cached in the memory, and during the game operation, the operation data is collected in real time, including: During the installation or startup phase of the game voice tool, the resource files that need to be loaded first are identified according to the resource configuration information, and the relevant data of the resource files are loaded into the memory; The cache management module is used to cache and register the preloaded resource files and store them in a preset memory buffer area; After the game enters the running state, the monitoring component is used to collect running data including CPU load, memory usage, network bandwidth and network latency; The operation data is uploaded to the scheduling control unit for dynamic adjustment of bytecode compilation strategy, CPU core allocation and subsequent resource scheduling.

4. The method according to claim 1, characterized in that: The dynamically adjusting the bytecode compilation strategy based on the operation data, when monitoring that the multi-person voice teaming function is turned on and the CPU load reaches a preset condition, lowering the execution priority of the bytecode compilation task, includes: Acquire the operation data using a monitoring component, wherein the operation data includes monitoring information indicating the activation state of the multi-person voice teaming function and the CPU load level; The monitoring information is transmitted to the compilation management module to determine the current execution priority of the bytecode compilation task; When the compilation management module recognizes that the multi-person voice teaming function is turned on and the CPU load has met the preset conditions, a compilation priority adjustment instruction is sent to the scheduling control unit; According to the compilation priority adjustment instruction, the bytecode compilation strategy is updated and adjusted to reduce the execution priority of the bytecode compilation task.

5. The method according to claim 1, characterized in that The dynamically scheduling the allocation of CPU cores based on the operation data, allocating high priority tasks to CPU cores with a load lower than a preset load threshold for execution, and allocating other tasks to the remaining CPU cores, includes: Comparing and analyzing the load levels of the CPU cores using a scheduling control unit to determine a CPU core whose load is lower than a preset load threshold; The high priority task is assigned to a CPU core whose load is lower than a preset load threshold for execution, and other tasks except the high priority task are assigned to the remaining CPU cores.

6. The method according to claim 1, characterized in that The resource files are scheduled and intelligently cached according to the operation data, frequently accessed resource files are preferentially cached or loaded in the background, and resource files required for voice processing are preferentially guaranteed in a multi-person voice team scenario, including: Analyze resource access frequency, identify target resources that exceed preset access thresholds and mark them as high-priority resources; Loading the high-priority resource into a preset memory cache area, or preferentially executing the loading operation of the high-priority resource in a background process; When it is detected that the multi-person voice teaming function is enabled, the scheduling priority of the resources required for voice processing is increased; The operation data is continuously monitored, and when a change in resource access frequency or multi-person voice team status is detected, the loading and caching strategy of the marked high-priority resources or voice processing resources is updated in real time.

7. The method according to claim 1, characterized in that When it is detected that the network bandwidth or network delay reaches a preset condition, the data transmission strategy of multi-person voice is adjusted based on the operation data to reduce the voice data quality or increase the audio compression rate, including: The monitoring component is used to collect network bandwidth and network delay information, and the network bandwidth and network delay information are compared and analyzed in the scheduling control unit to determine whether the preset conditions are met; When it is determined that the network bandwidth or network delay meets the preset conditions, a data transmission strategy update instruction is sent to the voice transmission management module; According to the data transmission strategy update instruction, adjust the parameter configuration of multi-person voice transmission, set the voice data quality to a predefined low level, or increase the audio compression rate; After completing the data transmission strategy update, the network bandwidth and network delay information continue to be monitored, and when the status of the network bandwidth and network delay information changes, the dynamic adjustment of the data transmission strategy is triggered.

8. A game performance optimization device based on dynamic scheduling, characterized in that: include: A pre-compilation module, used to pre-compile the source code of the game voice tool and convert the source code into bytecode; The preloading module is used to preload the resource files of the game voice tool, cache the preloaded resource files in the memory, and collect the operation data in real time during the game operation; An adjustment module, used to dynamically adjust the bytecode compilation strategy based on the operation data, and when it is detected that the multi-person voice team function is turned on and the CPU load reaches a preset condition, reduce the execution priority of the bytecode compilation task; A dynamic scheduling module, used to dynamically schedule the allocation of CPU cores based on the operation data, allocate high priority tasks to CPU cores with loads below a preset load threshold for execution, and allocate other tasks to the remaining CPU cores; A cache module, used to schedule and intelligently cache the resource files according to the operation data, prioritize caching or background loading of frequently accessed resource files, and prioritize resource files required for voice processing in multi-person voice team scenarios; The data transmission module is used to adjust the data transmission strategy of multi-person voice based on the operation data to reduce the voice data quality or improve the audio compression rate when it is monitored that the network bandwidth or network delay reaches a preset condition.

9. An electronic device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.

10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • Cloud game optimization method and system based on game big data feedback

    CN117654056A

  • Optimization processing method and device for cloud game data

    CN117695617A

  • Intelligent terminal power consumption optimization method and device based on active and passive identification, and terminal

    CN119088199A

  • Efficient real-time voice and video transmission method

    CN119135819A

  • Python Serverless function cold start optimization system and method

    CN119201284A

Cited By

  • Real-time task scheduling optimization method, device and system for FreeRTOS

    CN120256063A

  • Game role transmission method and device and electronic equipment

    CN121197806A