Continuous Profiling for Multicore Embedded Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Multicore embedded systems face challenges in long-term profiling due to limited resources and complex event visualization, making it difficult to analyze and detect errors over time, especially with large profiling data sizes and limited event visualization capabilities.
Innovation Solution
An apparatus and method for continuous profiling that includes a profiling data reception unit, analysis unit, and file management unit to determine event timing and storage in profiling files, merging events in a time-ordered sequence and partitioning data based on size and time intervals to manage large data efficiently.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Duration of action of stationary object
If profiling is performed for a long time in a multicore embedded system, then the profiling data size increases, but the limited resources of the embedded target and host cannot handle such large data sizes
Solution Approach 1:
The patent divides the continuous profiling data into multiple profiling files based on time intervals. Each profiling file contains profiling data for a specific time period, allowing the system to manage large amounts of profiling data in smaller, more manageable units that fit within the limited memory resources of the embedded target and host.
Solution Approach 2:
The patent performs preliminary sorting of profiling data by core and time order before storing in files. This pre-processing organizes the data in advance, making it easier to manage and retrieve later without requiring excessive memory resources during the profiling operation.
2Loss of information
If all profiling events are visualized simultaneously, then complete analysis is possible, but the host cannot visualize a large number of events at once
Solution Approach 1:
The patent segments the profiling data into multiple files organized by time intervals, allowing the host to load and visualize one profiling file at a time rather than attempting to visualize all events simultaneously. This approach maintains information completeness while respecting the host's visualization limitations.
Solution Approach 2:
The patent introduces a time dimension for organizing profiling files, creating a temporal structure where files are arranged in chronological order. This allows users to navigate through profiling data over time, visualizing events in manageable time-based segments rather than all at once.
3Ease of manufacture
If profiling data is stored without organization, then storage is simple, but analyzing behavior over time becomes difficult
Solution Approach 1:
The patent segments profiling data into multiple files organized by time intervals, with each file containing events sorted by core and time order. This structured segmentation maintains relative simplicity in storage while enabling easy temporal analysis, as users can navigate through files in chronological order to study system behavior over time.
Solution Approach 2:
The patent performs preliminary sorting of events by core and time order within each profiling file before storage. This pre-organization of data facilitates subsequent temporal analysis without requiring complex querying or processing during analysis, balancing storage organization with analytical ease.
Data Source
AI summary
Disclosed herein is an apparatus for continuous profiling for a multicore embedded system, the apparatus including a profiling data reception unit for receiving one or more pieces of profiling source data, in which events for each core in a multicore embedded system are written, from the multicore embedded system; a profiling data analysis unit for analyzing the profiling source data, determining a time at which each of events included in the profiling source data occurred and a core corresponding to the event, and determining whether each of the events is a past event depending on the time at which the event occurred; and a profiling file management unit for distinguishing each of the events depending on the determination of whether the event is a past event and storing the events in profiling files.


