Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Performance 如何分析Saxon的执行情况_Performance_Xslt_Profiling_Saxon - Fatal编程技术网

Performance 如何分析Saxon的执行情况

Performance 如何分析Saxon的执行情况,performance,xslt,profiling,saxon,Performance,Xslt,Profiling,Saxon,本着的精神,我想创建一个概要文件,显示XSL转换所花费的时间。使用Saxon-TP:profile.html选项,我们创建了一个“样式表执行时间分析”html文档 在该文件的顶部,我们看到: Total time: 1102316.688 milliseconds 这个数字(1102秒)与我测量的程序执行时间相对应 但是,“总时间(净)”列值的总和不到总时间的2%。根据,我假设“总时间(净)”列值以毫秒为单位报告 我通常会自上而下地创建一个概要文件,但在这种情况下,我不想把精力投入到优化一个据

本着的精神,我想创建一个概要文件,显示XSL转换所花费的时间。使用Saxon-TP:profile.html选项,我们创建了一个“样式表执行时间分析”html文档

在该文件的顶部,我们看到:

Total time: 1102316.688 milliseconds
这个数字(1102秒)与我测量的程序执行时间相对应

但是,“总时间(净)”列值的总和不到总时间的2%。根据,我假设“总时间(净)”列值以毫秒为单位报告

我通常会自上而下地创建一个概要文件,但在这种情况下,我不想把精力投入到优化一个据报道贡献不到我总响应时间0.5%的模板上


我怎样才能知道我的时间到底到哪里去了?具体地说,我如何知道我的程序98%的未报告时间被消耗在哪里?

有趣的是:我以前从未见过这种效果。总的计时有什么意义吗?条目模板的总时间(通常匹配=“/”)是否接近总运行时间?我想我应该通过查看Java概要文件来进行调查:了解Java VM在哪里花费时间应该可以解释它为什么要逃避XSLT级别的检测。(a)我认为一个可能的解释是:当使用-TP时,代码在启用跟踪的情况下运行,当启用跟踪时,全局变量在进入第一个模板规则之前被急切地求值。全局变量的执行时间不包括在概要文件中,除非它们调用函数或模板。也许您有一个需要很长时间计算的全局变量,可能是因为对doc()的调用或某个复杂的路径表达式?(b)Java概要文件我指的是-Xrunhprof:cpu=samples的输出,或者VisualJVM的输出,显示了哪些方法占用了最多的时间,以及调用它们的位置。是的。我将把它作为一项要求记录下来。请参阅。今天早上奥尼尔请了病假,但这次挑战似乎使他苏醒过来。。。