Resource scheduling method and device, equipment, medium and vehicle

By monitoring the interaction scenarios and the number of data blocks in real time, and using default and gradient scheduling strategies to schedule voice consumption threads, the problem of excessive CPU resource consumption in high-concurrency scenarios was solved, thereby improving system performance and resource utilization.

CN120950193APending Publication Date: 2025-11-14BEIJING CO WHEELS TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410592687.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-05-13
Publication Date
2025-11-14

AI Technical Summary

Technical Problem

In high-concurrency scenarios, the chunksize thread of voice processing is overloaded, resulting in excessive CPU resource consumption and affecting system performance, especially causing stuttering during cold starts and touch swiping scenarios.

Method used

By monitoring the current interaction scenario in real time, the default scheduling strategy is used to schedule the voice consumption thread in the voice interaction scenario, and in the non-voice interaction scenario, a gradient scheduling strategy is used to schedule resources according to the range of the number of data blocks to be processed, including binding performance cores and setting priorities.

Benefits of technology

This improved resource utilization, ensured the performance requirements of the voice consumption thread, reduced CPU usage on other threads, and prevented system lag.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120950193A_ABST
    Figure CN120950193A_ABST
Patent Text Reader

Abstract

The invention relates to a resource scheduling method and device, equipment, a medium and a vehicle. The resource scheduling method comprises the following steps: monitoring a current interaction scene in real time; under the condition that the current interaction scene is a voice interaction scene, performing resource scheduling on a voice consumption thread according to a default scheduling strategy; under the condition that the current interaction scene is a non-voice interaction scene, monitoring the number of to-be-processed data blocks in real time; and according to a corresponding relationship between a gradient scheduling strategy and a quantity range, performing resource scheduling on the voice consumption thread according to the gradient scheduling strategy corresponding to the quantity range in which the quantity of the to-be-processed data blocks is located. According to the embodiment of the invention, the resource utilization rate can be improved under the condition of ensuring the performance requirement of the voice consumption thread.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of speech processing technology, and in particular to a resource scheduling method, apparatus, device, medium, and vehicle. Background Technology

[0002] The chunksize refers to the size of the data block that the voice consumption thread needs to process or transmit each time it consumes voice data, such as during voice processing or audio stream transmission. This is a technical parameter used to specify the number of frames read or written at one time in audio stream processing.

[0003] In related technologies, to ensure stable chunk sizes and prevent buffer loss during voice processing, the voice chunk size consuming thread is bound to a large core and has a fixed priority of -10. However, the voice chunk size thread has a very high load, typically accounting for around 90% (out of a total load of 800%). Using a fixed priority and binding to a large core in high-concurrency scenarios will severely restrict the use of the Central Processing Unit (CPU) by other threads, causing system stuttering during cold starts and touch swiping scenarios. Summary of the Invention

[0004] To address the aforementioned technical problems, this disclosure provides a resource scheduling method, apparatus, equipment, medium, and vehicle.

[0005] Firstly, this disclosure provides a resource scheduling method, including:

[0006] Real-time monitoring of the current interaction scenario;

[0007] When the current interaction scenario is a voice interaction scenario, the voice consumption thread is scheduled according to the default scheduling strategy.

[0008] When the current interaction scenario is a non-voice interaction scenario, the number of data blocks to be processed is monitored in real time;

[0009] Based on the correspondence between the gradient scheduling strategy and the quantity range, the voice consumption thread is scheduled according to the gradient scheduling strategy corresponding to the quantity range of the data blocks to be processed.

[0010] Secondly, this disclosure provides a resource scheduling apparatus, comprising:

[0011] The first monitoring module is used to monitor the current interaction scenario in real time.

[0012] The first scheduling module is used to schedule resources for the voice consumption thread according to the default scheduling strategy when the current interaction scenario is a voice interaction scenario.

[0013] The second monitoring module is used to monitor the number of data blocks to be processed in real time when the current interaction scenario is a non-voice interaction scenario.

[0014] The second scheduling module is used to schedule resources for the voice consumption thread according to the gradient scheduling strategy corresponding to the quantity range of the number of data blocks to be processed, based on the correspondence between the gradient scheduling strategy and the quantity range.

[0015] Thirdly, this disclosure provides a resource scheduling device, including:

[0016] processor;

[0017] Memory, used to store executable instructions;

[0018] The processor is used to read executable instructions from memory and execute the executable instructions to implement the resource scheduling method of the first aspect.

[0019] Fourthly, this disclosure provides a computer-readable storage medium storing a computer program that, when executed by a processor, causes the processor to implement the resource scheduling method of the first aspect.

[0020] Fifthly, this disclosure provides a vehicle including the resource scheduling device described above.

[0021] The technical solution provided in this disclosure has the following advantages compared with the prior art:

[0022] The resource scheduling method, apparatus, device, medium, and vehicle of this disclosure can monitor the current interaction scenario in real time. Then, when the current interaction scenario is a voice interaction scenario, resource scheduling is performed on the voice consumption thread according to the default scheduling strategy. Then, when the current interaction scenario is a non-voice interaction scenario, the number of data blocks to be processed is monitored in real time. Finally, according to the correspondence between the gradient scheduling strategy and the quantity range, resource scheduling is performed on the voice consumption thread according to the gradient scheduling strategy corresponding to the quantity range of the number of data blocks to be processed. Thus, resource scheduling of the voice consumption thread can be performed according to the corresponding gradient scheduling strategy based on the real-time monitoring of the number of data blocks to be processed, thereby improving resource utilization while ensuring the performance requirements of the voice consumption thread. Attached Figure Description

[0023] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.

[0024] Figure 1 A flowchart illustrating a resource scheduling method provided in an embodiment of this disclosure;

[0025] Figure 2 A flowchart illustrating another resource scheduling method provided in this embodiment of the disclosure;

[0026] Figure 3 A flowchart illustrating yet another resource scheduling method provided in this disclosure embodiment;

[0027] Figure 4 This is a schematic diagram of the structure of a resource scheduling device provided in an embodiment of the present disclosure;

[0028] Figure 5 This is a schematic diagram of the structure of a resource scheduling device provided in an embodiment of the present disclosure. Detailed Implementation

[0029] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.

[0030] It should be understood that the steps described in the method embodiments of this disclosure may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of this disclosure is not limited in this respect.

[0031] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.

[0032] It should be noted that the concepts of "first" and "second" mentioned in this disclosure are used only to distinguish different devices, modules or units, and are not used to limit the order of functions performed by these devices, modules or units or their interdependencies.

[0033] It should be noted that the terms "a" and "a plurality of" used in this disclosure are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".

[0034] The names of messages or information exchanged between multiple devices in the embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.

[0035] To address the aforementioned problems, this disclosure provides a resource scheduling method, apparatus, device, medium, and vehicle. The following will first combine... Figures 1 to 3 The resource scheduling method provided in the embodiments of this disclosure will be described in detail.

[0036] Figure 1 A flowchart illustrating a resource scheduling method provided in an embodiment of this disclosure is shown.

[0037] In this embodiment of the disclosure, the resource scheduling method can be executed by an electronic device. Specifically, the electronic device may include, but is not limited to, mobile terminals such as computer devices, mobile phones, in-vehicle devices, vehicle controllers, tablet computers, and wearable devices.

[0038] like Figure 1 As shown, the resource scheduling method may include the following steps.

[0039] S110, Real-time monitoring of the current interaction scenario.

[0040] In this embodiment of the disclosure, the electronic device can monitor the current interaction scenario in real time.

[0041] Optionally, the current interaction scenario can be the scenario in which the vehicle interacts with the user.

[0042] Specifically, electronic devices can monitor the current interaction scenario in real time.

[0043] S120. When the current interaction scenario is a voice interaction scenario, resource scheduling is performed on the voice consumption thread according to the default scheduling strategy.

[0044] In this embodiment of the disclosure, when the current interaction scenario is a voice interaction scenario, the electronic device can schedule resources for the voice consumption thread according to the default scheduling strategy.

[0045] Optionally, the voice interaction scenario can be a scenario where the user interacts with the vehicle in real time via voice. For example, the user can interact with the vehicle in real time via voice commands such as "Hello, Xiao X" or "Open the sunroof".

[0046] Optionally, the default scheduling policy can be a pre-defined scheduling policy.

[0047] Optionally, the voice consumption thread can be a thread that performs voice consumption processing.

[0048] Optionally, resource scheduling can be the scheduling of CPU resources.

[0049] Specifically, after monitoring the current interaction scenario in real time, if the current interaction scenario is a voice interaction scenario, the electronic device can schedule resources for the voice consumption thread according to the default scheduling strategy.

[0050] S130. When the current interaction scenario is a non-voice interaction scenario, monitor the number of data blocks to be processed in real time.

[0051] In this embodiment of the disclosure, when the current interaction scenario is a non-voice interaction scenario, the electronic device can monitor the number of data blocks to be processed in real time.

[0052] Alternatively, non-voice interaction scenarios can be scenarios where the user interacts with the vehicle through other methods. For example, non-voice interaction scenarios can be gesture interaction scenarios, button interaction scenarios, etc., and there is no limitation here.

[0053] Optionally, the chunksize can be the size of the data block that the voice consumption thread needs to process or transmit each time it performs voice consumption, such as voice processing or voice stream transmission. This is a technical parameter used to specify the number of frames read or written at one time in audio stream processing.

[0054] Specifically, after monitoring the current interaction scenario in real time, if the current interaction scenario is a non-voice interaction scenario, the electronic device will monitor the number of data blocks to be processed in real time.

[0055] S140. Based on the correspondence between the gradient scheduling strategy and the quantity range, the voice consumption thread is scheduled according to the gradient scheduling strategy corresponding to the quantity range of the data blocks to be processed.

[0056] In this embodiment of the disclosure, the electronic device can perform resource scheduling on the voice consumption thread according to the gradient scheduling strategy corresponding to the quantity range of the number of data blocks to be processed, based on the correspondence between the gradient scheduling strategy and the quantity range.

[0057] Optionally, the gradient scheduling strategy can be a scheduling strategy that is pre-defined according to the number of different data blocks to be processed.

[0058] Optionally, the quantity range can be the range of the number of data blocks to be processed. For example, the quantity range can be 0-1, 1-10, 10-15, etc., and is not limited here.

[0059] Specifically, based on the pre-set correspondence between the gradient scheduling strategy and the quantity range, after obtaining the number of data blocks to be processed, the electronic device can determine the quantity range of the data blocks to be processed and perform resource scheduling on the voice consumption thread according to the gradient scheduling strategy corresponding to the quantity range.

[0060] Therefore, in this embodiment, the current interaction scenario can be monitored in real time. Then, if the current interaction scenario is a voice interaction scenario, the voice consumption thread is scheduled according to the default scheduling strategy. If the current interaction scenario is a non-voice interaction scenario, the number of data blocks to be processed is monitored in real time. Finally, according to the correspondence between the gradient scheduling strategy and the quantity range, the voice consumption thread is scheduled according to the gradient scheduling strategy corresponding to the quantity range of the number of data blocks to be processed. Thus, the voice consumption thread can be scheduled according to the corresponding gradient scheduling strategy based on the real-time monitoring of the number of data blocks to be processed, thereby improving resource utilization while ensuring the performance requirements of the voice consumption thread.

[0061] Optionally, the default scheduling strategy can be to bind the voice consumption thread to a performance core in the CPU resources and set the execution priority of the voice consumption thread to the first priority.

[0062] Among them, performance core binding processing can be the processing of performance cores (big cores) in the bound CPU resources.

[0063] Optionally, S120 may specifically include: when the current interaction scenario is a voice interaction scenario, binding the voice consumption thread to the performance core, and setting the execution priority of the voice consumption thread to the first priority.

[0064] Optionally, the first priority can be a pre-set priority. For example, the first priority can be -10.

[0065] Specifically, when an electronic device determines that the current interaction scenario is a voice interaction scenario, it can schedule resources for the voice consumption thread according to the default scheduling strategy, that is, bind the voice consumption thread to the performance core (big core) and set the execution priority of the voice consumption thread to the first priority (-10).

[0066] Optionally, the gradient scheduling strategy may include a first gradient scheduling strategy, which may involve binding the voice consumption thread to a performance core in the CPU resources and setting the execution priority of the voice consumption thread to a second priority.

[0067] Optionally, S140 may specifically include: when the number of data blocks to be processed falls within a first quantity range, determining the gradient scheduling strategy as the first gradient scheduling strategy; binding the voice consumption thread to the performance core, and setting the execution priority of the voice consumption thread to the second priority.

[0068] In this embodiment of the disclosure, the electronic device can determine the gradient scheduling strategy as the first gradient scheduling strategy when the number of data blocks to be processed falls within a first range.

[0069] Optionally, the first quantity range can be a preset range. For example, the first quantity range can be greater than 15.

[0070] Optionally, the first gradient scheduling strategy can be a gradient scheduling strategy corresponding to a first number range. The first gradient scheduling strategy can be binding performance cores for processing and setting a second priority for processing. For example, the second priority can be -16.

[0071] Specifically, when the electronic device determines that the number of data blocks to be processed falls within a first number range, i.e., when the number of data blocks to be processed (chunksize) is greater than 15, it determines that the gradient scheduling strategy is the first gradient scheduling strategy.

[0072] Furthermore, the electronic device can bind the voice consumption thread to the performance core according to the first gradient scheduling strategy, and set the execution priority of the voice consumption thread to the second priority (-16).

[0073] Optionally, the gradient scheduling strategy may include a second gradient scheduling strategy, which may involve binding the voice consumption thread to a performance core in the CPU resources and setting the execution priority of the voice consumption thread to the first priority.

[0074] Optionally, S140 may specifically include: when the number of data blocks to be processed falls within a second quantity range, determining the gradient scheduling strategy as the second gradient scheduling strategy; binding the voice consumption thread to the performance core, and setting the execution priority of the voice consumption thread to the first priority.

[0075] In this embodiment of the disclosure, the electronic device can determine the gradient scheduling strategy as the second gradient scheduling strategy when the number of data blocks to be processed falls within a second range.

[0076] Optionally, the second quantity range can be a preset range. For example, the second quantity range can be greater than 10 and less than or equal to 15.

[0077] Optionally, the second gradient scheduling strategy can be a gradient scheduling strategy corresponding to a second range of quantities. Specifically, the second gradient scheduling strategy can be binding performance cores for processing and setting a first priority for processing.

[0078] Specifically, when the electronic device determines that the number of data blocks to be processed falls within the second number range, that is, when the number of data blocks to be processed (chunksize) is greater than 10 and less than or equal to 15, it determines that the gradient scheduling strategy is the second gradient scheduling strategy.

[0079] Furthermore, the electronic device can bind the voice consumption thread to the performance core according to the second gradient scheduling strategy, and set the execution priority of the voice consumption thread to the first priority (-10).

[0080] Optionally, the gradient scheduling strategy may include a third gradient scheduling strategy, which may bind the voice consumption thread to a performance core of the CPU resource for processing.

[0081] Optionally, S140 may specifically include: when the number of data blocks to be processed falls within a third range, determining the gradient scheduling strategy as the third gradient scheduling strategy; and binding the voice consumption thread to the performance core.

[0082] In this embodiment of the disclosure, the electronic device can determine the gradient scheduling strategy as the third gradient scheduling strategy when the number of data blocks to be processed falls within a third range.

[0083] Optionally, the third quantity range can be a preset range. For example, the second quantity range can be greater than 1 and less than or equal to 10.

[0084] Optionally, the third gradient scheduling strategy can be a gradient scheduling strategy corresponding to a third range of quantities. Specifically, the third gradient scheduling strategy can be a performance-bound core processing strategy.

[0085] Specifically, when the electronic device determines that the number of data blocks to be processed falls within the third quantity range, that is, when the number of data blocks to be processed (chunksize) is greater than 1 and less than or equal to 10, it determines that the gradient scheduling strategy is the third gradient scheduling strategy.

[0086] Furthermore, electronic devices can bind voice consumption threads to performance cores according to the third-tier scheduling strategy.

[0087] In some embodiments, when the number of data blocks to be processed falls within a fourth range, for example, the fourth range can be greater than 0 and less than or equal to 1, the electronic device may not perform resource scheduling on the voice consumption thread.

[0088] Figure 2 A flowchart illustrating another resource scheduling method provided in an embodiment of this disclosure is shown.

[0089] like Figure 2As shown, the electronic device can monitor the current interaction scenario in real time. When the current interaction scenario is a voice interaction scenario, it performs resource scheduling on the voice consumption thread according to the default scheduling strategy. That is, when the current interaction scenario is a voice interaction scenario, the voice consumption thread is bound to the performance core (large core), and the execution priority of the voice consumption thread is set to the first priority (-10). Then, when the current interaction scenario is not a voice interaction scenario, it monitors the number of data blocks to be processed in real time. According to the correspondence between the gradient scheduling strategy and the number range, it performs resource scheduling on the voice consumption thread according to the gradient scheduling strategy corresponding to the number range of the number of data blocks to be processed. For example, when the electronic device determines that the number range of the number of data blocks to be processed is the first number range, that is, when the number of data blocks to be processed (chunksize) is greater than 15, it determines that the gradient scheduling strategy is the first gradient scheduling strategy. Furthermore, the electronic device can bind the voice consumption thread to the performance core according to the first gradient scheduling strategy, and set the execution priority of the voice consumption thread to the second priority (-16); when the electronic device determines that the number of data blocks to be processed falls within the second quantity range, that is, when the number of data blocks to be processed (chunksize) is greater than 10 and less than or equal to 15, the electronic device determines the gradient scheduling strategy to be the second gradient scheduling strategy. Furthermore, the electronic device can bind the voice consumption thread to the performance core according to the second gradient scheduling strategy, and set the execution priority of the voice consumption thread to the first priority (-10); when the electronic device determines that the number of data blocks to be processed falls within the third quantity range, that is, when the number of data blocks to be processed (chunksize) is greater than 1 and less than or equal to 10, the electronic device determines the gradient scheduling strategy to be the third gradient scheduling strategy. Furthermore, the electronic device can bind the voice consumption thread to the performance core according to the third-gradient scheduling strategy; when the number of data blocks to be processed is in the fourth range, for example, the fourth range can be greater than 0 and less than or equal to 1, the electronic device can not perform resource scheduling on the voice consumption thread, that is, not bind it to the performance core and not set a priority.

[0090] Figure 3 A flowchart illustrating another resource scheduling method provided in an embodiment of this disclosure is shown.

[0091] like Figure 3As shown, electronic devices can call the EapClient through the voice SDK. The EapClient integrates a voice performance checking algorithm, which, based on deep business customization, pre-judges the state information of language wake-up and interaction scenarios and sends triggers to evbrokerd. In evbrokerd, based on the state sent by the voice SDK, it matches the parameters in the scheduling configuration and sends the actual scheduling parameters to the schedule_actor in the Scene_actor to complete the CPU's setpriority, setaffinity, and boost scheduling strategies, thereby adjusting performance. After the scene adjustment is complete, the scene perceives the latest business state. Once performance meets the requirements, acceleration is revoked, and feedback is given to the next adjustment, ultimately forming a dynamic balance and achieving closed-loop feedback adjustment.

[0092] Figure 4 A schematic diagram of the structure of a resource scheduling device provided in an embodiment of this disclosure is shown.

[0093] In some embodiments of this disclosure, Figure 4 The resource scheduling device shown can be installed in an electronic device. Specifically, the electronic device may include, but is not limited to, mobile terminals such as computer equipment, mobile phones, in-vehicle equipment, vehicle controllers, tablet computers, and wearable devices.

[0094] like Figure 4 As shown, the resource scheduling device 400 may include a first monitoring module 410, a first scheduling module 420, a second monitoring module 430, and a second scheduling module 440.

[0095] The first monitoring module 410 can be used to monitor the current interaction scenario in real time.

[0096] The first scheduling module 420 can be used to schedule resources for the voice consumption thread according to the default scheduling strategy when the current interaction scenario is a voice interaction scenario.

[0097] The second monitoring module 430 can be used to monitor the number of data blocks to be processed in real time when the current interaction scenario is a non-voice interaction scenario.

[0098] The second scheduling module 440 can be used to schedule resources for the voice consumption thread according to the gradient scheduling strategy corresponding to the quantity range of the number of data blocks to be processed, based on the correspondence between the gradient scheduling strategy and the quantity range.

[0099] Therefore, in this embodiment, the current interaction scenario can be monitored in real time. Then, if the current interaction scenario is a voice interaction scenario, the voice consumption thread is scheduled according to the default scheduling strategy. If the current interaction scenario is a non-voice interaction scenario, the number of data blocks to be processed is monitored in real time. Finally, according to the correspondence between the gradient scheduling strategy and the quantity range, the voice consumption thread is scheduled according to the gradient scheduling strategy corresponding to the quantity range of the number of data blocks to be processed. Thus, the voice consumption thread can be scheduled according to the corresponding gradient scheduling strategy based on the real-time monitoring of the number of data blocks to be processed, thereby improving resource utilization while ensuring the performance requirements of the voice consumption thread.

[0100] In some embodiments of this disclosure, the default scheduling strategy is to bind performance cores for processing and set the first priority for processing.

[0101] In some embodiments of this disclosure, the first scheduling module 420 may specifically include a first processing unit.

[0102] The first processing unit can be used to bind the voice consumption thread to the performance core and set the execution priority of the voice consumption thread to the first priority when the current interaction scenario is a voice interaction scenario.

[0103] In some embodiments of this disclosure, the gradient scheduling strategy includes a first gradient scheduling strategy, which is to bind performance core processing and set a second priority processing.

[0104] In some embodiments of this disclosure, the second scheduling module 440 may specifically include a first determining unit and a second processing unit.

[0105] The first determining unit can be used to determine the gradient scheduling strategy as the first gradient scheduling strategy when the number of data blocks to be processed is within a first quantity range.

[0106] The second processing unit can be used to bind the voice consumption thread to the performance core and set the execution priority of the voice consumption thread to the second priority.

[0107] In some embodiments of this disclosure, the gradient scheduling strategy includes a second gradient scheduling strategy, which is to bind performance core processing and set a first priority processing.

[0108] In some embodiments of this disclosure, the second scheduling module 440 may specifically include a second determining unit and a third processing unit.

[0109] The second determining unit can be used to determine the gradient scheduling strategy as the second gradient scheduling strategy when the number of data blocks to be processed is within the second quantity range.

[0110] The third processing unit can be used to bind the voice consumption thread to the performance core and set the execution priority of the voice consumption thread to the first priority.

[0111] In some embodiments of this disclosure, the gradient scheduling strategy includes a third gradient scheduling strategy, which is a performance core binding process.

[0112] In some embodiments of this disclosure, the second scheduling module 440 may specifically include a third determining unit and a fourth processing unit.

[0113] The third determining unit can be used to determine the gradient scheduling strategy as the third gradient scheduling strategy when the number of data blocks to be processed is within the third quantity range.

[0114] The fourth processing unit can be used to bind the voice consumption thread to the performance core.

[0115] It should be noted that, Figure 4 The resource scheduling device 400 shown can perform... Figures 1 to 3 The various steps in the method embodiment shown are implemented. Figures 1 to 3 The various processes and effects in the method embodiments shown are not elaborated here.

[0116] Figure 5 A schematic diagram of the structure of a resource scheduling device provided in an embodiment of this disclosure is shown.

[0117] In some embodiments of this disclosure, Figure 5 The resource scheduling device shown can be an electronic device that the user wants to schedule resources for. Specifically, the electronic device can include, but is not limited to, mobile terminals such as mobile phones, in-vehicle devices, vehicle controllers, tablets, wearable devices, and smart home devices.

[0118] like Figure 5 As shown, the resource scheduling device may include a processor 501 and a memory 502 storing computer program instructions.

[0119] Specifically, the processor 501 may include a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.

[0120] Memory 502 may include a large-capacity storage for information or instructions. For example, and not limitingly, memory 502 may include a hard disk drive (HDD), a floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or a Universal Serial Bus (USB) drive, or a combination of two or more of these. Where appropriate, memory 502 may include removable or non-removable (or fixed) media. Where appropriate, memory 502 may be internal or external to the integrated gateway device. In a particular embodiment, memory 502 is a non-volatile solid-state memory. In a particular embodiment, memory 502 includes read-only memory (ROM). Where appropriate, the ROM may be a mask-programmed ROM, a programmable ROM (PROM), an erasable PROM (Electrically Programmable ROM, EPROM), an electrically erasable programmable PROM (EEPROM), an electrically alterable ROM (EAROM), or flash memory, or a combination of two or more of these.

[0121] The processor 501 performs the steps of the resource scheduling method provided in this embodiment by reading and executing computer program instructions stored in the memory 502.

[0122] In one example, the resource scheduling device may also include a transceiver 503 and a bus 504. Wherein, as... Figure 5 As shown, the processor 501, memory 502 and transceiver 503 are connected via bus 504 and communicate with each other.

[0123] Bus 504 may include hardware, software, or both. For example, and not limitingly, a bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Extended Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), a Hyper Transport (HT) interconnect, an Industrial Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a MicroChannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local Bus (VLB) bus, or other suitable buses, or a combination of two or more of these. Where appropriate, bus 504 may include one or more buses. Although specific buses are described and illustrated in the embodiments of this application, this application considers any suitable bus or interconnection.

[0124] This disclosure also provides a computer-readable storage medium that can store a computer program, which, when executed by a processor, enables the processor to implement the resource scheduling method provided in this disclosure.

[0125] The aforementioned storage medium may, for example, include a memory 502 containing computer program instructions, which can be executed by the processor 501 of the resource scheduling device to complete the resource scheduling method provided in this embodiment. Optionally, the storage medium may be a non-transitory computer-readable storage medium, such as a ROM, random access memory (RAM), compact disc ROM (CD-ROM), magnetic tape, floppy disk, and optical data storage device.

[0126] This disclosure also provides a vehicle including the resource scheduling device described above. It is understood that the vehicle may also include a processor, a memory, and a computer program. The computer program is stored in the memory and configured to be executed by the processor to implement the resource scheduling method provided in this disclosure. The processor and memory are already... Figure 5 The parts of the illustrated embodiments will not be repeated here.

[0127] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the term "comprising" is intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus.

[0128] The above description is merely a specific embodiment of this disclosure, enabling those skilled in the art to understand or implement it. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of this disclosure. Therefore, this disclosure is not to be limited to the embodiments described herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A resource scheduling method, characterized in that, include: Real-time monitoring of the current interaction scenario; When the current interaction scenario is a voice interaction scenario, the voice consumption thread is scheduled according to the default scheduling strategy. When the current interaction scenario is a non-voice interaction scenario, the number of data blocks to be processed is monitored in real time; Based on the correspondence between the gradient scheduling strategy and the quantity range, the voice consumption thread is scheduled according to the gradient scheduling strategy corresponding to the quantity range of the data blocks to be processed.

2. The method according to claim 1, characterized in that, The default scheduling strategy is to bind performance cores for processing and set them to the highest priority.

3. The method according to claim 2, characterized in that, When the current interaction scenario is a voice interaction scenario, resource scheduling is performed according to the default scheduling strategy, including: When the current interaction scenario is a voice interaction scenario, the voice consumption thread is bound to the performance core, and the execution priority of the voice consumption thread is set to the first priority.

4. The method according to claim 1, characterized in that, The gradient scheduling strategy includes a first gradient scheduling strategy, which is to bind performance cores for processing and set a second priority for processing. The step of scheduling resources according to the gradient scheduling strategy corresponding to the range of the number of data blocks to be processed includes: When the number of data blocks to be processed falls within a first range, the gradient scheduling strategy is determined to be the first gradient scheduling strategy. The voice consumption thread is bound to the performance core, and the execution priority of the voice consumption thread is set to the second priority.

5. The method according to claim 1, characterized in that, The gradient scheduling strategy includes a second gradient scheduling strategy, which is to bind performance cores for processing and set a first priority for processing. The step of scheduling resources according to the gradient scheduling strategy corresponding to the range of the number of data blocks to be processed includes: When the number of data blocks to be processed falls within the second range, the gradient scheduling strategy is determined to be the second gradient scheduling strategy. The voice consumption thread is bound to the performance core, and the execution priority of the voice consumption thread is set to the first priority.

6. The method according to claim 1, characterized in that, The gradient scheduling strategy includes a third gradient scheduling strategy, which is a performance core binding process. The step of scheduling resources according to the gradient scheduling strategy corresponding to the range of the number of data blocks to be processed includes: When the number of data blocks to be processed falls within the third range, the gradient scheduling strategy is determined to be the third gradient scheduling strategy. Bind the voice consumption thread to the performance core.

7. A resource scheduling device, characterized in that, include: The first monitoring module is used to monitor the current interaction scenario in real time. The first scheduling module is used to schedule resources for the voice consumption thread according to the default scheduling strategy when the current interaction scenario is a voice interaction scenario. The second monitoring module is used to monitor the number of data blocks to be processed in real time when the current interaction scenario is a non-voice interaction scenario. The second scheduling module is used to schedule resources for the voice consumption thread according to the gradient scheduling strategy corresponding to the quantity range of the number of data blocks to be processed, based on the correspondence between the gradient scheduling strategy and the quantity range.

8. A resource scheduling device, characterized in that, include: processor; Memory, used to store executable instructions; The processor is configured to read the executable instructions from the memory and execute the executable instructions to implement the resource scheduling method according to any one of claims 1-6.

9. A computer-readable storage medium, characterized in that, The storage medium stores a computer program that, when executed by a processor, causes the processor to implement the resource scheduling method according to any one of claims 1-6.

10. A vehicle, characterized in that, Includes the resource scheduling device as described in claim 7, the resource scheduling equipment as described in claim 8, or the computer-readable storage medium as described in claim 9.