CN115328731A - eBPF-based parallel program online performance data acquisition method - Google Patents

eBPF-based parallel program online performance data acquisition method Download PDF

Info

Publication number
CN115328731A
CN115328731A CN202210969837.1A CN202210969837A CN115328731A CN 115328731 A CN115328731 A CN 115328731A CN 202210969837 A CN202210969837 A CN 202210969837A CN 115328731 A CN115328731 A CN 115328731A
Authority
CN
China
Prior art keywords
performance data
parallel program
ebpf
time
function
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
CN202210969837.1A
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.)
Beihang University
Original Assignee
Beihang University
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 Beihang University filed Critical Beihang University
Priority to CN202210969837.1A priority Critical patent/CN115328731A/en
Publication of CN115328731A publication Critical patent/CN115328731A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The invention discloses an eBPF-based parallel program online performance data acquisition method, which comprises the steps of embedding an eBPF parallel program performance data acquisition module in a node machine by utilizing eBPF, monitoring the running behavior of a parallel program, and acquiring the performance data of the parallel program; the stream processing module carries out stream processing on the acquired performance data and transmits the performance data; and the visualization module receives the performance data, and then performs visualization processing and display so as to observe the runtime behavior of the program. In the whole process, the low disturbance and the programmability of the eBPF are used as a performance data acquisition module, so that the running monitoring of the parallel program can be realized under the condition of not influencing the running behavior of the parallel program, the execution state of the program is observed conveniently, the abnormal behavior of the parallel program is found in time, and the performance analysis is carried out under the condition of not running the program again.

Description

eBPF-based parallel program online performance data acquisition method
Technical Field
The invention relates to the field of parallel program monitoring, in particular to a parallel program online performance data acquisition method based on an eBPF technology.
Background
Although the super computer is continuously developed and the peak performance is continuously improved, the actual performance improvement of the parallel program obtained from the super computer is slowly increased, and the gap between the actual performance and the peak performance is more and more obvious. The performance of the parallel program is not only limited by the hardware performance of the computer system, but also affected by the advantages and disadvantages of the design of the parallel program, including whether the communication mode is efficient, whether the load is balanced, and the like.
The parallel computing has no mature design realization theory and no formed parallel computing model to guide realization. To achieve good performance, designers need to balance processor speed, internal network speed, and I/O speed, requiring extensive empirical guidance. Compared with a serial algorithm, the parallel algorithm needs to contain a mutual exclusion mechanism, so that the complexity of syntax and semantics is increased; load balancing is needed among the processors to fully release the computing performance; both data and tasks need to be partitioned between processes to reduce interprocess communication.
Therefore, an effective parallel program analysis tool is provided for a high-performance parallel computer, and the method has important significance for helping a user understand the parallel program behavior and optimizing the parallel program performance. By utilizing the performance analysis tool, the performance problem of the parallel program can be detected and positioned, and further, a reasonable suggestion of performance optimization is given.
The existing commonly used parallel program monitoring tool generally performs performance analysis based on a post analysis mode, after a performance problem of a parallel program is observed, the parallel program is operated again, and the reason and the position of the performance problem are analyzed and positioned through the performance analysis tool, but the influence of the performance problem of the parallel program is multifactor, the performance problem does not always occur when the parallel program is operated again, and the cost of operating a large-scale parallel program once is huge. At present, no relevant literature reports exist.
Disclosure of Invention
The invention solves the problems: the method overcomes the defects of the prior art, provides the eBPF-based parallel program online performance data acquisition method, realizes online acquisition, transmission and display of performance data in the execution process of the parallel program under the condition of not changing the source code of the parallel program, and is convenient for a user to carry out performance analysis under the condition of not restarting the parallel program.
The technical solution of the invention; an eBPF-based parallel program online performance data acquisition method is applied to monitoring of parallel programs in a high-performance platform and comprises the following steps:
(1) Compiling a performance data acquisition module of the parallel program through an eBPF compiler set bcc, running in a background, and waiting for the execution of the parallel program;
(2) Executing the parallel program, and acquiring the process numbers PID of all parallel processes in the parallel program;
(3) In the parallel program execution process, a performance data acquisition module starts to intercept the operation of a parallel program library function by using a user dynamic probe uprobe in eBPF, obtains parameter information when a macro PT _ REGS _ built-in function obtains the parallel program library function by using function parameters and return values, marks the entering and exiting behaviors, the parameter information and a timestamp of the library function as performance data of the parallel program execution behavior, and transmits the performance data to a stream processing module for processing in time by using an annular buffer area of the eBPF;
parallel program library functions are used in the parallel program, and the library functions assist information interaction and control the flow function of the parallel program;
(4) The flow processing module collects the performance data to perform flow processing, writes the performance data into different message queues according to different parallel program library functions, performs performance data matching according to execution time and sending and receiving labels, calculates the execution conditions of the parallel program library functions in all parallel processes according to the execution time, identifies the inefficient operation in the parallel program library functions, and transmits the inefficient operation to the visualization module;
(5) And the visualization module performs online visualization display on the collected parallel program performance data.
Further, the step (1) specifically comprises the following steps:
(11) Writing a bpf code through bcc, and acquiring performance data of a parallel program execution behavior when the parallel program runs as an instrumentation module;
(12) Writing a bcc user code, and receiving performance data acquired by the instrumentation module by utilizing eBPF MAP;
(13) And executing the performance data acquisition module, running in the background, and registering the instrumentation module at the parallel program library function.
Further, the step (3) specifically comprises the following steps:
(31) Acquiring PID of parallel processes in all parallel programs and a parallel program internal process number rank through a performance data acquisition module, and storing the associated information of the PID and the rank in eBPF MAPs;
(32) Before the parallel program library function is executed by using a user dynamic probe uprobe of the eBPF, intercepting the execution of the function through a data structure PT _ REGS of user stack saved information, acquiring parameter data of the function from a PT _ REGS data structure by using a function parameter acquisition macro PT _ REGS _ PARM built-in function, and acquiring the starting execution state and the starting time of the parallel program library function based on a process PID and a rank;
(33) When the execution of the parallel program function is finished by utilizing the eBPF uretProbe, through the completion of a PT _ REGS interception function of a data structure, acquiring the return data of a function from the PT _ REGS data structure by utilizing a function return value acquisition macro PT _ REGS _ RC built-in function, and acquiring the finish execution state and finish time of the parallel program library function based on a process PID and a rank;
(34) Acquiring performance data of the parallel program by collecting data of starting and ending states of a function of a parallel program library, wherein the performance data is divided into information transfer performance data and other performance data, the information transfer performance data is in the form of { start _ time, end _ time, operation, source, dest, messageTag, messageLength, rank, PID }, the other performance data is in the form of { start _ time, end _ time, operation, rank, PID }, wherein start _ time is the starting time of operation, end _ time is the ending time of operation, operation is executed function operation, source is the source process number of a sent message, dest is the destination process number of a received message, messageTag is a message tag, messageLength is the message size, rank is the process number inside the parallel program in the execution process, and PID is the process number of the parallel program in a node;
(35) And transmitting the performance data to the stream processing module for subsequent processing by utilizing the ring buffer ring _ buf of the eBPF in time when one piece of performance data is acquired.
Further, the step (4) specifically includes the steps of:
(41) The performance data acquisition module writes the acquired performance data into the message queue according to different categories according to the operation, writes the performance data of the sent message into the sent message queue, writes the performance data of the received message into the received message queue, writes the performance data of the collective operation into the collective operation message queue, and writes the performance data of other operations into the common message queue;
(42) When detecting that there is a record in the message sending queue, the stream processing module searches for a corresponding record in the message receiving queue according to the dest of the sent message, at this time, the receiving operation may not be completed yet, waits for the completion of the receiving operation, and when there is a corresponding record in the message receiving queue, marks two matched sending and receiving records as a message for one time and transmits the message to the visualization module;
(43) When detecting data in the aggregate operation message queue, the stream processing module sorts a plurality of aggregate operations of the same process according to end _ time, the aggregate operations with the same sequence in different processes are the same-time aggregate operation, the same-time aggregate operation of all the processes is waited for being completed, when records exist in the aggregate operation message queue, the aggregate operations are marked as the same-time aggregate operation, and the duration of the aggregate operation of the process i is calculated according to the start _ time and the end _ time of the performance data i And calculating the average duration of the collective operation of all the processes avg
Figure BDA0003796258270000031
N is the number of processes performing this set operation, the duration i >duration avg And satisfy the formula
Figure BDA0003796258270000032
Is marked as a bottleneck set operation and is transmitted to a visualization module, wherein alpha is a bottleneck set operation threshold value;
(44) And the stream processing module directly transmits the performance data in the common message queue to the visualization module.
Compared with the prior art, the invention has the beneficial effects that:
(1) Common performance analysis tools such as Scalasca, TAU, scorep, and the like all use an offline analysis mode, record performance data when a parallel program is executed, are recorded and stored in a memory buffer by a collection tool, and when an application program is finished running, the data are stored in a file system. Compared with the tools, the invention provides a method for acquiring parallel program performance data by utilizing eBPF, which can realize online acquisition of performance data, timely perform subsequent transmission, matching and identification after the performance data is acquired, and does not need to store the performance data in a file system, thereby avoiding forced interruption of refreshing the performance data to the file system when a memory buffer is exhausted, solving the problem of forced interruption hiding or new performance generation, and avoiding the acquired performance data from being incorrect.
(2) The eBPF can run a self-defined performance measurement code, can be efficiently transmitted and used through eBPF MAPs after performance data are obtained, and meanwhile, dynamic instrumentation is carried out by using uprobe without changing a source code of a parallel program.
Drawings
FIG. 1 is a schematic illustration of eBPF;
FIG. 2 is a framework diagram of eBPF-based parallel program online performance data acquisition;
FIG. 3 is a flow chart of eBPF-based parallel program online performance data collection.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, rather than all embodiments, and based on the embodiments of the present invention, all other embodiments obtained by a person skilled in the art without creative efforts belong to the protection scope of the present invention.
The invention utilizes eBPF to collect performance data. As shown in fig. 1, the eBPF is a system-level performance collection tool, which provides a very high observation capability for the kernel and the application program, can realize a relatively rich statistical function by programming, and has a very high performance, and can avoid affecting the observed application program. By which trace characteristics advanced performance analysis tools can be developed and created. The eBPF trace provides visibility throughout the software stack, allowing users to develop new tools and monitoring functions as needed at any time, and the eBPF trace program can be deployed immediately in a production environment without restarting the system or restarting the application in a special manner. The eBPF tracking program can execute the functions of self-defined calculation, statistical summarization and the like, can meet the requirements of a performance analysis tool, and has the characteristics of high efficiency and safe production environment.
As shown in fig. 2, the embodiment of the present invention mainly has three modules: the system comprises a performance acquisition module, a flow processing module and a visualization module. The performance acquisition module monitors the running state of the parallel program by utilizing eBPF and acquires performance data of the parallel program; the stream processing module carries out stream processing on the acquired performance data and transmits the performance data to the visualization module; and the visualization module performs online visualization display on the collected parallel program performance data.
The embodiment of the invention provides an eBPF-based parallel program online performance data acquisition method, as shown in FIG. 3, the parallel program monitoring method comprises the following steps:
step 1: and writing a performance data acquisition module of the parallel program through bcc, running in a background, and waiting for the execution of the parallel program.
Step 2: and executing the parallel programs, and acquiring the process numbers PID of the parallel processes in all the parallel programs.
And step 3: in the parallel program execution process, the performance data acquisition module starts to intercept the running of a parallel program library function by using a user dynamic probe uprobe in the eBPF, obtains parameter information when the macro PT _ REGS _ built-in function obtains the parallel program library function by using function parameters and return values, marks the entering and exiting behaviors, the parameter information and the timestamp of the library function as performance data of the parallel program execution behavior, and transmits the performance data to the stream processing module for processing in time by using a ring buffer region ring _ buf of the eBPF.
And 4, step 4: and the stream processing module collects the performance data to perform stream processing, writes the performance data into different message queues according to different parallel program library functions, performs performance data matching according to execution time and sending and receiving tags, calculates the execution conditions of the parallel program library functions in all parallel processes according to the execution time, identifies the inefficient operation in the parallel program library functions, and transmits the inefficient operation to the visualization module.
And 5: and the visualization module performs online visualization display on the collected parallel program performance data.
Wherein, the step 1) specifically comprises the following steps:
11 Bpf code is written through bcc and used as an instrumentation module to acquire performance data of execution behaviors of the parallel program when the parallel program runs.
12 Write bcc user code, and receive the performance data collected by the instrumentation module using eBPF MAP.
13 Execute bcc performance data collection module and run in the background to register at the parallel library function for instrumentation modules.
Wherein, the step 3) specifically comprises the following steps:
31 PID and rank of all parallel processes are obtained through a performance data acquisition module, and the associated information of the PID and rank is stored in eBPF MAPs;
32 Before the parallel program function is executed, a user dynamic probe uprobe of eBPF is utilized to intercept the execution of the function through a data structure PT _ REGS of user stack saved information, a macro PT _ REGS _ PARM built-in function is obtained by utilizing the parameter of the function to obtain the parameter data of the function from the PT _ REGS data structure, and the starting execution state and the starting time of the parallel program function are obtained based on the process PID and rank;
33 Utilizing eBPF uretProbe to acquire the return data of the function from the PT _ REGS data structure by utilizing the function return value through the completion of the PT _ REGS interception function of the data structure when the execution of the parallel program function is finished, and acquiring the finish execution state and finish time of the parallel program library function based on the process PID and rank;
34 Acquiring performance data of the parallel program by collecting data of starting and ending states of functions of the parallel program, wherein the performance data is divided into information transfer performance data and other performance data, the information transfer performance data is in the form of { start _ time, end _ time, operation, source, dest, messageTag, messageLength, rank, PID }, the other performance data is in the form of { start _ time, end _ time, operation, rank, PID }, wherein start _ time is the starting time of operation, end _ time is the ending time of operation, operation is the function operation performed, source is the source process number of sending messages, dest is the destination process number of receiving messages, messageTag is a message tag, messageLength is the message size, rank is the process number inside the parallel program in the execution process, and PID is the process number of the parallel program in a node;
35 Each time one piece of performance data is collected, the ring buffer ring _ buf of the eBPF is utilized to transmit the performance data to the stream processing module for subsequent processing.
Wherein, the step 4) specifically comprises the following steps:
41 Performance data acquisition module writes the acquired performance data into message queues according to different categories according to operation, writes the performance data of the sent message into the sent message queue, writes the performance data of the received message into the received message queue, writes the performance data of the collective operation into the collective operation message queue, and writes the performance data of other operations into a common message queue;
42 When detecting that there is a record in the sending message queue, the stream processing module searches for a corresponding record in the receiving message queue according to dest of the sending message, and at this time, it may be that the receiving operation is not completed yet, and waits for the completion of the receiving operation, and there is a corresponding record in the receiving message queue, where messageTag and messageLength fields of the sending and receiving performance data are the same, and marks two matched sending and receiving records as one-time message transmission and transmits them to the visualization module;
43 When detecting data in the aggregate operation message queue, the stream processing module sorts a plurality of aggregate operations of the same process according to end _ time, the aggregate operations with the same sequence in different processes are the same aggregate operation, waits for the completion of the same aggregate operation of all the processes, marks the aggregate operations as the same aggregate operation when records exist in the aggregate operation message queue, and calculates the duration of the aggregate operation performed by the process i according to the start _ time and the end _ time of the performance data i And calculating the average duration of the collective operation of all the processes avg Is concretely provided with
Figure BDA0003796258270000071
N is the number of processes for this set operation, duration i >duration avg And satisfy the formula
Figure BDA0003796258270000072
The label of (a) is a bottleneck set operation, and is transmitted to the visualization module, where α is a bottleneck set operation threshold, and in this embodiment, α is 0.5;
44 The stream processing module directly transmits the performance data in the common message queue to the visualization module.
The embodiment of the invention provides an eBPF-based parallel program online performance data acquisition method, which comprises the steps of embedding an eBPF parallel program performance data acquisition module in a node machine by utilizing eBPF, monitoring the running behavior of a parallel program, and acquiring performance data of the parallel program; processing and transmitting the collected performance data; and the front end receives the performance data and then performs visual processing and display. In order to observe the runtime behavior of the program. In the whole process, the low disturbance and the programmability of the eBPF are used as a performance data acquisition module, so that the running monitoring of the parallel program can be realized under the condition of not influencing the running behavior of the parallel program, the execution state of the program is observed conveniently, the abnormal behavior of the parallel program is found in time, and the performance analysis is carried out under the condition of not running the program again.
Preferred embodiments of the present invention have been described in detail above, but the present invention is not limited to the specific details in the above embodiments. Within the technical idea of the invention, various equivalent changes can be made to the technical scheme of the invention, and the equivalent changes all belong to the protection scope of the invention.

Claims (4)

1. An eBPF-based parallel program online performance data acquisition method is characterized by comprising the following steps of:
(1) Compiling a performance data acquisition module of the parallel program through an eBPF compiler set bcc, running in a background, and waiting for the execution of the parallel program;
(2) Executing the parallel program, and acquiring the process numbers PID of all parallel processes in the parallel program;
(3) In the parallel program execution process, a performance data acquisition module starts to intercept the operation of a parallel program library function by using a user dynamic probe uprobe in eBPF, obtains parameter information of a macro PT _ REGS _ built-in function by using function parameters and return values to obtain the execution time of the parallel program library function, marks the entry and exit behaviors, the parameter information and a timestamp of the library function as performance data of the parallel program execution behavior, and transmits the performance data to a stream processing module for processing in time by using an annular buffer area of the eBPF;
(4) The flow processing module collects the performance data to perform flow processing, writes the performance data into different message queues according to different parallel program library functions, performs performance data matching according to execution time and sending and receiving labels, calculates the execution conditions of the parallel program library functions in all parallel processes according to the execution time, identifies the inefficient operation in the parallel program library functions, and transmits the inefficient operation to the visualization module;
(5) And the visualization module performs online visualization display on the collected parallel program performance data.
2. The eBPF-based parallel program online performance data acquisition method according to claim 1, wherein the step (1) specifically comprises the steps of:
(11) Compiling bpf codes through bcc, and acquiring performance data of parallel program execution behaviors when the instrumentation module runs the parallel program;
(12) Writing a bcc user code, and receiving performance data acquired by the instrumentation module by utilizing eBPF MAP;
(13) And executing the performance data acquisition module, running in the background, and registering the instrumentation module at the parallel program library function.
3. The eBPF-based parallel program online performance data acquisition method according to claim 1, wherein the step (3) specifically comprises the steps of:
(31) Acquiring PID of parallel processes in all parallel programs and a parallel program internal process number rank through a performance data acquisition module, and storing the associated information of the PID and the rank in eBPF MAPs;
(32) Before the parallel program library function is executed by using a user dynamic probe uprobe of the eBPF, intercepting the execution of the function through a data structure PT _ REGS of user stack saved information, acquiring parameter data of the function from the PT _ REGS data structure by using a function parameter acquisition macro PT _ REGS _ PARM built-in function, and acquiring the starting execution state and the starting time of the parallel program library function based on a process PID (proportion integration differentiation) and a rank;
(33) When the execution of the parallel program function is finished by utilizing the eBPF uretProbe, intercepting the completion of the function through a PT _ REGS data structure, acquiring the return data of the function from the PT _ REGS data structure by utilizing a function return value acquisition macro PT _ REGS _ RC built-in function, and acquiring the finish execution state and finish time of the parallel program library function based on the process PID and rank;
(34) Acquiring performance data of the parallel program by collecting data of starting and ending states of a function of a parallel program library, wherein the performance data is divided into information transfer performance data and other performance data, the information transfer performance data is in the form of { start _ time, end _ time, operation, source, dest, messageTag, messageLength, rank, PID }, the other performance data is in the form of { start _ time, end _ time, operation, rank, PID }, wherein start _ time is the starting time of operation, end _ time is the ending time of operation, operation is executed function operation, source is the source process number of a sent message, dest is the destination process number of a received message, messageTag is a message tag, messageLength is the message size, rank is the process number inside the parallel program in the execution process, and PID is the process number of the parallel program in a node;
(35) And transmitting the performance data to the stream processing module for subsequent processing by utilizing the ring buffer ring _ buf of the eBPF in time when one piece of performance data is acquired.
4. The eBPF-based parallel program online performance data collection method of claim 1, wherein the step (4) comprises the following steps:
(41) The performance data acquisition module writes the acquired performance data into the message queue according to different categories according to the operation, writes the performance data of the sent message into the sent message queue, writes the performance data of the received message into the received message queue, writes the performance data of the collective operation into the collective operation message queue, and writes the performance data of other operations into the common message queue;
(42) When detecting that there is a record in the message sending queue, the stream processing module searches for a corresponding record in the message receiving queue according to the dest of the sent message, at this time, the receiving operation may not be completed yet, waits for the completion of the receiving operation, and when there is a corresponding record in the message receiving queue, marks two matched sending and receiving records as a message for one time and transmits the message to the visualization module;
(43) When detecting data in the aggregate operation message queue, the stream processing module sorts a plurality of aggregate operations of the same process according to end _ time, the aggregate operations with the same sequence in different processes are the same aggregate operation, the same aggregate operation of all the processes is waited to be completed, and when records exist in the aggregate operation message queue, the aggregate operations are marked as the same aggregate operationAnd a combination operation, which calculates the duration of the process i for the set operation according to the start _ time and the end _ time of the performance data i And calculating the average duration of the collective operation of all the processes avg
Figure FDA0003796258260000031
N is the number of processes that perform this set operation, the duration i >duration avg And satisfy the formula
Figure FDA0003796258260000032
Is marked as a bottleneck set operation and is transmitted to a visualization module, wherein alpha is a bottleneck set operation threshold value;
(44) And the flow processing module directly transmits the performance data in the common message queue to the visualization module.
CN202210969837.1A 2022-08-12 2022-08-12 eBPF-based parallel program online performance data acquisition method Pending CN115328731A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210969837.1A CN115328731A (en) 2022-08-12 2022-08-12 eBPF-based parallel program online performance data acquisition method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210969837.1A CN115328731A (en) 2022-08-12 2022-08-12 eBPF-based parallel program online performance data acquisition method

Publications (1)

Publication Number Publication Date
CN115328731A true CN115328731A (en) 2022-11-11

Family

ID=83923830

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210969837.1A Pending CN115328731A (en) 2022-08-12 2022-08-12 eBPF-based parallel program online performance data acquisition method

Country Status (1)

Country Link
CN (1) CN115328731A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116244160A (en) * 2023-05-09 2023-06-09 江苏博云科技股份有限公司 Non-invasive performance analysis method, system, electronic equipment and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116244160A (en) * 2023-05-09 2023-06-09 江苏博云科技股份有限公司 Non-invasive performance analysis method, system, electronic equipment and storage medium
CN116244160B (en) * 2023-05-09 2023-08-04 江苏博云科技股份有限公司 Non-invasive performance analysis method, system, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
US8813055B2 (en) Method and apparatus for associating user-specified data with events in a data space profiler
US8627335B2 (en) Method and apparatus for data space profiling of applications across a network
US8166462B2 (en) Method and apparatus for sorting and displaying costs in a data space profiler
US8032875B2 (en) Method and apparatus for computing user-specified cost metrics in a data space profiler
US8640114B2 (en) Method and apparatus for specification and application of a user-specified filter in a data space profiler
US8136124B2 (en) Method and apparatus for synthesizing hardware counters from performance sampling
Haban et al. A hybrid monitor for behavior and performance analysis of distributed systems
US20080127120A1 (en) Method and apparatus for identifying instructions associated with execution events in a data space profiler
CN101403983A (en) Resource monitoring method and system for multi-core processor based on virtual machine
CN102955737B (en) The program debugging method of heterogeneous processor system and system
CN103729288A (en) Application program debugging method under embedded multi-core environment
US20100180245A1 (en) Methods and products for determining and visualizin ic behavior
CN102722434A (en) Performance test method and tool aiming at Linux process scheduling
CN115328731A (en) eBPF-based parallel program online performance data acquisition method
CN107003894A (en) Apparatus and method for the parser of hardware transactional internally stored program
Kumar et al. A comprehensive review of straggler handling algorithms for mapreduce framework
Fu et al. Performance issue diagnosis for online service systems
CN105243023B (en) Parallel Runtime error checking method
CN112069029B (en) Domestic platform PMU self-adaptive performance acquisition monitoring system
US20230244588A1 (en) Parallel program scalability bottleneck detection method and computing device
CN112052073A (en) Script performance analysis method and device, readable storage medium and electronic equipment
CN103455364A (en) System and method for online obtaining Cache performance of parallel program under multi-core environment
CN110990227B (en) Numerical pool application characteristic performance acquisition and monitoring system and operation method thereof
CN107451038B (en) Hardware event acquisition method, processor and computing system
CN106528414A (en) Processor chip simulator

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