Content-type:text/html paradyndSIM - Synthetic Performance Data Generator

paradyndSIM [-standalone] <description File> [-log <log file>] [-delay <time>]

This program provides a way to generate synthetic performance data for testing and debugging the rest of the paradyn system. It is provides the same dynamic instrumentation interface provided by other paradyn daemons. However rather than running a parallel program, it reads a file (<descrip- tion File>) that describes a synthetic "program". The description file describes the metrics and foci available for the "program". In addition, it describes how to generate a metric for each focus. paradyndSIM then "runs" this "program" and processes requests to enable and disable data collection for the "program".

-standalone This option specifies that paradyndSIM should be run in standalone mode and generate data to standard output. This mode is intended for debugging paradyndSIM and is not intended for normal use. -log <log file> When this flag is given, paradyndSIM records all of the performance data it generates to file <log file>. This is useful for debugging "program" description files and paradyndSIM itself. This is considered an option to the synthetic program, and must appear after the <description File> on the command line. -delay <time> (default value 1 second) This option controls the rate at which paradyndSIM gen- erates data and forwards it to the paradyn process. paradyndSIM generates data for all of the enabled metric and focus pairs at one timestep (simulated sam- ple point). It then waits <time> before generating the next set of samples. This is considered an option to the synthetic program, and so appear after the <description File> on the command line. The basic format of the description file is: duration <float> rate <float> seed <float> # anything from a `#' to the end of a line is a comment <metrics declarations> <data source declarations> <focus declarations> <metric focus pairs> The first section defines three global variables. The dura- tion variable indicates the length of the program's execu- tion in seconds. The rate variables defines the time between samples in seconds. A value of 1.0 indicates that samples should be generated once a second. seed defines the seed value for the random number generator used to create the data. By setting this value, paradyndSIM will generate the same data every-time a particular program is run. The default value of the seed is pseudo-random based on pid and time of day. The second section of a program description declares the metrics. A metric declaration looks like: metric metricName units [eventMetric | sampleMetric] metricName defines the name of the metric and must be unique among all other metric names defined for a particular pro- gram. units defines the name of the y-units for this metric. Metrics that are expressed in the same units (e.g. percent time) should have the same units. The final parame- ter to a metric declaration indicates how the metric should be combined with other metrics. eventMetric are averaged, and sampleMetric are summed. The third part of a program definition is the data sources. Data sources are time varying functions that can be used to describe the value of a metric/focus pair. The syntax of a source declaration looks like: source cpuSrc = srcExpr; cpuSrc defines the name of the source. This name should be unique among all sources defined for a single program. srcExpr defines the value of this source. A srcExpr can be on of the following things: <float> A numeric constant. The value of the source will be this constant for all samples. square(min, max, duty cycle, period) The source will be a square wave whose value ranges from min to max and has its value repeats every period seconds. The duty cycle of the wave is duty cycle. (The duty cycle of a square wave is the fraction of the period where the value is max). The value of the function starts and max at time 0 and remains there for the first duty cycle * period seconds. random(min, max) The source will be a random number between min and max. srcExpr + srcExpr The source will be the sum of the two srcExpr. srcExpr - srcExpr The source will be the difference of the two srcExprs. The fourth section of a program description defines the foci. A focus declaration looks like: focus focus name = <resource name, resource name, ...>; focus name defines the name of the focus and must be unique for all foci in this a given program. resource name defines a resource that is a component of this focus. A typical resource looks like /Procedure/child. The final component of a program description is a series of metric/resource pairs and how to calculate the value of each pair. The basic form of a definition is: metricName<focusName> = srcExpr; Paradyn(1). Copyright 1994, The Paradyn Software Team. Jeff Hollingsworth (hollings@cs.wisc.edu)