We design and implement two Java optimizations based on JSR308 annota- tions: pure method memoization and dynamic taint analysis optimization. In pure method memoization, we introduce JavaMem, an automatic method memo- ization tool for Java. JavaMem memoizes on Java pure or partially pure method at runtime according to offline execution time profiling results and static analysis- based correctness proof. We achieve 3% speedup on average on selected Dacapo benchmarks. For dynamic taint analysis optimization, we design and implement METEOR, a portable dynamic taint checking tool that instruments taint propaga- tion instructions and optimizes the instrumented code by leveraging annotations. We compete our METEOR against Phosphor. With a slight...
A dynamic program analysis provides essential information during later phases of an application deve...
Memorization of a method is a commonly used re-factoring wherein developer modules the code of a met...
Improperly validated user input is the underlying root cause for a wide variety of attacks on web-ba...
. We present a technique to measure and detect changes in the behavioral patterns of applications. I...
Dynamic class loading is an integral part of the Java programming language, offering a number advant...
Dynamic taint tracking is an important field of study with manyJava-based tools and systems created ...
The Java programming environment uses a highly-developed virtual machine (VM) to execute its program...
. We present a technique to measure and detect changes in the behavioral patterns of applications. I...
Performance bugs are a prevalent problem and recent research proposes various techniques to identify...
Dynamic compilation and optimization are widely used in heterogenous computing environments and an e...
It is inherently difficult for static analyses to make precise decisions about dynamic features of m...
This report proposes a new approach to the optimized execution of Javabytecode: static analysis is u...
Modern software is bloated. Demand for new functionality has led developers to include more and more...
Dynamically typed programming languages have become very popular in the recent years. These language...
Java is a popular object oriented programming language suitable for writing Java programs. Sometimes...
A dynamic program analysis provides essential information during later phases of an application deve...
Memorization of a method is a commonly used re-factoring wherein developer modules the code of a met...
Improperly validated user input is the underlying root cause for a wide variety of attacks on web-ba...
. We present a technique to measure and detect changes in the behavioral patterns of applications. I...
Dynamic class loading is an integral part of the Java programming language, offering a number advant...
Dynamic taint tracking is an important field of study with manyJava-based tools and systems created ...
The Java programming environment uses a highly-developed virtual machine (VM) to execute its program...
. We present a technique to measure and detect changes in the behavioral patterns of applications. I...
Performance bugs are a prevalent problem and recent research proposes various techniques to identify...
Dynamic compilation and optimization are widely used in heterogenous computing environments and an e...
It is inherently difficult for static analyses to make precise decisions about dynamic features of m...
This report proposes a new approach to the optimized execution of Javabytecode: static analysis is u...
Modern software is bloated. Demand for new functionality has led developers to include more and more...
Dynamically typed programming languages have become very popular in the recent years. These language...
Java is a popular object oriented programming language suitable for writing Java programs. Sometimes...
A dynamic program analysis provides essential information during later phases of an application deve...
Memorization of a method is a commonly used re-factoring wherein developer modules the code of a met...
Improperly validated user input is the underlying root cause for a wide variety of attacks on web-ba...