跳到主要导航 跳到搜索 跳到主要内容

Address chain: Profiling java objects without overhead in java heaps

  • Xiaohua Shi*
  • , Junru Xie
  • , Hengyang Yu
  • *此作品的通讯作者
  • Beihang University

科研成果: 书/报告/会议事项章节会议稿件同行评审

摘要

How to efficiently and adequately profile Java objects is one of the key problems for debugging, monitoring, program analysis, and many optimizations. Most current approaches have extra overheads in Java heaps and slow down the runtime performance significantly, or need to modify particular object layouts with limited extendibility and adaptivity. In this paper, we present a novel profiling mechanism, namely Address Chain, which has no overhead in Java heaps and does not modify object layouts, class layouts and any other key structures in Java Virtual Machines. So far, the Address Chain mechanism profiles the accurate life cycle, the allocation site in jitted code, as well as the physical memory trace of object movements with time stamps, etc., for every Java object. Furthermore, it provides a profiling framework that can be easily adapted to profile more or less information for future requirements. It is a general mechanism suitable for garbage collectors using mark-andsweep, copying or generational algorithms. The runtime overheads of our approach are reasonable. We implemented our mechanism on Apache Harmony 6.0 DRLVM, which is a J2SE Virtual Machine with a generational garbage collector. The runtime overheads of the profiler are about 5% on average for SpecJVM2008, less than 8% for SpecJBB2005, and about 8% for Dacapo, respectively. We use a distributed mode to collect and calculate the object information from the profiled data sent via network. For most cases we studied, the object status can be calculated almost simultaneously when Java applications run on another computing device. Our mechanism has the capability of providing online object status in a distributed way. We also demonstrate how to use the profiled data to help optimizations like pretenuring.

源语言英语
主期刊名Programming Languages and Systems - 12th Asian Symposium, APLAS 2014, Proceedings
编辑Jacques Garrigue
出版商Springer Verlag
408-427
页数20
ISBN(电子版)9783319127354
DOI
出版状态已出版 - 2014
活动12th Asian Symposium on Programming Languages and Systems, APLAS 2014 - Singapore, 新加坡
期限: 17 11月 201419 11月 2014

出版系列

姓名Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
8858
ISSN(印刷版)0302-9743
ISSN(电子版)1611-3349

会议

会议12th Asian Symposium on Programming Languages and Systems, APLAS 2014
国家/地区新加坡
Singapore
时期17/11/1419/11/14

学术指纹

探究 'Address chain: Profiling java objects without overhead in java heaps' 的科研主题。它们共同构成独一无二的学术指纹。

引用此