1. A computer-implemented method for allocating computer resources on a multi-node computer system, the method comprising the steps of: monitoring processing unit events with an event detection mechanism; analyzing input data used by a first processing unit to determine if a data event meets an event criteria in a rules registry; notifying a resource controller when the data event meets the event criteria; notifying the resource controller when a code point event occurs; and the resource controller reallocating compute resources for a second processing unit and a third processing unit when the code point event occurs and when the data event meets the event criteria, wherein the second processing unit is located on a compute node downstream from the first processing unit in a distributed system, and the third processing unit is located on a compute node upstream from the first processing unit, and wherein, upon detection of the code point event occurring in the first processing unit, or upon detection of the data event occurring in the first processing unit and meeting the event criteria, the resource controller reallocates the compute resources by increasing compute resources for the second processing unit and decreasing compute resources for the third processing unit.