Method and apparatus for data object profiling
AssigneeOracle International Corporation
InventorsNicolai Kosche, Brian J. Wylie, Christopher P. Aoki, Martin S. Itzkowitz
Life of this patent
Estimating the term…
Abstract
Including source-level data object information in code profiling data enhances code optimization because it provides new perspectives to view code behavior. A method provides for identifying an operation instance of code that corresponds to a runtime event, which is detected in execution of the code. The detected event is attributed to a source-level data object that corresponds to a source-level representation of a language construct. The attribution is based on a predefined association between the identified operation instance and the language construct of the source-level representation that corresponds to the source-level data object.
Claims43
A tangible storage medium having computer readable program code for performing data profiling, comprising:
- a first set of instructions, stored in at least one computer readable storage medium and executable by at least one processing unit, that tags instruction instances, that may consume execution time based on loading of data, with identifiers that describe the instruction instances with source-level data object language constructs;
- a second set of instructions, stored in the at least one computer readable storage medium and executable by the at least one processing unit, that identifies an instruction instance of the tagged instruction instances that corresponds to a runtime event detected in execution of code that includes the identified instruction instance;
- a third set of instructions, stored in the at least one computer readable storage medium and executable by the at least one processing unit, that attributes the runtime event detected to source-level data objects describing units of data identifiable in source code, wherein the attributing is based at least in part on a predefined association between the identified instruction instance in executable code and the source-level data object language construct corresponding thereto.
A method of data profiling code, the method comprising:
- tagging instruction instances stored in at least one computer readable storage medium utilizing at least one processing unit, that may consume execution time based on loading of data, with identifiers that describe the instruction instances with source-level data object language constructs;
- for a sampled runtime event detected in execution of the code, identifying an instruction instance of the tagged instruction instances that corresponds to the sampled runtime event detected in execution of code that includes the identified instruction instance utilizing the at least one processing unit;
- and
- attributing the sampled runtime event detected to source-level data objects describing units of data identifiable in source code utilizing the at least one processing unit, wherein the attributing is based at least in part on a predefined association between the identified instruction instance in executable code and the source-level data object language construct corresponding thereto.
A method of data profiling code, the method comprising:
- associating a source-level data object language construct for a source-level data object by tagging an instruction instance stored in at least one computer readable storage medium that may consume execution time based on loading of data utilizing at least one processing unit, with identifiers that describe the instruction instance with a source-level data object language construct;
- and
- attributing a sampled runtime event to the source-level data object language construct describing units of data identifiable in source code utilizing the at least one processing unit, wherein the attributing is based at least in part on the association between the instruction instance in executable code and the source-level data object language construct corresponding thereto.
An apparatus comprising:
- a set of one or more processors;
- a memory coupled with the set of processors;
- and
- a tangible storage machine-readable media coupled with the set of processors, the tangible storage machine-readable media having stored therein a set of data profiling instructions to cause the set of processors to;
- tag instruction instances, that may consume execution time based on loading of data, with identifiers that describe the instruction instances with source-level data object language constructs;
- and
- attribute a runtime event to a source-level data object language construct that corresponds to a source-level data object, wherein the source-level data object describes units of data identifiable in source code, that is associated with an instance of an instruction of the tagged instruction instances, which corresponds to the runtime event.
Dependencies are inferred from the claim text.