CN116521505A - Inter-process communication evaluation method, device and equipment of intelligent automobile operating system - Google Patents

Inter-process communication evaluation method, device and equipment of intelligent automobile operating system Download PDF

Info

Publication number
CN116521505A
CN116521505A CN202310542200.9A CN202310542200A CN116521505A CN 116521505 A CN116521505 A CN 116521505A CN 202310542200 A CN202310542200 A CN 202310542200A CN 116521505 A CN116521505 A CN 116521505A
Authority
CN
China
Prior art keywords
inter
evaluated
process communication
preset service
evaluation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310542200.9A
Other languages
Chinese (zh)
Inventor
许智
刘洪振
朱林法
黄啸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zebred Network Technology Co Ltd
Original Assignee
Zebred Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zebred Network Technology Co Ltd filed Critical Zebred Network Technology Co Ltd
Priority to CN202310542200.9A priority Critical patent/CN116521505A/en
Publication of CN116521505A publication Critical patent/CN116521505A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The application provides an inter-process communication evaluation method, device and equipment of an intelligent automobile operating system, wherein the method comprises the following steps: after integrating the communication components among the processes to be evaluated, acquiring resource expenses of the intelligent automobile operating system under a plurality of preset service scenes; determining the corresponding relation between the resource expense and the process quantity based on the process quantity operated by the preset service scene corresponding to the resource expense; generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead and the corresponding relation; the preset service scenes are service scenes for carrying out data interaction based on the to-be-evaluated inter-process communication components, and the number of processes running in at least part of the preset service scenes in the preset service scenes is different. And the multi-dimensional performance index of the inter-process communication assembly is evaluated through diversified service scenes, so that the comprehensiveness and reliability of the evaluation are improved.

Description

Inter-process communication evaluation method, device and equipment of intelligent automobile operating system
Technical Field
The present disclosure relates to the technical field of automotive operating systems, and in particular, to an inter-process communication evaluation method, apparatus and device for an intelligent automotive operating system.
Background
With the continuous development of internet technology, more and more automobiles use intelligent vehicle-mounted equipment to provide services for users, such as auxiliary driving, automatic driving, intelligent parking, path planning, environment sensing and the like, so as to improve the intelligent level of the vehicles.
When an intelligent automobile operating system of the intelligent vehicle-mounted equipment runs AI scenes such as automatic driving, intelligent parking and the like, a plurality of processes needing data interaction exist among the running processes. The interaction of the information and the transfer of the state between the processes are usually realized through an Inter-process communication (IPC, inter-process Communication) component. The common modes of interprocess communication provided by the IPC scheme are mainly divided into modes based on pipelines, shared memories, message queues, sockets and the like. In order to determine whether the IPC component meets the business requirements of the intelligent automobile operating system, performance evaluation needs to be performed on the IPC component.
In the related art, evaluation is generally performed by communication time of the IPC component, and the evaluation is poor in comprehensiveness.
Disclosure of Invention
The application provides an inter-process communication evaluation method, device and equipment of an intelligent automobile operating system, and provides a multidimensional and comprehensive IPC component performance evaluation strategy.
In a first aspect, the present application provides a method for evaluating inter-process communication of an operating system of an intelligent automobile, including:
after integrating the communication components among the processes to be evaluated, acquiring resource expenses of the intelligent automobile operating system under a plurality of preset service scenes;
determining the corresponding relation between the resource expense and the process quantity based on the process quantity operated by the preset service scene corresponding to the resource expense;
generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead and the corresponding relation;
the preset service scenes are service scenes for carrying out data interaction based on the to-be-evaluated inter-process communication components, and the number of processes running in at least part of the preset service scenes in the preset service scenes is different.
In a second aspect, the present application provides an interprocess communication assessment apparatus of an operating system of a smart car, including:
the resource expense acquisition module is used for acquiring the resource expense of the intelligent automobile operating system under a plurality of preset service scenes after integrating the communication components among the processes to be evaluated;
the corresponding relation determining module is used for determining the corresponding relation between the resource expense and the number of processes based on the number of processes operated by the preset service scene corresponding to the resource expense;
The evaluation report generation module is used for generating an evaluation report of the communication component between the processes to be evaluated based on the resource expense and the corresponding relation;
the preset service scenes are service scenes for carrying out data interaction based on the to-be-evaluated inter-process communication components, and the number of processes running in at least part of the preset service scenes in the preset service scenes is different.
In a third aspect, the present application provides an inter-process communication evaluation apparatus, including:
a processor, and a memory communicatively coupled to the processor; the memory stores computer-executable instructions; and the processor executes the computer execution instructions stored in the memory to realize the inter-process communication evaluation method of the intelligent automobile operating system provided by any aspect of the application.
In a fourth aspect, the present application provides a computer readable storage medium, where computer executable instructions are stored, and when executed by a processor, implement the method for evaluating inter-process communication of the operating system of the smart car provided in any aspect of the present application.
In a fifth aspect, the present application provides a computer program product comprising a computer program which, when executed by a processor, implements the method for interprocess communication assessment of an operating system of a smart car provided in any aspect of the present application.
According to the inter-process communication evaluation method, device and equipment of the intelligent automobile operating system, for performance evaluation of inter-process components applied to the intelligent automobile operating system, before evaluation, the inter-process communication components to be evaluated need to be integrated, the intelligent automobile operating system is controlled to operate under preset service scenes such as an automatic driving scene, an auxiliary driving scene, a voice recognition scene and an environment perception scene which need to be subjected to process data interaction through the inter-process communication components to be evaluated, and resource spending of the intelligent automobile operating system under each preset service scene such as CPU (Central Processing Unit ) occupancy rate, memory occupancy rate and the like are collected; the number of the processes corresponding to part of the preset service scenes is different in the provided plurality of preset service scenes, so that the corresponding relation between the resource cost corresponding to the communication component among the processes to be evaluated and the number of the processes can be obtained based on the number of the processes of the preset service scenes corresponding to the acquired resource cost; and based on the acquired resource cost and the corresponding relation in each preset service scene, evaluating the communication components among the processes to be evaluated to obtain an evaluation report. The resource expense and the corresponding relation between the resource expense and the process quantity are used as evaluation indexes to evaluate the inter-process communication components, so that the comprehensiveness of the evaluation indexes is improved, the inter-process communication components are evaluated under various service scenes, and the evaluation strength is improved.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the application and together with the description, serve to explain the principles of the application.
Fig. 1 is a schematic diagram of an autopilot AI algorithm link provided in an embodiment of the present application;
fig. 2 is a flow chart of an inter-process communication evaluation method of an intelligent automobile operating system according to an embodiment of the present application;
FIG. 3 is a schematic diagram of a relationship curve between CPU occupancy and process number in the embodiment shown in FIG. 2 of the present application;
FIG. 4 is a flowchart illustrating another method for evaluating interprocess communication of an operating system of an intelligent automobile according to an embodiment of the present application;
FIG. 5 is a schematic diagram of an assessment report in the embodiment of FIG. 4 of the present application;
FIG. 6 is a schematic diagram of a test frame in the embodiment of FIG. 4 of the present application;
FIG. 7 is a flowchart of another method for evaluating interprocess communication of an operating system of an intelligent automobile according to an embodiment of the disclosure;
fig. 8 is a schematic structural diagram of an inter-process communication evaluation device of an intelligent automobile operating system according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of an inter-process communication evaluation device according to an embodiment of the present application.
Specific embodiments thereof have been shown by way of example in the drawings and will herein be described in more detail. These drawings and the written description are not intended to limit the scope of the inventive concepts in any way, but to illustrate the concepts of the present application to those skilled in the art by reference to specific embodiments.
Detailed Description
Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, the same numbers in different drawings refer to the same or similar elements, unless otherwise indicated. The implementations described in the following exemplary examples are not representative of all implementations consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with some aspects of the present application as detailed in the accompanying claims.
First, terms involved in the present application will be explained:
inter-process communication: is a core technology in the computer operating system. In the case of a computer operating system in which multiple processes are running simultaneously, there is often a need to exchange information or share resources between the processes, and inter-process communication techniques provide methods and means for inter-process communication. For example, the process can send or receive data to other processes through a pipeline, a shared memory, a message queue, a socket and the like, so as to complete inter-process communication. The components implementing the interprocess communication techniques are referred to as interprocess communication components.
C/S (Client/Server) architecture: the distributed computing model is based on a client and a server, and the client and the server are connected through a network. In the C/S architecture, the client and the server take different roles, the client provides a user interface, processes user input and output, and the server is responsible for processing business logic, storing data, and the like. Taking a C/S architecture formed by an automobile and a cloud as an example, the automobile is used as a client to upload generated and perceived data to the cloud (a server), the cloud analyzes the uploaded data based on strong data storage and calculation capacity of the cloud to generate control parameters of the automobile, and the automobile adjusts the running state of the automobile based on the control parameters.
In the intelligent automobile operating system, a scene of communication between a plurality of AI model processes (clients) and a server process (server) specially used for reasoning exists, and communication between the AI model processes and the server process used for reasoning is inter-process communication under a C/S architecture.
The server for reasoning can run on the intelligent automobile operating system and also can run on the cloud.
Taking an automatic driving algorithm as an example, the automatic driving algorithm is realized by taking an AI (Artificial Intelligence ) algorithm as a main line, and connecting all links in series to finish the delivery of the automatic driving product. Fig. 1 is a schematic diagram of an automatic driving AI algorithm link provided in an embodiment of the present application, as shown in fig. 1, an AI algorithm involved in automatic driving running in a cloud may be divided into a plurality of links, and mainly includes a sensing module and a decision module, where the sensing module is responsible for converting sensor data uploaded by an automobile into a machine language of a scene where the automobile is located, and the decision module is responsible for generating a vehicle control instruction based on an output of the sensing module, and is responsible for AI algorithms such as a path planning algorithm, an automatic parking algorithm, a lane keeping algorithm, and the like.
Due to the complexity of the autopilot algorithm links, autopilot products are typically divided into multiple functional modules, which typically exist in the form of independent processes, resulting in the operation of the autopilot algorithm requiring multiple AI models to be implemented through multiple processes.
Communication between a plurality of AI model processes and a server process specially used for reasoning needs to realize data interaction between processes by means of an inter-process communication technology. Reliable and complete evaluation schemes are required to be provided for various existing interprocess communication schemes.
The following describes the technical solutions of the present application and how the technical solutions of the present application solve the above technical problems in detail with specific embodiments. The following embodiments may be combined with each other, and the same or similar concepts or processes may not be described in detail in some embodiments. Embodiments of the present application will be described below with reference to the accompanying drawings.
Fig. 2 is a flow chart of an inter-process communication evaluation method of an intelligent automobile operating system according to an embodiment of the present application, where the inter-process communication evaluation method of the intelligent automobile operating system may be executed by an electronic device having a corresponding data processing capability, such as an inter-process communication evaluation device, and the inter-process communication evaluation device is connected, such as remotely connected, with an automobile running the intelligent automobile operating system, so as to control the automobile to run under various preset service scenarios and collect relevant performance indexes of the automobile.
As shown in fig. 2, the inter-process communication evaluation method of the intelligent automobile operating system comprises the following steps:
step S201, after integrating the inter-process communication components to be evaluated, collecting resource costs of the intelligent automobile operating system under a plurality of preset service scenarios.
The preset service scenes are service scenes for carrying out data interaction based on the to-be-evaluated inter-process communication components, and the number of processes running in at least part of the preset service scenes in the preset service scenes is different.
The inter-process communication component to be evaluated is any inter-process communication component to be evaluated. The preset service scene is a multi-process service scene, and inter-process communication is required to be carried out through the inter-process components to be evaluated. The intelligent automobile operating system is an on-vehicle operating system on an automobile, and particularly is an operating system of intelligent on-vehicle equipment.
And performing performance evaluation of each inter-process communication component to be evaluated according to a certain sequence, controlling the automobile to sequentially run in each preset service scene in a plurality of provided preset service scenes after integrating the inter-process communication components aiming at each inter-process communication component to be evaluated, and collecting resource expense of an intelligent automobile operating system in the corresponding preset service scene.
Specifically, the inter-process communication component to be evaluated can be integrated into a test framework provided by the inter-process communication evaluation device, and the inter-process communication evaluation device is remotely connected with the automobile, so that communication among a plurality of processes running in the intelligent automobile operating system can be performed based on the inter-process communication component to be evaluated integrated in the inter-process communication evaluation device.
The preset service scene may be a multi-thread service scene such as a voice interaction scene, an environment sensing scene, a path planning scene, an automatic driving scene, and the like.
The resource overhead may include CPU occupancy and memory occupancy of the intelligent vehicle operating system. The Memory occupancy rate may be further subdivided into a CPU Memory (Host Memory) occupancy rate, a Device Memory (Device Memory) occupancy rate, and a GPU (Graphics Processing Unit, graphics processor) Shared Memory (Shared Memory) occupancy rate.
The process of running the preset service scene can comprise client processes corresponding to a plurality of AI models and a server process for model reasoning.
The preset service scene is a multi-process communication scene under a C/S architecture.
Optionally, the plurality of preset traffic scenes include at least two of an autopilot scene, an auxiliary driving scene, an environment-aware scene, an anti-collision scene, a memory parking scene, a path planning scene, and a voice interaction scene, and a combination of multiple thereof. The preset service scenario may also include other multi-process service scenarios related to the automobile, which is not limited in this application.
In order to more comprehensively evaluate the performance of the inter-process communication component, the performance can be evaluated through a plurality of preset business scenes in which the number of processes is distributed differently. Based on the method, the process number corresponding to the multi-process service scene in the intelligent automobile operating system can be counted in advance, and the multi-process service scene corresponding to different process numbers is selected as the preset service scene.
Further, the scene score of the multi-process service scene can be determined by combining the parameters such as the use frequency, the priority and the like of the multi-process service scene, and a plurality of preset service scenes are determined from the multi-process service scene by combining the scene score and the corresponding process number.
In some embodiments, each process number corresponds to a preset service scenario, and for a plurality of multi-process service scenarios with the same process number, the multi-process service scenario with the highest scenario score is selected as the preset service scenario corresponding to the process number.
In other embodiments, the number of partial processes may correspond to a plurality of preset service scenarios, may be adaptively configured, or may be determined based on a scenario score, for example, a multi-process service scenario having a scenario score higher than a preset score in the multi-process service scenario of the number of processes is selected as the preset service scenario.
In some embodiments, the plurality of preset traffic scenarios includes a simple multi-process traffic scenario and a multi-process multi-thread hybrid traffic scenario. Each process in the simple multi-process service scenario may correspond to only one thread, and part of the processes in the multi-process multi-thread mixed service scenario correspond to multiple threads.
In order to improve the accuracy of evaluation, the resource expense of the intelligent automobile operating system in each preset service scene can be acquired for multiple times. And calculating the average value of a plurality of resource overheads in the preset service scene aiming at each resource overhead, and replacing the resource overheads of the corresponding items by the average value to execute the subsequent steps.
Taking the memory occupancy rate as an example, after integrating the communication components between the processes to be evaluated, controlling the intelligent automobile operating system to start an automatic driving function, namely, operating in an automatic driving scene, and collecting a plurality of memory occupancy rates of the intelligent automobile operating system in the automatic driving scene according to a certain period, wherein the memory occupancy rates are 45%, 50% and 49% in sequence, and the memory occupancy rate in the automatic driving scene is 48%. And switching the running scene of the intelligent automobile operating system into an automatic driving scene and a voice interaction scene, and collecting a plurality of memory occupancy rates of the intelligent automobile operating system in the automatic driving scene and the voice interaction scene according to a certain period, wherein if the memory occupancy rates are 62%, 65% and 65% in sequence, the memory occupancy rates in the automatic driving scene and the voice interaction scene are 64%.
In some embodiments, the preset service scenarios may be ordered in order of from less to more process numbers, so as to sequentially control the intelligent automobile operating system to run under the corresponding preset service scenario, and collect resource overhead.
Step S202, determining the corresponding relation between the resource expense and the process quantity based on the process quantity operated by the preset service scene corresponding to the resource expense.
And grouping the acquired resource costs by taking the corresponding process quantity as a dimension to obtain the resource costs of the communication among the processes to be evaluated under the process quantity, and further obtaining the corresponding relation between the resource costs and the process quantity. The correspondence may be represented in a table, a relationship curve, or other form.
Taking an index of the CPU occupancy rate as an example, fig. 3 is a schematic diagram of a relationship curve between the CPU occupancy rate and the number of processes in the embodiment shown in fig. 2 of the present application, as shown in fig. 3, in a preset service scenario with the number of processes being 2, the CPU occupancy rate of the intelligent automobile operating system deployed with the inter-process communication component to be evaluated is 10%, in a preset service scenario with the number of processes being 3, the CPU occupancy rate of the intelligent automobile operating system is 14%, and in a preset service scenario with the number of processes being 5, the relationship curve between the CPU occupancy rate and the number of processes shown in fig. 3 can be obtained. In a similar manner, other resource overhead versus process number curves may be obtained.
Step S203, generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead and the correspondence.
The evaluation report comprises the corresponding relation and resource expense under each preset service scene.
In some embodiments, the evaluation report may further include an evaluation result to indicate whether the inter-process communication component to be evaluated evaluates passed.
Specifically, whether the inter-process communication component to be evaluated meets the requirement or not can be judged based on the interval where the resource cost of the inter-process component to be evaluated is located in each preset service scene, the curvature, the extreme point and other parameters of the corresponding relation, and if so, the evaluation result is that the evaluation is passed; otherwise, the evaluation result is that the evaluation fails.
To improve the visualization of the assessment report, the assessment report may be presented through a graphical interface, a visualization interface, or the like.
According to the interprocess communication evaluation method of the intelligent automobile operation system, aiming at the performance evaluation of interprocess components applied to the intelligent automobile operation system, before evaluation, the interprocess communication components to be evaluated are required to be integrated, the intelligent automobile operation system is controlled to operate under preset service scenes such as an automatic driving scene, an auxiliary driving scene, a voice recognition scene, an environment perception scene and the like which are required to carry out process data interaction through the interprocess communication components to be evaluated, and resource expenses of the intelligent automobile operation system under each preset service scene such as CPU (Central Processing Unit ) occupancy rate, memory occupancy rate and the like are acquired; the number of the processes corresponding to part of the preset service scenes is different in the provided plurality of preset service scenes, so that the corresponding relation between the resource cost corresponding to the communication component among the processes to be evaluated and the number of the processes can be obtained based on the number of the processes of the preset service scenes corresponding to the acquired resource cost; and based on the acquired resource cost and the corresponding relation in each preset service scene, evaluating the communication components among the processes to be evaluated to obtain an evaluation report. The resource expense and the corresponding relation between the resource expense and the process quantity are used as evaluation indexes to evaluate the inter-process communication components, so that the comprehensiveness of the evaluation indexes is improved, the inter-process communication components are evaluated under various service scenes, and the evaluation strength is improved.
In some embodiments, in order to improve the automation degree of the evaluation, test cases may be edited in advance, and resource costs under each preset service scenario are collected through the test cases.
In order to further improve the comprehensiveness of the inter-process communication component evaluation, performance jitter of the inter-process communication component under different loads and/or different process numbers can be evaluated, wherein the performance jitter is used for representing jitter of performance indexes under different conditions, and the performance indexes comprise the corresponding relation and various resource overheads and can also comprise transmission time. The transmission time is used to describe the communication delay of the inter-process communication.
In some embodiments, high-order performance indexes such as concurrency of the GPU and scheduling behavior of the GPU of the intelligent automobile operating system before and after deployment of communication between processes to be evaluated can be acquired, and the evaluation can be performed by combining the high-order performance indexes. The higher-order performance index is different from the resource overhead, is a performance index which cannot be directly read, and is obtained by the operation of some directly read data.
Optionally, the method further comprises: determining first performance jitter of the inter-process communication component to be evaluated based on the resource overhead acquired under the preset service scenes with different running process numbers; the generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead and the correspondence includes: generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead, the corresponding relation and the first performance jitter; the first performance jitter is used for representing jitter of the resource overhead in preset service scenes with different running process numbers.
Optionally, the method further comprises: determining second performance jitter of the inter-process communication component to be evaluated based on resource overhead acquired when the intelligent automobile operating system runs the first target service scene under different loads; the generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead and the correspondence includes: generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead, the corresponding relation and the second performance jitter; the first target service scene is one of preset service scenes, and the second performance jitter is used for representing the jitter of the resource overhead under different loads.
Optionally, the method further comprises: acquiring high-order performance index differences of the intelligent automobile operating system running in a second target service scene before and after integrating the inter-process communication components to be evaluated; the generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead and the correspondence includes: generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead, the corresponding relation and the high-order performance index difference; the second target service scene is one of preset service scenes, the high-order performance index difference is the difference of high-order performance indexes before and after integrating the communication component between the processes to be evaluated, and the high-order performance index is the performance index associated with a hardware platform for running the intelligent automobile operating system.
Fig. 4 is a flowchart of another method for evaluating inter-process communication of an operating system of an intelligent automobile according to an embodiment of the present application, where, based on the embodiment shown in fig. 2, related steps of obtaining or determining a first performance jitter, a second performance jitter, and a higher-order performance index difference are added before step S203, and further refinement of step S203 is performed.
As shown in fig. 4, the inter-process communication evaluation method of the intelligent automobile operating system provided in this embodiment may include the following steps:
step S401, after integrating the inter-process communication components to be evaluated, collecting resource costs of the intelligent automobile operating system under a plurality of preset service scenarios.
Step S402, determining the corresponding relation between the resource expense and the process quantity based on the process quantity operated by the preset service scene corresponding to the resource expense.
Step S403, determining a first performance jitter of the inter-process communication component to be evaluated based on the resource overhead collected under the preset service scenarios with different running process numbers.
The first performance jitter is used for representing jitter of the resource overhead in preset service scenes with different running process numbers.
After the resource spending under the plurality of preset service scenes is collected, clustering the resource spending by taking the number of processes as the dimension. Based on the clustering result, calculating to obtain the change value of the same resource expense among different process numbers, namely obtaining one of the first performance jitters, traversing the resource expense and the different process numbers, and obtaining a plurality of first performance jitters of the communication assembly among the processes to be evaluated.
In some embodiments, the first performance jitter and the subsequent second performance jitter further comprise jitter in transmission time. After the intelligent automobile operating system is controlled to run in a preset service scene, the transmission time of data corresponding to the transmission of the process component to be evaluated can be acquired. And obtaining jitter of the transmission time based on the difference value of the transmission time corresponding to the preset service scene of different process numbers.
For example, taking a case that a plurality of preset service scenarios include scenario a (corresponding to 3 processes), scenario B (corresponding to 5 processes) and scenario C (corresponding to 6 processes), the intelligent automobile operating system is controlled to run under scenario a, scenario B and scenario C in sequence, and resource overhead and transmission time of the intelligent automobile operating system running under scenario a, scenario B and scenario C are respectively acquired, which can be obtained by averaging after multiple acquisitions. The first performance jitter corresponding to the evaluation index may be |a-b|, |b-c|, and |a-c|, when the evaluation index is recorded as a, B, and C for any one of the resource overhead and the transmission time.
In some embodiments, one of the evaluation indexes under a certain preset service scenario, including various resource overheads and transmission time, may collect a plurality of values to obtain the evaluation index under the corresponding preset service scenarioA plurality of values. The first performance jitter may be the difference of the evaluation index under the preset service scene of different process numbers in corresponding sequence, such as |a i -b i I, wherein a i And b i The i-th evaluation index value is acquired under preset service scenes (such as scene A and scene B) with different process numbers.
Step S404, determining second performance jitter of the communication component between the processes to be evaluated based on resource overhead acquired when the intelligent automobile operating system runs the first target service scene under different loads.
The first target service scene is one of preset service scenes, and the second performance jitter is used for representing the jitter of the resource overhead under different loads. The first performance jitter and the second performance jitter are both the jitter of resource overhead, the first performance jitter is the jitter caused by the change of the number of processes, and the second performance jitter is the jitter caused by the change of the load.
The first target service scene may be a preset service scene with highest use frequency, or may be a preset service scene with highest priority, or may be a preset service scene with highest scene score, or a preset service scene designated, such as an automatic driving scene, a path planning scene, and the like.
In order to evaluate the second performance jitter, the intelligent automobile operating system needs to be controlled to work under different loads when running the first target service scene. Different loads can be realized by controlling the intelligent automobile operating system to start different vehicle-mounted functional modules, and the vehicle-mounted functional modules comprise a vehicle-mounted entertainment system, a voice interaction module, an in-vehicle sensing module, an out-vehicle sensing module and the like.
By way of example, the CPU load of the intelligent automobile operating system can be continuously increased, so that the intelligent automobile operating system works under different loads when running the first target service scene, and resource overhead and transmission time under the loads are collected.
And obtaining second performance jitter based on the resource overhead and the change condition of the transmission time under different loads.
The method includes the steps that after an intelligent automobile operating system is controlled to run in a first target service scene, a vehicle-mounted entertainment system is started, set multimedia files such as music, video and the like are played, resource overhead under the load and transmission time of communication of a process component to be evaluated are collected, and multiple groups can be collected; and on the premise of starting the vehicle-mounted entertainment system, starting a voice interaction module, executing set voice interaction instructions such as 'how weather is today', 'volume is turned up', and the like, and collecting resource overhead and transmission time of communication of a process component to be evaluated under the load. The load of the CPU is adjusted by gradually increasing the load.
The load of the intelligent automobile operating system can be adjusted in other ways, and the application is not limited to the load.
Step S405, acquiring a high-order performance index difference of the intelligent automobile operating system running in the second target service scenario before and after integrating the inter-process communication component to be evaluated.
The second target service scene is one of preset service scenes.
The second target service scenario and the first target service scenario may be the same or different preset service scenarios, for example, all are automatic driving scenarios.
The first target service scenario and the second target service scenario may be preset service scenarios with highest scenario score and next highest scenario score, respectively. The scene score may be determined by a weighted average of the priority and the frequency of use.
The high-order performance index difference is the difference of the high-order performance index before and after integrating the communication components between the processes to be evaluated. The high-order performance index is a performance index which is related to a hardware platform corresponding to the intelligent automobile operating system and is obtained based on the operation of the acquired observable data.
The high-order performance metrics include the concurrency of the graphics processor and the scheduling behavior of the graphics processor. The scheduling behavior of the graphics processor is used for describing a scheduling policy between tasks, such as a scheduling sequence of the tasks, a scheduling relationship, and the like, when the graphics processor processes the tasks of a plurality of processes, wherein the scheduling relationship comprises parallel scheduling and serial scheduling.
Before the communication components between the processes to be evaluated are deployed, controlling the intelligent automobile operating system to operate in a second target service scene, and collecting various high-order performance indexes to obtain various high-order performance indexes before the communication components between the processes to be evaluated are deployed (or integrated). And integrating the inter-process communication component to be evaluated into a test framework, such as an inter-process communication component evaluation device, controlling the intelligent automobile operating system to operate in a second target service scene, and collecting various high-order performance indexes to obtain various high-order performance indexes after the inter-process communication component to be evaluated is deployed. And comparing each high-order performance index before and after deployment of the communication component between the processes to be evaluated to obtain each high-order performance index difference.
The higher-order performance index difference corresponding to the concurrency of the graphics processor may be the difference between the concurrency of the graphics processor before and after deployment.
The scheduling behavior of the graphics processor includes scheduling policies between CUDA (Compute Unified Device Architecture) of different priorities, computing unified device architecture) Stream (Stream) tasks, such as whether a high priority CUDA Stream would affect task scheduling on a low priority CUDA Stream.
If the scheduling strategies of CUDA operations are inconsistent before and after integrating the communication components between the processes to be evaluated, the scheduling behaviors of the GPU are inconsistent. That is, any one of the scheduling behaviors of the GPU is inconsistent before and after integrating the inter-process communication components to be evaluated, and the scheduling behavior is determined to be inconsistent before and after integrating the inter-process communication components to be evaluated.
Optionally, if the scheduling behaviors are inconsistent before and after integrating the inter-process communication component to be evaluated, the evaluation result in the evaluation report of the inter-process communication component to be evaluated is that the evaluation fails.
The second target service scenario corresponds to a plurality of CUDA operations, such as operation o1 and operation o2, where operation o1 and operation o2 are located in different streams (streams), and the Stream priority where operation o1 is located is higher than the Stream where operation o2 is located. Before integrating the communication components to be evaluated, when the intelligent automobile operating system runs in the second target service scene, the scheduling task of the operation o2 with low priority is not influenced by the operation o1 with high priority. If the operation o1 with high priority affects the scheduling task of the operation o2 with low priority after integrating the communication components to be evaluated when the intelligent automobile operating system operates in the second target service scene, the scheduling behaviors of the GPU before and after integrating the communication components to be evaluated are inconsistent.
Step S406, generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead, the correspondence, the first performance jitter, the second performance jitter, and the high-order performance index difference.
Specifically, the evaluation report of the inter-process communication component to be evaluated can be generated based on the resource overhead, the corresponding relation, the first performance jitter, the second performance jitter and the value of each evaluation index in the high-order performance index difference. The evaluation report may represent the value of the evaluation index in a visual form such as a line graph, a table, or the like.
The evaluation report can also comprise an evaluation result so as to intuitively display whether the inter-process communication component to be evaluated meets the product requirement or not through the evaluation result. The evaluation result may be evaluation pass or evaluation fail. The evaluation report may also indicate that the evaluation index of the product demand is not reached, such as by a differentiated display pattern.
For example, if the CPU occupancy rate is higher than the set occupancy rate, such as 60%, 75%, or other values, in the resource overhead in the autopilot scenario, it is determined that the CPU occupancy rate does not reach the product requirement; if the amplitude of the first performance jitter or the second performance jitter of the memory occupancy rate is larger than the set amplitude, determining that the memory occupancy rate does not reach the product requirement.
Fig. 5 is a schematic diagram of an evaluation report in the embodiment shown in fig. 4 of the present application, where the evaluation report is shown by a graph interface, and the graph interface shows a resource overhead table, a resource overhead versus Client number curve, a first performance jitter table, a second performance jitter table, and a higher-order capability table. The resource overhead table includes values of various resource overheads under various preset service scenarios, and in fig. 5, the preset service scenarios include scenario 1 to scenario 5 as an example, and the resource overheads include overhead 1, overhead 2, and overhead 3, such as CPU occupancy rate, host Memory occupancy rate, device Memory occupancy rate, shared Memory occupancy rate, and the like. The relationship curve of the resource cost and the number of clients is used for representing the corresponding relationship mentioned in the embodiment, the number of clients is the number of processes, and the value and the change condition of each resource cost under different number of clients can be intuitively known through the relationship curve of the resource cost and the number of clients. The first performance jitter table includes jitter conditions of resource overhead and transmission time under different Client numbers, and can record resource overhead and transmission time variation values, in fig. 5, taking Client numbers 2, 3 and 7 as examples, one process is a Client. The second performance jitter table includes jitter conditions of resource overhead and transmission time under different CPU loads, and may include second performance jitter corresponding to a plurality of first target service scenarios, and 3 CPU loads (load 1 to load 3) and 3 first target service scenarios (such as scenario 2, scenario 4 and scenario 5) are taken as an example in fig. 5. The high-order capability table is used for showing the values of the high-order performance indexes and the corresponding high-order performance index differences before and after the communication components between the processes to be evaluated are deployed in the second target service scene (such as scene 2). The form and values of the graph shown in fig. 5 are only examples.
In this embodiment, the performance indexes of five dimensions, including the resource overhead, the correspondence between the resource overhead and the number of processes, the performance jitter under different numbers of processes (first performance jitter), the performance jitter under different CPU loads (second performance jitter), and the difference of the high-order performance indexes, are provided as the evaluation indexes to evaluate the inter-process communication components, so that performance evaluation under various differentiation scenes is covered, the evaluation strength is high and comprehensive, and the reliability of the inter-process communication component evaluation is improved.
The embodiment of fig. 4 illustrates a plurality of evaluation metrics including resource overhead, correspondence, first performance jitter, second performance jitter, and higher order performance metric differences, and in some embodiments, the performance evaluation of the interprocess communication component may be performed by any permutation and combination of the above-mentioned plurality of evaluation metrics. The constitution of the evaluation index may be determined based on the own demand, such as based on resource overhead, correspondence, first performance jitter and second performance jitter, or based on resource overhead, first performance jitter, second performance jitter, and higher-order performance index difference, etc.
FIG. 6 is a schematic diagram of a test framework in the embodiment of FIG. 4 of the present application, as shown in FIG. 6, including a hardware platform, IPC components, acquisition tools, a base capability assessment framework, a platform dependent capability assessment framework, and a visualization interface. The hardware platform is a hardware platform corresponding to an intelligent automobile operating system, and the IPC component is one of the inter-process communication components to be evaluated. The acquisition tool comprises a resource overhead acquisition device and a performance jitter acquisition device, wherein the resource overhead acquisition device is used for acquiring various resource overheads and can also acquire the transmission time of IPC component data communication; the performance jitter collector is used for collecting the first performance jitter and the second performance jitter. The basic capability assessment framework is used for assessing basic indexes based on concurrency field test cases, wherein the basic indexes are universal performance indexes, can comprise resource overhead and transmission time, and can also comprise first performance jitter and second performance jitter. The platform correlation capability assessment framework is used for assessing hardware platform specific performance indexes based on the correlation test cases, including high-order performance index assessment, and specifically, high-order performance index differences can be obtained by deploying high-order performance indexes before and after the IPC component, and assessment results of performance indexes of corresponding items are generated based on the high-order performance index differences. The visual interface is used for displaying the evaluation report in a visual form such as a table, a line graph, a bar graph and the like, and comprises the performance index and the evaluation result thereof which are evaluated by the evaluation result (such as passing or failing) of the IPC component.
The aforementioned interprocess communication assessment apparatus may include an acquisition tool in a test framework, a base capability assessment framework, a platform dependent capability assessment framework, and a visualization interface. During the evaluation, the inter-process communication component to be evaluated is integrated into the test framework, such as into the inter-process communication evaluation device.
Fig. 7 is a flowchart of another method for evaluating interprocess communication of an operating system of an intelligent automobile according to an embodiment of the present application, where steps S201 and S203 are further refined based on the embodiment shown in fig. 2, a step of obtaining performance requirements is added before step S203, and a step of displaying an evaluation report is added after step S203.
As shown in fig. 7, the inter-process communication evaluation method of the intelligent automobile operating system provided in this embodiment may include the following steps:
step S701, for each inter-process communication component to be evaluated, after integrating the inter-process component to be evaluated into a test framework, sequentially controlling the intelligent automobile operating system to perform data interaction with a server through the inter-process component to be evaluated under each preset service scene according to the sequence of from less to more processes running in the preset service scene.
Step S702, collecting resource overhead of the intelligent automobile operating system in each preset service scenario.
When a plurality of inter-process communication components to be evaluated exist, the evaluation of each inter-process communication component to be evaluated can be sequentially performed according to a certain sequence. Different inter-process communication components to be evaluated employ different inter-process communication techniques. During evaluation, the inter-process components to be evaluated are integrated into the test framework, so that multi-process communication can be performed based on the inter-process communication components to be evaluated.
The number of the preset service scenes is multiple, and the sequence of the preset service scenes can be determined first, in this embodiment, the preset service scenes are ordered based on the number of the running processes of the preset service scenes, for example, the preset service scenes are ordered according to the sequence from the number of the running processes to the number of the running processes.
In other embodiments, the preset service scenes may be further ordered based on the priority, the frequency of use, the scene score, and the like of the preset service scenes, and the order of the preset service scenes may be a default order.
Specifically, the intelligent automobile operating system can be controlled to run in the corresponding preset service scene through the test cases corresponding to the preset service scenes, and data interaction is performed between the to-be-evaluated inter-process components and the server. And in the interaction process, acquiring various resource overheads.
Step S703, determining a corresponding relationship between the resource overhead and the number of processes based on the number of processes running in the preset service scenario corresponding to the resource overhead.
Step S704, obtaining the performance requirement of the inter-process communication component to be evaluated.
The performance requirement comprises the conditions which are preset and are required to be met by each performance index of the inter-process communication component to be evaluated. For example, in an autopilot scenario, the CPU occupancy should be not less than 75%, and the jitter amplitude (second performance jitter) of the memory occupancy under different loads should be less than 5%, etc.
The step of obtaining the performance requirement may be performed at any point in time before step S705, such as after integrating the inter-process communication component to be evaluated, and step S704 is performed after step S703 as an example in fig. 7.
Step S705, based on the performance requirement, determining whether the performance index of the inter-process communication component to be evaluated meets the standard.
Wherein the performance index includes the resource overhead and the correspondence.
In some embodiments, the performance index further comprises at least one of a transmission time, a first performance jitter, a second performance jitter, and a platform performance index difference.
Specifically, for each performance index of the collected inter-process communication component to be evaluated, based on the performance requirement, whether the performance index meets the condition set in the performance requirement about the performance index is judged, if yes, the performance index meets the standard, otherwise, the performance index does not meet the standard.
The performance requirements may be uploaded by the user through the user interface. The user may open a corresponding user interface through the user terminal, input the performance requirement of each inter-process communication component to be evaluated, and upload the performance requirement to the inter-process communication component evaluation device through the user terminal.
Step S706, based on the judgment result, generating an evaluation report of the inter-process communication component to be evaluated.
And if the performance indexes of the inter-process communication components to be evaluated meet the performance requirements, the evaluation result in the evaluation report of the inter-process communication components to be evaluated is that the evaluation is passed. If any performance index does not reach the standard, the evaluation result in the evaluation report of the inter-process communication component to be evaluated is that the evaluation fails.
Various substandard performance indicators may also be included in the assessment report.
Step S707, displaying the assessment report through a visual interface.
And after the evaluation of the inter-process communication component to be evaluated is finished, e.g. after an evaluation report is generated, removing the inter-process communication component to be evaluated so as to integrate the inter-process communication component to be evaluated, and evaluating the inter-process communication component to be evaluated.
In the embodiment, by integrating each inter-process communication component to be evaluated into a test framework in sequence, a scheme of evaluating a plurality of inter-process communication components to be evaluated based on the same test framework is realized; the intelligent automobile operating system is controlled to run under various concurrent service scenes by the sequence of the number of the processes from a small number to a large number, so that the situation that the service scenes with a small number of the processes cannot be evaluated due to the failure of the operating system when the number of the processes is large is avoided, and the evaluation smoothness is improved; through the user-defined configuration performance requirements, the collected performance indexes are combined to automatically generate the evaluation result of the inter-process communication assembly so as to indicate the performance indexes which do not reach the standard, and the flexibility and the automation degree of performance evaluation are improved.
Fig. 8 is a schematic structural diagram of an inter-process communication evaluation device of an intelligent automobile operating system according to an embodiment of the present application, where, as shown in fig. 8, the inter-process communication evaluation device of an intelligent automobile operating system includes: a resource overhead acquisition module 810, a correspondence determination module 820, and an evaluation report generation module 830.
The resource overhead acquisition module 810 is configured to acquire resource overhead of the intelligent automobile operating system in a plurality of preset service scenarios after integrating the inter-process communication components to be evaluated; the correspondence determining module 820 is configured to determine a correspondence between the resource overhead and the number of processes based on the number of processes running in the preset service scenario corresponding to the resource overhead; the evaluation report generating module 830 is configured to generate an evaluation report of the inter-process communication component to be evaluated based on the resource overhead and the correspondence; the preset service scenes are service scenes for carrying out data interaction based on the to-be-evaluated inter-process communication components, and the number of processes running in at least part of the preset service scenes in the preset service scenes is different.
Optionally, the apparatus further includes:
the first jitter collection module is used for determining first performance jitter of the inter-process communication assembly to be evaluated based on the resource overheads collected under the preset service scenes with different running process numbers, wherein the first performance jitter is used for representing the jitter of the resource overheads under the preset service scenes with different running process numbers.
Accordingly, the evaluation report generation module 830 specifically is configured to:
and generating an evaluation report of the inter-process communication component to be evaluated based on the resource expense, the corresponding relation and the first performance jitter.
Optionally, the apparatus further includes:
determining second performance jitter of the inter-process communication component to be evaluated based on resource overhead acquired when the intelligent automobile operating system runs the first target service scene under different loads; the first target service scene is one of preset service scenes, and the second performance jitter is used for representing the jitter of the resource overhead under different loads.
Accordingly, the evaluation report generation module 830 specifically is configured to:
and generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead, the corresponding relation and the second performance jitter.
Optionally, the method further comprises:
and acquiring high-order performance index differences of the intelligent automobile operating system running in a second target service scene before and after integrating the to-be-evaluated inter-process communication assembly, wherein the second target service scene is one of preset service scenes, the high-order performance index differences are differences of high-order performance indexes before and after integrating the to-be-evaluated inter-process communication assembly, and the high-order performance indexes comprise concurrency of a graphic processor and scheduling behaviors of the graphic processor.
Accordingly, the evaluation report generation module 830 specifically is configured to:
and generating an evaluation report of the inter-process communication component to be evaluated based on the resource cost, the corresponding relation and the high-order performance index difference.
In some embodiments, the evaluation report generation module 830 is specifically configured to:
and generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead and the corresponding relation and at least one of the first performance jitter, the second performance jitter and the high-order performance index difference.
Optionally, if the scheduling behaviors are inconsistent before and after integrating the inter-process communication component to be evaluated, the evaluation result in the evaluation report of the inter-process communication component to be evaluated is that the evaluation fails.
Optionally, the plurality of preset service scenes include at least two of an autopilot scene, an auxiliary driving scene, an environment sensing scene, an anti-collision scene, a memory parking scene, a path planning scene and a voice interaction scene.
Optionally, the resource overhead acquisition module 810 is specifically configured to:
for each inter-process communication component to be evaluated, after integrating the inter-process component to be evaluated into a test framework, sequentially controlling the intelligent automobile operating system to perform data interaction with a server through the inter-process component to be evaluated under each preset service scene according to the sequence of the number of processes running in the preset service scene from less to more;
And acquiring resource expense of the intelligent automobile operating system in each preset service scene.
Optionally, the apparatus further includes:
and the performance requirement acquisition module is used for acquiring the performance requirement of the inter-process communication component to be evaluated.
Accordingly, the evaluation report generation module 830 specifically is configured to:
judging whether the performance index of the inter-process communication assembly to be evaluated meets the standard or not based on the performance requirement; generating an evaluation report of the inter-process communication component to be evaluated based on the judgment result; wherein the performance index includes the resource overhead and the correspondence.
The inter-process communication evaluation device of the intelligent automobile operating system provided by the embodiment of the application can be used for executing the technical scheme of the inter-process communication evaluation method of the intelligent automobile operating system provided by any embodiment of the application, and the implementation principle and the technical effect are similar, and the embodiment is not repeated here.
Fig. 9 is a schematic structural diagram of an inter-process communication evaluation device provided in the embodiment of the present application, as shown in fig. 9, an inter-process communication evaluation device 900 provided in the embodiment includes:
at least one processor 910; and a memory 920 communicatively coupled to the at least one processor; wherein the memory 920 stores computer-executable instructions; the at least one processor 910 executes the computer-executable instructions stored in the memory to cause the interprocess communication assessment apparatus 900 to perform the method as provided in any one of the embodiments described above.
Alternatively, the memory 920 may be separate or integrated with the processor 910.
The implementation principle and technical effects of the inter-process communication evaluation device 900 provided in this embodiment may be referred to the foregoing embodiments, and will not be described herein again.
The embodiment of the application provides a structure schematic diagram of an interprocess communication evaluation system, the interprocess communication evaluation system comprises evaluation equipment, an IPC component, an intelligent automobile and a server, wherein an intelligent automobile operating system is installed on the intelligent automobile, the intelligent automobile is connected with the server through a network, the server is located at a cloud end, and the evaluation equipment is remotely connected with the intelligent automobile so as to control the running scene of the intelligent automobile and acquire required performance indexes.
The IPC component is any inter-process communication component to be evaluated. The evaluation device may be an inter-process communication evaluation device 900.
In performing the IPC component evaluation, the IPC component is integrated into a test framework provided by the evaluation device. The intelligent automobile is remotely controlled by the evaluation equipment to run under various preset service scenes so as to simulate the service scenes of interaction between the intelligent automobile and the server through the IPC component, such as automatic driving, voice recognition and the like, during running, the evaluation equipment acquires resource expenses of the intelligent automobile under various preset service scenes and under the responsibility of a CPU, clusters, compares and the like, and obtains various performance indexes, including basic indexes of CPU occupancy rate, memory occupancy rate, transmission time and the like, wherein the basic indexes are subjected to performance jitter under different CPU loads and different process numbers, namely first performance jitter and second performance jitter, and the concurrency degree, calling behavior and the like of the GPU before and after the IPC component is deployed.
The evaluation equipment evaluates the IPC component based on the collected performance indexes, and generates and displays an evaluation report.
In some embodiments, the assessment report may be displayed via a display screen of the assessment device, such as via a visual interface.
In some embodiments, the assessment report may also be sent to the user side to be presented by the user side.
The embodiments of the present application further provide a computer readable storage medium, where computer executable instructions are stored, where the computer executable instructions, when executed by a processor, may implement the method provided in any of the foregoing embodiments.
Embodiments of the present application also provide a computer program product comprising a computer program which, when executed by a processor, implements the method provided by any of the foregoing embodiments.
In the several embodiments provided in this application, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the above-described embodiments of the apparatus are merely illustrative, and for example, the division of the modules is merely a logical function division, and there may be additional divisions when actually implemented, for example, multiple modules may be combined or integrated into another system, or some features may be omitted or not performed.
The integrated modules, which are implemented in the form of software functional modules, may be stored in a computer readable storage medium. The software functional modules described above are stored in a storage medium and include instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) or processor to perform some of the steps of the methods described in various embodiments of the present application.
It should be appreciated that the processor may be a central processing unit (Central Processing Unit, CPU for short), other general purpose processors, digital signal processor (Digital Signal Processor, DSP for short), application specific integrated circuit (Application Specific Integrated Circuit, ASIC for short), etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The steps of a method disclosed in connection with the present application may be embodied directly in a hardware processor for execution, or in a combination of hardware and software modules in a processor for execution. The memory may include a high-speed memory, and may further include a nonvolatile memory, such as at least one magnetic disk memory, and may also be a usb disk, a removable hard disk, a read-only memory, a magnetic disk, or an optical disk.
The storage medium may be implemented by any type or combination of volatile or nonvolatile memory devices such as static random access memory, electrically erasable programmable read only memory, magnetic memory, flash memory, magnetic or optical disk. A storage media may be any available media that can be accessed by a general purpose or special purpose computer.
An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an application specific integrated circuit. The processor and the storage medium may reside as discrete components in an electronic device or an interprocess communication assessment apparatus for an intelligent automobile operating system.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
The foregoing embodiment numbers of the present application are merely for describing, and do not represent advantages or disadvantages of the embodiments.
From the above description of the embodiments, it will be clear to those skilled in the art that the above-described embodiment method may be implemented by means of software plus a necessary general hardware platform, but of course may also be implemented by means of hardware, but in many cases the former is a preferred embodiment. Based on such understanding, the technical solution of the present application may be embodied essentially or in a part contributing to the prior art in the form of a software product stored in a storage medium (such as ROM/RAM, magnetic disk, optical disk), including several instructions for causing a terminal device (which may be a mobile phone, a computer, a server, an air conditioner, or a network device, etc.) to perform the method provided in the embodiments of the present application.
Other embodiments of the present application will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the application following, in general, the principles of the application and including such departures from the present disclosure as come within known or customary practice within the art to which the application pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the application being indicated by the following claims.
It is to be understood that the present application is not limited to the precise arrangements and instrumentalities shown in the drawings, which have been described above, and that various modifications and changes may be effected without departing from the scope thereof. The scope of the application is limited only by the appended claims.

Claims (10)

1. An interprocess communication assessment method of an intelligent automobile operating system is characterized by comprising the following steps:
after integrating the communication components among the processes to be evaluated, acquiring resource expenses of the intelligent automobile operating system under a plurality of preset service scenes;
determining the corresponding relation between the resource expense and the process quantity based on the process quantity operated by the preset service scene corresponding to the resource expense;
generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead and the corresponding relation;
the preset service scenes are service scenes for carrying out data interaction based on the to-be-evaluated inter-process communication components, and the number of processes running in at least part of the preset service scenes in the preset service scenes is different.
2. The method according to claim 1, wherein the method further comprises:
determining first performance jitter of the inter-process communication component to be evaluated based on the resource overhead acquired under the preset service scenes with different running process numbers;
The generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead and the correspondence includes:
generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead, the corresponding relation and the first performance jitter;
the first performance jitter is used for representing jitter of the resource overhead in preset service scenes with different running process numbers.
3. The method according to claim 1, wherein the method further comprises:
determining second performance jitter of the inter-process communication component to be evaluated based on resource overhead acquired when the intelligent automobile operating system runs the first target service scene under different loads;
the generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead and the correspondence includes:
generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead, the corresponding relation and the second performance jitter;
the first target service scene is one of preset service scenes, and the second performance jitter is used for representing the jitter of the resource overhead under different loads.
4. The method according to claim 1, wherein the method further comprises:
acquiring high-order performance index differences of the intelligent automobile operating system running in a second target service scene before and after integrating the inter-process communication components to be evaluated;
the generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead and the correspondence includes:
generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead, the corresponding relation and the high-order performance index difference;
the second target service scene is one of preset service scenes, the high-order performance index difference is the difference of high-order performance indexes before and after integrating the to-be-evaluated inter-process communication assembly, and the high-order performance indexes comprise concurrency of the graphic processor and scheduling behavior of the graphic processor.
5. The method of claim 4, wherein the evaluation result in the evaluation report of the inter-process communication component to be evaluated is that the evaluation fails if the scheduling behavior is inconsistent before and after integrating the inter-process communication component to be evaluated.
6. The method of claim 1, wherein after integrating the interprocess communication component under evaluation, collecting resource overhead of the intelligent automobile operating system under a plurality of preset business scenarios comprises:
for each inter-process communication component to be evaluated, after integrating the inter-process component to be evaluated into a test framework, sequentially controlling the intelligent automobile operating system to perform data interaction with a server through the inter-process component to be evaluated under each preset service scene according to the sequence of the number of processes running in the preset service scene from less to more;
and acquiring resource expense of the intelligent automobile operating system in each preset service scene.
7. The method according to any one of claims 1-6, further comprising:
acquiring performance requirements of the inter-process communication component to be evaluated;
the generating an evaluation report of the inter-process communication component to be evaluated based on the resource overhead and the correspondence includes:
judging whether the performance index of the inter-process communication assembly to be evaluated meets the standard or not based on the performance requirement;
generating an evaluation report of the inter-process communication component to be evaluated based on the judgment result;
Wherein the performance index includes the resource overhead and the correspondence.
8. An interprocess communication assessment apparatus of an intelligent automobile operating system, comprising:
the resource expense acquisition module is used for acquiring the resource expense of the intelligent automobile operating system under a plurality of preset service scenes after integrating the communication components among the processes to be evaluated;
the corresponding relation determining module is used for determining the corresponding relation between the resource expense and the number of processes based on the number of processes operated by the preset service scene corresponding to the resource expense;
the evaluation report generation module is used for generating an evaluation report of the communication component between the processes to be evaluated based on the resource expense and the corresponding relation;
the preset service scenes are service scenes for carrying out data interaction based on the to-be-evaluated inter-process communication components, and the number of processes running in at least part of the preset service scenes in the preset service scenes is different.
9. An inter-process communication evaluation apparatus, comprising:
a processor, and a memory communicatively coupled to the processor;
the memory stores computer-executable instructions;
The processor executes computer-executable instructions stored in the memory to implement the method of any one of claims 1-7.
10. A computer readable storage medium having stored therein computer executable instructions which when executed by a processor implement the method of any of claims 1-7.
CN202310542200.9A 2023-05-12 2023-05-12 Inter-process communication evaluation method, device and equipment of intelligent automobile operating system Pending CN116521505A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310542200.9A CN116521505A (en) 2023-05-12 2023-05-12 Inter-process communication evaluation method, device and equipment of intelligent automobile operating system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310542200.9A CN116521505A (en) 2023-05-12 2023-05-12 Inter-process communication evaluation method, device and equipment of intelligent automobile operating system

Publications (1)

Publication Number Publication Date
CN116521505A true CN116521505A (en) 2023-08-01

Family

ID=87397515

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310542200.9A Pending CN116521505A (en) 2023-05-12 2023-05-12 Inter-process communication evaluation method, device and equipment of intelligent automobile operating system

Country Status (1)

Country Link
CN (1) CN116521505A (en)

Similar Documents

Publication Publication Date Title
CN114139210B (en) Big data security threat processing method and system based on intelligent service
CN111813095A (en) Vehicle diagnosis method, device and medium
US11361555B2 (en) Road environment monitoring device, road environment monitoring system, and road environment monitoring program
CN115422591A (en) Information processing method and system based on big data
JP2018124439A (en) Capability evaluation system and capability evaluation device
CN115017050A (en) Automatic driving test scene generation system and method
WO2018182442A1 (en) Machine learning system and method for generating a decision stream and automonously operating device using the decision stream
CN116303456A (en) Industrial data processing method, system, device and computer readable storage medium
CN116521505A (en) Inter-process communication evaluation method, device and equipment of intelligent automobile operating system
CN113806594A (en) Business data processing method, device, equipment and storage medium based on decision tree
CN102546652B (en) System and method for server load balancing
CN112148481A (en) Method, system, equipment and medium for executing simulation test task
CN116521374A (en) Data processing method, device, vehicle and computer program product
CN111988430A (en) Virtual reality control method and device based on synchronous response
US20160012179A1 (en) Method for managing data relative to motor vehicles with a view to the subsequent graphic generation of electrical diagrams of electrical systems
CN111104611B (en) Data processing method, device, equipment and storage medium
CN110660216B (en) Travel time threshold determination method and system and intelligent equipment
JP7247993B2 (en) RUNNING TEST PATTERN CREATION APPARATUS AND METHOD
CN116358902B (en) Vehicle function testing method and device, electronic equipment and storage medium
CN116486612B (en) Mixed traffic queue stability evaluation method and device based on vehicle Lu Yun cooperation
US20230237373A1 (en) Information processing device, information processing method, and computer program product
CN116450705B (en) Method and system for identifying ascending and descending slopes based on vehicle-mounted data acquisition equipment
CN115447616B (en) Method and device for generating objective index of vehicle driving
WO2022180681A1 (en) Data generation system, data generation method, and data generation program
CN117235978A (en) Torque filtering method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination