Changes

Jump to navigation Jump to search
116 bytes added ,  16:18, 27 February 2020
no edit summary
| '''Summary'''
|Measures the execution time and memory consumption required for evaluating the specified {{Code|$expression}} and returns a map with the results. The following {{Code|$options}} are available:
* {{Code|memorytime}}: Include memory consumption execution time in result as {{Code|xs:decimal}} (unit: bytesmilliseconds; default: true).* {{Code|timememory}}: Include execution time memory consumption in result as {{Code|xs:integer}} (unit: millisecondsbytes; default: truefalse).
* {{Code|value}}: Include value in result (default: true).
Helpful notes:
|
* Return a human-readable representation of the memory consumption caused by fetching an XML document (<code>fetch:xml</code> is used, as <code>fn:doc</code> may already be evaluated at compilation time):
<pre classsyntaxhighlight lang="brush:xquery">
prof:track(fetch:xml('factbook.xml'))?memory
=> prof:human()
</presyntaxhighlight>
* The function call <code>prof:track((1 to 1000000)[. mod 2 = 0], map { 'time': false() })</code> will return something similar to:
<pre classsyntaxhighlight lang="brush:xquery">
map {
"memory": 21548400,
"value": (2, 4, 6, 8, 10, ...)
}
</presyntaxhighlight>
|}
| '''Examples'''
| Measures the time of an expression:
<pre classsyntaxhighlight lang="brush:xquery">
let $ns1 := prof:current-ns()
return (
return $ms || ' ms'
)
</presyntaxhighlight>
|}
|-
| width='120' | '''Signatures'''
|{{Func|prof:dump|$expr as item()*|empty-sequence()}}<br />{{Func|prof:dump|$expr as item()*, $label as xs:string|empty-sequence()}}<br />
|-
| '''Summary'''
==prof:gc==
 
{{Mark|Introduced with Version 9.2.}}
{| width='100%'
==prof:runtime==
 
{{Mark|Introduced with Version 9.2.}}
{| width='100%'
* Added: [[#prof:gc|prof:gc]], [[#prof:runtime|prof:runtime]]
* Updated: [[#prof:track|prof:track]]: decimal timing results; by default no memory profiling
;Version 9.0
Bureaucrats, editor, reviewer, Administrators
13,550

edits

Navigation menu