# US 8,789,024 B2 · Integration of visualization with source code in the Eclipse development environment

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,789,024 B2
- Document ID: US8789024B2
- Status: Granted
- Kind: B2
- Application number: 12/612,545
- Filed: 2009-11-04
- Published: 2011-05-05
- Granted: 2014-07-22
- Earliest claimed: 2009-11-04
- Assignees: Red Hat, Inc.
- Applicants: Elliott Baron
- Inventors: Elliott Baron
- Web page: https://patentgrep.com/patent/US8789024B2

## CPC

- G06F 8/20: Software design
- G06F 11/3612: {by runtime analysis (performance monitoring G06F11/3466)}
- G06F 11/3698: Environments for analysis, debugging or testing of software
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A computer implemented method involving receiving by an integrated development environment an output file from a profiling utility to generate a line chart of data from the output file. The method to visualize profiling data for a binary file automatically and to displaying corresponding source code in response to a user selection of a data point in the line chart.

## Claims

### Claim 1

A method, comprising:
selecting a binary file in an integrated development environment (IDE);
transmitting, by a processing device executing a utility specific plug-in in conjunction with a general purpose framework plug-in of the IDE, the binary file to a profiling utility external to the IDE;
receiving, by the processing device executing the general purpose framework plug-in and the utility specific plug-in, profiling data generated by the profiling utility in view of the binary file;
generating, using the profiling data, a data model correlating the profiling data with source code associated with the binary file; and
displaying a graphical chart to visualize the profiling data of the binary file in view of the data model.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
displaying the source code corresponding to a user selected data point in the graphical chart.

### Claim 3 (depends on 1)

The method of claim 1, wherein the utility specific plug-in and a general purpose framework plug-in are components of the IDE.

### Claim 4 (depends on 1)

The method of claim 1, wherein the profiling utility is a Valgrind™ profiling utility that uses a massif profiler to analyze the binary file.

### Claim 5 (depends on 1)

The method of claim 1, wherein the integrated development environment (IDE) is an Eclipse™ IDE.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
displaying a list of source code locations in response to a selection of a data point in the graphical chart.

### Claim 7 (depends on 6)

The method of claim 6, further comprising:
displaying, in response to selection of a source code location, source code from the selected location.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
passing the data model to a data charting module.

### Claim 9

A non-transitory computer-readable medium having instructions stored thereon, which when executed by a processing device, cause the processing device to perform operations, comprising:
selecting a binary file in an integrated development environment (IDE);
transmitting, by a processing device executing a utility specific plug-in in conjunction with a general purpose framework plug-in of the IDE, the binary file to a profiling utility external to the IDE;
receiving, by the processing device executing the general purpose framework plug-in and the utility specific plug in profiling data generated by the profiling utility in view of the binary file;
generating, using the profiling data, a data model correlating the profiling data with source code associated with the binary file; and
displaying a graphical chart to visualize the profiling data of the binary file in view of the data model.

### Claim 10 (depends on 9)

The non-transitory computer-readable medium of claim 9, the operations further comprising:
displaying the source code corresponding to a user selected data point in the graphical chart.

### Claim 11 (depends on 9)

The non-transitory computer-readable medium of claim 9, wherein the utility specific plug-in and a general purpose framework plug-in are components of the IDE.

### Claim 12 (depends on 9)

The non-transitory computer-readable medium of claim 9, wherein the profiling utility is a Valgrind™ profiling utility that uses a massif profiler to analyze the binary file.

### Claim 13 (depends on 9)

The non-transitory computer-readable medium of claim 9, wherein the integrated development environment (IDE) is an Eclipse™ IDE.

### Claim 14 (depends on 9)

The non-transitory computer-readable medium of claim 9, the operations further comprising:
displaying a list of source code locations in response to a selection of a data point in the chart.

### Claim 15 (depends on 14)

The non-transitory computer-readable medium of claim 14, the operations further comprising:
displaying, in response to selection of a source code location, source code from the selected location.

### Claim 16 (depends on 9)

The non-transitory computer-readable medium of claim 9, the operations further comprising:
parsing the output file into a data model and passing the data model to a data charting module.

### Claim 17

A computer system, comprising:
a memory; and
a processing device coupled to the memory to:
select a binary file in an integrated development environment (IDE);
transmit, by the processing device executing a utility specific plug-in in conjunction with a general purpose framework plug-in of the IDE, the binary file to a profiling utility external to the IDE;
receive, by the processing device executing the general purpose framework plug-in and the utility specific plug in, profiling data generated by the profiling utility in view of the binary file;
generate, using profiling data, a data model correlating the profiling data with source code associated with the binary file;
display a graphical chart to visualize the profiling data of the binary file in view of the data model.

### Claim 18 (depends on 17)

The computer system of claim 17, wherein the processing device further:
displaying the source code corresponding to a user selected data point in the graphical chart.

### Claim 19 (depends on 18)

The system of claim 18, wherein the integrated development environment (IDE) is an Eclipse™ IDE and the profiling utility is a Valgrind™ profiling utility.

### Claim 20 (depends on 17)

The system of claim 17, wherein the utility specific plug-in and a general purpose framework plug-in are components that generate a listing of function calls corresponding to the user selected data point.
