IP Library Granted Patent US 8,776,016
Granted Patent B2
US 8,776,016 · App. 12/608,937 · Granted Jul 8, 2014

Integration of structured profiling data with source data in the eclipse development environment

Inventor: Kent K. Sebastian (Hamilton, CA)
Assignee: Red Hat, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,776,016
App. No.
12/608,937
Granted
Jul 8, 2014
Kind
B2
Abstract

A computer-implemented system and method including receiving an output file from a profiling utility by an integrated development environment component. The output file is used to generate an interactive presentation of data by a computer system to visually organize profiling data automatically. Corresponding source code is displayed in response to a user selection of a data point of the interactive presentation within the integrated development environment.

Claims (43)

1. A method, comprising:

transmitting by a computer system, via an integrated development environment (IDE) executed by the computer system, a binary file to a profiling utility external to the IDE;

receiving by the computer system, within the IDE an output file that is generated by the profiling utility processing the binary file;

organizing by the computer system, the output file into a set of events, wherein each of the set of events is associated with a respective portion of source code of a program and a respective profiling metric value;

generating by the computer system, within the IDE, an interactive graphical component that presents a plurality of profiling data points from the output file, the profiling data points corresponding to performance data generated by the profiling utility in view of the execution of the program;

receiving by the computer system, within the IDE, a user selection of one of the plurality of profiling data points; and

displaying by the computer system, within the IDE, the source code of the program that corresponds to the selected profiling data point.

2. The method of claim 1 , further comprising:

receiving by the computer system, from a user, an identification of the binary file and an identification of the profiling utility; and

sending the binary file to the profiling utility.

3. The method of claim 1 , wherein the output file is received via a plug-in of the IDE.

4. The method of claim 1 , wherein the profiling utility is Oprofile™.

5. The method of claim 1 , wherein the integrated development environment is Eclipse™.

6. The method of claim 1 , wherein the plurality of profiling data points are presented hierarchically by the interactive graphical component.

7. The method of claim 1 , wherein each line of code of the respective portion of source code has a respective profiling metric value.

8. A non-transitory computer-readable storage medium having a set of instructions stored therein, which when executed, cause a computer system to perform a set of operations, comprising:

transmitting by the computer system, via an integrated development environment (IDE) executed by the computer system, a binary file to a profiling utility external to the IDE;

receiving by the computer system, within the IDE an output file that is generated by the profiling utility processing the binary file;

organizing by the computer system, the output file into a set of events, wherein each of the set of events is associated with a respective portion of source code of a program and a respective profiling metric value;

generating by the computer system, within the IDE, an interactive graphical component that presents a plurality of profiling data points from the output file, the profiling data points corresponding to performance data generated by the profiling utility in view of the execution of the program;

receiving by the computer system, within the IDE, a user selection of one of the plurality of profiling data points; and

displaying by the computer system, within the IDE, the source code of the program that corresponds to the selected profiling data point.

9. The non-transitory computer-readable storage medium of claim 8 , wherein the set of operations further comprises:

receiving by the computer system, from a user, an identification of the binary file and an identification of the profiling utility; and

sending the binary file to the profiling utility.

10. The non-transitory computer-readable storage medium of claim 8 , wherein the output file is received via a plug-in of the IDE.

11. The non-transitory computer-readable storage medium of claim 8 , wherein the profiling utility is Oprofile™.

12. The non-transitory computer-readable storage medium of claim 8 , wherein the integrated development environment is Eclipse™.

13. The non-transitory computer-readable storage medium of claim 8 , wherein the plurality of profiling data points are presented hierarchically by the interactive graphical component.

14. The non-transitory computer-readable storage medium of claim 8 , wherein each line of code of the respective portion of source code has a respective profiling metric value.

15. A system comprising:

a memory to store source code; and

a processor coupled to the memory to:

execute an integrated development environment (IDE); transmit, via the IDE, a binary file to a profiling utility external to the IDE;

organize, via the IDE, the output file into a set of events, wherein each of the set of events is associated with a respective portion of source code of a program and a respective profiling metric value;

receive, via the IDE, a profiling metric from the profiling utility processing the binary file, the profiling metric corresponding to performance data generated by the profiling utility in view of executing the program;

generate an interactive visual representation of correlations between the source code and the profiling metric;

receive, within the IDE, a user selection of one of a plurality of profiling data points associated with the profiling metric; and

display, within the IDE, a portion of the source code corresponding to the selected profiling data points.

16. The system of claim 15 , wherein the profiling utility is Oprofile™.

17. The system of claim 15 , wherein the integrated development environment is Eclipse™.

18. The system of claim 15 , wherein the processor further:

generates a tree model by parsing output from the profiling utility to create a hierarchy of events, functions, and lines of code.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 29, 2009
From: SEBASTIAN, KENT K.
To: RED HAT, INC.
Reel/Frame 023445/0438 →
Continuity (1)
Related Publication 20110107298A1 · May 5, 2011