| CPC G06F 11/3466 (2013.01) [G06F 8/41 (2013.01); G06F 8/443 (2013.01); G06F 8/4441 (2013.01); G06F 8/48 (2013.01)] | 20 Claims |

|
1. A computing device, comprising:
a processor comprising one or more hardware tracing address ranges and configured to generate hardware tracing information for an application emitted by a compiler; and
a memory comprising program instructions that, when executed on the processor or another processor, cause the processor or another processor to implement a tracing controller configured to:
generate a plurality of hardware traces for the application, wherein individual ones of the plurality of hardware traces comprise execution information for different respective portions of the application, and wherein the application does not include profiling instrumentation information for optimized program instructions of the application emitted by the compiler;
generate a profile comprising execution information for different portions of the application based at least in part on different respective ones of the plurality of hardware traces; and
initiate recompilation of at least a portion of the application according to the generated profile to optimize the different portions of the application, wherein individual ones of the different portions of the application are optimized differently than other ones of the different portions of the application according to respective execution information for the different portions of the application.
|