Corpus ID: 17567794

Sampling profiler for Rotor as part of optimizing compilation system

@inproceedings{Chilingarova2006SamplingPF,
  title={Sampling profiler for Rotor as part of optimizing compilation system},
  author={Sofia Chilingarova},
  year={2006}
}
This paper describes a low-overhead self-tuning sampling-based runtime profiler integrated into SSCLI virtual machine. Our profiler estimates how “hot” a method is and builds a call context graph based on managed stack samples analysis. The frequency of sampling is tuned dynamically at runtime, based on the information of how often the same activation record appears on top of the stack. The call graph is presented as a novel Call Context Map (CC-Map) structure that combines compact… Expand

Figures and Tables from this paper

Trustworthy Compilers
TLDR
Trustworthy Compilers introduces and analyzes the concept of trustworthy compilers and the principles of trustworthy compiler development, and provides analytical overview of other promising research works in this area. Expand
Performance Analysis for Object-Oriented Software: A Systematic Mapping
TLDR
A systematic mapping study of empirical performance analysis approaches that are applicable to object-oriented software finds that, despite the research including approaches specifically aimed at object- oriented software, there are significant challenges in providing actionable feedback on the performance of large-scaleobject-oriented applications. Expand
Optimizing JIT-compilation subsystem for Rotor 2.0
TLDR
The poster describes the design and implementation of the optimizing JIT-compilation subsystem for SSCLI (Rotor) 2.0 virtual machine, integration issues, and a fast algorithm for the 1st level compilation. Expand

References

SHOWING 1-10 OF 10 REFERENCES
A portable sampling-based profiler for Java virtual machines
TLDR
Detailed performance results show that this portable and efficient sampling-based online measurement system is not only efficient enough to be used continuously in a production environment but is also surprisingly accurate in the data that it collects. Expand
An Empirical Study of Method In-lining for a Java Just-in-Time Compiler
TLDR
An empirical study of onlineprofile-directed method inlining for obtaining both performance benefits and compilation time reductions in a dynamic compilation system, and shows that the strategy can be the basis of automatic optimization selection for a future efficient dynamic compilation framework. Expand
A dynamic optimization framework for a Java just-in-time compiler
TLDR
The design and implementation of a dynamic optimization framework in a production-level Java JIT compiler to employ a mixed mode interpreter and a three level optimizing compiler, supporting quick, full, and special optimization, each of which has a different set of tradeoffs between compilation overhead and execution speed. Expand
Online profiling and feedback-directed optimization of java
TLDR
The design and implementation of an on-line system that uses instrumentation sampling to drive feedback-directed optimizations and improve the performance of Java programs are designed and implemented and the results demonstrate that the sampling framework effectively reduces the overhead of several types of instrumentation while having only a minimal effect on the accuracy of the profiles collected. Expand
Collecting and exploiting high-accuracy call graph profiles in virtual machines
TLDR
A new low-overhead sampling-based technique that rapidly converges on a high-accuracy dynamic call graph that is implemented in two high-performance virtual machines and empirically assesses its accuracy by reporting on the accuracy of the dynamic call graphs it computes and by demonstrating that increasing the accuracy is results in more effective feedback-directed inlining. Expand
A study of devirtualization techniques for a Java Just-In-Time compiler
TLDR
A new technique called direct devirtualization with the code patching mechanism is proposed, which prevents some code motions across the merge point between the inlined code and the backup code, and furthermore implemented recently-known analysis techniques, such as type analysis and preexistence analysis, which allow the Backup code to be completely eliminated. Expand
A region-based compilation technique for a Java just-in-time compiler
TLDR
The experimental results show that the approach of region-based compilation achieves approximately 5% performance improvement on average, while reducing the compilation overhead by 20 to 30%, in comparison to the traditional function- based compilation techniques. Expand
Shared source CLI essentials
TLDR
Advanced .NET programmers, researchers, the academic community, and CLI implementers who have asked hard questions about the .NET Framework will find that this behind-the-scenes look at the . Expand
A dynamic optimization framework for a Java just-in-time compiler
The high performance implementation of Java Virtual Machines (JVM) and just-in-time (JIT) compilers is directed toward adaptive compilation optimizations on the basis of online runtime profile info...
A comparative study of static and dynamic heuristics for inlining
  • In ACM SIGPLAN Workshop on Dynamic and Adaptive Compilation and Optimization,
  • 2000