METHOD AND APPARATUS FOR ADJUSTING COMPUTING RESOURCES AND INTELLIGENT DRIVING DEVICE - Patent application

Parallel dedicated and shared computing units in intelligent driving systems address resource insufficiency by dynamically adjusting to user needs, ensuring stable and efficient service execution.

JP2025537286APending Publication Date: 2025-11-14YINWANG INTELLIGENT TECHNOLOGIES CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025526804
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2022-11-10
Publication Date
2025-11-14

AI Technical Summary

Technical Problem

Existing computing resource allocation methods for central computing platforms in intelligent driving systems result in insufficient resources for some service domains, leading to decreased service processing capacity and instability due to preemption of computing units.

Method used

Introduce dedicated and shared computing units that run in parallel, allowing flexible adjustment based on user usage habits, with shared units allocated to meet demand and avoid preemption, and redeploy services to ensure stability and capacity.

Benefits of technology

Ensures stable and efficient service execution by dynamically adjusting computing resources, maintaining service processing capacity and avoiding resource preemption across domains.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025537286000001_ABST
    Figure 2025537286000001_ABST
Patent Text Reader

Abstract

A method and apparatus for adjusting computing resources and an intelligent driving device are provided. The computing resources include a dedicated computing unit and b shared computing units that run in parallel, and the a dedicated computing units are allocated to m service domains. The method includes the steps of: acquiring first usage data for each of the k service domains (S310); determining a first number of computing units required by a target service domain within the k service domains based on the first usage data for each of the k service domains (S320), where the k service domains are one or more of the m service domains; determining a third number of shared computing units to be allocated to the target service domain based on the first number and a second number of dedicated computing units allocated to the target service domain among the a dedicated computing units (S330); and allocating the third number of shared computing units to the target service domain (S340). According to this method, the computing resources within the target service domain can be adjusted based on user usage habits, thereby ensuring the service processing capacity of the target service domain.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present application relates to the field of intelligent driving technology, and more particularly to a method and apparatus for coordinating computing resources and an intelligent driving device. [Background technology]

[0002] Compared with the traditional independent operation mode of multiple service domains, a central computing platform can integrate computing resources of different service domains, thereby significantly saving resources and costs. For example, in the field of vehicles, the computing resources of service domains such as the intelligent driving domain, the vehicle control domain, and the cockpit domain are all deployed on a central computing platform, which divides the computing resources for each service domain and performs centralized computing.

[0003] Currently, the mainstream computing resource allocation solution is to virtualize the computing resources of a central computing platform before distribution, and then divide different computing resources into different service domains. However, if the computing resources are divided in advance, some service domains may have insufficient computing resources during the user's use of the vehicle, resulting in a decline in service processing capacity.

[0004] Therefore, how to ensure the service processing capacity of the central computing platform is an urgent problem to be solved. Summary of the Invention

[0005] The present application provides a method and apparatus for coordinating computing resources, and an intelligent driving device, to ensure the service processing capacity of a central computing platform.

[0006] According to a first aspect, there is provided a method for adjusting computing resources, the computing resources including a dedicated computing units and b shared computing units running in parallel, the a dedicated computing units being assigned to m service domains, where a, b, and m are all positive integers greater than or equal to 2. The method includes the steps of: acquiring first usage data for each of k service domains, the first usage data being data regarding usage of the service domains by users in a first past time period, the k service domains being one or more of the m service domains; determining a first number of computing units required by a target service domain within the k service domains based on the first usage data for each service domain; determining a third number of shared computing units that need to be assigned to the target service domain based on the first number and a second number of dedicated computing units assigned to the target service domain among the a dedicated computing units; and allocating the third number of shared computing units to the target service domain.

[0007] A dedicated computing unit is a computing unit dedicated to a service domain. After a dedicated computing units are assigned to m service domains, each of the a dedicated computing units is dedicated to the service domain to which the dedicated computing unit is assigned and will not be used in another service domain.

[0008] A shared computing unit is a computing unit that can be shared by multiple service domains and is not dedicated to a specific service domain. Shared computing unit A in b shared computing units is used as an example. Shared computing unit A may be assigned to a first service domain at a first time, and shared computing unit A may be assigned to a second service domain at a second time.

[0009] The a dedicated computing units may be allocated to the m service domains based on a preset ratio, which may be determined empirically by one skilled in the art.

[0010] In this application, a shared computing unit is introduced, so that in the process of a user using computing resources, the computing resources in the target service domain can be flexibly adjusted based on the shared computing unit, taking into account the user's usage habits. For example, if the dedicated computing units in the target service domain cannot meet the user's requirements, one or more shared computing units can be allocated to the target service domain based on the user's requirements. This ensures the service processing capacity of the target service domain and avoids preemption of dedicated computing units in other service domains when the target service domain has large computational requirements, thereby ensuring the stability of service execution in each service domain.

[0011] With reference to the first aspect, in some implementations of the first aspect, after the third number of shared computing units are allocated to the target service domain, the method further includes a step of grouping computing units in the target service domain based on prior information of the target service domain, where the prior information includes information about services deployed in the target service domain, and a step of redeploying the services in the target service domain after the grouping.

[0012] The information about the deployed service is the operators involved in each service in the deployed service and the number of computing units required by each operator.

[0013] In the present application, after the third number of shared computing units are allocated to the target service domain, the computing units in the target service domain may be grouped based on information about the services deployed in the target service domain, and the services are redeployed in the target service domain after grouping, thereby ensuring the continuity and stability of the execution of each service in the target service domain.

[0014] Referring to the first aspect, in some implementation forms of the first aspect, the step of grouping computing units in the target service domain based on prior information of the target service domain includes the steps of determining a grouping strategy set of computing units in the target service domain based on preset conditions, determining a target grouping strategy based on the prior information of the target service domain, where the target grouping strategy is a strategy in the grouping strategy set, and grouping the computing units in the target service domain according to the target grouping strategy.

[0015] In the present application, first, a grouping strategy set of computing units in a target service domain can be determined based on preset conditions, then a target grouping strategy is selected from the grouping strategy set based on prior information of the target service domain, and the computing units in the target service domain are grouped according to the target grouping strategy, thereby making it possible to more quickly and effectively determine the target grouping strategy and reduce useless execution time.

[0016] Referring to the first aspect, in some implementations of the first aspect, the preset condition is that the number of computing units included in each group is 2 or less. n and n is a positive integer greater than or equal to 1; the number of groups is less than or equal to the number of services that need to be deployed; the number of computing units in the first group is less than or equal to the number of computing units required by the first operator, the first group being the group with the largest number of computing units in the service domain, and the first operator being the operator that requires the largest number of computing units in the service that needs to be deployed; or the number of computing units in the second group is greater than or equal to the number of computing units required by the second operator, the second group being the group with the smallest number of computing units in the service domain, and the second operator being the operator that requires the smallest number of computing units in the service that needs to be deployed.

[0017] With reference to the first aspect, in some implementation forms of the first aspect, the step of determining a first number of computing units required by a target service domain in the k service domains based on the first usage data of each service domain includes the steps of determining user experience evaluation results of the k service domains based on the first usage data of each service domain, determining a corresponding computing unit requirement solution based on the user experience evaluation results, and determining the first number of computing units required by the target service domain based on the computing unit requirement solution.

[0018] In actual operation, the correspondence between different evaluation results and different requirement solutions can be preset based on a mapping table. On this basis, in the present application, the user experience evaluation results of k service domains can be first determined based on the first usage data of each service domain, and then the requirement solutions corresponding to the evaluation results are obtained by searching the mapping table, and then the number of computing units required by the target service domain is determined based on the requirement solutions.

[0019] With reference to the first aspect, in some implementations of the first aspect, the method further includes a step of acquiring second usage data for each of the k service domains, where the second usage data is data regarding use of the service domain by the user in a second past period, and a step of updating the number of computing units in the target service domain based on the second usage data.

[0020] In the present application, the number of computing units in the target service domain can be flexibly updated based on the user's usage habits in different periods, thereby ensuring the service processing capacity of the target service domain in different periods even if the user's usage habits change.

[0021] Referring to the first aspect, in some implementations of the first aspect, the first usage data and / or the second usage data include one or more of user operation data, response duration of a service operated by the user, a computing unit usage percentage of each service domain, and a usage score of the service.

[0022] The service usage score may be a score generated by a computing system based on the service execution status, or may be a score provided by a user based on the user's sense of experience.

[0023] Referring to the first aspect, in some implementations of the first aspect, the m service domains are located in a vehicle.

[0024] According to a second aspect, an apparatus for coordinating computing resources is provided. The computing resources include a dedicated computing units and b shared computing units running in parallel, where the a dedicated computing units are assigned to m service domains, where a, b, and m are all positive integers greater than or equal to two. The apparatus includes an acquisition module and a processing module. The acquisition module is configured to acquire first usage data for each of k service domains, where the first usage data is data regarding usage of the service domains by users in a first past time period, and the k service domains are one or more of the m service domains. The processing module is configured to: determine a first number of computing units required by a target service domain within the k service domains based on the first usage data for each service domain; determine a third number of shared computing units that need to be assigned to the target service domain based on the first number and a second number of dedicated computing units assigned to the target service domain among the a dedicated computing units; and allocate the third number of shared computing units to the target service domain.

[0025] With reference to the second aspect, in some implementations of the second aspect, the processing module is further configured to: group computing units in the target service domain based on prior information of the target service domain, where the prior information includes information about services deployed in the target service domain; and redeploy the services in the target service domain after the grouping.

[0026] Referring to the second aspect, in some implementation forms of the second aspect, the processing module is further configured to: determine a grouping strategy set of computing units in the target service domain based on preset conditions; determine a target grouping strategy based on prior information of the target service domain, where the target grouping strategy is a strategy in the grouping strategy set; and group the computing units in the target service domain according to the target grouping strategy.

[0027] Referring to the second aspect, in some implementations of the second aspect, the preset condition is that the number of computing units included in each group is 2 or less. n and n is a positive integer greater than or equal to 1; the number of groups is less than or equal to the number of services that need to be deployed; the number of computing units in the first group is less than or equal to the number of computing units required by the first operator, the first group being the group with the largest number of computing units in the service domain, and the first operator being the operator that requires the largest number of computing units in the service that needs to be deployed; or the number of computing units in the second group is greater than or equal to the number of computing units required by the second operator, the second group being the group with the smallest number of computing units in the service domain, and the second operator being the operator that requires the smallest number of computing units in the service that needs to be deployed.

[0028] With reference to the second aspect, in some implementation forms of the second aspect, the processing module is configured to determine user experience evaluation results of the k service domains based on first usage data of each service domain, determine corresponding computing unit requirement solutions based on the user experience evaluation results, and determine a first number of computing units required by the target service domain based on the computing unit requirement solutions.

[0029] With reference to the second aspect, in some implementations of the second aspect, the processing module is further configured to: acquire second usage data for each of the k service domains, where the second usage data is data regarding usage of the service domains by the user in a second past period; and update the number of computing units in the target service domain based on the second usage data.

[0030] Referring to the second aspect, in some implementations of the second aspect, the first usage data and / or the second usage data include one or more of user operation data, response duration of a service operated by the user, a computing unit usage percentage of each service domain, and a usage score of the service.

[0031] Referring to the second aspect, in some implementations of the second aspect, the m service domains are located in a vehicle.

[0032] Referring to the second aspect, in some implementations of the second aspect, the apparatus further includes a number of dedicated computing units and b number of shared computing units.

[0033] According to a third aspect, there is provided an apparatus for coordinating computing resources, the apparatus including an input / output interface, a processor, and a memory. The processor is configured to control the input / output interface to receive and transmit signals or information. The memory is configured to store a computer program. The processor is configured to call the computer program from the memory and execute the computer program, thereby enabling the apparatus for coordinating computing resources to perform the method for coordinating computing resources according to the first aspect or any one of the possible implementation forms of the first aspect.

[0034] According to a fourth aspect, there is provided a computer readable medium, the computer readable medium storing program code which, when executed on a computer, enables the computer to perform a method for coordinating computing resources according to the first aspect or any one of the possible implementations of the first aspect.

[0035] According to a fifth aspect, there is provided a computer program product comprising instructions which, when executed on a computer, cause a method for coordinating computing resources according to the first aspect or any one of the possible implementations of the first aspect to be performed.

[0036] According to a sixth aspect, there is provided a computing device including at least one processor and a memory, wherein the at least one processor is coupled to the memory and configured to read and execute instructions in the memory and to perform a method for coordinating computing resources according to the first aspect or any one of the possible implementations of the first aspect.

[0037] According to a seventh aspect, there is provided a chip including a circuit configured to perform a method for coordinating computing resources according to the first aspect or any one of the possible implementations of the first aspect.

[0038] According to an eighth aspect, there is provided an intelligent driving device including an apparatus for coordinating computing resources according to the second aspect or any one of the possible implementation forms of the second aspect, or including an apparatus for coordinating computing resources according to the third aspect. [Brief explanation of the drawings]

[0039] [Figure 1] 1 is a functional diagram of a vehicle 100 according to an embodiment of the present application. [Figure 2] FIG. 1 is a diagram of a vehicle's computing resource division. [Figure 3] 1 is a diagram of a method for coordinating computing resources according to an embodiment of the present application; [Figure 4] 1 is a diagram of a division of computing resources according to an embodiment of the present application; [Figure 5] 1 is a diagram of a method for a vehicle to coordinate computing resources according to an embodiment of the present application. [Figure 6] FIG. 2 is a diagram illustrating initializing computing resources of a vehicle according to an embodiment of the present application. [Figure 7] FIG. 2 is a diagram of coordinated computing resources according to an embodiment of the present application. [Figure 8] 1 is a diagram of a configuration of an apparatus for coordinating computing resources according to an embodiment of the present application; [Figure 9] 1 is a block diagram of a hardware structure of an apparatus for coordinating computing resources according to an embodiment of the present application; DETAILED DESCRIPTION OF THE INVENTION

[0040] The following describes the technical solutions of the embodiments in this application with reference to the accompanying drawings.

[0041] The solution of the present application may be applied to an intelligent driving device. The intelligent driving device may include a road vehicle, a water vehicle, an air vehicle, an industrial device, an agricultural device, an entertainment device, or the like. For example, the intelligent driving device may be a vehicle. A vehicle is a broad definition of a vehicle and may be a transportation tool (e.g., a commercial vehicle, a passenger car, a motorcycle, an aircraft, a train, etc.), an industrial vehicle (e.g., a forklift, a trailer, a tractor, etc.), a construction vehicle (e.g., an excavator, a bulldozer, a crane, etc.), an agricultural machine (e.g., a lawn mower, a harvester, etc.), an amusement device, a toy vehicle, or the like. The type of vehicle is not particularly limited in the present application. As another example, the intelligent driving device may be a transportation tool such as an airplane or a ship.

[0042] The solution of the present application may further be applied to devices such as servers, intelligent terminals, smart homes, and in-vehicle embedded devices, etc. For example, the solution of the present application may be applied to smartphones, desktop computers, notebook computers, tablet computers, wearable devices, robots, microcontroller units (MCUs), or electronic control units (ECUs).

[0043] Hereinafter, with reference to FIG. 1, an application scenario of the present application will be described using a vehicle as an example.

[0044] 1 is a functional diagram of a vehicle 100 according to an embodiment of the present application. It should be understood that FIG. 1 and the related description are merely examples, and that the actual vehicle is not limited thereto. As shown in FIG. 1, the vehicle 100 may include a sensing system 120 and a central computing platform 150.

[0045] Sensing system 120 may include one or more sensors that sense information about the environment surrounding vehicle 100. For example, sensing system 120 may include a positioning system, which may be a global positioning system (GPS), the Beidou system, or another positioning system, or an inertial measurement unit (IMU). As another example, sensing system 120 may further include one or more of a lidar, a millimeter wave radar, an ultrasonic radar, and a camera device.

[0046] The central computing platform 150 is configured to analyze and process data sensed by the sensing system 120 and control some or all of the functions of the vehicle 100. The central computing platform 150 includes computing resources, which may include multiple computing units running in parallel. To better address resource coordination among multiple service domains within the vehicle 100, the conventional mainstream technical solution mainly uses resource virtualization to allocate and use the computing resources of the central computing platform 150 to different service domains in a virtualized manner. For example, the service domains of the vehicle 100 include an intelligent driving domain, a vehicle control domain, and a cockpit domain. As shown in FIG. 2 , after virtualization, the computing resources of the central computing platform 150 can be allocated and used by these service domains. The division of the service domains is not limited in this application. The service domains of the vehicle 100 may alternatively be divided based on a power domain, a body domain, a chassis domain, an entertainment and information domain, and the like. For ease of explanation, the intelligent driving domain, the vehicle control domain, and the cockpit domain are mainly used as illustrative examples in this application.

[0047] In conventional solutions, computing resources allocated to each service domain based on the above-described method are dedicated to each service domain while the vehicle 100 is traveling. However, different users have different requirements and usage patterns for computing resources in each service domain, or even the same user may have different requirements and usage patterns for computing resources in each service domain over different periods. If computing resources are allocated in advance, some service domains may have insufficient computing resources during the user's use of the vehicle, resulting in a decline in service processing capacity. In addition, because autonomous driving solutions pursue reliability, when some service domains have insufficient computing resources, these service domains may preempt the computing resources of other service domains. As a result, computing resources of multiple service domains are preempted in a rotating manner. For example, if the cockpit domain performs a task requiring high computing power, the cockpit domain may preempt computing resources in the intelligent driving domain. This may result in insufficient computing power in the intelligent driving domain, directly affecting the enabled autonomous driving function and requiring the driver to take over.

[0048] In addition, the vehicle 100 needs to ensure stable execution of the intelligent driving domain and the cockpit domain of autonomous driving. If the computing resources of multiple service domains are directly and dynamically adjusted as a whole when the vehicle 100 is running (i.e., all computing units are directly reallocated based on the requirements of each service domain when the vehicle 100 is running), uncertainty will arise in the entire system, affecting the stability and security of the entire vehicle.

[0049] Based on this, a shared computing unit is introduced in this application, and computing resources can be flexibly adjusted based on the shared computing unit by referring to the user's usage habits, thereby ensuring the service processing capacity and service execution stability of the service domain.

[0050] 3 is a diagram of a method for coordinating computing resources according to an embodiment of the present application. The computing resources may be artificial intelligence (AI) computing resources, central processing unit (CPU) computing resources, graphics processing unit (GPU) computing resources, or the like. The computing resources include a dedicated computing units and b shared computing units that run in parallel, as shown in FIG. 4. In other words, the computing resources are divided into a dedicated computing units and b shared computing units that run in parallel. The a dedicated computing units are assigned to m service domains to provide computing power for the m service domains, where a, b, and m are all positive integers greater than or equal to 2.

[0051] A dedicated computing unit is a computing unit that is dedicated to a service domain. After a dedicated computing units are assigned to m service domains, each of the a dedicated computing units is dedicated to the service domain to which it is assigned and will not be used by another service domain. A shared computing unit is a computing unit that can be shared by multiple service domains and is not dedicated to a specific service domain. Use shared computing unit A in the b shared computing units as an example. Shared computing unit A may be assigned to a first service domain at a first time, and shared computing unit A may be assigned to a second service domain at a second time.

[0052] The a dedicated computing units may be allocated to the m service domains based on a preset ratio, which may be determined empirically by a person skilled in the art. For example, the method is applied to the field of vehicles. The m service domains may be located in a vehicle. For example, the m service domains may be an intelligent driving domain, a vehicle control domain, and a cockpit domain.

[0053] 3, the method 300 includes steps S310 to S340. These processes will be described in detail below.

[0054] S310: Obtain first usage data for each of k service domains, where the k service domains are one or more of the m service domains, and the first usage data is data regarding usage of the service domains by the user in a first past period.

[0055] In one implementation, first usage data for each of the m service domains may be obtained, and the first usage data is used to implement flexible adjustment of computing resources in each of the m service domains in the solution of the present application.

[0056] In another implementation, only first usage data for each of the portions of the service domain may be obtained, and the first usage data is used to implement flexible adjustment of computing resources in each of the portions of the service domain in the solution of the present application.

[0057] This portion of the service domains may be determined by the system. Specifically, the system may determine one or more of the m service domains whose computing resources are significantly affected by the user's usage habits. Using a vehicle as an example, the computing resources corresponding to the intelligent driving domain and the cockpit domain are significantly affected by the user's usage habits, while the computing resources in the vehicle control domain are only slightly affected by the user's usage habits. Therefore, in actual operation, the vehicle system may only acquire user usage data from the intelligent driving domain and the cockpit domain and adjust the resources in the two service domains based on the acquired user usage data, eliminating the need to adjust the computing resources in the vehicle control domain. Alternatively, this portion of the service domains may be selected and determined by the user. Specifically, the user may select a portion of the m service domains as the target for flexible adjustment based on the user's usage of the service domains. Using a vehicle as an example, if the user frequently uses the cockpit domain or has high requirements for service processing in the cockpit domain, the user may determine the cockpit domain as the target for flexible adjustment. Alternatively, a portion of the service domains may be predetermined by a person skilled in the art based on experience.

[0058] The first usage data may include one or more of user operation data, a response duration of a service operated by the user, a computing unit usage ratio of each service domain, a usage score of the service, and the like. The user operation data may be, for example, the number of times a service is started based on a user operation. The response duration of a service operated by the user may be understood as the response duration of a service started based on a user operation. The computing unit usage ratio of each service domain is the ratio of computing units used by each service domain to the computing units included in each service domain. The usage score of the service may be, for example, a score generated by a computing system based on a service execution status, or a score provided by a user based on the user's experience.

[0059] Based on step S310, the number (or percentage) of computing units required by each of the k service domains (where the percentage is the ratio of the number of computing units required by each service domain to the total number of computing units, and the total number of computing units is the sum of the a dedicated computing units and the b shared computing units) can be determined based on the first usage data of each of the k service domains. Then, based on the number (or percentage) of computing units required by each service domain and the number of dedicated computing units allocated to each service domain, the number (or percentage) of computing units in each service domain is adjusted based on the b shared computing units. The aforementioned number (or percentage) of required computing units can be understood as the number (or percentage) of computing units that can meet the actual service scenario.

[0060] For ease of explanation, the following only uses the target service domain among the k service domains as an example to describe adjusting the number of computing units in the target service domain (see steps S320 to S340). For other service domains, please refer to the description of the target service domain.

[0061] S320: Determine a first number of computing units required by a target service domain among the k service domains based on first usage data of each service domain.

[0062] Specifically, first, user experience evaluation results of k service domains can be determined based on the first usage data of each service domain, then corresponding computing unit requirement solutions are determined based on the user experience evaluation results, and then a first number of computing units required by the target service domain is determined based on the computing unit requirement solutions.

[0063] It should be understood that the user experience evaluation result is an evaluation result obtained by combining the first usage data of each of the k service domains, and the evaluation result may be, for example, an evaluation score. The requirements solution determined based on the user experience evaluation result may include the number of computing units required by each of the k service domains. The number of computing units required by a target service domain within the k service domains (i.e., the first number) may be determined based on the requirements solution.

[0064] In actual operation, the correspondence between different evaluation results and different requirement solutions can be preset based on a mapping table. On this basis, in the present application, the user experience evaluation results of k service domains can be first determined based on the first usage data of each service domain, and then the requirement solutions corresponding to the evaluation results are obtained by searching the mapping table, and then the number of computing units required by the target service domain is determined based on the requirement solutions.

[0065] Optionally, the first number of computing units required by the target service domain may be determined based on user usage data, or the first number of computing units required by the target service domain may be determined based on a service status of the target service domain. The service status may be, for example, a video playback status, a multi-application extension status, or an intelligent driving enable / disable status. For ease of explanation, the following mainly uses user usage data as an example for explanation.

[0066] S330: Among the b shared computing units, determine a third number of shared computing units that need to be allocated to the target service domain based on the first number and a second number of dedicated computing units among the a dedicated computing units that are allocated to the target service domain.

[0067] S340: Allocate a third number of shared computing units to the target service domain.

[0068] In other words, the number of shared computing units that need to be allocated to the target service domain is determined based on the difference between the number of computing units required by the target service domain and the number of dedicated computing units that are allocated to the target service domain, and then the shared computing units are allocated to the target service domain based on the determined number.

[0069] In this application, a shared computing unit is introduced, so that in the process of a user using computing resources, the computing resources in the target service domain can be flexibly adjusted based on the shared computing unit, taking into account the user's usage habits. For example, if the dedicated computing units in the target service domain cannot meet the user's requirements, a shared computing unit can be allocated to the target service domain based on the user's requirements. This ensures the service processing capacity of the target service domain and avoids preemption of dedicated computing units in other service domains when the target service domain has large computational requirements, thereby ensuring the stability of service execution in each service domain.

[0070] After the number of computing units in the target service domain is adjusted, it is further necessary to redeploy the services in the target service domain, which can ensure the service execution stability and service processing capacity of the target service domain.

[0071] It should be noted that a service may alternatively be understood as a computing task. A computing task includes one or more operators (OP), and an operator needs to use one or more computing units to complete the associated computing task. An operator may be understood as a computation function, and an operator may implement one step of the computation of a computing task. Correspondingly, the basic unit used by a computing resource is a group, and each group may include one or more computing units, and each group is used to execute the computing task of the operator.

[0072] Based on this, in the present application, after the number of computing units in the target service domain is adjusted, the computing units in the target service domain need to be grouped first, and then the services are redeployed in the target service domain after grouping, thereby ensuring the continuity and stability of the execution of each service in the target service domain.

[0073] In one implementation, the computing units in the target service domain may be grouped based on prior information of the target service domain, where the prior information includes information about services deployed in the target service domain, and the information about the deployed services indicates the operators included in each service in the previously deployed services and the number of computing units required by each operator.

[0074] Optionally, in the present application, a grouping strategy set of computing units in a target service domain may be determined based on preset conditions first, and then a target grouping strategy is selected from the grouping strategy set based on prior information of the target service domain, and the computing units in the target service domain are grouped according to the target grouping strategy. Compared with grouping directly based on prior information, the target grouping strategy can be determined more quickly and effectively, and unnecessary execution time can be reduced.

[0075] Optionally, in the present application, a grouping strategy set of computing units in a target service domain may be determined based on preset conditions, then a target grouping strategy is determined by searching the grouping strategy set, and the computing units in the target service domain are grouped according to the target grouping strategy. Optionally, the search may be performed in the following manner: performing simulated grouping according to each grouping strategy in the grouping strategy set, performing simulated service deployment and simulated execution for each simulated group, and determining a target grouping strategy based on the processing capacity and service stability of the service in the simulated execution.

[0076] The predefined condition is that each group must contain 2 or more computing units. nwhere n is a positive integer greater than or equal to 1; the number of groups being less than or equal to the number of services that need to be deployed; the number of computing units in the first group being less than or equal to the number of computing units required by the first operator, the first group being a group including the largest number of computing units in a service domain, and the first operator being an operator that requires the largest number of computing units in a service that needs to be deployed; or the number of computing units in the second group being greater than or equal to the number of computing units required by the second operator, the second group being a group including the smallest number of computing units in a service domain, and the second operator being an operator that requires the smallest number of computing units in a service that needs to be deployed. It should be understood that the preset conditions may alternatively be determined with reference to actual situations, and are not limited to the preset conditions listed above.

[0077] Because the same user may have different usage habits in different time periods, the method 300 may further include: acquiring second usage data for each of the k service domains, where the second usage data is data regarding the user's use of the service domain in a second past time period; and updating the number of computing units in the target service domain based on the second usage data. In this way, the number of computing units in the target service domain is flexibly updated based on the user's usage habits in different time periods, thereby ensuring the service processing capacity of the target service domain in different time periods even if the user's usage habits change.

[0078] The second usage data may also include one or more of the following: user operation data, response duration of services operated by the user, computing unit usage percentage of each service domain, service usage score, and the like. For details, see the above description of the first usage data.

[0079] In practice, the number of computing units in the target service domain may be continuously updated according to the aforementioned method based on a preset frequency. The preset frequency may be, for example, every hour, 12 hours, every day, every week, or every month. Alternatively, the number may be updated when the system detects that the user's usage habits have changed or that an obvious change has occurred. Alternatively, the update may be actively triggered by the user based on the user's requirements. This is not a limitation of the present application. In practice, if the number of computing units in the target service domain is continuously updated based on a preset frequency, the update may be stopped when the number of computing units in the target service domain tends to be stable.

[0080] The past period can be a period prior to the present time, for example, up to a few hours or days prior to the present time.

[0081] Hereinafter, with reference to FIGS. 5 to 7, the solution of the present application will be described by using the method for a vehicle to adjust computing resources as an example.

[0082] 5 is a diagram of a method for a vehicle to adjust computing resources according to an embodiment of the present application. As shown in FIG. 5, the method 500 includes steps S510 to S550. Each process will be described below.

[0083] S510: Initialize the vehicle's computing resources.

[0084] Initially, the vehicle's computing resources may be configured to include multiple dedicated computing units and multiple shared computing units running in parallel, with the multiple dedicated computing units being assigned to multiple actual service domains and the service domains shared by the shared computing units being determined.

[0085] For example, as shown in FIG. 6, in an initial state, the vehicle's computing resources are configured to include eleven dedicated computing units {0, 1, 2, 3, 4, 5, 6, 7, 11, 12, 13} and three shared computing units {8, 9, 10}. Of the eleven dedicated computing units {0, 1, 2, 3, 4, 5, 6, 7, 11, 12, 13}, two dedicated computing units {0, 1} are assigned to the vehicle control domain and provide computing capability to the vehicle control domain. Six dedicated computing units {2, 3, 4, 5, 6, 7} are assigned to the intelligent driving domain and provide computing capability to the intelligent driving domain. Three dedicated computing units {11, 12, 13} are assigned to the cockpit domain and provide computing capability to the cockpit domain. In addition, three shared computing units {8, 9, 10} are configured to be shared between the intelligent driving domain and the cockpit domain. In other words, the shared computing unit is mainly used to flexibly adjust the computing resources in the cockpit domain and the intelligent driving domain. It should be understood that the above number of computing units and service domains is used only as an example and does not constitute a limitation on the solution of the present application. For ease of explanation, steps S520 to S560 will be described based on this example.

[0086] Optionally, the initialization of the aforementioned computing resources may be completed when the vehicle is shipped from the factory, or the initialization may be performed by an expert based on the user's requirements after the user purchases the vehicle, but this is not limited thereto.

[0087] S520: Obtain user usage data in the cockpit domain and the intelligent driving domain.

[0088] During the vehicle driving process, user usage data in the cockpit domain and the intelligent driving domain in the past period can be obtained.

[0089] For example, for the cockpit domain, the number of times a user tapped an application in the cockpit in the past period, the response duration of the application tapped by the user in the past period, and the computing unit usage percentage of the cockpit domain in the past period may be obtained.

[0090] For example, for the intelligent driving domain, the number of times the intelligent driving function was enabled by the user in the past period, the number of user handovers in the past period, the score of the intelligent driving function in the driving period, and the computing unit usage rate of the intelligent driving domain in the past period may be obtained.

[0091] S530: Adjust the number of computing units in the cockpit domain and the intelligent driving domain based on user usage data.

[0092] First, a user experience evaluation score can be determined based on user usage data in the cockpit domain and the intelligent driving domain, then a computing unit requirement solution corresponding to the evaluation score is determined based on a pre-set mapping table, where the requirement solution includes the number of computing units required by each of the cockpit domain and the intelligent driving domain, and then the number of computing units in the cockpit domain and the intelligent driving domain is adjusted via a shared computing unit based on the number of existing dedicated computing units in the cockpit domain and the intelligent driving domain and the number of computing units required by the cockpit domain and the intelligent driving domain.

[0093] Using the usage data listed in step S520 as an example, the user experience evaluation score can be determined in the following manner: first, based on the number of times the user taps on applications in the cockpit in the past period, obtain the number of times the user taps on applications in the cockpit in a unit time; based on the response duration of the applications tapped by the user in the past period, obtain the response duration of the applications in the unit time; based on the computing unit usage rate of the cockpit domain in the past period, obtain the average computing unit usage rate of the cockpit domain; based on the number of times the intelligent driving function is enabled in the unit time, obtain the number of times the intelligent driving function is enabled in the unit time; based on the number of user handovers in the past period, obtain the average score (or validity score) of the intelligent driving function in the driving period based on the score of the intelligent driving function in the driving period; and based on the computing unit usage rate of the intelligent driving domain in the past period, obtain the average computing unit usage rate of the intelligent driving domain; then standardize or normalize the obtained data, and perform weighted summation on the standardized or normalized data to obtain an evaluation score. The unit time may be one hour, one day, one week, one month, or the like.

[0094] In one implementation, the preset mapping table may include a correspondence between different score ranges and different requirement solutions, for example, if the evaluation score is a first value, the first value is within the first score range and it is determined that the first score range corresponds to the first requirement solution, or if the evaluation score is a second value, the second value is within the second score range and it is determined that the second score range corresponds to the second requirement solution.

[0095] S540: Regroup computing units in the cockpit domain and the intelligent driving domain.

[0096] Specifically, after the number of computing units in the cockpit domain and the intelligent driving domain is adjusted, a grouping strategy set for the computing units in the cockpit domain and the intelligent driving domain can be determined based on preset conditions, and then a target grouping strategy is determined from the grouping strategy set, and the computing units in the cockpit domain and the intelligent driving domain are grouped separately according to the target grouping strategy. Please refer to the above description for the preset conditions and the manner of determining the target grouping strategy in the grouping strategy set.

[0097] In one example, as shown in Figure 7(a), it is assumed that the number of computing units in the coordinated intelligent driving domain is 6, for example, computing units {2, 3, 4, 5, 6, 7}, and the number of computing units in the cockpit domain is also 6, for example, computing units {8, 9, 10, 11, 12, 13}. If the number of computing units in each group is 2, nIf it is necessary to set the number of computing units as follows, the grouping strategy set for the intelligent driving domain may include two grouping strategies. In the first grouping strategy, six computing units are divided into three groups, each including two computing units. For example, group 1 includes computing units {2,3}, group 2 includes computing units {4,5}, and group 3 includes computing units {6,7}. In the second grouping strategy, six computing units are divided into two groups. Group 1 includes two computing units, for example, computing units {2,3}, and group 2 includes four computing units, for example, computing units {4,5,6,7}. In the cockpit domain, the grouping strategy set may include two grouping strategies. In the first grouping strategy, six computing units are divided into three groups, each including two computing units. For example, group 1 includes computing units {8,9}, group 2 includes computing units {10,11}, and group 3 includes computing units {12,13}. In the second grouping strategy, six computing units are divided into two groups. Group 1 includes two computing units, e.g., computing unit {8,9}, and group 2 includes four computing units, e.g., computing units {10,11,12,13}.

[0098] In another example, as shown in Figure 7(b), it is assumed that the number of computing units in the coordinated intelligent driving domain is 8, for example, computing units {2, 3, 4, 5, 6, 7, 8, 9}, and the number of computing units in the cockpit domain is 4, for example, computing units {10, 11, 12, 13}. If the number of computing units in each group is 2, nIf it is necessary to set the grouping strategies for the intelligent driving domain as follows, the grouping strategy set for the intelligent driving domain may include four grouping strategies. In the first grouping strategy, the eight computing units are divided into four groups, each including two computing units. For example, group 1 includes computing units {2,3}, group 2 includes computing units {4,5}, group 3 includes computing units {6,7}, and group 4 includes computing units {8,9}. In the second grouping strategy, the eight computing units are divided into two groups. Group 1 includes four computing units, for example, computing units {2,3,4,5}, and group 2 includes four computing units, for example, computing units {6,7,8,9}. In the third grouping strategy, the eight computing units are divided into three groups. Group 1 includes two computing units, e.g., computing unit {2, 3}, group 2 includes four computing units, e.g., computing unit {4, 5, 6, 7}, and group 3 includes two computing units, e.g., computing unit {8, 9}. In a fourth grouping strategy, eight computing units are assigned (divided) into one group, and the group includes eight computing units, e.g., computing units {2, 3, 4, 5, 6, 7, 8, 9}. The grouping strategy set for the cockpit domain may include two grouping strategies. In a first grouping strategy, four computing units are divided into two groups, and each group includes two computing units. For example, group 1 includes computing unit {10, 11}, and group 2 includes computing unit {12, 13}. In a second grouping strategy, four computing units are assigned to one group, and the group includes four computing units, e.g., computing units {10, 11, 12, 13}.

[0099] S550: Deploy the services. In other words, redeploy the services in the cockpit domain and the intelligent driving domain after grouping, to ensure the service execution stability and service processing capability in the cockpit domain and the intelligent driving domain.

[0100] S560: Update the number of computing units in the cockpit domain and the intelligent driving domain.

[0101] Specifically, while the vehicle is running, user usage data in the cockpit domain and the intelligent driving domain can be continuously collected, and based on the collected usage data, the number of computing units in the cockpit domain and the intelligent driving domain are updated separately, and after the update, the computing units in the cockpit domain and the intelligent driving domain are grouped and deployed separately.

[0102] 8 is a diagram of a configuration of an apparatus for coordinating computing resources according to an embodiment of the present application. The computing resources include a dedicated computing units and b shared computing units that run in parallel, and the a dedicated computing units are assigned to m service domains. The apparatus 800 includes an acquisition module 810 and a processing module 820. Optionally, the apparatus further includes a dedicated computing units and b shared computing units.

[0103] The acquisition module 810 is configured to acquire first usage data for each of the k service domains, the first usage data being data regarding use of the service domain by the user in a first past period, and the k service domains being one or more of the m service domains.

[0104] The processing module 820 is configured to: determine a first number of computing units required by a target service domain among the k service domains based on first usage data of each service domain; determine a third number of shared computing units that need to be allocated to the target service domain among the b shared computing units based on the first number and a second number of dedicated computing units allocated to the target service domain among the a dedicated computing units; and allocate the third number of shared computing units to the target service domain.

[0105] Optionally, the processing module 820 may be further configured to group computing units in the target service domain based on prior information of the target service domain, where the prior information includes information about services deployed in the target service domain, and redeploying the services in the target service domain after the grouping.

[0106] Optionally, the processing module 820 may be further configured to: determine a set of grouping strategies for computing units in the target service domain based on preset conditions; determine a target grouping strategy based on prior information of the target service domain, where the target grouping strategy is a strategy in the grouping strategy set; and group the computing units in the target service domain according to the target grouping strategy.

[0107] Optionally, the pre-configured condition is that each group contains two or more computing units. nthe number of groups is less than or equal to the number of services that need to be deployed; the number of computing units in the first group is less than or equal to the number of computing units required by the first operator, the first group being the group that includes the largest number of computing units in the service domain, and the first operator being the operator that requires the largest number of computing units in the service that needs to be deployed; or the number of computing units in the second group is greater than or equal to the number of computing units required by the second operator, the second group being the group that includes the smallest number of computing units in the service domain, and the second operator being the operator that requires the smallest number of computing units in the service that needs to be deployed.

[0108] Optionally, the processing module 820 may be configured to: determine a user experience evaluation result of the k service domains based on the first usage data of each service domain; determine a corresponding computing unit requirement solution based on the user experience evaluation result; and determine a first number of computing units required by the target service domain based on the computing unit requirement solution.

[0109] Optionally, the processing module 820 may be further configured to obtain second usage data for each of the k service domains, where the second usage data is data regarding usage of the service domain by the user in a second past period, and update the number of computing units in the target service domain based on the second usage data.

[0110] Optionally, the first usage data and / or the second usage data may include one or more of user operation data, response duration of services operated by the user, computing unit usage percentage of each service domain, and usage score of the service.

[0111] Optionally, the m service domains may be located in a vehicle. The device is an in-vehicle computing platform.

[0112] 9 is a block diagram of a hardware structure of an apparatus for coordinating computing resources according to an embodiment of the present application. Optionally, the apparatus 900 may specifically be a computer device. The apparatus 900 includes a memory 910, a processor 920, and a communication interface 930. The memory 910, the processor 920, and the communication interface 930 may implement intercommunication connection via a bus.

[0113] The memory 910 may be a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 910 may store a program. When the program stored in the memory 910 is executed by the processor 920, the processor 920 is configured to perform steps of the method 300 or 500 for coordinating computing resources in the embodiment of the present application.

[0114] The processor 920 may be a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), a graphics processing unit (GPU), or one or more integrated circuits, and is configured to execute associated programs to perform the method 300 or 500 for coordinating computing resources in the method embodiments of the present application.

[0115] The processor 920 may be an integrated circuit chip and has signal processing capabilities. In the implementation process, the method 300 or 500 for coordinating computing resources in the present application may be implemented by using instructions in the form of integrated logic circuits of hardware or software in the processor 920.

[0116] The communication interface 930 facilitates communication between the apparatus 900 and another device or communication network using a transceiver device, for example, but not limited to, a transceiver.

[0117] An embodiment of the present application further provides a computer-readable storage medium containing instructions that, when executed on a computer, enable the computer to perform the aforementioned method 300 or 500 for coordinating computing resources.

[0118] An embodiment of the present application further provides a computer program product including instructions, which, when executed on a computer, perform the aforementioned method 300 or 500 for coordinating computing resources.

[0119] An embodiment of the present application further provides a computing device including at least one processor and a memory, wherein the at least one processor is coupled to the memory and configured to read and execute instructions in the memory to perform the aforementioned method 300 or 500 for coordinating computing resources.

[0120] An embodiment of the present application further provides a chip, which includes a processor and a data interface, wherein the processor reads instructions stored in a memory through the data interface and performs the aforementioned method 300 or 500 for coordinating computing resources, or the chip performs the aforementioned method 300 or 500 for coordinating computing resources through a hardware circuit.

[0121] An embodiment of the present application further provides an intelligent driving device, including the aforementioned apparatus 800 and / or apparatus 900 for coordinating computing resources.

[0122] Those skilled in the art may recognize that the present application may be implemented by electronic hardware or a combination of computer software and electronic hardware in combination with the example units and algorithm steps described in the embodiments disclosed herein. Whether a function is performed by hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art may use different methods to implement the described functions for each specific application, but the implementation form should not be considered to go beyond the scope of the present application.

[0123] For the sake of convenient and concise description, it can be clearly understood by those skilled in the art that for the detailed operation processes of the aforementioned systems, devices, and units, please refer to the corresponding processes in the aforementioned method embodiments, and the details will not be described again here.

[0124] In some embodiments provided in this application, it should be understood that the disclosed systems, devices, and methods may be implemented in other manners. For example, the described device embodiments are merely examples. For example, the division into units is merely a logical functional division, and in actual implementation, other divisions may be used. For example, multiple units or components may be combined or integrated into another system, and some features may be omitted or not implemented. In addition, the shown or described mutual couplings or direct couplings or communication connections may be implemented by using some interfaces. Indirect couplings or communication connections between devices or units may be implemented in electronic, mechanical, or other forms.

[0125] The units described as separate parts may or may not be physically separate, and the parts shown as units may or may not be physical units, and may be located in one location or distributed over multiple network units. Some or all of the units may be selected based on actual requirements to achieve the objectives of the solutions of the embodiments.

[0126] In addition, the functional units in the embodiments of the present application may be integrated into one processing unit, or each of the units may exist physically alone, or two or more units may be integrated into one unit.

[0127] The above description is merely a specific embodiment of the present application and is not intended to limit the scope of protection of the present application. Any variations or replacements that can be easily conceived by those skilled in the art within the technical scope disclosed in the present application shall fall within the scope of protection of the present application. Therefore, the scope of protection of the present application shall be subject to the scope of protection of the claims.

Claims

1. 1. A method for coordinating computing resources, the computing resources including a dedicated computing units and b shared computing units running in parallel, the a dedicated computing units being assigned to m service domains, a, b, and m all being positive integers greater than or equal to 2, the method comprising: obtaining first usage data for each of k service domains, the first usage data being data regarding usage of the service domains by a user during a first past time period, the k service domains being one or more of the m service domains; determining a first number of computing units required by a target service domain within the k service domains based on the first usage data of each service domain; determining a third number of shared computing units that need to be allocated to the target service domain based on the first number of the b shared computing units and a second number of dedicated computing units that are allocated to the target service domain among the a dedicated computing units; allocating the third number of shared computing units to the target service domain; A method comprising:

2. After the step of allocating the third number of shared computing units to the target service domain, the method further comprises: grouping computing units in the target service domain based on prior information of the target service domain, the prior information including information about services deployed in the target service domain; redeploying the services in the target service domain after grouping; The method of claim 1 further comprising:

3. The step of grouping computing units in the target service domain based on prior information of the target service domain includes: determining a set of grouping strategies for the computing units in the target service domain based on preset conditions; determining a target grouping strategy based on the prior information of the target service domain, the target grouping strategy being a strategy in the set of grouping strategies; grouping the computing units in the target service domain according to the target grouping strategy; The method of claim 2 , comprising:

4. The preset conditions are: The number of computing units in each group is 2. n and n is a positive integer equal to or greater than 1; The number of groups is less than or equal to the number of services that need to be deployed, the number of computing units in the first group is less than or equal to the number of computing units required by a first operator, the first group being the group containing the largest number of computing units in a service domain, and the first operator being the operator requiring the largest number of computing units in the service that needs to be deployed; or The number of computing units in the second group is equal to or greater than the number of computing units required by the second operator, the second group being a group including the smallest number of computing units in a service domain, and the second operator being an operator requiring the smallest number of computing units in a service that needs to be deployed. The method of claim 3 , comprising at least one of:

5. determining a first number of computing units required by a target service domain within the k service domains based on the first usage data of each service domain, determining a user experience evaluation result for the k service domains based on the first usage data for each service domain; determining a corresponding computing unit requirement solution based on the user experience evaluation result; determining a first number of computing units required by the target service domain based on the computing unit requirements solution; 5. The method of claim 1, comprising:

6. obtaining second usage data for each of the k service domains, the second usage data being data regarding usage of the service domains by the user during a second past time period; updating a number of computing units in the target service domain based on the second usage data; 6. The method of claim 1, further comprising:

7. the first usage data and / or the second usage data, one or more of the user's operation data, the response duration of the service operated by the user, the computing unit usage rate of each service domain, and the service usage score; The method of claim 6, comprising:

8. The method of claim 1 , wherein the m service domains are located in a vehicle.

9. An apparatus for coordinating computing resources, the computing resources including a dedicated computing units and b shared computing units running in parallel, the a dedicated computing units being assigned to m service domains, a, b, and m all being positive integers greater than or equal to 2, the apparatus including: an acquisition module; and a processing module; the acquiring module is configured to acquire first usage data for each of k service domains, the first usage data being data regarding usage of the service domains by a user in a first past time period, the k service domains being one or more of the m service domains; The processing module is configured to: determine a first number of computing units required by a target service domain within the k service domains based on the first usage data of each service domain; determine a third number of shared computing units that need to be allocated to the target service domain based on the first number among the b shared computing units and a second number of dedicated computing units allocated to the target service domain among the a dedicated computing units; and allocate the third number of shared computing units to the target service domain. Device.

10. The processing module includes: grouping computing units in the target service domain based on prior information of the target service domain, the prior information including information about services deployed in the target service domain; redeploying the services within the target service domain after grouping; The apparatus of claim 9 , further configured to:

11. The processing module includes: determining a set of grouping strategies for the computing units in the target service domain based on preset conditions; determining a target grouping strategy based on the prior information of the target service domain, the target grouping strategy being a strategy in the set of grouping strategies; grouping the computing units in the target service domain according to the target grouping strategy; The apparatus of claim 10 , further configured to:

12. The preset conditions are: The number of computing units in each group is 2. n and n is a positive integer equal to or greater than 1; The number of groups is less than or equal to the number of services that need to be deployed, the number of computing units in the first group is less than or equal to the number of computing units required by a first operator, the first group being the group containing the largest number of computing units in a service domain, and the first operator being the operator requiring the largest number of computing units in the service that needs to be deployed; or The number of computing units in the second group is equal to or greater than the number of computing units required by the second operator, the second group being a group including the smallest number of computing units in a service domain, and the second operator being an operator requiring the smallest number of computing units in a service that needs to be deployed. The apparatus of claim 11 , comprising at least one of:

13. The processing module includes: determining a user experience evaluation result for the k service domains based on the first usage data for each service domain; determining a corresponding computing unit requirement solution based on the user experience evaluation result; determining a first number of computing units required by the target service domain based on the computing unit requirements solution; and 13. The apparatus of claim 9, configured to:

14. The processing module includes: acquiring second usage data for each of the k service domains, the second usage data being data regarding usage of the service domains by the user during a second past time period; and updating a number of computing units in the target service domain based on the second usage data.

14. The apparatus of claim 9, further configured to:

15. the first usage data and / or the second usage data, one or more of the user's operation data, the response duration of the service operated by the user, the computing unit usage rate of each service domain, and the service usage score; 15. The apparatus of claim 14, comprising:

16. The apparatus of claim 9 , wherein the m service domains are located in a vehicle.

17. The apparatus of claim 9 , further comprising the a dedicated computing units and the b shared computing units.

18. 9. An apparatus for coordinating computing resources, comprising: an input / output interface; a processor; and a memory, wherein the processor is configured to control the input / output interface to receive and send signals or information; the memory is configured to store a computer program; and the processor is configured to call the computer program from the memory and execute the computer program, thereby enabling the apparatus for coordinating computing resources to perform a method for coordinating computing resources according to any one of claims 1 to 8.

19. An intelligent driving device comprising an apparatus for coordinating computing resources according to any one of claims 9 to 18.