Previous: , Up: Writing to a log file   [Contents][Index]


Computing aggregates

Computing aggregates

What if ‘msgsize’ takes on a number of values throughout the execution of the program and for each value a number of runs is performed? How would one log the median of each set of data? Using ‘THE msgsize’ won’t work because the message size is not constant. Using ‘msgsize’ alone won’t work either because coNCePTuaL would then take the median of the times gathered across all message sizes, which is undesirable. The solution is for the program to specify explicitly when aggregate functions ( MEDIAN and all of the other functions listed in Aggregate functions) compute a value:

<flush_stmt> ::= <source_task>
COMPUTES AGGREGATES

The intention is that an inner loop might LOG data after every iteration and an outer loop would ‘COMPUTE AGGREGATES’ after each iteration.

Scott Pakin, pakin@lanl.gov