1.一种用于通过辅助对具有处理负荷并且使用存储器的软件程序中的存储器泄漏的检测来改进计算机的运作的计算过程,所述过程包括:
(a)获得包括存储器使用采样的存储器使用数据,所述存储器使用采样共同地指定多个数据类型,每个存储器使用采样指定在指定的采样时间用于所述数据类型中的至少一个数据类型的至少一个使用统计量的值;
(b)通过利用处理器处理所述存储器使用数据的至少部分,来针对多个所述数据类型而计算地标识随时间的相应的存储器使用趋势;
(c)计算地搜索在数据类型存储器使用趋势之间的相关性;
(d)计算地将数据类型分组成存储器使用趋势相关的组,从而使得给定的存储器使用趋势相关的组中的所有数据类型具有满足预定趋势相关性标准的存储器使用趋势,并且其趋势没有满足所述预定趋势相关性标准的数据类型不在所述给定的存储器使用趋势相关的组中;以及
(e)使用分组步骤的结果。
2.根据权利要求1所述的计算过程,其中所述预定趋势相关性标准在并且仅在趋势具有超出预定相关性阈值的相关性系数时指定所述趋势相关。
3.根据权利要求1所述的计算过程,其中用于所述数据类型中的每个数据类型的使用统计量包括以下各项中的至少一项:
指示所述数据类型的多少项目被分配的计数;
指示所述数据类型的多少项目被取消分配的计数;
指示多少存储器被指明为被分配给所述数据类型的项目的存储器大小;
指示多少被指明为被分配给所述数据类型的项目的存储器被取消分配的存储器大小。
4.根据权利要求1所述的计算过程,其中计算地标识相应的存储器使用趋势包括以下各项中的至少一项:
使用最小平方来执行简单线性回归以将使用统计量拟合到线性趋势;
执行分段回归以将使用统计量拟合到逐段线性趋势;
执行非线性回归以将使用统计量拟合到非线性趋势。
5.根据权利要求1所述的计算过程,其中计算地搜索在数据类型存储器使用趋势之间的相关性包括以下各项中的至少一项:
确定用于数据类型存储器使用趋势的Pearson乘积-瞬间相关性系数;
确定用于数据类型存储器使用趋势的Spearman秩相关性系数;
确定用于数据类型存储器使用趋势的Kendall秩相关性系数;
确定用于数据类型存储器使用趋势的距离相关性;
确定用于数据类型存储器使用趋势的距离协方差;
确定用于数据类型存储器使用趋势的Brownian距离协方差。
6.根据权利要求1所述的计算过程,其中计算地标识相应的存储器使用趋势包括将用于所述处理负荷的使用统计量归一化。
7.根据权利要求1所述的计算过程,其中计算地将数据类型分组成存储器使用趋势相关的组包括对具有如下趋势的两个数据类型分组,所述趋势具有在预定阈值以上的相关性系数,即使所述趋势具有不同增长速率。
8.一种被配置有数据和指令的计算机可读存储介质,所述指令在由至少一个处理器执行时,使得所述处理器执行用于辅助对具有处理负荷并且使用存储器的软件中的存储器泄漏的检测的技术过程,所述过程包括以下步骤:
(a)获得包括存储器使用采样的存储器使用数据,所述存储器使用采样共同地指定多个数据类型,每个存储器使用采样指定在指定的采样时间用于所述数据类型中的至少一个数据类型的至少一个使用统计量的值;
(b)通过利用处理器处理所述存储器使用数据的至少部分,来针对多个所述数据类型而计算地标识随时间的相应的存储器使用趋势;
(c)计算地搜索在数据类型存储器使用趋势之间的相关性;
(d)计算地将数据类型分组成存储器使用趋势相关的组,从而使得给定的存储器使用趋势相关的组中的所有数据类型具有满足预定趋势相关性标准的存储器使用趋势,所述预定趋势相关性标准在趋势具有超出预定相关性阈值的相关性系数时指定所述趋势相关。
9.根据权利要求8所述的配置的存储介质,其中所述预定相关性阈值在范围从-1到+1的相关性系数标度上具有至少0.5的绝对值。
10.根据权利要求8所述的配置的存储介质,其中所述过程还包括以下各项中的至少两项:
显示在向用户被标识为具有最多存储器泄漏的组中的数据类型的数据类型名称;
显示在向用户被标识为具有用户定义的数据类型的最多存储器泄漏的组中的所述用户定义的数据类型的数据类型名称;
显示用于特定数据类型的估计的泄漏大小;
显示用于特定数据类型的以每单位时间的存储器大小为单位的估计的泄漏速率;
显示用于特定数据类型的估计的泄漏项目计数;
显示用于特定数据类型的以每单位时间的项目计数为单位的估计的泄漏速率;
响应于估计的泄漏项目计数来重新启动过程;
响应于估计的泄漏速率来重新启动过程。
11.一种存储器分析计算机系统,被配置有存储器分析辅助,所述存储器分析辅助用于通过辅助对具有处理负荷并且使用存储器的软件中的存储器泄漏的检测来改进所述存储器分析计算机系统本身的运作或者另一计算机系统的运作,所述存储器分析计算机系统包括:
逻辑处理器;
与所述逻辑处理器可操作地通信的存储器;
驻留在所述存储器中的趋势相关性标准;以及
驻留在所述存储器中并且具有指令的存储器分析工具,所述指令由所述处理器可执行以针对多个数据类型而标识随时间的相应的存储器使用趋势,搜索在数据类型存储器使用趋势之间的相关性,以及将数据类型分组成存储器使用趋势相关的组,从而使得给定的存储器使用趋势相关的组中的所有数据类型具有满足所述趋势相关性标准的存储器使用趋势,并且其趋势没有满足所述趋势相关性标准的数据类型不在所述给定的存储器使用趋势相关的组中。
12.根据权利要求11所述的存储器分析计算机系统,其中所述系统包括显示器,并且所述存储器分析工具包括软件,所述软件显示以下项目中的至少两个项目:
在向用户被标识为具有最多存储器泄漏的组中的数据类型的数据类型名称;
在被标识为具有用户定义的数据类型的最多存储器泄漏的组中的所述用户定义的数据类型的数据类型名称;
用于特定数据类型的估计的泄漏大小;
用于特定数据类型的以每单位时间的存储器大小为单位的估计的泄漏速率;
用于特定数据类型的估计的泄漏项目计数;
用于特定数据类型的以每单位时间的项目计数为单位的估计的泄漏速率。
13.根据权利要求11所述的存储器分析计算机系统,其中所述趋势相关性标准包括在范围从-1到+1的相关性系数标度上具有至少0.45的绝对值的相关性阈值。
14.根据权利要求11所述的存储器分析计算机系统,其中所述存储器分析工具至少部分通过计算以下各项中的至少一项来搜索在数据类型存储器使用趋势之间的相关性:
用于数据类型存储器使用趋势的Pearson乘积-瞬间相关性系数;
用于数据类型存储器使用趋势的Spearman秩相关性系数;
用于数据类型存储器使用趋势的Kendall秩相关性系数;
用于数据类型存储器使用趋势的统计地显著相关性系数;
用于数据类型存储器使用趋势的距离相关性。
15.根据权利要求11所述的存储器分析计算机系统,其中所述存储器分析工具包括显示数据类型存储器使用趋势的图形的图形用户界面和软件。