IP Library Granted Patent US 9,141,425
Granted Patent B2
US 9,141,425 · App. 13/608,525 · Granted Sep 22, 2015

Framework for critical-path resource-optimized parallel processing

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,141,425
App. No.
13/608,525
Granted
Sep 22, 2015
Kind
B2
Abstract

Computer-implemented methods, computer-program products, and systems instantiate a resource comsumption optimizer framework (RCOF) for a plurality of sub-process associated with a process. A plurality of sub-processes are loaded into a memory in accordance with a calculated optimized resource comsumption pattern. Each sub-process is associated with an agent that communicates with the RCOF. A particular sub-process is executed and the execution start is gated by an associated agent based upon at least a determined buffer value. The RCOF is notified of the particular sub-process execution completion.

Claims (38)

1. A computer-implemented method, comprising:

instantiating a resource consumption optimizer framework (RCOF) for a plurality of discrete sub-processes associated with a process, wherein dependency data stored in a process model defines dependencies between the plurality of the discrete sub-processes, and wherein each of the discrete sub-processes is defined with data including a processing step identification, an overall processing time, an earliest processing start time, and an earliest processing end time;

loading the plurality of discrete sub-processes into a memory in accordance with a calculated optimized resource consumption pattern that uses the dependency data stored in the process model to identify a critical path, said critical path defining the dependent discrete sub-processes that must be processed with their earliest possible processing start time in order to avoid a delay in the overall processing end time;

associating each discrete sub-process of the plurality of sub-processes with an agent, wherein the agent communicates with the ROCF;

executing a particular discrete sub-process of the plurality of discrete sub-processes loaded into the memory, wherein the particular discrete sub-process' execution start is gated by an associated agent based upon at least a determined buffer value specifying either an amount of time the particular discrete sub-process' execution start can be shifted in time without affecting the start time of any later starting sub-process or without shifting an overall processing end time for the process; and

notifying the RCOF of the particular discrete sub-process execution completion.

2. The computer-implemented method of claim 1 , further comprising, prior to the loading of the discrete sub-processes into the memory, calculating the optimized resource consumption pattern.

3. The computer-implemented method of claim 1 , wherein the agent exposes an application programming interface (API) to the RCOF.

4. The computer-implemented method of claim 1 , further comprising determining that the particular discrete sub-process of the plurality of the discrete sub-processes loaded into the memory can start execution.

5. The computer-implemented method of claim 1 , further comprising determining that the calculated optimized resource consumption pattern should be updated.

6. The computer-implemented method of claim 5 , further comprising updating the calculated optimized resource consumption pattern.

7. The computer-implemented method of claim 1 , further comprising determining when processing of the plurality of sub-processes is complete.

8. A computer-program product, comprising computer-readable instructions embodied on tangible, non-transitory, computer-readable media, the instructions operable when executed to perform operations to:

instantiate a resource consumption optimizer framework (RCOF) for a plurality of discrete sub-processes associated with a process, wherein dependency data stored in a process model defines dependencies between the plurality of the discrete sub-processes, and wherein each of the discrete sub-processes is defined with data including a processing step identification, an overall processing time, an earliest processing start time, and an earliest processing end time;

load the plurality of discrete sub-processes into a memory in accordance with a calculated optimized resource consumption pattern that uses the dependency data stored in the process model to identify a critical path, said critical path defining the dependent discrete sub-processes that must be processed with their earliest possible processing start time in order to avoid a delay in the overall processing end time;

associate each discrete sub-process of the plurality of sub-processes with an agent, wherein the agent communicates with the ROCF;

execute a particular discrete sub-process of the plurality of discrete sub-processes loaded into the memory, wherein the particular discrete sub-process' execution start is gated by an associated agent based upon at least a determined buffer value specifying either an amount of time the particular discrete sub-process' execution start can be shifted in time without affecting the start time of any later starting sub-process or without shifting an overall processing end time for the process; and

notify the RCOF of the particular discrete sub-process execution completion.

9. The computer-program product of claim 8 , further comprising, instructions operable to, prior to the loading of the discrete sub-processes into the memory, calculate the optimized resource consumption pattern.

10. The computer-program product of claim 8 , wherein the agent exposes an application programming interface (API) to the RCOF.

11. The computer-program product of claim 8 , further comprising instructions operable to determine that the particular discrete sub-process of the plurality of the discrete sub-processes loaded into the memory can start execution.

12. The computer-program product of claim 8 , further comprising instructions operable to determine that the calculated optimized resource consumption pattern should be updated.

13. The computer-program product of claim 12 , further comprising instructions operable to update the calculated optimized resource consumption pattern.

14. The computer-program product of claim 8 , further comprising instructions operable to determine when processing of the plurality of sub-processes is complete.

15. A system, comprising:

memory operable to store a resource consumption optimizer framework (RCOF); and

at least one hardware processor interoperably coupled to the memory and operable to:

instantiate a resource consumption optimizer framework (RCOF) for a plurality of discrete sub-processes associated with a process, wherein dependency data stored in a process model defines dependencies between the plurality of the discrete sub-processes, and wherein each of the discrete sub-processes is defined with data including a processing step identification, an overall processing time, an earliest processing start time, and an earliest processing end time;

load the plurality of discrete sub-processes into a memory in accordance with a calculated optimized resource consumption pattern that uses the dependency data stored in the process model to identify a critical path, said critical path defining the dependent discrete sub-processes that must be processed with their earliest possible processing start time in order to avoid a delay in the overall processing end time;

associate each discrete sub-process of the plurality of sub-processes with an agent, wherein the agent communicates with the ROCF;

execute a particular discrete sub-process of the plurality of discrete sub-processes loaded into the memory, wherein the particular discrete sub-process' execution start is gated by an associated agent based upon at least a determined buffer value specifying either an amount of time the particular discrete sub-process' execution start can be shifted in time without affecting the start time of any later starting sub-process or without shifting an overall processing end time for the process; and

notify the RCOF of the particular discrete sub-process execution completion.

16. The system of claim 15 , further operable to, prior to the loading of the discrete sub-processes into the memory, calculate the optimized resource consumption pattern.

17. The system of claim 15 , wherein the agent exposes an application programming interface (API) to the RCOF.

18. The system of claim 15 , further operable to determine that the particular discrete sub-process of the plurality of the discrete sub-processes loaded into the memory can start execution.

19. The system of claim 15 , further operable to determine that the calculated optimized resource consumption pattern should be updated.

20. The system of claim 19 , further operable to update the calculated optimized resource consumption pattern.

21. The system of claim 15 , further operable to determine when processing of the plurality of sub-processes is complete.

Assignments (2)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2012
From: TEWES, MARTIN
To: SAP AG
Reel/Frame 028936/0061 →