Automatic categorization and visualization of lock behavior

S. Reiss, A. Tarvo
{"title":"Automatic categorization and visualization of lock behavior","authors":"S. Reiss, A. Tarvo","doi":"10.1109/VISSOFT.2013.6650540","DOIUrl":null,"url":null,"abstract":"We consider the problem of understanding locking behavior in large Java programs using a combination of data collection, data analysis, and visualization. Our technique starts by collecting partial information about all locks used in the program. It then analyzes this information to determine sets of locks with common behaviors and to determine, for each set of locks, how that lock is used, e.g. if it is used as a mutex, semaphore, read-write lock, etc. The result of the analysis is then presented to the user who can select specific locks for full analysis during a subsequent run. Visualizing locking information is particularly difficult since the time scale of a lock can be ten or more orders of magnitude different from the time scale of the overall run and locks can be used millions of times. We provide different visualizations and visualization techniques for this purpose. First, we analyze either the partial or full traces and identify patterns of how each lock is used and display just those patterns along with their frequency. Second, we provide a thread-centric view of locking that supports fish-eye views at the microsecond level as well as time compression. Third, we provide a lock-centric view that is based on the specific type of lock to show its particular behavior.","PeriodicalId":392495,"journal":{"name":"2013 First IEEE Working Conference on Software Visualization (VISSOFT)","volume":"433 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2013-10-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"7","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2013 First IEEE Working Conference on Software Visualization (VISSOFT)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/VISSOFT.2013.6650540","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 7

Abstract

We consider the problem of understanding locking behavior in large Java programs using a combination of data collection, data analysis, and visualization. Our technique starts by collecting partial information about all locks used in the program. It then analyzes this information to determine sets of locks with common behaviors and to determine, for each set of locks, how that lock is used, e.g. if it is used as a mutex, semaphore, read-write lock, etc. The result of the analysis is then presented to the user who can select specific locks for full analysis during a subsequent run. Visualizing locking information is particularly difficult since the time scale of a lock can be ten or more orders of magnitude different from the time scale of the overall run and locks can be used millions of times. We provide different visualizations and visualization techniques for this purpose. First, we analyze either the partial or full traces and identify patterns of how each lock is used and display just those patterns along with their frequency. Second, we provide a thread-centric view of locking that supports fish-eye views at the microsecond level as well as time compression. Third, we provide a lock-centric view that is based on the specific type of lock to show its particular behavior.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
自动分类和可视化锁的行为
我们考虑使用数据收集、数据分析和可视化的组合来理解大型Java程序中的锁行为的问题。我们的技术首先收集程序中使用的所有锁的部分信息。然后,它分析这些信息,以确定具有共同行为的锁集,并确定每组锁的使用方式,例如,它是否被用作互斥锁、信号量、读写锁等。然后将分析结果呈现给用户,用户可以在随后的运行中选择特定的锁进行全面分析。可视化锁信息特别困难,因为锁的时间尺度可能与整个运行的时间尺度相差10个或更多个数量级,而且锁可能被使用数百万次。我们为此提供了不同的可视化和可视化技术。首先,我们分析部分或全部跟踪,确定每个锁的使用模式,并显示这些模式及其频率。其次,我们提供了一个以线程为中心的锁视图,支持微秒级的鱼眼视图以及时间压缩。第三,我们提供了一个以锁为中心的视图,该视图基于特定类型的锁来显示其特定行为。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Finding structures in multi-type code couplings with node-link and matrix visualizations Using HTML5 visualizations in software fault localization Visualizing the allocation and death of objects Automatic categorization and visualization of lock behavior Towards interactive visualization support for pairwise testing software product lines
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1