Package org.apache.sysds.runtime.controlprogram.parfor.stat

## Class StatisticMonitor

- java.lang.Object
- - org.apache.sysds.runtime.controlprogram.parfor.stat.StatisticMonitor

    public class StatisticMonitor
    extends Object

This singleton statistic monitor is used to consolidate all parfor runtime statistics. Its purpose is mainly for (1) debugging and (2) potential optimization.

### Constructor Summary

Constructors
`StatisticMonitor()`

### Method Summary

All Methods Static Methods Concrete Methods
`static String` `createReport()` Creates a nested statistic report of all parfor and parworker instances.
`static void` `disableStatMonitoring()` Globally disables statistic monitor for the currently activ JVM.
`static void` `putPfPwMapping​(long pfid, long pwid)` Register information about parent-child relationships of parworkers and parfor program blocks, with a parfor can be related to one or many parworkers.
`static void` `putPFStat​(long id, Stat type, double s)` Puts a specific parfor statistic for future analysis into the repository.
`static void` `putPWStat​(long id, Stat type, double s)` Puts a specific parworker statistic for future analysis into the repository.

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### StatisticMonitor

    public StatisticMonitor()

### Method Detail

#### putPfPwMapping

    public static void putPfPwMapping​(long pfid,
                                      long pwid)

Register information about parent-child relationships of parworkers and parfor program blocks, with a parfor can be related to one or many parworkers.

Parameters:
  `pfid` - ?
  `pwid` - ?

#### putPFStat

    public static void putPFStat​(long id,
                                 Stat type,
                                 double s)

Puts a specific parfor statistic for future analysis into the repository.

Parameters:
  `id` - ?
  `type` - parfor statistic type
  `s` - ?

#### putPWStat

    public static void putPWStat​(long id,
                                 Stat type,
                                 double s)

Puts a specific parworker statistic for future analysis into the repository.

Parameters:
  `id` - ?
  `type` - parfor statistic type
  `s` - ?

#### disableStatMonitoring

    public static void disableStatMonitoring()

Globally disables statistic monitor for the currently activ JVM.

#### createReport

    public static String createReport()

Creates a nested statistic report of all parfor and parworker instances. This should be called after completed execution. NOTE: This report is mainly for analysis and debugging purposes.

Returns:
  report as string