Aggregative Downstream API integration
The damper value (in nanoseconds in the manifest file) will decide the minimum phase length for which the phase context information can be sent to the NRM (implemented in 'libnrm' repo [See Issue 2]. This will limit the number of msgs sent to the NRM.
In case, the phase length is smaller than the damper value, it will be aggregated over the next phases such that it is greater than the damper value.
The new message will send
('aggregation', 'computetime', 'totaltime')
where aggregation corresponds to the number of phases aggregate for the totaltime to be greater than the damper value in the manifest file.
Previously, ('startcompute', 'endcompute', 'startbarrier', 'endbarrier') were sent to the NRM from the application to be used to invoke the policy.
To integrate the new message into the NRM following changes are needed
ApplicationManagerto store the new message
Controllerto invoke policy on a container
Controllerfunction to run the policy on container every time a message is received
Powerpolicyto invoke policy with correct parameters