• Corpus ID: 17567794

Sampling profiler for Rotor as part of optimizing compilation system

  title={Sampling profiler for Rotor as part of optimizing compilation system},
  author={Sofia Chilingarova},
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… 

Figures and Tables from this paper

Trustworthy Compilers

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.

Performance Analysis for Object-Oriented Software: A Systematic Mapping

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.

Optimizing JIT-compilation subsystem for Rotor 2.0

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.



A portable sampling-based profiler for Java virtual machines

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.

An Empirical Study of Method In-lining for a Java Just-in-Time Compiler

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.

A dynamic optimization framework for a Java just-in-time compiler

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.

Online profiling and feedback-directed optimization of java

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.

Collecting and exploiting high-accuracy call graph profiles in virtual machines

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.

A study of devirtualization techniques for a Java Just-In-Time compiler

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.

A region-based compilation technique for a Java just-in-time compiler

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.

Shared source CLI essentials

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 .

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