Difference between revisions of "Profiling Module"
Jump to navigation
Jump to search
m (Text replace - "{|" to "{| width='100%'") |
|||
Line 10: | Line 10: | ||
==prof:time== | ==prof:time== | ||
− | {| | + | {| width='100%' |
|- | |- | ||
| width='90' | '''Signatures''' | | width='90' | '''Signatures''' | ||
Line 29: | Line 29: | ||
==prof:mem== | ==prof:mem== | ||
− | {| | + | {| width='100%' |
|- | |- | ||
| width='90' | '''Signatures''' | | width='90' | '''Signatures''' | ||
Line 48: | Line 48: | ||
==prof:sleep== | ==prof:sleep== | ||
− | {| | + | {| width='100%' |
|- | |- | ||
| width='90' | '''Signatures''' | | width='90' | '''Signatures''' | ||
Line 64: | Line 64: | ||
{{Mark|Introduced with Version 7.5:}} | {{Mark|Introduced with Version 7.5:}} | ||
− | {| | + | {| width='100%' |
|- | |- | ||
| width='90' | '''Signatures''' | | width='90' | '''Signatures''' | ||
Line 80: | Line 80: | ||
{{Mark|Introduced with Version 7.5:}} | {{Mark|Introduced with Version 7.5:}} | ||
− | {| | + | {| width='100%' |
|- | |- | ||
| width='90' | '''Signatures''' | | width='90' | '''Signatures''' | ||
Line 96: | Line 96: | ||
{{Mark|Introduced with Version 7.5:}} | {{Mark|Introduced with Version 7.5:}} | ||
− | {| | + | {| width='100%' |
|- | |- | ||
| width='90' | '''Signatures''' | | width='90' | '''Signatures''' |
Revision as of 14:24, 21 December 2012
This XQuery Module contains functions for XQuery code.
Contents
Conventions
All functions in this module are assigned to the http://basex.org/modules/prof
namespace, which is statically bound to the prof
prefix.
All errors are assigned to the http://basex.org/errors
namespace, which is statically bound to the bxerr
prefix.
Functions
prof:time
Signatures | prof:time($expr as item()) as item()* prof:time($expr as item(), $cache as xs:boolean) as item()* prof:time($expr as item(), $cache as xs:boolean, $label as xs:string) as item()*
|
Summary | Measures the time needed to evaluate $expr and sends it to standard error or, if the GUI is used, to the Info View.If $cache is set to true() , the result will be temporarily cached. This way, a potential iterative execution of the expression (which often yields different memory usage) is blocked.A third, optional argument $label may be specified to tag the profiling result.
|
Examples |
|
Properties | The function is non-deterministic: evaluation order will be preserved by the compiler. |
prof:mem
Signatures | prof:mem($expr as item()) as item()* prof:mem($expr as item(), $cache as xs:boolean) as item()* prof:mem($expr as item(), $cache as xs:boolean, $label as xs:string) as item()*
|
Summary | Measures the memory allocated by evaluating $expr and sends it to standard error or, if the GUI is used, to the Info View.If $cache is set to true() , the result will be temporarily cached. This way, a potential iterative execution of the expression (which often yields different memory usage) is blocked.A third, optional argument $label may be specified to tag the profiling result.
|
Examples |
|
Properties | The function is non-deterministic: evaluation order will be preserved by the compiler. |
prof:sleep
Signatures | prof:sleep($ms as xs:integer) as empty-sequence()* |
Summary | Sleeps for the specified number of milliseconds. |
Properties | The function is non-deterministic: evaluation order will be preserved by the compiler. |
prof:dump
Signatures | prof:dump($expr as item()) as empty-sequence() prof:dump($expr as item(), $label as xs:string) as empty-sequence() |
Summary | Dumps a serialized representation of $expr to STDERR , optionally prefixed with $label , and returns an empty sequence. If the GUI is used, the dumped result is shown in the Info View.
|
Properties | In contrast to fn:trace() , the consumed expression will not be passed on.
|
prof:current-ms
Signatures | prof:current-ms() as xs:integer |
Summary | Returns the number of milliseconds passed since 1970/01/01 UTC. The granularity of the value depends on the underlying operating system and may be larger. For example, many operating systems measure time in units of tens of milliseconds. |
Properties | In contrast to fn:current-time() , the function is non-deterministic, as it returns different values every time it is called. Its evaluation order will be preserved by the compiler.
|
prof:current-ns
Signatures | prof:current-ns() as xs:integer |
Summary | Returns the current value of the most precise available system timer in nanoseconds. |
Properties | In contrast to fn:current-time() , the function is non-deterministic, as it returns different values every time it is called. Its evaluation order will be preserved by the compiler.
|
Changelog
- Version 7.5
- Added:
prof:dump
,prof:current-ms
,prof:current-ns
This module was introduced with Version 7.3.