Elephant tracks: portable production of complete and precise gc traces

ISMM(2013)

引用 36|浏览61
暂无评分
摘要
We present Elephant Tracks (ET), a dynamic program analysis tool for Java that produces detailed traces of garbage collection-related events, including object allocations, object deaths, and pointer updates. Like prior work, our tracing tool is based on the Merlin algorithm [6,7], but offers several substantial new capabilities. First, it is much more precise than previous tools: it traces method entries and exits and measures time in terms of them, allowing it to place events precisely in the context of the program structure. Second, it is implemented using a combination of JVM Tool Interface (JVMTI)[13] callbacks and bytecode rewriting, and works with any standard JVM. Finally, it produces complete traces, including weak references, events from the Java Native Interface and sun.misc.Unsafe, and VM start up objects. In this paper we also explore the general design space of tracing tools, and carefully define the execution model that the traces represent.
更多
查看译文
关键词
program structure,jvm tool interface,standard jvm,elephant track,elephant tracks,dynamic program analysis tool,portable production,precise gc trace,object allocation,object death,previous tool,merlin algorithm,java native interface,garbage collection,java
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要