Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Ajeet Shankar

dblp:54/767 · DBLP profile ↗
← Back
3ranked-venue papers
3as first author
0since 2021 · last 2008
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 3 · 3 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
3 papers
Program analysis · 34% Runtime systems and virtual machines · 20% Program verification · 19%

Topics — the 9 heaviest of 9, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Operating systems › resource management
memory management
0.112008
Jolt: lightweight dynamic analysis and removal of object churn · OOPSLA 2008
Runtime systems and virtual machines › runtime memory management
stack allocation
0.112008
Jolt: lightweight dynamic analysis and removal of object churn · OOPSLA 2008
Program analysis
dynamic analysis
0.112007
DITTO: automatic incrementalization of data structure invariant checks (in Java) · PLDI 2007
Program analysis › static analysis
incremental analysis
0.112007
DITTO: automatic incrementalization of data structure invariant checks (in Java) · PLDI 2007
Program verification › invariant verification
invariant checking
0.112007
DITTO: automatic incrementalization of data structure invariant checks (in Java) · PLDI 2007
Compilers and program optimization › program specialization
runtime specialization
0.112005
Runtime specialization with optimistic heap analysis · OOPSLA 2005
Program analysis › static analysis › pointer analysis
escape analysis
0.012008
Jolt: lightweight dynamic analysis and removal of object churn · OOPSLA 2008
Program verification › dynamic verification
runtime verification
0.012007
DITTO: automatic incrementalization of data structure invariant checks (in Java) · PLDI 2007
Runtime systems and virtual machines › dynamic compilation
just-in-time compilation
0.012005
Runtime specialization with optimistic heap analysis · OOPSLA 2005

Methods — techniques the papers use, named apart from their topics

escape analysis · 0.1dynamic analysis · 0.1source-to-source transformation · 0.1store profiling · 0.1invalidation mechanism · 0.1
YearPublicationVenuePosition
2008 Jolt: lightweight dynamic analysis and removal of object churn
abstract
It has been observed that component-based applications exhibit object churn, the excessive creation of short-lived objects, often caused by trading performance for modularity. Because churned objects are short-lived, they appear to be good candidates for stack allocation. Unfortunately, most churned objects escape their allocating function, making escape analysis ineffective.
Ajeet Shankar, Matthew Arnold, Rastislav Bodík
OOPSLA1
2007 DITTO: automatic incrementalization of data structure invariant checks (in Java)
abstract
We present DITTO, an automatic incrementalizer for dynamic, side-effect-free data structure invariant checks. Incrementalization speeds up the execution of a check by reusing its previous executions, checking the invariant anew only the changed parts of the data structure. DITTO exploits properties specific to the domain of invariant checks to automate and simplify the process without restricting what mutations the program can perform. Our incrementalizer works for modern imperative languages such as Java and C#. It can incrementalize,for example, verification of red-black tree properties and the consistency of the hash code in a hash table bucket. Our source-to-source implementation for Java is automatic, portable, and efficient. DITTO provides speedups on data structures with as few as 100 elements; on larger data structures, its speedups are characteristic of non-automatic incrementalizers: roughly 5-fold at 5,000 elements,and growing linearly with data structure size.
Ajeet Shankar, Rastislav Bodík
PLDI1
2005 Runtime specialization with optimistic heap analysis
abstract
We describe a highly practical program specializer for Java programs. The specializer is powerful, because it specializes optimistically, using (potentially transient) constants in the heap; it is precise, because it specializes using data structures that are only partially invariant; it is deployable, because it is hidden in a JIT compiler and does not require any user annotations or offline preprocessing; it is simple, because it uses existing JIT compiler ingredients; and it is fast, because it specializes programs in under 1s.These properties are the result of (1) a new algorithm for selecting specializable code fragments, based on a notion of influence; (2) a precise store profile for identifying constant heap locations; and (3) an efficient invalidation mechanism for monitoring optimistic assumptions about heap constants. Our implementation of the specializer in the Jikes RVM has low overhead, selects specialization points that would be chosen manually, and produces speedups ranging from a factor of 1.2 to 6.4, comparable with annotation-guided specializers.
Ajeet Shankar, S. Subramanya Sastry, Rastislav Bodík, James E. Smith 0001
OOPSLA1