-
公开(公告)号:CN103365720A
公开(公告)日:2013-10-23
申请号:CN201210086688.0
申请日:2012-03-28
Applicant: 国际商业机器公司
IPC: G06F9/50
CPC classification number: G06F9/5016 , G06F12/02 , G06F12/023 , G06F12/0284
Abstract: 本发明涉及多线程环境下的全局堆分配技术,具体涉及用于多线程环境下动态调整全局堆分配的方法和系统。更具体地,本发明尤其涉及通过监测全局堆分配方法的冲突参数来动态调整全局堆分配的方法和系统。本发明提供了一种用于在多线程环境下动态调整全局堆分配的方法,包括:识别应用程序中的全局堆分配方法;判断所述全局堆分配方法是否为多线程冲突热点;以及响应于判断结果为是,利用本地栈分配所述全局堆分配方法所请求的内存空间。根据该方法,可以有的放矢地根据实时运行状态动态调整程序中固有的全局堆分配方法,减少了全局堆上产生的锁竞争,有效提高了资源分配的效率以及资源的利用率。
-
公开(公告)号:CN102722432A
公开(公告)日:2012-10-10
申请号:CN201110077585.3
申请日:2011-03-29
Applicant: 国际商业机器公司
IPC: G06F11/34
CPC classification number: G06F11/3476 , G06F11/3636 , G06F11/3644 , G06F2201/865
Abstract: 提供一种用于追踪面向对象的程序对内存的访问的方法和装置,所述方法包括:通过修改面向对象的程序的核心类,为程序中的至少一个类分配ID;从运行环境获得卸载的类的ID;以及释放用于存储卸载的类的内存访问信息的内存空间。所述装置与所述方法相对应。利用上述方法和装置,能够标识出面向对象的程序中的各个类,并获得卸载的类的信息,由此释放与卸载的类的内存访问有关的内存空间,从而极大地减小内存访问追踪的存储开销。
-
公开(公告)号:CN102033804A
公开(公告)日:2011-04-27
申请号:CN200910175692.2
申请日:2009-09-29
Applicant: 国际商业机器公司
IPC: G06F11/36
CPC classification number: G06F11/3636 , G06F11/3471 , G06F2201/86
Abstract: 提出了一种用于辅助运行时内存分析的方法和系统,该方法包括:为程序运行中的每一个任务分配一个唯一的ID;记录程序运行过程中发生的内存访问事件,包括进行内存访问的任务的ID;响应于一任务结束,发出任务结束通知,该任务结束通知包括该结束任务的ID;以及响应于该任务结束通知,释放内存中具有该结束任务的ID的所有内存访问事件。本发明的方法和系统可确保内存中存储的内存访问事件不会无限制地增长,从而显著地减少其内存开销,并使得动态内存分析更快和更有效率。
-
公开(公告)号:CN102222016B
公开(公告)日:2013-12-04
申请号:CN201010150075.X
申请日:2010-04-16
Applicant: 国际商业机器公司
IPC: G06F9/46
CPC classification number: G06F9/524
Abstract: 本发明涉及程序中的死锁检测技术,尤其涉及通过锁图分析的方式来检测程序中的死锁的技术。本发明提供了一种用于死锁检测的方法,包括:获取程序中与上锁操作有关的锁信息;基于所获取的锁信息,生成第一锁图,其中第一锁图中的每个节点包括锁集合和程序位置集合,其中锁集合包括至少一个锁,并且程序位置集合包括至少一个程序位置;提取所述第一锁图中的强连通子图;将所述第一锁图中的强连通子图展开,以生成第二锁图,其中第二锁图中的每个节点包括单个锁;以及提取所述第二锁图中的强连通子图,所述第二锁图中的强连通子图指示程序中的死锁。
-
公开(公告)号:CN103092742A
公开(公告)日:2013-05-08
申请号:CN201110337895.4
申请日:2011-10-31
Applicant: 国际商业机器公司
IPC: G06F11/34
CPC classification number: G06F11/3476 , G06F11/3466 , G06F11/3628 , G06F11/3636 , G06F2201/865
Abstract: 本发明涉及应用程序日志技术领域。更具体地,本发明尤其涉及通过将应用程序中原有的日志方法进行优化并重新注入应用程序的方法和系统。根据本发明的一个方面,提供了一种用于优化应用程序日志记录的方法,包括:识别应用程序中的原日志方法;将所述原日志方法中的字符串参数分为常量部分和变量部分;建立所述常量部分和变量部分间的对应关系标识;利用所述常量部分、变量部分以及对应关系标识,构造优化日志方法;通过代码注入,将所述应用程序中的原日志方法替换为所述优化日志方法。通过上述方法,可以减小日志记录的硬盘存储量以及IO操作频率。
-
公开(公告)号:CN101937365A
公开(公告)日:2011-01-05
申请号:CN200910139821.2
申请日:2009-06-30
Applicant: 国际商业机器公司
CPC classification number: G06F11/3612 , G06F9/524 , G06F11/3604
Abstract: 本发明公开一种并行程序的死锁检测方法和系统,其中该方法包括:在并行程序运行过程中确定所述并行程序的锁不再被使用;从对应于所述并行程序运行过程的锁图中删除与不再被使用的锁对应的节点以及与不再被使用的锁相关的边以获得更新的锁图,其中所述锁图是根据所述并行程序的锁操作构建的;以及对所述更新的锁图进行死锁检测。
-
公开(公告)号:CN102650964B
公开(公告)日:2016-03-09
申请号:CN201110047972.2
申请日:2011-02-28
Applicant: 国际商业机器公司
IPC: G06F11/30
CPC classification number: G06F17/30958 , G06F11/3013 , G06F11/302 , G06F11/3096
Abstract: 本发明提供了用于监控面向对象的应用的方法、系统和自监控系统。用于监控面向对象的应用的方法包括:根据应用的实时运行,建立代表事务的有向图,所述有向图中包含有多个可替换类的节点;根据有向图中多个可替换类的节点之间的调用关系选择关键节点;在选出的关键节点处插入监控程序。本发明的一个方面使监控面向对象的应用的监控开销大大减小。
-
公开(公告)号:CN103092742B
公开(公告)日:2015-08-19
申请号:CN201110337895.4
申请日:2011-10-31
Applicant: 国际商业机器公司
IPC: G06F11/34
CPC classification number: G06F11/3476 , G06F11/3466 , G06F11/3628 , G06F11/3636 , G06F2201/865
Abstract: 本发明涉及应用程序日志技术领域。更具体地,本发明尤其涉及通过将应用程序中原有的日志方法进行优化并重新注入应用程序的方法和系统。根据本发明的一个方面,提供了一种用于优化应用程序日志记录的方法,包括:识别应用程序中的原日志方法;将所述原日志方法中的字符串参数分为常量部分和变量部分;建立所述常量部分和变量部分间的对应关系标识;利用所述常量部分、变量部分以及对应关系标识,构造优化日志方法;通过代码注入,将所述应用程序中的原日志方法替换为所述优化日志方法。通过上述方法,可以减小日志记录的硬盘存储量以及IO操作频率。
-
公开(公告)号:CN101937365B
公开(公告)日:2013-05-15
申请号:CN200910139821.2
申请日:2009-06-30
Applicant: 国际商业机器公司
CPC classification number: G06F11/3612 , G06F9/524 , G06F11/3604
Abstract: 本发明公开一种并行程序的死锁检测方法和系统,其中该方法包括:在并行程序运行过程中确定所述并行程序的锁不再被使用;从对应于所述并行程序运行过程的锁图中删除与不再被使用的锁对应的节点以及与不再被使用的锁相关的边以获得更新的锁图,其中所述锁图是根据所述并行程序的锁操作构建的;以及对所述更新的锁图进行死锁检测。
-
公开(公告)号:CN102222016A
公开(公告)日:2011-10-19
申请号:CN201010150075.X
申请日:2010-04-16
Applicant: 国际商业机器公司
IPC: G06F9/46
CPC classification number: G06F9/524
Abstract: 本发明涉及程序中的死锁检测技术,尤其涉及通过锁图分析的方式来检测程序中的死锁的技术。本发明提供了一种用于死锁检测的方法,包括:获取程序中与上锁操作有关的锁信息;基于所获取的锁信息,生成第一锁图,其中第一锁图中的每个节点包括锁集合和程序位置集合,其中锁集合包括至少一个锁,并且程序位置集合包括至少一个程序位置;提取所述第一锁图中的强连通子图;将所述第一锁图中的强连通子图展开,以生成第二锁图,其中第二锁图中的每个节点包括单个锁;以及提取所述第二锁图中的强连通子图,所述第二锁图中的强连通子图指示程序中的死锁。
-
-
-
-
-
-
-
-
-