Onboard computing load balancing system, method, storage medium, and vehicle

CN116244057BActive Publication Date: 2026-10-20SAIC GENERAL MOTORS +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111483508.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-07
Publication Date
2026-10-20
Estimated Expiration
2041-12-07

AI Technical Summary

Technical Problem

这些传感器对车载计算平台带来了新的挑战,比如处理实时性高,不得不使用多个计算子板并行处理各类传感器数据;比如数据被多个乘用车软件模块使用,不得不使用特定的机制来共享传感器数据

Benefits of technology

[0017]根据本发明的一个或多个方面的实施例创新地提出了车载计算集群的概念,将多个计算子板组合在一起形成车载计算集群,通过车载计算集群的高扩展性和高伸缩性,满足乘用车高性能计算的需求。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116244057B_ABST
    Figure CN116244057B_ABST
Patent Text Reader

Abstract

The application relates to the field of automobiles, in particular to a vehicle-mounted computing load balancing system, method, storage medium and vehicle. The method comprises the following steps: receiving a service request; inquiring one or more service providers related to the service request; selecting at least one service provider from the one or more service providers according to the capacity and load state of the one or more service providers; and sending the service request to the at least one service provider; wherein the service provider is a computing subboard. The vehicle-mounted computing load balancing scheme according to the application can improve the computing capacity and processing capacity of the vehicle-mounted computing platform through the high expansibility and high scalability of the vehicle-mounted computing cluster, thereby meeting the demand of high-performance computing of passenger cars.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the automotive field, and more specifically, to an in-vehicle computing load balancing system, method, storage medium, and vehicle. Background Technology

[0002] The passenger vehicle technology is developing rapidly, driven by the "new four modernizations"—intelligentization, connectivity, electrification, and sharing—leading to a proliferation of advanced driver assistance technologies. Some companies have even set goals for autonomous driving and driverless operation, further enhancing the intelligence level of passenger vehicles. Simultaneously, the increasing application and adoption of image processing and voice processing technologies, while improving the customer's driving experience, also places new demands on the computing power of passenger vehicle systems. In particular, the requirements for image processing technology and system computing power exceed those of traditional systems by tens or even hundreds of times. A single central processing unit (CPU) chip is no longer sufficient to meet this ever-increasing demand for computing power.

[0003] The technology of passenger vehicle sensors is constantly evolving, from the original ultrasonic sensors and millimeter-wave radar sensors to a variety of high-performance sensors such as front-view camera sensors, driver camera sensors, rear-view camera sensors, and lidar sensors. These high-performance sensors are characterized by large data volumes, high real-time requirements for data processing, and the need for multiple passenger vehicle software modules to use the data. These sensors bring new challenges to onboard computing platforms, such as the need for high real-time processing, necessitating the use of multiple computing sub-boards to process various sensor data in parallel; and the need for specific mechanisms to share sensor data since it is used by multiple passenger vehicle software modules. Summary of the Invention

[0004] The in-vehicle computing load balancing system, method, storage medium, and vehicle of the present invention can effectively improve the computing power and processing power of the in-vehicle computing platform through the high scalability and high elasticity of the in-vehicle computing cluster, thereby meeting the high-performance computing needs of passenger vehicles.

[0005] To achieve one or more of the above objectives, the present invention provides the following technical solutions. Specifically: According to a first aspect of the present invention, an in-vehicle computing load balancing system is provided, characterized in that it includes one or more computing sub-boards, each of the one or more computing sub-boards adopting a service-oriented architecture and configured to: receive a service request; query one or more service providers related to the service request; select at least one service provider from the one or more service providers based on the capacity and load status of the one or more service providers; and if the at least one service provider includes other computing sub-boards, send the service request to the other computing sub-boards.

[0006] According to another embodiment or any of the above embodiments of the system, the plurality of computing daughterboards interact with each other via Ethernet.

[0007] According to a system based on an embodiment of the present invention, the computing sub-board is further configured to: if no service provider related to the service request can be found, send the service request to the computing sub-board with the lowest load rate.

[0008] According to another embodiment or any of the above embodiments of the system, the computing subboard is further configured to: if the load rate of the one or more service providers associated with the service request is higher than a first threshold, then send the service request to the other computing subboard with the lowest load rate.

[0009] According to another embodiment or any of the above embodiments of the system, the computing subboard is further configured to synchronize its list of services to other computing subboards.

[0010] According to a second aspect of the present invention, a computing load balancing method employing a service-oriented architecture is provided, characterized in that it includes: receiving a service request; querying one or more service providers related to the service request; selecting at least one service provider from the one or more service providers based on their capacity and load status; and sending the service request to the at least one service provider; wherein the service provider is a computing sub-board.

[0011] According to a method of an embodiment of the present invention, the computing daughterboard interacts with data via Ethernet.

[0012] According to another embodiment or any of the above embodiments of the present invention, the method further includes: if no service provider related to the service request can be found, then the service request is sent to the computing sub-board with the lowest load rate.

[0013] According to another embodiment or any of the above embodiments of the present invention, the method further includes: if the load rate of the one or more service providers associated with the service request is higher than a first threshold, then sending the service request to another computing sub-board with the lowest load rate.

[0014] According to another embodiment or any of the above embodiments of the present invention, the method further includes: synchronizing the service list provided by each computing subboard to other computing subboards.

[0015] According to a third aspect of the present invention, a computer-readable storage medium is provided, wherein instructions are stored therein, characterized in that, when executed by a processor, the processor causes the processor to perform the method according to a second aspect of the present invention.

[0016] According to a fourth aspect of the present invention, a vehicle is provided, characterized in that it comprises the system described in the first aspect of the present invention.

[0017] According to one or more embodiments of the present invention, the concept of an in-vehicle computing cluster is innovatively proposed, which combines multiple computing sub-boards together to form an in-vehicle computing cluster. Through the high scalability and high elasticity of the in-vehicle computing cluster, the high-performance computing needs of passenger vehicles are met. Attached Figure Description

[0018] The above and / or other aspects and advantages of the present invention will become clearer and more readily understood from the following description taken in conjunction with the accompanying drawings, in which like or similar elements are denoted by the same reference numerals. The drawings include: Figure 1 A schematic block diagram of an in-vehicle computing load balancing system 100 according to an embodiment of the present invention is shown; Figure 2 A block diagram of an in-vehicle computing load balancing system 200 according to an embodiment of the present invention is shown; Figure 3 A block diagram of an in-vehicle computing load balancing system 300 according to an embodiment of the present invention is shown; Figure 4 A block diagram of an in-vehicle computing load balancing system 400 according to an embodiment of the present invention is shown; Figure 5 A block diagram of an in-vehicle computing load balancing system 500 according to an embodiment of the present invention is shown; and Figure 6 A flowchart of a computational load balancing method 600 employing a service-oriented architecture according to an embodiment of the present invention is shown. Detailed Implementation

[0019] In this specification, the invention is described more fully with reference to the accompanying drawings, which illustrate exemplary embodiments of the invention. However, the invention may be implemented in various forms and should not be construed as being limited to the embodiments given herein. The given embodiments are intended to make the disclosure herein complete and thorough, so as to more fully convey the scope of protection of the invention to those skilled in the art.

[0020] Terms such as "comprising" and "including" indicate that, in addition to the units and steps that are directly and explicitly stated in the specification and claims, the technical solution of the present invention does not exclude the presence of other units and steps that are not directly or explicitly stated. Terms such as "first" and "second" do not indicate the order of the units in terms of time, space, size, etc., but are merely used to distinguish the units.

[0021] The invention is described below with reference to flowchart illustrations, block diagrams, and / or flowcharts of methods and systems according to embodiments of the invention. It will be understood that each block of these flowchart illustrations and / or block diagrams, and combinations thereof, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to form a machine such that these instructions, executable by the processor of the computer or other programmable data processing apparatus, create components for implementing the functions / operations specified in these flowchart illustrations and / or blocks and / or one or more flowchart illustrations. It should also be noted that in some alternative implementations, the functions / operations shown in the blocks may not occur in the order shown in the flowchart. For example, two blocks shown sequentially may actually be executed substantially simultaneously, or these blocks may sometimes be executed in reverse order, depending on the functions / operations involved.

[0022] These computer program instructions can be loaded onto a computer or other programmable data processor to cause a series of operational steps to be executed on the computer or other programmable processor, thereby constituting a computer-implemented process, such that these instructions, which execute on the computer or other programmable data processor, provide steps for implementing the functions or operations specified in one or more boxes of this flowchart and / or block diagram. It should also be noted that in some alternative implementations, the functions / operations shown in the boxes may not occur in the order shown in the flowchart. For example, two boxes shown sequentially may actually be executed substantially simultaneously, or these boxes may sometimes be executed in reverse order, depending on the functions / operations involved.

[0023] In one example of a computing cluster solution, a central cloud computing platform can monitor the computing sub-boards and maintain load balancing among them based on their computing power and operational status. However, if the central cloud computing platform fails, the load distribution among the computing sub-boards will be uneven, potentially leading to system failure and endangering the lives or property of drivers and passengers. Furthermore, if a computing cluster simply consists of several computing sub-boards placed together, each running different software, it cannot achieve the effect of sharing sensor data among the sub-boards.

[0024] In another example employing a computing cluster solution, cloud-based virtual machines are used to form a computing cluster, and a load balancing strategy is implemented to easily handle sudden surges in network traffic. This solution, based on pre-defined virtual machines as the starting point for customer access, is a centralized structure, which carries the risk of system failure if the central node fails. Furthermore, because this solution is a pure virtual machine system in the cloud, it cannot connect to sensor devices and therefore cannot support sensor data sharing.

[0025] In one or more embodiments of the present invention, a service scheduling-based vehicle load balancing solution is proposed for performing load balancing tasks in a vehicle computing cluster. First, the present invention introduces the concept of "decentralization," meaning the load balancing module is not bound to any "centralized" computing sub-board. Therefore, as long as any computing sub-board is functioning normally, the vehicle computing cluster can perform load balancing, thus greatly improving the security and reliability of the vehicle computing cluster. If one computing sub-board in the computing cluster fails, the remaining computing sub-boards can still form a computing cluster to continue performing the computing tasks of the vehicle computing cluster. Second, the present invention introduces the concept of "service-oriented," abstracting all functions of the vehicle computing cluster into services. For example, cameras are abstracted into camera services through software design, LiDAR is abstracted into LiDAR services through software design, lane line recognition is abstracted into lane line recognition services, and face recognition is abstracted into face recognition services. This "service-oriented" in-vehicle computing cluster solution greatly improves the flexibility and convenience of the in-vehicle computing cluster, enabling each computing sub-board in the in-vehicle computing cluster to obtain various data from the sensors. At the same time, various different or the same services can be deployed on each computing sub-board, improving system performance while maintaining system flexibility and stability.

[0026] Now for reference Figure 1 , Figure 1 A schematic block diagram of an in-vehicle computing load balancing system 100 according to an embodiment of the present invention is shown. Figure 1 As shown, the vehicle-mounted computing load balancing system 100 includes a first computing sub-board 1101, a second computing sub-board 1102, ..., an Nth computing sub-board 110 N .

[0027] The computing daughterboard described in this article can be an independent computer system, which may include essential basic components such as a microprocessor, random access memory (RAM), read-only memory (ROM), and an Ethernet interface chip. Typically, the computing daughterboard can run a specific operating system as needed, such as Linux, Windows, Arm Linux, or RTOS. Various driver software, middleware software, and applications can run on the operating system. The computing daughterboard described in this article can be an independent unit in an in-vehicle computing cluster. In an in-vehicle computing cluster, multiple computing daughterboards are connected to the baseboard via baseboard slots. Each computing daughterboard has gold fingers with multiple metal plates that can connect to metal connection points in the baseboard slots, forming a physical and electrical path. Through this path, the computing daughterboard can achieve basic functions such as power supply, communication, and control. The communication function mainly refers to Ethernet communication. The computing daughterboard builds an Ethernet connection through gold fingers and baseboard slots, and connects to the circuit board metal wires on the baseboard. The circuit board metal wires on the baseboard can connect to the router / switch chip, thereby integrating all the computing daughterboards into a local area network, enabling the computing daughterboards to interconnect and form a whole through Ethernet, thus forming an in-vehicle computing cluster.

[0028] Optionally, such as Figure 1 The various computing sub-boards shown (e.g., first computing sub-board 1101, second computing sub-board 1102) can interact with each other via Ethernet. For example, this interaction can be achieved through a router / switch. Ethernet is a mature communication technology widely used globally, offering guaranteed stability and reliability. Previously, in-vehicle information communication technology was mainly based on CAN bus technology. With the development of Ethernet technology and its continuous cost reduction, the application of Ethernet on in-vehicle platforms has become the mainstream solution.

[0029] According to one or more embodiments of the present invention, the in-vehicle computing cluster is supported by Ethernet technology. Information exchange and resource sharing among all computing sub-boards, as well as mutual calls and communication, are all implemented through Ethernet technology. Since Ethernet technology transmits data based on binary bitstreams, this is not user-friendly for application parsing and application. Therefore, it is necessary to define and classify the various binary data transmitted via Ethernet in detail so that Ethernet data can be used by various application software. For example, the SOME / IP (Scalable service-Oriented Middleware over IP) protocol can be used to standardize, unify, and normalize the definition of Ethernet data. The SOME / IP protocol is an automotive middleware solution for control information; it is a service-oriented, scalable protocol and a standard communication format in the passenger vehicle industry.

[0030] For example, after a SOME / IP data frame is transmitted to the first computing sub-board 1101 via Ethernet, the first computing sub-board 1101 can parse the SOME / IP data frame using a specific service-oriented middleware, then build its own software application to process the SOME / IP data frame and return it. For example, the Adaptive AUTOSAR framework software supporting SOME / IP can be selected as the service-oriented middleware. AUTOSAR stands for Automotive Open System Architecture, an organization jointly established by automotive OEMs, component suppliers, semiconductor manufacturers, software service providers, tool providers, and other related manufacturers. AUTOSAR was initially established to address the complexity and diversity of current automotive electronic and electrical architectures and to unify automotive electronic and electrical architecture standards. The Adaptive AUTOSAR platform is an extension of the traditional AUTOSAR platform, primarily designed to adapt to the development of complex applications and algorithms to meet future intelligent and connected vehicle requirements.

[0031] It should be noted that, Figure 1 There are no significant differences between the various computing sub-boards shown (e.g., the first computing sub-board 1101 and the second computing sub-board 1102). Each computing sub-board has an equal status in the computing cluster, reflecting the "decentralized" concept of this column. Each computing sub-board can perform load balancing, thereby ensuring the decentralization of the vehicle-mounted computing cluster. That is, when any computing sub-board in system 100 (e.g., the first computing sub-board 1101) is damaged, the remaining computing sub-boards (e.g., the second computing sub-board 1102 and the Nth computing sub-board) can continue to form a computing cluster and work normally, ensuring the safety and reliability of system 100.

[0032] For example, Figure 1 The various computing sub-boards shown (e.g., first computing sub-board 1101, second computing sub-board 1102) have load balancing capabilities. These load balancing capabilities may include service selection sub-functions and service recording sub-functions.

[0033] For example, the service recording sub-function can be embodied in the following aspects: each computing sub-board can record and store all service providers in the vehicle computing cluster. For instance, the first computing sub-board 1101 can record and store a list of services it can provide, a list of services the second computing sub-board 1101 can provide, and a list of services provided by other computing sub-boards. For example, the first computing sub-board 1101 can share its own list of services to other computing sub-boards in real time.

[0034] For example, the service selection sub-function can be embodied in the following aspects: When a service request is received, the computing sub-board can query the service providers related to the service request, select at least one optimal service provider from them according to preset rules (e.g., based on the capacity and load status of each service provider), and send the service request to the corresponding computing sub-board. The corresponding computing sub-board can be the computing sub-board that received the request, or it can be another computing sub-board from the vehicle computing cluster.

[0035] The following will combine Figure 2-5 Let's take a detailed look at the load balancing function of the computing daughterboard.

[0036] Figure 2 A block diagram of an in-vehicle computing load balancing system 200 according to an embodiment of the present invention is shown. Figure 2 As shown, the vehicle-mounted computing load balancing system 200 includes a router 210, used to connect various computing sub-boards into a vehicle-mounted computing cluster. The vehicle-mounted computing load balancing system 20 also includes computing sub-boards 220, 221, 222, and 223, all connected to the router 210 via Ethernet and forming a vehicle-mounted computing cluster. Computing sub-board 220 provides service 1, computing sub-board 221 also provides service 1, and computing sub-board 222 also provides service 1, meaning there are three providers of service 1. When computing sub-board 223 requests service 1, it faces the problem of not knowing which computing sub-board to choose as the provider of service 1. To address this situation, computing sub-board 223 can automatically assign a service provider to service request 1 based on load balancing principles, ensuring a balanced load and computing power across the entire vehicle-mounted computing cluster. For example, based on the principle of selecting the lowest load rate, the computing sub-board 220, computing sub-board 221, and computing sub-board 222 with the lowest load rate can be selected, and request 1 can be sent to the computing sub-board with the lowest load rate.

[0037] Figure 3 A block diagram of an in-vehicle computing load balancing system 300 according to an embodiment of the present invention is shown. Figure 3As shown, the vehicle-mounted computing load balancing system 300 includes a router 310, used to connect various computing sub-boards into a vehicle-mounted computing cluster. The vehicle-mounted computing load balancing system 300 also includes computing sub-boards 320, 321, 322, and 323, all connected to the router 310 via Ethernet and forming a vehicle-mounted computing cluster. None of the four computing sub-boards are providers of service 1. When computing sub-board 323 requests service 1, it faces the problem that there is no provider of service 1 in the computing cluster. To address this situation, computing sub-board 323 can automatically assign a service provider to service request 1 based on load balancing principles and add service 1 to the selected computing sub-board, enabling the selected computing sub-board to provide service 1. For example, based on the principle of selecting the lowest load rate, the computing sub-board 220, computing sub-board 221, computing sub-board 222, and computing sub-board 223 with the lowest load rate can be selected, and request 1 can be sent to the computing sub-board with the lowest load rate.

[0038] Figure 4 A block diagram of an in-vehicle computing load balancing system 400 according to an embodiment of the present invention is shown. Figure 4 As shown, the vehicle-mounted computing load balancing system 400 includes a router 410 for forming a vehicle-mounted computing cluster from various computing sub-boards. The vehicle-mounted computing load balancing system 400 also includes computing sub-boards 420, 421, 422, and 423, all connected to the router 410 via Ethernet and forming a vehicle-mounted computing cluster. Only computing sub-board 420 is the provider of service 1. When computing sub-board 423 requests service 1, only computing sub-board 420 in the vehicle-mounted computing cluster is the provider of service 1. However, the load rate of computing sub-board 420 is already greater than a preset threshold (e.g., greater than 80%). If service 1 is provided to computing sub-board 420, it may cause computing sub-board 420 to crash or overheat. To address this situation, computing sub-board 423 can automatically assign a service provider to service request 1 based on load balancing principles and add service 1 to the selected computing sub-board, enabling the selected computing sub-board to provide service 1. For example, based on the principle of selecting the lowest load rate, the computing sub-board 421, computing sub-board 422, and computing sub-board 423 with the lowest load rate can be selected, and request 1 can be sent to the computing sub-board with the lowest load rate.

[0039] Figure 5 A block diagram of an in-vehicle computing load balancing system 500 according to an embodiment of the present invention is shown. Figure 5As shown, the vehicle-mounted computing load balancing system 500 includes a router 510, used to connect various computing sub-boards into a vehicle-mounted computing cluster. The vehicle-mounted computing load balancing system 500 also includes computing sub-boards 520, 521, 522, and 523, all of which are connected to the router 510 via Ethernet and form a vehicle-mounted computing cluster. Computing sub-boards 520 and 521 are providers of service 1. When computing sub-board 523 requests service 1, it sends the service request to computing sub-board 520, and computing sub-board 521 will be idle. In this situation, computing sub-board 523 can send a function shutdown request to computing sub-board 521 based on load balancing principles to release resources in computing sub-board 521 and maintain load balancing of the vehicle-mounted computing cluster.

[0040] Figure 6 A flowchart of a computational load balancing method 600 employing a service-oriented architecture according to an embodiment of the present invention is shown.

[0041] In step 610, a service request is received.

[0042] In step 620, one or more service providers related to the service request are queried.

[0043] In step 630, at least one service provider is selected from one or more service providers based on their capacity and load status.

[0044] In step 640, the service request is sent to at least one selected service provider.

[0045] According to a third aspect of the present invention, a computer-readable storage medium is provided, wherein instructions are stored therein, characterized in that, when executed by a processor, the instructions cause the processor to perform the following actions: Figure 2 The method described.

[0046] According to a fourth aspect of the present invention, a vehicle is provided, comprising, as follows: Figure 1 The system.

[0047] According to some embodiments of the present invention, the following beneficial effects can be achieved: By designing a decentralized in-vehicle computing cluster load balancing scheme, the security and availability of the in-vehicle computing cluster are improved. When the system suffers a failure or damage, the computing cluster can maintain normal operation, ensuring the safety of customers' lives and property. By designing an in-vehicle computing cluster load balancing scheme based on a service-oriented architecture, various resources in the in-vehicle computing cluster are abstracted into services and provided to other computing sub-boards in the in-vehicle computing cluster. This creates a way to share sensor data resources, improves system flexibility, increases software development efficiency and software integration flexibility, and connects the vehicle, cloud, and mobile terminals. This provides customers with more high-quality services while reducing development and maintenance costs.

[0048] The foregoing disclosure is not intended to limit this disclosure to the precise form disclosed or any particular field of use. Therefore, it is contemplated that various alternative embodiments and / or modifications of this disclosure are possible, whether expressly described or implied herein. Given that embodiments of this disclosure have been described as such, those skilled in the art will recognize that changes in form and detail may be made without departing from the scope of this disclosure. Therefore, this disclosure is limited only by the claims.

Claims

1. An on-board computing load balancing system, characterized in that, It includes multiple computing sub-boards, each of which adopts a service-oriented architecture and is configured as follows: Record and store a list of services that it can provide, as well as a list of services that other computing sub-boards in the vehicle computing load balancing system can provide. Synchronize the list of services it can provide to other computing sub-boards; Receive service requests; The query retrieves one or more service providers related to the service request, based on a list of their stored services. At least one service provider is selected from the one or more service providers based on their capacity and load status; as well as If the at least one service provider includes other computing subboards, the service request is sent to those other computing subboards.

2. The system according to claim 1, wherein, The multiple computing subboards interact with each other via Ethernet.

3. The system according to claim 1, wherein, Each computing subboard is also configured to: If no service provider is found that is related to the service request, the service request will be sent to the other computing sub-board with the lowest load.

4. The system according to claim 1, wherein, Each computing subboard is also configured to: If the load rate of one or more service providers associated with the service request is higher than a first threshold, the service request is sent to the other computing sub-board with the lowest load rate.

5. A computational load balancing method employing a service-oriented architecture, characterized in that, include: Record and store a list of services that the computing sub-board itself can provide, as well as a list of services that other computing sub-boards in the vehicle computing load balancing system can provide. Synchronize the list of services that the computing sub-board itself can provide to the other computing sub-boards; Receive service requests; The query is performed based on a list of services stored on the computing subboard, and the query is associated with one or more service providers for the service request. At least one service provider is selected from the one or more service providers based on their capacity and load status; as well as Send the service request to the at least one service provider; The service provider is a computing subboard.

6. The method according to claim 5, wherein, The computing daughterboard interacts with data via Ethernet.

7. The method according to claim 5, wherein, Also includes: If no service provider is found that is related to the service request, the service request will be sent to the other computing sub-board with the lowest load.

8. The method according to claim 5, wherein, Also includes: If the load rate of one or more service providers associated with the service request is higher than a first threshold, the service request is sent to the other computing sub-board with the lowest load rate.

9. A computer-readable storage medium storing instructions, characterized in that, When the instruction is executed by the processor, the processor performs the method as described in any one of claims 5-8.

10. A vehicle, characterized in that, The vehicle-mounted computing load balancing system as described in any one of claims 1-4.

Citation Information

Patent Citations

  • Server cluster system and load balancing implementation method thereof

    CN104283948A

  • Load balancing method, terminal and gateway servers

    CN113489803A