Cube' Derived Metrics  (CubeLib 4.9, revision e28b3c58)
Introduction in CubePL and Performance Analysis using Cube's Derived Metrics
Reference of CubePL

Supported calls in CubePL

Here is the table of currently supported calls in CubePL:

Operation Explanation
123.34 a numerical constant
"STRING" a string constant
-x negative value of x
() grouping (priority)
| | absolute value
+ - / * arithmetical operations
A^x A in power of x
> < >= <= != ==

numerical comparison

and or xor not boolean operations
eq string comparison
seq case insensitive string comparison
=~ /expression/ matching of regular expression
sin(x) cos(x) asin(x) acos(x) tan(x) cot(x) atan(x) acot(x) trigonometrical functions
ln(x) natural logarithm of x
exp(x) natural exponent of x
sqrt(x) square root value of x
random(x) random number from 0 to x
pos(x) returns x, if x>, or 0
neg(x) returns x, if x<0, or 0
sgn(x) returns -1, if x<0, 0 if x is 0 and 1 is x>0
abs(x) returns absolut value
ceil(x) returns smallest integer value, which is bigger than x
floor(x) returns biggest integer value, which is smaller than x
min(x,y) returns smaller value of x and y
max(x,y) returns bigger value of x and y
uppercase(x) returns uppercase version of x
lowercase(x) returns lowercase version of x
env("x") returns a value of the environment variable x
local(var) Declares (to compile time) a variable var as local. It cannot be redeclared later
print(expression) Prints out in to the standard output the value of expression.
global(var) Declares (to compile time) a variable var as global. It cannot be redeclared later
${var} 0th element of the variable with name var
${var}[x] x-th element of the variable with name var
sizeof(var) number of elements in the variable var
defined(var) returns true (1), if the variable var is defined, otherwise it returns false (0)
metric::[uniq_name](i|e|*, i|e|*) context sensetive value of metric uniq_name
metric::context::[uniq_name](i|e|*, i|e|*) context sensetive value of metric uniq_name
metric::fixed::[uniq_name](i|e|*, i|e|*) context independend value of metric uniq_name
metric::call::[uniq_name](c_id, i|e|*, s_id, i|e|*) value of metric uniq_name for the call path with id c_id and system resource with an id s_id
cube::metric::set::[uniq_name]("X", "Y") sets a property X of a metric uniq_name to value Y. Corrently supported are only "value" with value "VOID" or else
cube::metric::get::[uniq_name]("X") returns a property X of a metric uniq_name. Corrently supported are
  1. unique name - returns unique name of a metric uniq_name
  2. display name - returns display name of a metric uniq_name
  3. uom - returns unit of measurement of a metric uniq_name
  4. dtype - returns data type of a metric uniq_name as a string
  5. url - returns url of online help for the metric uniq_name
  6. description - returns description of a metric uniq_name
  7. value - returns property "value" for the metric uniq_name. Its value "VOID" deactivates metric and it returns always a zero.
cube::metric::get::[uniq_name]("X", "Y")Extended version of cube::metric::get::. Returns a property X of a metric uniq_name with its value "Y". Currently supported values for X are
  1. attribute - returns value of the attribute Y.
cube::callpath::get(id, "X", "Y") Returns a property X of callpath with "id" with its value "Y". Currently supported values for X are
  1. attribute - returns value of the attribute Y.
cube::region::get(id, "X", "Y") Returns a property X of region with "id" with its value "Y". Currently supported values for X are
  1. attribute - returns value of the attribute Y.
cube::stn::get(id, "X", "Y") Returns a property X of a system tree node, or of a location group or of a location with "sysid" with its value "Y". Currently supported values for X are
  1. attribute - returns value of the attribute Y.
cube::locationgroup::get(id, "X", "Y")
cube::location::get(id, "X", "Y")
cube::metric::set::[uniq_name]("X", "Y")Sets the property X of a metric uniq_name with the value "Y". Currently supported values for X are
  1. attribute - returns value of the attribute Y.
cube::callpath::set(id, "X", "Y") Sets the property X of callpath with "id" with its value "Y". Currently supported values for X are
  1. attribute - returns value of the attribute Y.
cube::region::set(id, "X", "Y") Sets the property X of region with "id" with its value "Y". Currently supported values for X are
  1. attribute - returns value of the attribute Y.
cube::stn::set(id, "X", "Y") Sets the property X of a system tree node, or of a location group or of a location with "sysid" with its value "Y". Currently supported values for X are
  1. attribute - returns value of the attribute Y.
cube::locationgroup::set(id, "X", "Y")
cube::location::set(id, "X", "Y")

Cube C++ Library    Copyright © 1998 Forschungszentrum Jülich GmbH, Jülich Supercomputing Centre
Copyright © 2009–2015 German Research School for Simulation Sciences GmbH, Laboratory for Parallel Programming