数据处理方法、装置及相关产品制造方法及图纸

技术编号:25914755 阅读:23 留言:0更新日期:2020-10-13 10:33
本公开涉及一种数据处理方法、装置及相关产品,所述产品包括处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行上述数据处理方法,通过以上方法,本公开可以降低确定函数的自身运行时间的时间开销和内存开销,提高确定函数的自身运行时间的效率。

【技术实现步骤摘要】
数据处理方法、装置及相关产品
本公开涉及数据处理领域,尤其涉及一种确定函数自身运行时间的方法及装置。
技术介绍
程序运行需要有相应的运行时间,程序运行时间由该程序中的函数的运行时间决定,每一个函数的运行时间由其自身运行时间及其调用的函数的运行时间构成。用户有时需要了解某一函数的自身运行时间,相关技术中通常会采用遍历的方式计算该函数的自身运行时间。这个过程中通常要遍历程序的日志文件的各个记录,获取并额外保留程序日志中记录的该函数的入记录和出记录对应的时间、及该函数调用的函数的入记录和出记录的时间(在该函数的入记录和出记录之间的记录)。采用该方法计算函数的自身运行时间会带来较大的时间开销及内存开销。
技术实现思路
有鉴于此,本公开提出了一种确定函数自身运行时间的方法及装置。根据本公开的一方面,提供了一种确定函数自身运行时间的方法,包括:根据程序的日志文件创建索引文件,所述索引文件中包括程序的日志文件中各函数对应记录的记录位置标识,及各函数之间的调用关系,所述记录用于记载所述程序执行函数调用的信息;根据所述记录位置标识及所述调用关系,从所述索引文件中确定第一函数及所述第一函数的子函数在所述日志文件中对应记录的记录位置标识;根据第一函数及所述第一函数的子函数在所述日志文件中对应记录的记录位置标识,从所述日志文件中获取第一函数及所述第一函数的子函数的对应记录;根据所述第一函数及所述第一函数的子函数的对应记录,确定所述第一函数的自身运行时间。在一种可能的实现方式中,根据所述记录位置标识及所述调用关系,从所述索引文件中确定第一函数及所述第一函数的子函数在所述日志文件中对应记录的记录位置标识,包括:确定第一函数的第一记录在所述日志文件中的第一记录位置标识;根据所述调用关系确定第二函数的第二记录在所述日志文件中的第二记录位置标识,所述第二函数为所述第一函数的子调用。在一种可能的实现方式中,所述根据所述第一函数及所述第一函数的子函数的对应记录,确定所述第一函数的自身运行时间,包括:根据所述日志文件中第一函数的第一记录中记录的时间信息,及所述第二函数的第二记录中记录的时间信息,确定该第一函数的自身运行时间,其中,所述第一函数的第一记录为所述日志文件中所述第一记录位置标识对应的记录,所述第二函数的第二记录为所述日志文件中所述第二记录位置标识对应的记录。在一种可能的实现方式中,在所述索引文件中,所述各函数对应的记录包括各函数的入记录及出记录,所述入记录用于记载所述程序执行进入函数调用的信息,所述出记录用于记载所述程序执行退出函数调用的信息,各记录在所述日志文件中的位置序号按照各记录生成的先后顺序依次变化。在一种可能的实现方式中,在所述索引文件中,所述记录的位置序号对应索引号,所述入记录的位置序号对应的索引号对应该入记录的出记录的位置序号,所述出记录的位置序号对应的索引号对应该出记录中函数的父调用所在入记录的位置序号。在一种可能的实现方式中,所述根据所述记录位置标识及所述调用关系,从所述索引文件中确定第一函数及所述第一函数的子函数在所述日志文件中对应记录的记录位置标识,包括:确定索引文件中所述第一函数的入记录对应的位置序号为所述第一函数的入记录在所述日志文件中的第一入记录位置序号;确定索引文件中所述第一函数的入记录对应的位置序号所对应的索引号,为所述第一函数的出记录在所述日志文件中的第一出记录位置序号;在存在与所述第一入记录位置序号一致的索引号时,确定该索引号对应的位置序号为所述第二函数的出记录在所述日志文件中的第二出记录位置序号,所述第二函数为所述第一函数的子调用;确定索引文件中与所述第二出记录位置序号一致的索引号所对应的位置序号,为所述第二函数的入记录在所述日志文件中的第二入记录位置序号。在一种可能的实现方式中,所述根据第一函数及所述第一函数的子函数在所述日志文件中的记录,确定所述第一函数的自身运行时间,包括:根据所述日志文件在第一入记录位置序号对应的记录中所记录的第一入调用时间、及在第一出记录位置序号对应的记录中所记录的第一出调用时间,确定所述第一函数对应的运行时间;根据所述日志文件在第二入记录位置序号对应的记录中所记录的第二入调用时间、及在第二出记录位置序号对应的记录中所记录的第二出调用时间,确定所述第二函数对应的运行时间;根据所述第一函数对应的运行时间及所述第二函数对应的运行时间,确定所述第一函数的自身运行时间。根据本公开的另一方面,提供了一种确定函数自身运行时间的装置,包括:创建模块,用于根据程序的日志文件创建索引文件,所述索引文件中包括程序的日志文件中各函数对应记录的记录位置标识,及各函数之间的调用关系,所述记录用于记载所述程序执行函数调用的信息;第一确定模块,用于根据所述记录位置标识及所述调用关系,从所述索引文件中确定第一函数及所述第一函数的子函数在所述日志文件中对应记录的记录位置标识;获取模块,用于根据第一函数及所述第一函数的子函数在所述日志文件中对应记录的记录位置标识,从所述日志文件中获取第一函数及所述第一函数的子函数的对应记录;第二确定模块,用于根据所述第一函数及所述第一函数的子函数的对应记录,确定所述第一函数的自身运行时间。在一种可能的实现方式中,所述第一确定模块,还用于:确定第一函数的第一记录在所述日志文件中的第一记录位置标识;根据所述调用关系确定第二函数的第二记录在所述日志文件中的第二记录位置标识,所述第二函数为所述第一函数的子调用。在一种可能的实现方式中,所述第二确定模块,用于:根据所述日志文件中第一函数的第一记录中记录的时间信息,及所述第二函数的第二记录中记录的时间信息,确定该第一函数的自身运行时间,其中,所述第一函数的第一记录为所述日志文件中所述第一记录位置标识对应的记录,所述第二函数的第二记录为所述日志文件中所述第二记录位置标识对应的记录。在一种可能的实现方式中,在所述索引文件中,所述各函数对应的记录包括各函数的入记录及出记录,所述入记录用于记载所述程序执行进入函数调用的信息,所述出记录用于记载所述程序执行退出函数调用的信息,各记录在所述日志文件中的位置序号按照各记录生成的先后顺序依次变化。在一种可能的实现方式中,在所述索引文件中,所述记录的位置序号对应索引号,所述入记录的位置序号对应的索引号对应该入记录的出记录的位置序号,所述出记录的位置序号对应的索引号对应该出记录中函数的父调用所在入记录的位置序号。在一种可能的实现方式中,所述第一确定模块,还用于:确定索引文件中所述第一函数的入记录对应的位置序号为所述第一函数的入记录在所述日志文件中的第一入记录位置序号;确定索引文件中所述第一函数的入记录对应的位置序号所对应的索引号,为所述第一函数的出记录在所述日志文件中的第一出记录位置序号;在存在与所述第一入记录位置序本文档来自技高网...

【技术保护点】
1.一种确定函数自身运行时间的方法,其特征在于,包括:/n根据程序的日志文件创建索引文件,所述索引文件中包括程序的日志文件中各函数对应记录的记录位置标识,及各函数之间的调用关系,所述记录用于记载所述程序执行函数调用的信息;/n根据所述记录位置标识及所述调用关系,从所述索引文件中确定第一函数及所述第一函数的子函数在所述日志文件中对应记录的记录位置标识;/n根据第一函数及所述第一函数的子函数在所述日志文件中对应记录的记录位置标识,从所述日志文件中获取第一函数及所述第一函数的子函数的对应记录;/n根据所述第一函数及所述第一函数的子函数的对应记录,确定所述第一函数的自身运行时间。/n

【技术特征摘要】
1.一种确定函数自身运行时间的方法,其特征在于,包括:
根据程序的日志文件创建索引文件,所述索引文件中包括程序的日志文件中各函数对应记录的记录位置标识,及各函数之间的调用关系,所述记录用于记载所述程序执行函数调用的信息;
根据所述记录位置标识及所述调用关系,从所述索引文件中确定第一函数及所述第一函数的子函数在所述日志文件中对应记录的记录位置标识;
根据第一函数及所述第一函数的子函数在所述日志文件中对应记录的记录位置标识,从所述日志文件中获取第一函数及所述第一函数的子函数的对应记录;
根据所述第一函数及所述第一函数的子函数的对应记录,确定所述第一函数的自身运行时间。


2.根据权利要求1所述的方法,其特征在于,根据所述记录位置标识及所述调用关系,从所述索引文件中确定第一函数及所述第一函数的子函数在所述日志文件中对应记录的记录位置标识,包括:
确定第一函数的第一记录在所述日志文件中的第一记录位置标识;
根据所述调用关系确定第二函数的第二记录在所述日志文件中的第二记录位置标识,所述第二函数为所述第一函数的子调用。


3.根据权利要求2所述的方法,其特征在于,所述根据所述第一函数及所述第一函数的子函数的对应记录,确定所述第一函数的自身运行时间,包括:
根据所述日志文件中第一函数的第一记录中记录的时间信息,及所述第二函数的第二记录中记录的时间信息,确定该第一函数的自身运行时间,
其中,所述第一函数的第一记录为所述日志文件中所述第一记录位置标识对应的记录,所述第二函数的第二记录为所述日志文件中所述第二记录位置标识对应的记录。


4.根据权利要求1至3任一项所述的方法,其特征在于,在所述索引文件中,所述各函数对应的记录包括各函数的入记录及出记录,所述入记录用于记载所述程序执行进入函数调用的信息,所述出记录用于记载所述程序执行退出函数调用的信息,各记录在所述日志文件中的位置序号按照各记录生成的先后顺序依次变化。


5.根据权利要求4所述的方法,其特征在于,在所述索引文件中,所述记录的位置序号对应索引号,所述入记录的位置序号对应的索引号对应该入记录的出记录的位置序号,所述出记录的位置序号对应的索引号对应该出记录中函数的父调用所在入记录的位置序号。


6.根据权利要求5所述的方法,其特征在于,所述根据所述记录位置标识及所述调用关系,从所述索引文件中确定第一函数及所述第一函数的子函数在所述日志文件中对应记录的记录位置标识,包括:

【专利技术属性】
技术研发人员:不公告发明人
申请(专利权)人:上海寒武纪信息科技有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1